ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/hopm/trunk/src/config-parser.y
(Generate patch)

Comparing hopm/trunk/src/config-parser.y (file contents):
Revision 5079 by michael, Mon Dec 22 15:33:29 2014 UTC vs.
Revision 5080 by michael, Mon Dec 22 19:00:47 2014 UTC

# Line 38 | Line 38 | void *tmp;        /* Variable to tempora
38   %token AWAY
39   %token BAN_UNKNOWN
40   %token BLACKLIST
41 + %token BYTES KBYTES MBYTES
42   %token CHANNEL
43   %token CONNREGEX
44   %token DNS_FDLIMIT
# Line 68 | Line 69 | void *tmp;        /* Variable to tempora
69   %token REPLY
70   %token SCANLOG
71   %token SCANNER
72 + %token SECONDS MINUTES HOURS DAYS WEEKS MONTHS YEARS
73   %token SENDMAIL
74   %token SERVER
75   %token TARGET_IP
# Line 88 | Line 90 | void *tmp;        /* Variable to tempora
90   %token <number> NUMBER
91   %token <string> STRING
92   %token <number> PROTOCOLTYPE
93 + %type  <number> timespec
94 + %type  <number> timespec_
95 + %type  <number> sizespec
96 + %type  <number> sizespec_
97  
98   %%
99  
# Line 102 | Line 108 | config_items: irc_entry     |
108                scanner_entry |
109                exempt_entry;
110  
111 + timespec_: { $$ = 0; } | timespec;
112 + timespec:  NUMBER timespec_         { $$ = $1 + $2; } |
113 +           NUMBER SECONDS timespec_ { $$ = $1 + $3; } |
114 +           NUMBER MINUTES timespec_ { $$ = $1 * 60 + $3; } |
115 +           NUMBER HOURS timespec_   { $$ = $1 * 60 * 60 + $3; } |
116 +           NUMBER DAYS timespec_    { $$ = $1 * 60 * 60 * 24 + $3; } |
117 +           NUMBER WEEKS timespec_   { $$ = $1 * 60 * 60 * 24 * 7 + $3; } |
118 +           NUMBER MONTHS timespec_  { $$ = $1 * 60 * 60 * 24 * 7 * 4 + $3; } |
119 +           NUMBER YEARS timespec_   { $$ = $1 * 60 * 60 * 24 * 365 + $3; }
120 +           ;
121 +
122 + sizespec_:  { $$ = 0; } | sizespec;
123 + sizespec:   NUMBER sizespec_ { $$ = $1 + $2; } |
124 +            NUMBER BYTES sizespec_ { $$ = $1 + $3; } |
125 +            NUMBER KBYTES sizespec_ { $$ = $1 * 1024 + $3; } |
126 +            NUMBER MBYTES sizespec_ { $$ = $1 * 1024 * 1024 + $3; }
127 +            ;
128  
129   /*************************** OPTIONS BLOCK ***********************/
130  
# Line 116 | Line 139 | options_item: options_negcache |
139                options_scanlog |
140                error;
141  
142 < options_negcache: NEGCACHE '=' NUMBER ';'
142 > options_negcache: NEGCACHE '=' timespec ';'
143   {
144     OptionsItem->negcache = $3;
145   };
# Line 456 | Line 479 | scanner_target_port: TARGET_PORT '=' NUM
479     item->target_port = $3;
480   };
481  
482 < scanner_timeout: TIMEOUT '=' NUMBER ';'
482 > scanner_timeout: TIMEOUT '=' timespec ';'
483   {
484     struct ScannerConf *item = (struct ScannerConf *) tmp;
485     item->timeout = $3;
486   };
487  
488 < scanner_max_read: MAX_READ '=' NUMBER ';'
488 > scanner_max_read: MAX_READ '=' sizespec ';'
489   {
490     struct ScannerConf *item = (struct ScannerConf *) tmp;
491     item->max_read = $3;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines