CVS diff for config.l between 1.6 and 1.4:

Revision 1.4 Revision 1.6
Line 8 Line 8
#define VARMATCH(varname) (0 == strncmp(yytext, varname, strlen(varname))) 
 
enum svar { none, sroot, port, hands, verb, maxcon, maxdur, alog, 
#define VARMATCH(varname) (0 == strncmp(yytext, varname, strlen(varname))) 
 
enum svar { none, sroot, port, hands, verb, maxcon, maxdur, alog, 
                elog, allmime, defmime, unknown }; 
                elog, allmime, defmime, disnagle, indexfile, unknown }; 
 
int yyerror(char*); 
void set_var(enum svar, char*); 
 
int yyerror(char*); 
void set_var(enum svar, char*); 
Line 24 Line 24
    int ka_max_dur; 
int max_handler; 
int verbose = 0; 
    int ka_max_dur; 
int max_handler; 
int verbose = 0; 
 
    int disable_nagle = 0;
    idxfilename* index_files = NULL; 
 
/* TODO: Why are these here? They should be elsewhere... */ 
int cow_rto_s; /* cow read/recv timeout in sec */ 
 
/* TODO: Why are these here? They should be elsewhere... */ 
int cow_rto_s; /* cow read/recv timeout in sec */ 
Line 31 Line 33
    int cow_noof = 0;           /* number of open files (from accept to close) */ 
 
/* Variables used for parsing config file */ 
    int cow_noof = 0;           /* number of open files (from accept to close) */ 
 
/* Variables used for parsing config file */ 
    enum svar curvar = none;
    char *filename;
    char *p, value_buffer[256];
    int value_len = 0;
    int curline = 1; 
    static enum svar curvar = none;
    static char *filename;
    static char *p, value_buffer[256];
    static int value_len = 0;
    static int curline = 1;
 
    static idxfilename* last_idx = NULL;
%} 
 
%x STRVALUE 
%} 
 
%x STRVALUE 
Line 58 Line 61
                    else if (VARMATCH("ErrorLog"))          curvar = elog; 
else if (VARMATCH("GlobalMime")) curvar = allmime; 
else if (VARMATCH("DefaultMime")) curvar = defmime; 
                    else if (VARMATCH("ErrorLog"))          curvar = elog; 
else if (VARMATCH("GlobalMime")) curvar = allmime; 
else if (VARMATCH("DefaultMime")) curvar = defmime; 
 
                    else if (VARMATCH("DisableNagle"))      curvar = disnagle;
                    else if (VARMATCH("IndexFile"))         curvar = indexfile; 
                    else { curvar = unknown; yyerror("Unrecognized variable"); } 

 
                    else { curvar = unknown; yyerror("Unrecognized variable"); } 

 
Line 146 Line 151
 
 
void set_var(enum svar var, char* val) { 
 
 
void set_var(enum svar var, char* val) { 
 
    idxfilename* idx;
 
    switch(var) { 
case none: 
yyerror("Bare value encountered"); 
    switch(var) { 
case none: 
yyerror("Bare value encountered"); 
Line 197 Line 204
        case defmime: 
default_mime = strdup(val); 
break; 
        case defmime: 
default_mime = strdup(val); 
break; 
 
        case disnagle:
            disable_nagle = atoi(val);
            break;
        case indexfile:
            idx = malloc(sizeof(idxfilename));
            if (idx == NULL) {
                perror("Ran out of memory allocating index file records");
                exit(1);
            }
            idx->name = strdup(val);
            idx->next = NULL;
            if (last_idx == NULL) {
                last_idx = index_files = idx;
            } else {
                last_idx->next = idx;
                last_idx = idx;
            }
            break; 
        default: 
yyerror("FIXME: Config file parser needs to be updated!"); 
        default: 
yyerror("FIXME: Config file parser needs to be updated!"); 
Line 214 Line 239
    return 1; 

 
    return 1; 

 


Legend
Lines deleted from 1.6  
Lines Modified
  Lines added in revision 1.4