/[mailutils]/mailutils/include/mailutils/libsieve.h
ViewVC logotype

Diff of /mailutils/include/mailutils/libsieve.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.4 by gray, Thu Nov 14 07:10:49 2002 UTC revision 1.5 by gray, Thu Nov 14 14:47:05 2002 UTC
# Line 21  Line 21 
21    
22  typedef struct sieve_machine *sieve_machine_t;  typedef struct sieve_machine *sieve_machine_t;
23    
24  typedef int (*sieve_handler_t) __P((sieve_machine_t mach,  typedef int (*sieve_handler_t) __PMT((sieve_machine_t mach,
25                                      list_t args, list_t tags));                                        list_t args, list_t tags));
26  typedef int (*sieve_printf_t) __P((void *data, const char *fmt, va_list ap));  typedef int (*sieve_printf_t) __PMT((void *data, const char *fmt, va_list ap));
27  typedef int (*sieve_parse_error_t) __P((void *data,  typedef int (*sieve_parse_error_t) __PMT((void *data,
28                                          const char *filename, int lineno,                                            const char *filename, int lineno,
29                                          const char *fmt, va_list ap));                                            const char *fmt, va_list ap));
30  typedef void (*sieve_action_log_t) __P((void *data,  typedef void (*sieve_action_log_t) __PMT((void *data,
31                                          const char *script,                                            const char *script,
32                                          size_t msgno, message_t msg,                                            size_t msgno, message_t msg,
33                                          const char *action,                                            const char *action,
34                                          const char *fmt, va_list ap));                                            const char *fmt, va_list ap));
35    
36    typedef int (*sieve_comparator_t) __PMT((const char *, const char *));
37    typedef int (*sieve_retrieve_t) __PMT((void *item, void *data, char **pval));
38    
39    
40  typedef enum {  typedef enum {
41    SVT_VOID,    SVT_VOID,
# Line 76  typedef struct { Line 80  typedef struct {
80    sieve_tag_def_t *tags;    sieve_tag_def_t *tags;
81  } sieve_register_t;  } sieve_register_t;
82    
83    #define MU_SIEVE_MATCH_IS        1
84    #define MU_SIEVE_MATCH_CONTAINS  2
85    #define MU_SIEVE_MATCH_MATCHES   3
86    #define MU_SIEVE_MATCH_REGEX     4
87    #define MU_SIEVE_MATCH_LAST      5
88    
89  /* Debugging levels */  /* Debugging levels */
90  #define MU_SIEVE_DEBUG_TRACE  0x0001  #define MU_SIEVE_DEBUG_TRACE  0x0001
91  #define MU_SIEVE_DEBUG_INSTR  0x0002  #define MU_SIEVE_DEBUG_INSTR  0x0002
# Line 139  void sieve_machine_set_ticket __P((sieve Line 149  void sieve_machine_set_ticket __P((sieve
149  sieve_value_t *sieve_value_get __P((list_t vlist, size_t index));  sieve_value_t *sieve_value_get __P((list_t vlist, size_t index));
150    
151  int sieve_is_dry_run __P((sieve_machine_t mach));  int sieve_is_dry_run __P((sieve_machine_t mach));
152    
153    int sieve_vlist_do __P((sieve_value_t *val, list_action_t *ac, void *data));
154    int sieve_vlist_compare __P((sieve_value_t *a, sieve_value_t *b,
155                                 sieve_comparator_t comp, sieve_retrieve_t ac,
156                                 void *data));
157    
158    
159    int sieve_register_comparator __P((const char *name,
160                                       int required,
161                                       sieve_comparator_t is,
162                                       sieve_comparator_t contains,
163                                       sieve_comparator_t matches,
164                                       sieve_comparator_t regex));
165    sieve_comparator_t sieve_comparator_lookup __P((const char *name,
166                                                    int matchtype));
167    
168    sieve_comparator_t sieve_get_comparator __P((list_t tags));

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.5

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26