/[mailutils]/mailutils/libsieve/register.c
ViewVC logotype

Diff of /mailutils/libsieve/register.c

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

revision 1.2 by gray, Tue Nov 12 16:27:47 2002 UTC revision 1.3 by gray, Fri Nov 15 14:40:34 2002 UTC
# Line 65  static int Line 65  static int
65  sieve_register (list_t *list,  sieve_register (list_t *list,
66                  const char *name, sieve_handler_t handler,                  const char *name, sieve_handler_t handler,
67                  sieve_data_type *arg_types,                  sieve_data_type *arg_types,
68                  sieve_tag_def_t *tags, int required)                  sieve_tag_group_t *tags, int required)
69  {  {
   int n;  
70    sieve_register_t *reg = malloc (sizeof (*reg));    sieve_register_t *reg = malloc (sizeof (*reg));
71    
72    if (!reg)    if (!reg)
# Line 75  sieve_register (list_t *list, Line 74  sieve_register (list_t *list,
74    reg->name = name;    reg->name = name;
75    reg->handler = handler;    reg->handler = handler;
76    
   if (arg_types)  
     {  
       for (n = 0; arg_types[n] != SVT_VOID; n++)  
         ;  
     }  
   else  
     n = 0;  
   reg->num_req_args = n;  
77    reg->req_args = arg_types;    reg->req_args = arg_types;
   
   if (tags)  
     {  
       for (n = 0; tags[n].name != NULL; n++)  
         ;  
     }  
   else  
     n = 0;  
   reg->num_tags = n;  
78    reg->tags = tags;    reg->tags = tags;
79    reg->required = required;    reg->required = required;
80        
# Line 113  sieve_register (list_t *list, Line 95  sieve_register (list_t *list,
95  int  int
96  sieve_register_test (const char *name, sieve_handler_t handler,  sieve_register_test (const char *name, sieve_handler_t handler,
97                       sieve_data_type *arg_types,                       sieve_data_type *arg_types,
98                       sieve_tag_def_t *tags, int required)                       sieve_tag_group_t *tags, int required)
99  {  {
100    return sieve_register (&test_list, name, handler, arg_types, tags, required);    return sieve_register (&test_list, name, handler, arg_types, tags, required);
101  }  }
# Line 121  sieve_register_test (const char *name, s Line 103  sieve_register_test (const char *name, s
103  int  int
104  sieve_register_action (const char *name, sieve_handler_t handler,  sieve_register_action (const char *name, sieve_handler_t handler,
105                         sieve_data_type *arg_types,                         sieve_data_type *arg_types,
106                         sieve_tag_def_t *tags, int required)                         sieve_tag_group_t *tags, int required)
107  {  {
108    return sieve_register (&action_list, name, handler, arg_types, tags, required);    return sieve_register (&action_list, name, handler, arg_types, tags, required);
109  }  }

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

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