OSSP CVS Repository

ossp - Difference in ossp-pkg/lmtp2nntp/lmtp2nntp_config.h versions 1.3 and 1.4
Not logged in
[Honeypot]  [Browse]  [Home]  [Login]  [Reports
[Search]  [Ticket]  [Timeline
  [History

ossp-pkg/lmtp2nntp/lmtp2nntp_config.h 1.3 -> 1.4

--- lmtp2nntp_config.h   2002/01/17 17:01:55     1.3
+++ lmtp2nntp_config.h   2002/01/21 16:21:16     1.4
@@ -27,34 +27,42 @@
 #include "lmtp2nntp_global.h"
 #include "val.h"
 
+struct optionconfig_s;
+typedef struct optionconfig_s optionconfig_t;
+
 typedef struct {
-    int         childsmax;
-    int         daemonize;
-    int         kill;
-    char       *pidfile;
-    argz_t      acl;
-    char       *bind;
-    char       *client;
-    argz_t      destination;
-    char       *groupmode;
-    argz_t      headervalue;
-    argz_t      include;
-    char       *size;
-    int        *timeoutlmtpaccept;
-    int        *timeoutlmtpread;
-    int        *timeoutlmtpwrite;
-    int        *timeoutnntpconnect;
-    int        *timeoutnntpread;
-    int        *timeoutnntpwrite;
-    char       *mailfrom;
-    char       *nodename;
-    char       *operationmode;
-    char       *l2spec;
-    char       *uid;
-    argz_t      restrictheader;
-    argz_t      newsgroup;
-                    /**/
-    val_t      *vo;
+    int                 childsmax;
+    int                 daemonize;
+    int                 kill;
+    char               *pidfile;
+    argz_t              acl;
+    char               *bind;
+    char               *client;
+    argz_t              destination;
+    char               *groupmode;
+    argz_t              headervalue;
+    argz_t              include;
+    char               *size;
+    int                *timeoutlmtpaccept;
+    int                *timeoutlmtpread;
+    int                *timeoutlmtpwrite;
+    int                *timeoutnntpconnect;
+    int                *timeoutnntpread;
+    int                *timeoutnntpwrite;
+    char               *mailfrom;
+    char               *nodename;
+    char               *operationmode;
+    char               *l2spec;
+    char               *uid;
+    argz_t              restrictheader;
+    argz_t              newsgroup;
+                /*FIXME above*/
+    optionconfig_t     *first;
+    optionconfig_t     *last;
+    val_t              *vo;     /* val_t for all options */
+    int                 pi;     /* popt index to next record */
+    int                 pn;     /* popt number of available records */
+    struct popt_option *pt;     /* popt table */
 
 } lmtp2nntp_option_t;
 
@@ -65,6 +73,14 @@
     OPTION_ERR_VAL  /* libval failed */
 } lmtp2nntp_option_rc_t;
 
-lmtp2nntp_option_rc_t option_create (lmtp2nntp_option_t **);
-lmtp2nntp_option_rc_t option_parse  (lmtp2nntp_option_t *, int, char **);
-lmtp2nntp_option_rc_t option_destroy(lmtp2nntp_option_t *);
+typedef enum {
+    OPT_FLAG,
+    OPT_SINGLE,
+    OPT_MULTI
+} optiontype_t;
+
+typedef void (optionloop_cb_t)(optionconfig_t *oc, char *arg, char *cbctx);
+lmtp2nntp_option_rc_t option_create  (lmtp2nntp_option_t **);
+lmtp2nntp_option_rc_t option_register(lmtp2nntp_option_t *, char *, char, optiontype_t, optionloop_cb_t *, char *, char *, char *);
+lmtp2nntp_option_rc_t option_parse   (lmtp2nntp_option_t *, int, char **);
+lmtp2nntp_option_rc_t option_destroy (lmtp2nntp_option_t *);

CVSTrac 2.0.1