#include <stdio.h>
#include <string.h>
-#include "malloc.h"
+
+#include "memory.h"
#include "config.h"
int yylex(void);
void *tmp; /* Variable to temporarily hold nodes before insertion to list */
-#line 79 "config-parser.c" /* yacc.c:339 */
+#line 80 "config-parser.c" /* yacc.c:339 */
# ifndef YY_NULLPTR
# if defined __cplusplus && 201103L <= __cplusplus
MODE = 277,
NAME = 278,
NEGCACHE = 279,
- NICK = 280,
- NICKSERV = 281,
- OPER = 282,
- OPM = 283,
- OPTIONS = 284,
- PASSWORD = 285,
- PERFORM = 286,
- PIDFILE = 287,
- PORT = 288,
- PROTOCOL = 289,
- READTIMEOUT = 290,
- REALNAME = 291,
- REPLY = 292,
- SCANLOG = 293,
- SCANNER = 294,
- SECONDS = 295,
- MINUTES = 296,
- HOURS = 297,
- DAYS = 298,
- WEEKS = 299,
- MONTHS = 300,
- YEARS = 301,
- SENDMAIL = 302,
- SERVER = 303,
- TARGET_IP = 304,
- TARGET_PORT = 305,
- TARGET_STRING = 306,
- TIMEOUT = 307,
- TYPE = 308,
- USERNAME = 309,
- USER = 310,
- VHOST = 311,
- NUMBER = 312,
- STRING = 313,
- PROTOCOLTYPE = 314
+ NEGCACHE_REBUILD = 280,
+ NICK = 281,
+ NICKSERV = 282,
+ OPER = 283,
+ OPM = 284,
+ OPTIONS = 285,
+ PASSWORD = 286,
+ PERFORM = 287,
+ PIDFILE = 288,
+ PORT = 289,
+ PROTOCOL = 290,
+ READTIMEOUT = 291,
+ REALNAME = 292,
+ REPLY = 293,
+ SCANLOG = 294,
+ SCANNER = 295,
+ SECONDS = 296,
+ MINUTES = 297,
+ HOURS = 298,
+ DAYS = 299,
+ WEEKS = 300,
+ MONTHS = 301,
+ YEARS = 302,
+ SENDMAIL = 303,
+ SERVER = 304,
+ TARGET_IP = 305,
+ TARGET_PORT = 306,
+ TARGET_STRING = 307,
+ TIMEOUT = 308,
+ TYPE = 309,
+ USERNAME = 310,
+ USER = 311,
+ VHOST = 312,
+ NUMBER = 313,
+ STRING = 314,
+ PROTOCOLTYPE = 315
};
#endif
/* Tokens. */
#define MODE 277
#define NAME 278
#define NEGCACHE 279
-#define NICK 280
-#define NICKSERV 281
-#define OPER 282
-#define OPM 283
-#define OPTIONS 284
-#define PASSWORD 285
-#define PERFORM 286
-#define PIDFILE 287
-#define PORT 288
-#define PROTOCOL 289
-#define READTIMEOUT 290
-#define REALNAME 291
-#define REPLY 292
-#define SCANLOG 293
-#define SCANNER 294
-#define SECONDS 295
-#define MINUTES 296
-#define HOURS 297
-#define DAYS 298
-#define WEEKS 299
-#define MONTHS 300
-#define YEARS 301
-#define SENDMAIL 302
-#define SERVER 303
-#define TARGET_IP 304
-#define TARGET_PORT 305
-#define TARGET_STRING 306
-#define TIMEOUT 307
-#define TYPE 308
-#define USERNAME 309
-#define USER 310
-#define VHOST 311
-#define NUMBER 312
-#define STRING 313
-#define PROTOCOLTYPE 314
+#define NEGCACHE_REBUILD 280
+#define NICK 281
+#define NICKSERV 282
+#define OPER 283
+#define OPM 284
+#define OPTIONS 285
+#define PASSWORD 286
+#define PERFORM 287
+#define PIDFILE 288
+#define PORT 289
+#define PROTOCOL 290
+#define READTIMEOUT 291
+#define REALNAME 292
+#define REPLY 293
+#define SCANLOG 294
+#define SCANNER 295
+#define SECONDS 296
+#define MINUTES 297
+#define HOURS 298
+#define DAYS 299
+#define WEEKS 300
+#define MONTHS 301
+#define YEARS 302
+#define SENDMAIL 303
+#define SERVER 304
+#define TARGET_IP 305
+#define TARGET_PORT 306
+#define TARGET_STRING 307
+#define TIMEOUT 308
+#define TYPE 309
+#define USERNAME 310
+#define USER 311
+#define VHOST 312
+#define NUMBER 313
+#define STRING 314
+#define PROTOCOLTYPE 315
/* Value type. */
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef union YYSTYPE YYSTYPE;
union YYSTYPE
{
-#line 86 "config-parser.y" /* yacc.c:355 */
+#line 88 "config-parser.y" /* yacc.c:355 */
int number;
char *string;
-#line 242 "config-parser.c" /* yacc.c:355 */
+#line 245 "config-parser.c" /* yacc.c:355 */
};
# define YYSTYPE_IS_TRIVIAL 1
# define YYSTYPE_IS_DECLARED 1
/* Copy the second part of user declarations. */
-#line 257 "config-parser.c" /* yacc.c:358 */
+#line 260 "config-parser.c" /* yacc.c:358 */
#ifdef short
# undef short
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 2
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 306
+#define YYLAST 311
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 65
+#define YYNTOKENS 66
/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS 79
+#define YYNNTS 80
/* YYNRULES -- Number of rules. */
-#define YYNRULES 149
+#define YYNRULES 151
/* YYNSTATES -- Number of states. */
-#define YYNSTATES 324
+#define YYNSTATES 329
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
by yylex, with out-of-bounds checking. */
#define YYUNDEFTOK 2
-#define YYMAXUTOK 314
+#define YYMAXUTOK 315
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 64, 62,
- 2, 63, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 65, 63,
+ 2, 64, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 60, 2, 61, 2, 2, 2, 2,
+ 2, 2, 2, 61, 2, 62, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
- 55, 56, 57, 58, 59
+ 55, 56, 57, 58, 59, 60
};
#if YYDEBUG
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 101, 101, 102, 105, 106, 107, 108, 109, 110,
- 112, 112, 113, 114, 115, 116, 117, 118, 119, 120,
- 123, 123, 124, 125, 126, 127, 132, 134, 135, 137,
- 138, 139, 140, 141, 143, 148, 154, 159, 167, 169,
- 170, 172, 173, 174, 175, 176, 177, 178, 179, 180,
- 181, 182, 183, 184, 185, 186, 187, 188, 190, 196,
- 202, 208, 214, 220, 226, 232, 240, 245, 250, 256,
- 262, 268, 274, 284, 284, 301, 302, 304, 305, 306,
- 308, 316, 324, 335, 335, 351, 352, 354, 355, 356,
- 358, 368, 381, 381, 426, 427, 429, 430, 431, 432,
- 433, 434, 435, 436, 437, 438, 440, 447, 454, 461,
- 477, 483, 489, 495, 501, 520, 522, 523, 525, 526,
- 527, 528, 529, 531, 537, 543, 552, 552, 571, 572,
- 574, 575, 576, 577, 578, 579, 581, 588, 595, 606,
- 612, 614, 615, 617, 635, 637, 638, 640, 641, 643
+ 0, 103, 103, 104, 107, 108, 109, 110, 111, 112,
+ 114, 114, 115, 116, 117, 118, 119, 120, 121, 122,
+ 125, 125, 126, 127, 128, 129, 134, 136, 137, 139,
+ 140, 141, 142, 143, 144, 146, 151, 156, 162, 167,
+ 175, 177, 178, 180, 181, 182, 183, 184, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
+ 198, 204, 210, 216, 222, 228, 234, 240, 248, 253,
+ 258, 264, 270, 276, 282, 292, 292, 309, 310, 312,
+ 313, 314, 316, 324, 332, 343, 343, 359, 360, 362,
+ 363, 364, 366, 376, 389, 389, 434, 435, 437, 438,
+ 439, 440, 441, 442, 443, 444, 445, 446, 448, 455,
+ 462, 469, 485, 491, 497, 503, 509, 528, 530, 531,
+ 533, 534, 535, 536, 537, 539, 545, 551, 560, 560,
+ 579, 580, 582, 583, 584, 585, 586, 587, 589, 596,
+ 603, 614, 620, 622, 623, 625, 643, 645, 646, 648,
+ 649, 651
};
#endif
"$end", "error", "$undefined", "AWAY", "BAN_UNKNOWN", "BLACKLIST",
"BYTES", "KBYTES", "MBYTES", "CHANNEL", "CONNREGEX", "DNS_FDLIMIT",
"DNSBL_FROM", "DNSBL_TO", "EXEMPT", "FD", "INVITE", "IRC", "KLINE",
- "KEY", "MASK", "MAX_READ", "MODE", "NAME", "NEGCACHE", "NICK",
- "NICKSERV", "OPER", "OPM", "OPTIONS", "PASSWORD", "PERFORM", "PIDFILE",
- "PORT", "PROTOCOL", "READTIMEOUT", "REALNAME", "REPLY", "SCANLOG",
- "SCANNER", "SECONDS", "MINUTES", "HOURS", "DAYS", "WEEKS", "MONTHS",
- "YEARS", "SENDMAIL", "SERVER", "TARGET_IP", "TARGET_PORT",
- "TARGET_STRING", "TIMEOUT", "TYPE", "USERNAME", "USER", "VHOST",
- "NUMBER", "STRING", "PROTOCOLTYPE", "'{'", "'}'", "';'", "'='", "':'",
- "$accept", "config", "config_items", "timespec_", "timespec",
+ "KEY", "MASK", "MAX_READ", "MODE", "NAME", "NEGCACHE",
+ "NEGCACHE_REBUILD", "NICK", "NICKSERV", "OPER", "OPM", "OPTIONS",
+ "PASSWORD", "PERFORM", "PIDFILE", "PORT", "PROTOCOL", "READTIMEOUT",
+ "REALNAME", "REPLY", "SCANLOG", "SCANNER", "SECONDS", "MINUTES", "HOURS",
+ "DAYS", "WEEKS", "MONTHS", "YEARS", "SENDMAIL", "SERVER", "TARGET_IP",
+ "TARGET_PORT", "TARGET_STRING", "TIMEOUT", "TYPE", "USERNAME", "USER",
+ "VHOST", "NUMBER", "STRING", "PROTOCOLTYPE", "'{'", "'}'", "';'", "'='",
+ "':'", "$accept", "config", "config_items", "timespec_", "timespec",
"sizespec_", "sizespec", "options_entry", "options_items",
- "options_item", "options_negcache", "options_pidfile",
- "options_dns_fdlimit", "options_scanlog", "irc_entry", "irc_items",
- "irc_item", "irc_away", "irc_kline", "irc_mode", "irc_nick",
+ "options_item", "options_negcache", "options_negcache_rebuild",
+ "options_pidfile", "options_dns_fdlimit", "options_scanlog", "irc_entry",
+ "irc_items", "irc_item", "irc_away", "irc_kline", "irc_mode", "irc_nick",
"irc_nickserv", "irc_oper", "irc_password", "irc_perform", "irc_port",
"irc_readtimeout", "irc_realname", "irc_server", "irc_username",
"irc_vhost", "irc_connregex", "channel_entry", "$@1", "channel_items",
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
- 123, 125, 59, 61, 58
+ 315, 123, 125, 59, 61, 58
};
# endif
-#define YYPACT_NINF -149
+#define YYPACT_NINF -125
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-149)))
+ (!!((Yystate) == (-125)))
-#define YYTABLE_NINF -127
+#define YYTABLE_NINF -129
#define yytable_value_is_error(Yytable_value) \
0
STATE-NUM. */
static const yytype_int16 yypact[] =
{
- -149, 122, -149, -53, -52, -46, -44, -149, -149, -149,
- -149, -50, -149, -22, -149, -149, 43, 73, 113, 130,
- -41, -32, -149, -34, 3, -149, -149, -149, -31, -26,
- -24, -18, -17, -14, -13, -11, 4, 9, 14, 21,
- 22, 25, 33, 0, -149, -149, -149, -149, -149, -149,
- -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
- -149, 57, -149, 39, 47, 49, 46, -149, -149, -149,
- -149, -149, 108, -149, 53, 65, 75, 77, 54, -149,
- -149, -149, -149, -149, 104, 96, 86, 87, -149, 95,
- 97, 99, 100, 101, 106, 107, 109, 111, 114, 131,
- 129, 134, 135, 136, 127, -149, 137, 138, 140, 141,
- 139, -149, 142, 143, 131, 145, 146, 144, -149, -149,
- 128, 132, 40, -149, -149, -149, -149, 148, 149, 150,
- 151, 152, 153, 154, 155, 156, 19, -149, -149, -149,
- -149, -149, -149, -149, -149, -149, -149, 158, -149, 159,
- 160, 161, 162, 163, 164, 165, 166, 167, 168, 133,
- 169, 170, 171, 172, 173, -149, 147, 174, 175, 176,
- -149, 119, 177, 178, 179, 180, -149, 185, 186, 183,
- -149, 189, 190, 191, 192, 194, 193, 195, 131, 196,
- 197, -149, -149, -149, -149, -149, -149, -149, -149, -149,
- -149, -149, -149, 131, 131, 131, 131, 131, 131, 131,
- -149, -149, -149, -149, -149, -149, -149, 198, 199, 200,
- 71, -149, -149, -149, -149, -149, -149, -149, -149, 201,
- 202, 203, 188, 204, 20, -149, -149, -149, -149, -149,
- -149, -149, -149, -149, -149, 206, 207, -149, 208, 5,
- 209, 210, 211, 212, 214, 215, 216, 217, -149, -149,
- -149, -149, -149, -149, -149, -149, 222, 223, 224, 221,
- -149, 227, 228, 229, 231, 232, 230, -149, -149, -149,
- -149, 190, 190, 190, -149, -149, -149, -149, 234, -149,
- -149, -149, -149, -149, 233, 235, 236, -149, 237, 238,
- 239, 226, -55, -149, 240, -149, -149, -149, -149, 241,
- -149, -149, -149, -149, -149, -149, 246, 243, -149, -149,
- -149, 244, -149, -149
+ -125, 127, -125, -53, -49, -47, -38, -125, -125, -125,
+ -125, -27, -125, 7, -125, -125, 34, 83, 77, 136,
+ -23, -21, -125, -14, 1, -125, -125, -125, -13, -3,
+ 2, 8, 9, 13, 24, 30, 42, 44, 48, 57,
+ 64, 65, 67, 0, -125, -125, -125, -125, -125, -125,
+ -125, -125, -125, -125, -125, -125, -125, -125, -125, -125,
+ -125, 74, -125, 70, 71, 75, 12, -125, -125, -125,
+ -125, -125, 93, -125, 78, 82, 84, 86, 91, 19,
+ -125, -125, -125, -125, -125, -125, 47, 101, 17, 96,
+ -125, 106, 109, 111, 112, 113, 114, 115, 131, 132,
+ 87, 108, 133, 137, 138, 139, 140, -125, 134, 141,
+ 142, 143, 144, -125, 145, 146, 108, 108, 149, 150,
+ 147, -125, -125, 130, 148, 45, -125, -125, -125, -125,
+ 151, 152, 153, 154, 155, 156, 157, 158, 159, 18,
+ -125, -125, -125, -125, -125, -125, -125, -125, -125, -125,
+ 161, -125, 162, 163, 164, 165, 166, 167, 168, 169,
+ 170, 171, 135, 172, 173, 174, 175, 176, -125, 107,
+ 177, 178, 179, -125, 95, 180, 181, 182, 183, 184,
+ -125, 189, 190, 187, -125, 193, 194, 195, 196, 198,
+ 197, 199, 108, 200, 201, -125, -125, -125, -125, -125,
+ -125, -125, -125, -125, -125, -125, -125, 108, 108, 108,
+ 108, 108, 108, 108, -125, -125, -125, -125, -125, -125,
+ -125, 202, 203, 204, 81, -125, -125, -125, -125, -125,
+ -125, -125, -125, 205, 206, 207, 192, 208, 41, -125,
+ -125, -125, -125, -125, -125, -125, -125, -125, -125, -125,
+ 210, 211, -125, 212, -2, 213, 214, 215, 216, 218,
+ 219, 220, 221, -125, -125, -125, -125, -125, -125, -125,
+ -125, 226, 227, 228, 225, -125, 231, 232, 233, 235,
+ 236, 234, -125, -125, -125, -125, 194, 194, 194, -125,
+ -125, -125, -125, 238, -125, -125, -125, -125, -125, 237,
+ 239, 240, -125, 241, 242, 243, 230, -51, -125, 244,
+ -125, -125, -125, -125, 245, -125, -125, -125, -125, -125,
+ -125, 250, 247, -125, -125, -125, 248, -125, -125
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
means the default is an error. */
static const yytype_uint8 yydefact[] =
{
- 2, 83, 1, 0, 0, 0, 0, 3, 5, 4,
+ 2, 85, 1, 0, 0, 0, 0, 3, 5, 4,
7, 0, 8, 0, 6, 9, 0, 0, 0, 0,
- 0, 0, 148, 0, 0, 146, 147, 57, 0, 0,
+ 0, 0, 150, 0, 0, 148, 149, 59, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 40, 41, 43, 46, 44, 45,
- 47, 48, 55, 49, 50, 51, 52, 53, 54, 42,
- 56, 0, 122, 0, 0, 0, 0, 117, 118, 119,
- 120, 121, 0, 33, 0, 0, 0, 0, 0, 28,
- 29, 30, 31, 32, 0, 0, 0, 0, 145, 0,
+ 0, 0, 0, 0, 42, 43, 45, 48, 46, 47,
+ 49, 50, 57, 51, 52, 53, 54, 55, 56, 44,
+ 58, 0, 124, 0, 0, 0, 0, 119, 120, 121,
+ 122, 123, 0, 34, 0, 0, 0, 0, 0, 0,
+ 28, 29, 30, 31, 32, 33, 0, 0, 0, 0,
+ 147, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 41, 0, 0,
+ 0, 0, 0, 118, 0, 0, 0, 0, 0, 0,
+ 0, 27, 91, 0, 0, 0, 88, 89, 90, 107,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 39, 0, 0, 0, 0,
- 0, 116, 0, 0, 0, 0, 0, 0, 27, 89,
- 0, 0, 0, 86, 87, 88, 105, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 95, 96, 97,
- 99, 101, 98, 100, 103, 104, 102, 0, 144, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 10,
- 0, 0, 0, 0, 0, 38, 0, 0, 0, 0,
- 115, 0, 0, 0, 0, 0, 26, 0, 0, 0,
- 85, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 94, 149, 58, 72, 59, 60, 61, 62, 63,
- 64, 65, 66, 10, 10, 10, 10, 10, 10, 10,
- 12, 11, 67, 68, 69, 70, 71, 0, 0, 0,
- 0, 76, 77, 78, 79, 123, 124, 125, 135, 0,
- 0, 0, 0, 0, 0, 129, 130, 132, 131, 133,
- 134, 36, 34, 35, 37, 0, 0, 84, 0, 20,
- 0, 0, 0, 0, 0, 0, 0, 0, 93, 13,
- 14, 15, 16, 17, 18, 19, 0, 0, 0, 0,
- 75, 0, 0, 0, 0, 0, 0, 128, 90, 91,
- 110, 20, 20, 20, 22, 21, 113, 106, 0, 108,
- 111, 109, 112, 107, 0, 0, 0, 74, 0, 0,
- 0, 0, 0, 142, 0, 127, 23, 24, 25, 0,
- 82, 81, 80, 139, 137, 136, 0, 0, 141, 138,
- 114, 0, 140, 143
+ 97, 98, 99, 101, 103, 100, 102, 105, 106, 104,
+ 0, 146, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 10, 0, 0, 0, 0, 0, 40, 0,
+ 0, 0, 0, 117, 0, 0, 0, 0, 0, 0,
+ 26, 0, 0, 0, 87, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 96, 151, 60, 74, 61,
+ 62, 63, 64, 65, 66, 67, 68, 10, 10, 10,
+ 10, 10, 10, 10, 12, 11, 69, 70, 71, 72,
+ 73, 0, 0, 0, 0, 78, 79, 80, 81, 125,
+ 126, 127, 137, 0, 0, 0, 0, 0, 0, 131,
+ 132, 134, 133, 135, 136, 38, 35, 36, 37, 39,
+ 0, 0, 86, 0, 20, 0, 0, 0, 0, 0,
+ 0, 0, 0, 95, 13, 14, 15, 16, 17, 18,
+ 19, 0, 0, 0, 0, 77, 0, 0, 0, 0,
+ 0, 0, 130, 92, 93, 112, 20, 20, 20, 22,
+ 21, 115, 108, 0, 110, 113, 111, 114, 109, 0,
+ 0, 0, 76, 0, 0, 0, 0, 0, 144, 0,
+ 129, 23, 24, 25, 0, 84, 83, 82, 141, 139,
+ 138, 0, 0, 143, 140, 116, 0, 142, 145
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -149, -149, -149, -23, -99, -148, 23, -149, -149, 182,
- -149, -149, -149, -149, -149, -149, 213, -149, -149, -149,
- -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
- -149, -149, -149, -149, -149, -12, -149, -149, -149, -149,
- -149, -149, 85, -149, -149, -149, -149, -149, 74, -149,
- -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
- 219, -149, -149, -149, -149, -149, -149, -25, -149, -149,
- -149, -149, -149, -149, -47, -149, -149, 249, -149
+ -125, -125, -125, -24, -101, -124, 25, -125, -125, 120,
+ -125, -125, -125, -125, -125, -125, -125, 217, -125, -125,
+ -125, -125, -125, -125, -125, -125, -125, -125, -125, -125,
+ -125, -125, -125, -125, -125, -125, -19, -125, -125, -125,
+ -125, -125, -125, 88, -125, -125, -125, -125, -125, 122,
+ -125, -125, -125, -125, -125, -125, -125, -125, -125, -125,
+ -125, 224, -125, -125, -125, -125, -125, -125, 27, -125,
+ -125, -125, -125, -125, -125, -93, -125, -125, 254, -125
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
- -1, 1, 7, 210, 211, 284, 285, 8, 78, 79,
- 80, 81, 82, 83, 9, 43, 44, 45, 46, 47,
- 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
- 58, 59, 60, 61, 220, 221, 222, 223, 224, 10,
- 11, 122, 123, 124, 125, 12, 13, 136, 137, 138,
- 139, 140, 141, 142, 143, 144, 145, 146, 14, 66,
- 67, 68, 69, 70, 71, 72, 234, 235, 236, 237,
- 238, 239, 240, 302, 303, 15, 24, 25, 26
+ -1, 1, 7, 214, 215, 289, 290, 8, 79, 80,
+ 81, 82, 83, 84, 85, 9, 43, 44, 45, 46,
+ 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
+ 57, 58, 59, 60, 61, 224, 225, 226, 227, 228,
+ 10, 11, 125, 126, 127, 128, 12, 13, 139, 140,
+ 141, 142, 143, 144, 145, 146, 147, 148, 149, 14,
+ 66, 67, 68, 69, 70, 71, 72, 238, 239, 240,
+ 241, 242, 243, 244, 307, 308, 15, 24, 25, 26
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
- 160, 27, 301, 28, 22, 20, 317, 16, 17, -73,
- 29, 281, 282, 283, 18, 173, 19, 21, 30, 84,
- 126, 228, 31, 23, 229, 32, 33, 34, 85, 86,
- 35, 36, 89, 37, 127, 38, 39, 90, 230, 91,
- 128, 119, 129, 231, 22, 92, 93, 62, 40, 94,
- 95, -126, 96, 130, 41, 73, 42, 232, 63, 64,
- 120, 104, 249, 23, 87, 74, 106, 97, 131, 132,
- 133, 134, 98, 233, 27, 135, 28, 99, 75, 121,
- 190, 276, -73, 29, 100, 101, 76, 217, 102, 256,
- 218, 30, 77, 65, 219, 31, 103, 126, 32, 33,
- 34, 179, 107, 35, 36, 119, 37, 110, 38, 39,
- 108, 127, 109, 112, 62, 117, 113, 128, -126, 129,
- 228, 40, 2, 229, 120, 63, 64, 41, 114, 42,
- 130, 73, 269, 306, 307, 308, 3, 230, 115, 4,
- 116, 74, 231, 121, 147, 131, 132, 133, 134, 148,
- 5, 6, 135, 149, 75, 150, 232, 151, 152, 153,
- 65, -92, 76, 217, 154, 155, 218, 156, 77, 157,
- 219, 158, 233, 203, 204, 205, 206, 207, 208, 209,
- 259, 260, 261, 262, 263, 264, 265, 161, 159, 165,
- 159, 177, 162, 163, 164, 178, 167, 166, 168, 169,
- 172, 170, 171, 174, 175, 250, 176, 180, 270, 277,
- 191, 181, 182, 183, 184, 185, 186, 187, 188, 189,
- 192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
- 202, 212, 213, 214, 215, 216, 225, 226, 227, 241,
- 242, 243, 244, 245, 246, 247, 248, 249, 274, 251,
- 254, 252, 253, 255, 257, 318, 105, 0, 0, 258,
- 118, 266, 267, 268, 271, 272, 273, 275, 278, 279,
- 280, 286, 287, 88, 289, 288, 290, 291, 292, 293,
- 294, 295, 296, 297, 298, 111, 299, 300, 301, 316,
- 304, 309, 305, 0, 0, 310, 0, 311, 312, 313,
- 314, 315, 319, 320, 321, 322, 323
+ 163, 27, 22, 28, 286, 287, 288, 306, 16, -75,
+ 29, 322, 17, 62, 18, 176, 177, -128, 30, 129,
+ 73, 23, 31, 19, 63, 64, 32, 33, 34, 20,
+ 74, 35, 36, 130, 37, 22, 38, 39, 86, 131,
+ 87, 132, 232, 75, 76, 233, 122, 21, 122, 40,
+ 88, 91, 77, 133, 23, 41, 254, 42, 78, 234,
+ 65, 92, 106, 89, 235, 123, 93, 123, 134, 135,
+ 136, 137, 94, 95, 112, 138, 150, 96, 62, 236,
+ 194, 120, -128, 108, 27, 124, 28, 124, 97, 63,
+ 64, 261, -75, 29, 98, 237, 232, 221, 114, 233,
+ 222, 30, 129, 281, 223, 31, 99, 183, 100, 32,
+ 33, 34, 101, 234, 35, 36, 130, 37, 235, 38,
+ 39, 102, 131, 221, 132, 65, 222, 2, 103, 104,
+ 223, 105, 40, 236, 109, 110, 133, 73, 41, 111,
+ 42, 3, 115, 274, 4, 161, 116, 74, 117, 237,
+ 118, 134, 135, 136, 137, 119, 5, 6, 138, 151,
+ 75, 76, 311, 312, 313, 152, 162, -94, 153, 77,
+ 154, 155, 156, 157, 158, 78, 207, 208, 209, 210,
+ 211, 212, 213, 264, 265, 266, 267, 268, 269, 270,
+ 159, 160, 164, 162, 181, 169, 165, 166, 167, 121,
+ 170, 171, 172, 168, 175, 275, 174, 173, 178, 179,
+ 180, 255, 182, 184, 323, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 205, 206, 216, 217, 218, 219, 220,
+ 229, 230, 231, 245, 246, 247, 248, 249, 250, 251,
+ 252, 253, 254, 279, 256, 259, 257, 258, 260, 262,
+ 107, 195, 0, 0, 263, 282, 271, 272, 273, 276,
+ 277, 278, 280, 283, 284, 285, 291, 292, 90, 294,
+ 293, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 113, 304, 305, 306, 321, 309, 314, 310, 0, 0,
+ 315, 0, 316, 317, 318, 319, 320, 324, 325, 326,
+ 327, 328
};
static const yytype_int16 yycheck[] =
{
- 99, 1, 57, 3, 1, 55, 61, 60, 60, 9,
- 10, 6, 7, 8, 60, 114, 60, 39, 18, 60,
- 1, 1, 22, 20, 4, 25, 26, 27, 60, 63,
- 30, 31, 63, 33, 15, 35, 36, 63, 18, 63,
- 21, 1, 23, 23, 1, 63, 63, 1, 48, 63,
- 63, 5, 63, 34, 54, 1, 56, 37, 12, 13,
- 20, 61, 57, 20, 61, 11, 9, 63, 49, 50,
- 51, 52, 63, 53, 1, 56, 3, 63, 24, 39,
- 61, 61, 9, 10, 63, 63, 32, 16, 63, 188,
- 19, 18, 38, 47, 23, 22, 63, 1, 25, 26,
- 27, 61, 63, 30, 31, 1, 33, 61, 35, 36,
- 63, 15, 63, 5, 1, 61, 63, 21, 5, 23,
- 1, 48, 0, 4, 20, 12, 13, 54, 63, 56,
- 34, 1, 61, 281, 282, 283, 14, 18, 63, 17,
- 63, 11, 23, 39, 58, 49, 50, 51, 52, 62,
- 28, 29, 56, 58, 24, 58, 37, 58, 58, 58,
- 47, 39, 32, 16, 58, 58, 19, 58, 38, 58,
- 23, 57, 53, 40, 41, 42, 43, 44, 45, 46,
- 203, 204, 205, 206, 207, 208, 209, 58, 57, 62,
- 57, 63, 58, 58, 58, 63, 58, 60, 58, 58,
- 57, 62, 60, 58, 58, 182, 62, 122, 220, 234,
- 136, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 62, 62, 62, 62, 62, 62, 62, 62, 62, 62,
- 62, 62, 62, 62, 62, 62, 62, 62, 62, 62,
- 62, 62, 62, 58, 58, 62, 57, 57, 60, 58,
- 57, 59, 58, 58, 58, 302, 43, -1, -1, 62,
- 78, 63, 63, 63, 63, 63, 63, 63, 62, 62,
- 62, 62, 62, 24, 62, 64, 62, 62, 62, 62,
- 58, 58, 58, 62, 57, 66, 58, 58, 57, 63,
- 58, 57, 62, -1, -1, 62, -1, 62, 62, 62,
- 62, 62, 62, 62, 58, 62, 62
+ 101, 1, 1, 3, 6, 7, 8, 58, 61, 9,
+ 10, 62, 61, 1, 61, 116, 117, 5, 18, 1,
+ 1, 20, 22, 61, 12, 13, 26, 27, 28, 56,
+ 11, 31, 32, 15, 34, 1, 36, 37, 61, 21,
+ 61, 23, 1, 24, 25, 4, 1, 40, 1, 49,
+ 64, 64, 33, 35, 20, 55, 58, 57, 39, 18,
+ 48, 64, 62, 62, 23, 20, 64, 20, 50, 51,
+ 52, 53, 64, 64, 62, 57, 59, 64, 1, 38,
+ 62, 62, 5, 9, 1, 40, 3, 40, 64, 12,
+ 13, 192, 9, 10, 64, 54, 1, 16, 5, 4,
+ 19, 18, 1, 62, 23, 22, 64, 62, 64, 26,
+ 27, 28, 64, 18, 31, 32, 15, 34, 23, 36,
+ 37, 64, 21, 16, 23, 48, 19, 0, 64, 64,
+ 23, 64, 49, 38, 64, 64, 35, 1, 55, 64,
+ 57, 14, 64, 62, 17, 58, 64, 11, 64, 54,
+ 64, 50, 51, 52, 53, 64, 29, 30, 57, 63,
+ 24, 25, 286, 287, 288, 59, 58, 40, 59, 33,
+ 59, 59, 59, 59, 59, 39, 41, 42, 43, 44,
+ 45, 46, 47, 207, 208, 209, 210, 211, 212, 213,
+ 59, 59, 59, 58, 64, 61, 59, 59, 59, 79,
+ 59, 59, 59, 63, 58, 224, 61, 63, 59, 59,
+ 63, 186, 64, 125, 307, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63, 59, 59,
+ 63, 58, 58, 61, 59, 58, 60, 59, 59, 59,
+ 43, 139, -1, -1, 63, 238, 64, 64, 64, 64,
+ 64, 64, 64, 63, 63, 63, 63, 63, 24, 63,
+ 65, 63, 63, 63, 63, 59, 59, 59, 63, 58,
+ 66, 59, 59, 58, 64, 59, 58, 63, -1, -1,
+ 63, -1, 63, 63, 63, 63, 63, 63, 63, 59,
+ 63, 63
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const yytype_uint8 yystos[] =
{
- 0, 66, 0, 14, 17, 28, 29, 67, 72, 79,
- 104, 105, 110, 111, 123, 140, 60, 60, 60, 60,
- 55, 39, 1, 20, 141, 142, 143, 1, 3, 10,
- 18, 22, 25, 26, 27, 30, 31, 33, 35, 36,
- 48, 54, 56, 80, 81, 82, 83, 84, 85, 86,
- 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
- 97, 98, 1, 12, 13, 47, 124, 125, 126, 127,
- 128, 129, 130, 1, 11, 24, 32, 38, 73, 74,
- 75, 76, 77, 78, 60, 60, 63, 61, 142, 63,
- 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, 63, 61, 81, 9, 63, 63, 63,
- 61, 125, 5, 63, 63, 63, 63, 61, 74, 1,
- 20, 39, 106, 107, 108, 109, 1, 15, 21, 23,
- 34, 49, 50, 51, 52, 56, 112, 113, 114, 115,
- 116, 117, 118, 119, 120, 121, 122, 58, 62, 58,
- 58, 58, 58, 58, 58, 58, 58, 58, 57, 57,
- 69, 58, 58, 58, 58, 62, 60, 58, 58, 58,
- 62, 60, 57, 69, 58, 58, 62, 63, 63, 61,
- 107, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 61, 113, 62, 62, 62, 62, 62, 62, 62, 62,
- 62, 62, 62, 40, 41, 42, 43, 44, 45, 46,
- 68, 69, 62, 62, 62, 62, 62, 16, 19, 23,
- 99, 100, 101, 102, 103, 62, 62, 62, 1, 4,
- 18, 23, 37, 53, 131, 132, 133, 134, 135, 136,
- 137, 62, 62, 62, 62, 58, 58, 62, 57, 57,
- 71, 58, 59, 58, 57, 58, 69, 58, 62, 68,
- 68, 68, 68, 68, 68, 68, 63, 63, 63, 61,
- 100, 63, 63, 63, 60, 63, 61, 132, 62, 62,
- 62, 6, 7, 8, 70, 71, 62, 62, 64, 62,
- 62, 62, 62, 62, 58, 58, 58, 62, 57, 58,
- 58, 57, 138, 139, 58, 62, 70, 70, 70, 57,
- 62, 62, 62, 62, 62, 62, 63, 61, 139, 62,
- 62, 58, 62, 62
+ 0, 67, 0, 14, 17, 29, 30, 68, 73, 81,
+ 106, 107, 112, 113, 125, 142, 61, 61, 61, 61,
+ 56, 40, 1, 20, 143, 144, 145, 1, 3, 10,
+ 18, 22, 26, 27, 28, 31, 32, 34, 36, 37,
+ 49, 55, 57, 82, 83, 84, 85, 86, 87, 88,
+ 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
+ 99, 100, 1, 12, 13, 48, 126, 127, 128, 129,
+ 130, 131, 132, 1, 11, 24, 25, 33, 39, 74,
+ 75, 76, 77, 78, 79, 80, 61, 61, 64, 62,
+ 144, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 62, 83, 9, 64,
+ 64, 64, 62, 127, 5, 64, 64, 64, 64, 64,
+ 62, 75, 1, 20, 40, 108, 109, 110, 111, 1,
+ 15, 21, 23, 35, 50, 51, 52, 53, 57, 114,
+ 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
+ 59, 63, 59, 59, 59, 59, 59, 59, 59, 59,
+ 59, 58, 58, 70, 59, 59, 59, 59, 63, 61,
+ 59, 59, 59, 63, 61, 58, 70, 70, 59, 59,
+ 63, 64, 64, 62, 109, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 62, 115, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 41, 42, 43,
+ 44, 45, 46, 47, 69, 70, 63, 63, 63, 63,
+ 63, 16, 19, 23, 101, 102, 103, 104, 105, 63,
+ 63, 63, 1, 4, 18, 23, 38, 54, 133, 134,
+ 135, 136, 137, 138, 139, 63, 63, 63, 63, 63,
+ 59, 59, 63, 58, 58, 72, 59, 60, 59, 58,
+ 59, 70, 59, 63, 69, 69, 69, 69, 69, 69,
+ 69, 64, 64, 64, 62, 102, 64, 64, 64, 61,
+ 64, 62, 134, 63, 63, 63, 6, 7, 8, 71,
+ 72, 63, 63, 65, 63, 63, 63, 63, 63, 59,
+ 59, 59, 63, 58, 59, 59, 58, 140, 141, 59,
+ 63, 71, 71, 71, 58, 63, 63, 63, 63, 63,
+ 63, 64, 62, 141, 63, 63, 59, 63, 63
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_uint8 yyr1[] =
{
- 0, 65, 66, 66, 67, 67, 67, 67, 67, 67,
- 68, 68, 69, 69, 69, 69, 69, 69, 69, 69,
- 70, 70, 71, 71, 71, 71, 72, 73, 73, 74,
- 74, 74, 74, 74, 75, 76, 77, 78, 79, 80,
- 80, 81, 81, 81, 81, 81, 81, 81, 81, 81,
- 81, 81, 81, 81, 81, 81, 81, 81, 82, 83,
+ 0, 66, 67, 67, 68, 68, 68, 68, 68, 68,
+ 69, 69, 70, 70, 70, 70, 70, 70, 70, 70,
+ 71, 71, 72, 72, 72, 72, 73, 74, 74, 75,
+ 75, 75, 75, 75, 75, 76, 77, 78, 79, 80,
+ 81, 82, 82, 83, 83, 83, 83, 83, 83, 83,
+ 83, 83, 83, 83, 83, 83, 83, 83, 83, 83,
84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
- 94, 95, 96, 98, 97, 99, 99, 100, 100, 100,
- 101, 102, 103, 105, 104, 106, 106, 107, 107, 107,
- 108, 109, 111, 110, 112, 112, 113, 113, 113, 113,
- 113, 113, 113, 113, 113, 113, 114, 115, 116, 117,
- 118, 119, 120, 121, 122, 123, 124, 124, 125, 125,
- 125, 125, 125, 126, 127, 128, 130, 129, 131, 131,
- 132, 132, 132, 132, 132, 132, 133, 134, 135, 136,
- 137, 138, 138, 139, 140, 141, 141, 142, 142, 143
+ 94, 95, 96, 97, 98, 100, 99, 101, 101, 102,
+ 102, 102, 103, 104, 105, 107, 106, 108, 108, 109,
+ 109, 109, 110, 111, 113, 112, 114, 114, 115, 115,
+ 115, 115, 115, 115, 115, 115, 115, 115, 116, 117,
+ 118, 119, 120, 121, 122, 123, 124, 125, 126, 126,
+ 127, 127, 127, 127, 127, 128, 129, 130, 132, 131,
+ 133, 133, 134, 134, 134, 134, 134, 134, 135, 136,
+ 137, 138, 139, 140, 140, 141, 142, 143, 143, 144,
+ 144, 145
};
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
0, 2, 0, 2, 1, 1, 1, 1, 1, 1,
0, 1, 2, 3, 3, 3, 3, 3, 3, 3,
0, 1, 2, 3, 3, 3, 5, 2, 1, 1,
- 1, 1, 1, 1, 4, 4, 4, 4, 5, 2,
+ 1, 1, 1, 1, 1, 4, 4, 4, 4, 4,
+ 5, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 0, 6, 2, 1, 1, 1, 1,
- 4, 4, 4, 0, 6, 2, 1, 1, 1, 1,
- 4, 4, 0, 6, 2, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 4, 4, 4, 4,
- 4, 4, 4, 4, 6, 5, 2, 1, 1, 1,
- 1, 1, 1, 4, 4, 4, 0, 6, 2, 1,
- 1, 1, 1, 1, 1, 1, 4, 4, 4, 4,
- 5, 2, 1, 4, 5, 2, 1, 1, 1, 4
+ 4, 4, 4, 4, 4, 0, 6, 2, 1, 1,
+ 1, 1, 4, 4, 4, 0, 6, 2, 1, 1,
+ 1, 1, 4, 4, 0, 6, 2, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 4, 4,
+ 4, 4, 4, 4, 4, 4, 6, 5, 2, 1,
+ 1, 1, 1, 1, 1, 4, 4, 4, 0, 6,
+ 2, 1, 1, 1, 1, 1, 1, 1, 4, 4,
+ 4, 4, 5, 2, 1, 4, 5, 2, 1, 1,
+ 1, 4
};
switch (yyn)
{
case 10:
-#line 112 "config-parser.y" /* yacc.c:1646 */
+#line 114 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = 0; }
-#line 1574 "config-parser.c" /* yacc.c:1646 */
+#line 1582 "config-parser.c" /* yacc.c:1646 */
break;
case 12:
-#line 113 "config-parser.y" /* yacc.c:1646 */
+#line 115 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-1].number) + (yyvsp[0].number); }
-#line 1580 "config-parser.c" /* yacc.c:1646 */
+#line 1588 "config-parser.c" /* yacc.c:1646 */
break;
case 13:
-#line 114 "config-parser.y" /* yacc.c:1646 */
+#line 116 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) + (yyvsp[0].number); }
-#line 1586 "config-parser.c" /* yacc.c:1646 */
+#line 1594 "config-parser.c" /* yacc.c:1646 */
break;
case 14:
-#line 115 "config-parser.y" /* yacc.c:1646 */
+#line 117 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 + (yyvsp[0].number); }
-#line 1592 "config-parser.c" /* yacc.c:1646 */
+#line 1600 "config-parser.c" /* yacc.c:1646 */
break;
case 15:
-#line 116 "config-parser.y" /* yacc.c:1646 */
+#line 118 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 * 60 + (yyvsp[0].number); }
-#line 1598 "config-parser.c" /* yacc.c:1646 */
+#line 1606 "config-parser.c" /* yacc.c:1646 */
break;
case 16:
-#line 117 "config-parser.y" /* yacc.c:1646 */
+#line 119 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 + (yyvsp[0].number); }
-#line 1604 "config-parser.c" /* yacc.c:1646 */
+#line 1612 "config-parser.c" /* yacc.c:1646 */
break;
case 17:
-#line 118 "config-parser.y" /* yacc.c:1646 */
+#line 120 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 * 7 + (yyvsp[0].number); }
-#line 1610 "config-parser.c" /* yacc.c:1646 */
+#line 1618 "config-parser.c" /* yacc.c:1646 */
break;
case 18:
-#line 119 "config-parser.y" /* yacc.c:1646 */
+#line 121 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 * 7 * 4 + (yyvsp[0].number); }
-#line 1616 "config-parser.c" /* yacc.c:1646 */
+#line 1624 "config-parser.c" /* yacc.c:1646 */
break;
case 19:
-#line 120 "config-parser.y" /* yacc.c:1646 */
+#line 122 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 60 * 60 * 24 * 365 + (yyvsp[0].number); }
-#line 1622 "config-parser.c" /* yacc.c:1646 */
+#line 1630 "config-parser.c" /* yacc.c:1646 */
break;
case 20:
-#line 123 "config-parser.y" /* yacc.c:1646 */
+#line 125 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = 0; }
-#line 1628 "config-parser.c" /* yacc.c:1646 */
+#line 1636 "config-parser.c" /* yacc.c:1646 */
break;
case 22:
-#line 124 "config-parser.y" /* yacc.c:1646 */
+#line 126 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-1].number) + (yyvsp[0].number); }
-#line 1634 "config-parser.c" /* yacc.c:1646 */
+#line 1642 "config-parser.c" /* yacc.c:1646 */
break;
case 23:
-#line 125 "config-parser.y" /* yacc.c:1646 */
+#line 127 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) + (yyvsp[0].number); }
-#line 1640 "config-parser.c" /* yacc.c:1646 */
+#line 1648 "config-parser.c" /* yacc.c:1646 */
break;
case 24:
-#line 126 "config-parser.y" /* yacc.c:1646 */
+#line 128 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 1024 + (yyvsp[0].number); }
-#line 1646 "config-parser.c" /* yacc.c:1646 */
+#line 1654 "config-parser.c" /* yacc.c:1646 */
break;
case 25:
-#line 127 "config-parser.y" /* yacc.c:1646 */
+#line 129 "config-parser.y" /* yacc.c:1646 */
{ (yyval.number) = (yyvsp[-2].number) * 1024 * 1024 + (yyvsp[0].number); }
-#line 1652 "config-parser.c" /* yacc.c:1646 */
+#line 1660 "config-parser.c" /* yacc.c:1646 */
break;
- case 34:
-#line 144 "config-parser.y" /* yacc.c:1646 */
+ case 35:
+#line 147 "config-parser.y" /* yacc.c:1646 */
{
OptionsItem->negcache = (yyvsp[-1].number);
}
-#line 1660 "config-parser.c" /* yacc.c:1646 */
+#line 1668 "config-parser.c" /* yacc.c:1646 */
break;
- case 35:
-#line 149 "config-parser.y" /* yacc.c:1646 */
+ case 36:
+#line 152 "config-parser.y" /* yacc.c:1646 */
+ {
+ OptionsItem->negcache_rebuild = (yyvsp[-1].number);
+}
+#line 1676 "config-parser.c" /* yacc.c:1646 */
+ break;
+
+ case 37:
+#line 157 "config-parser.y" /* yacc.c:1646 */
{
MyFree(OptionsItem->pidfile);
OptionsItem->pidfile = xstrdup((yyvsp[-1].string));
}
-#line 1669 "config-parser.c" /* yacc.c:1646 */
+#line 1685 "config-parser.c" /* yacc.c:1646 */
break;
- case 36:
-#line 155 "config-parser.y" /* yacc.c:1646 */
+ case 38:
+#line 163 "config-parser.y" /* yacc.c:1646 */
{
OptionsItem->dns_fdlimit = (yyvsp[-1].number);
}
-#line 1677 "config-parser.c" /* yacc.c:1646 */
+#line 1693 "config-parser.c" /* yacc.c:1646 */
break;
- case 37:
-#line 160 "config-parser.y" /* yacc.c:1646 */
+ case 39:
+#line 168 "config-parser.y" /* yacc.c:1646 */
{
MyFree(OptionsItem->scanlog);
OptionsItem->scanlog = xstrdup((yyvsp[-1].string));
}
-#line 1686 "config-parser.c" /* yacc.c:1646 */
+#line 1702 "config-parser.c" /* yacc.c:1646 */
break;
- case 58:
-#line 191 "config-parser.y" /* yacc.c:1646 */
+ case 60:
+#line 199 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->away);
IRCItem->away = xstrdup((yyvsp[-1].string));
}
-#line 1695 "config-parser.c" /* yacc.c:1646 */
+#line 1711 "config-parser.c" /* yacc.c:1646 */
break;
- case 59:
-#line 197 "config-parser.y" /* yacc.c:1646 */
+ case 61:
+#line 205 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->kline);
IRCItem->kline = xstrdup((yyvsp[-1].string));
}
-#line 1704 "config-parser.c" /* yacc.c:1646 */
+#line 1720 "config-parser.c" /* yacc.c:1646 */
break;
- case 60:
-#line 203 "config-parser.y" /* yacc.c:1646 */
+ case 62:
+#line 211 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->mode);
IRCItem->mode = xstrdup((yyvsp[-1].string));
}
-#line 1713 "config-parser.c" /* yacc.c:1646 */
+#line 1729 "config-parser.c" /* yacc.c:1646 */
break;
- case 61:
-#line 209 "config-parser.y" /* yacc.c:1646 */
+ case 63:
+#line 217 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->nick);
IRCItem->nick = xstrdup((yyvsp[-1].string));
}
-#line 1722 "config-parser.c" /* yacc.c:1646 */
+#line 1738 "config-parser.c" /* yacc.c:1646 */
break;
- case 62:
-#line 215 "config-parser.y" /* yacc.c:1646 */
+ case 64:
+#line 223 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->nickserv);
IRCItem->nickserv = xstrdup((yyvsp[-1].string));
}
-#line 1731 "config-parser.c" /* yacc.c:1646 */
+#line 1747 "config-parser.c" /* yacc.c:1646 */
break;
- case 63:
-#line 221 "config-parser.y" /* yacc.c:1646 */
+ case 65:
+#line 229 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->oper);
IRCItem->oper = xstrdup((yyvsp[-1].string));
}
-#line 1740 "config-parser.c" /* yacc.c:1646 */
+#line 1756 "config-parser.c" /* yacc.c:1646 */
break;
- case 64:
-#line 227 "config-parser.y" /* yacc.c:1646 */
+ case 66:
+#line 235 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->password);
IRCItem->password = xstrdup((yyvsp[-1].string));
}
-#line 1749 "config-parser.c" /* yacc.c:1646 */
+#line 1765 "config-parser.c" /* yacc.c:1646 */
break;
- case 65:
-#line 233 "config-parser.y" /* yacc.c:1646 */
+ case 67:
+#line 241 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
node = node_create(xstrdup((yyvsp[-1].string)));
list_add(IRCItem->performs, node);
}
-#line 1760 "config-parser.c" /* yacc.c:1646 */
+#line 1776 "config-parser.c" /* yacc.c:1646 */
break;
- case 66:
-#line 241 "config-parser.y" /* yacc.c:1646 */
+ case 68:
+#line 249 "config-parser.y" /* yacc.c:1646 */
{
IRCItem->port = (yyvsp[-1].number);
}
-#line 1768 "config-parser.c" /* yacc.c:1646 */
+#line 1784 "config-parser.c" /* yacc.c:1646 */
break;
- case 67:
-#line 246 "config-parser.y" /* yacc.c:1646 */
+ case 69:
+#line 254 "config-parser.y" /* yacc.c:1646 */
{
IRCItem->readtimeout = (yyvsp[-1].number);
}
-#line 1776 "config-parser.c" /* yacc.c:1646 */
+#line 1792 "config-parser.c" /* yacc.c:1646 */
break;
- case 68:
-#line 251 "config-parser.y" /* yacc.c:1646 */
+ case 70:
+#line 259 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->realname);
IRCItem->realname = xstrdup((yyvsp[-1].string));
}
-#line 1785 "config-parser.c" /* yacc.c:1646 */
+#line 1801 "config-parser.c" /* yacc.c:1646 */
break;
- case 69:
-#line 257 "config-parser.y" /* yacc.c:1646 */
+ case 71:
+#line 265 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->server);
IRCItem->server = xstrdup((yyvsp[-1].string));
}
-#line 1794 "config-parser.c" /* yacc.c:1646 */
+#line 1810 "config-parser.c" /* yacc.c:1646 */
break;
- case 70:
-#line 263 "config-parser.y" /* yacc.c:1646 */
+ case 72:
+#line 271 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->username);
IRCItem->username = xstrdup((yyvsp[-1].string));
}
-#line 1803 "config-parser.c" /* yacc.c:1646 */
+#line 1819 "config-parser.c" /* yacc.c:1646 */
break;
- case 71:
-#line 269 "config-parser.y" /* yacc.c:1646 */
+ case 73:
+#line 277 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->vhost);
IRCItem->vhost = xstrdup((yyvsp[-1].string));
}
-#line 1812 "config-parser.c" /* yacc.c:1646 */
+#line 1828 "config-parser.c" /* yacc.c:1646 */
break;
- case 72:
-#line 275 "config-parser.y" /* yacc.c:1646 */
+ case 74:
+#line 283 "config-parser.y" /* yacc.c:1646 */
{
MyFree(IRCItem->connregex);
IRCItem->connregex = xstrdup((yyvsp[-1].string));
}
-#line 1821 "config-parser.c" /* yacc.c:1646 */
+#line 1837 "config-parser.c" /* yacc.c:1646 */
break;
- case 73:
-#line 284 "config-parser.y" /* yacc.c:1646 */
+ case 75:
+#line 292 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
struct ChannelConf *item;
tmp = item;
}
-#line 1841 "config-parser.c" /* yacc.c:1646 */
+#line 1857 "config-parser.c" /* yacc.c:1646 */
break;
- case 80:
-#line 309 "config-parser.y" /* yacc.c:1646 */
+ case 82:
+#line 317 "config-parser.y" /* yacc.c:1646 */
{
struct ChannelConf *item = tmp;
MyFree(item->name);
item->name = xstrdup((yyvsp[-1].string));
}
-#line 1852 "config-parser.c" /* yacc.c:1646 */
+#line 1868 "config-parser.c" /* yacc.c:1646 */
break;
- case 81:
-#line 317 "config-parser.y" /* yacc.c:1646 */
+ case 83:
+#line 325 "config-parser.y" /* yacc.c:1646 */
{
struct ChannelConf *item = tmp;
MyFree(item->key);
item->key = xstrdup((yyvsp[-1].string));
}
-#line 1863 "config-parser.c" /* yacc.c:1646 */
+#line 1879 "config-parser.c" /* yacc.c:1646 */
break;
- case 82:
-#line 325 "config-parser.y" /* yacc.c:1646 */
+ case 84:
+#line 333 "config-parser.y" /* yacc.c:1646 */
{
struct ChannelConf *item = tmp;
MyFree(item->invite);
item->invite = xstrdup((yyvsp[-1].string));
}
-#line 1874 "config-parser.c" /* yacc.c:1646 */
+#line 1890 "config-parser.c" /* yacc.c:1646 */
break;
- case 83:
-#line 335 "config-parser.y" /* yacc.c:1646 */
+ case 85:
+#line 343 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
struct UserConf *item;
tmp = item;
}
-#line 1893 "config-parser.c" /* yacc.c:1646 */
+#line 1909 "config-parser.c" /* yacc.c:1646 */
break;
- case 90:
-#line 359 "config-parser.y" /* yacc.c:1646 */
+ case 92:
+#line 367 "config-parser.y" /* yacc.c:1646 */
{
struct UserConf *item = tmp;
node_t *node;
list_add(item->masks, node);
}
-#line 1906 "config-parser.c" /* yacc.c:1646 */
+#line 1922 "config-parser.c" /* yacc.c:1646 */
break;
- case 91:
-#line 369 "config-parser.y" /* yacc.c:1646 */
+ case 93:
+#line 377 "config-parser.y" /* yacc.c:1646 */
{
struct UserConf *item = tmp;
node_t *node;
list_add(item->scanners, node);
}
-#line 1919 "config-parser.c" /* yacc.c:1646 */
+#line 1935 "config-parser.c" /* yacc.c:1646 */
break;
- case 92:
-#line 381 "config-parser.y" /* yacc.c:1646 */
+ case 94:
+#line 389 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
struct ScannerConf *item, *olditem;
list_add(ScannerItemList, node);
tmp = item;
}
-#line 1967 "config-parser.c" /* yacc.c:1646 */
+#line 1983 "config-parser.c" /* yacc.c:1646 */
break;
- case 106:
-#line 441 "config-parser.y" /* yacc.c:1646 */
+ case 108:
+#line 449 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
MyFree(item->name);
item->name = xstrdup((yyvsp[-1].string));
}
-#line 1977 "config-parser.c" /* yacc.c:1646 */
+#line 1993 "config-parser.c" /* yacc.c:1646 */
break;
- case 107:
-#line 448 "config-parser.y" /* yacc.c:1646 */
+ case 109:
+#line 456 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
MyFree(item->vhost);
item->vhost = xstrdup((yyvsp[-1].string));
}
-#line 1987 "config-parser.c" /* yacc.c:1646 */
+#line 2003 "config-parser.c" /* yacc.c:1646 */
break;
- case 108:
-#line 455 "config-parser.y" /* yacc.c:1646 */
+ case 110:
+#line 463 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
MyFree(item->target_ip);
item->target_ip = xstrdup((yyvsp[-1].string));
}
-#line 1997 "config-parser.c" /* yacc.c:1646 */
+#line 2013 "config-parser.c" /* yacc.c:1646 */
break;
- case 109:
-#line 462 "config-parser.y" /* yacc.c:1646 */
+ case 111:
+#line 470 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
list_add(item->target_string, node);
}
-#line 2016 "config-parser.c" /* yacc.c:1646 */
+#line 2032 "config-parser.c" /* yacc.c:1646 */
break;
- case 110:
-#line 478 "config-parser.y" /* yacc.c:1646 */
+ case 112:
+#line 486 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
item->fd = (yyvsp[-1].number);
}
-#line 2025 "config-parser.c" /* yacc.c:1646 */
+#line 2041 "config-parser.c" /* yacc.c:1646 */
break;
- case 111:
-#line 484 "config-parser.y" /* yacc.c:1646 */
+ case 113:
+#line 492 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
item->target_port = (yyvsp[-1].number);
}
-#line 2034 "config-parser.c" /* yacc.c:1646 */
+#line 2050 "config-parser.c" /* yacc.c:1646 */
break;
- case 112:
-#line 490 "config-parser.y" /* yacc.c:1646 */
+ case 114:
+#line 498 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
item->timeout = (yyvsp[-1].number);
}
-#line 2043 "config-parser.c" /* yacc.c:1646 */
+#line 2059 "config-parser.c" /* yacc.c:1646 */
break;
- case 113:
-#line 496 "config-parser.y" /* yacc.c:1646 */
+ case 115:
+#line 504 "config-parser.y" /* yacc.c:1646 */
{
struct ScannerConf *item = tmp;
item->max_read = (yyvsp[-1].number);
}
-#line 2052 "config-parser.c" /* yacc.c:1646 */
+#line 2068 "config-parser.c" /* yacc.c:1646 */
break;
- case 114:
-#line 502 "config-parser.y" /* yacc.c:1646 */
+ case 116:
+#line 510 "config-parser.y" /* yacc.c:1646 */
{
struct ProtocolConf *item;
struct ScannerConf *item2;
node = node_create(item);
list_add(item2->protocols, node);
}
-#line 2072 "config-parser.c" /* yacc.c:1646 */
+#line 2088 "config-parser.c" /* yacc.c:1646 */
break;
- case 123:
-#line 532 "config-parser.y" /* yacc.c:1646 */
+ case 125:
+#line 540 "config-parser.y" /* yacc.c:1646 */
{
MyFree(OpmItem->dnsbl_from);
OpmItem->dnsbl_from = xstrdup((yyvsp[-1].string));
}
-#line 2081 "config-parser.c" /* yacc.c:1646 */
+#line 2097 "config-parser.c" /* yacc.c:1646 */
break;
- case 124:
-#line 538 "config-parser.y" /* yacc.c:1646 */
+ case 126:
+#line 546 "config-parser.y" /* yacc.c:1646 */
{
MyFree(OpmItem->dnsbl_to);
OpmItem->dnsbl_to = xstrdup((yyvsp[-1].string));
}
-#line 2090 "config-parser.c" /* yacc.c:1646 */
+#line 2106 "config-parser.c" /* yacc.c:1646 */
break;
- case 125:
-#line 544 "config-parser.y" /* yacc.c:1646 */
+ case 127:
+#line 552 "config-parser.y" /* yacc.c:1646 */
{
MyFree(OpmItem->sendmail);
OpmItem->sendmail = xstrdup((yyvsp[-1].string));
}
-#line 2099 "config-parser.c" /* yacc.c:1646 */
+#line 2115 "config-parser.c" /* yacc.c:1646 */
break;
- case 126:
-#line 552 "config-parser.y" /* yacc.c:1646 */
+ case 128:
+#line 560 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
struct BlacklistConf *item;
tmp = item;
}
-#line 2121 "config-parser.c" /* yacc.c:1646 */
+#line 2137 "config-parser.c" /* yacc.c:1646 */
break;
- case 136:
-#line 581 "config-parser.y" /* yacc.c:1646 */
+ case 138:
+#line 589 "config-parser.y" /* yacc.c:1646 */
{
struct BlacklistConf *item = tmp;
MyFree(item->name);
item->name = xstrdup((yyvsp[-1].string));
}
-#line 2132 "config-parser.c" /* yacc.c:1646 */
+#line 2148 "config-parser.c" /* yacc.c:1646 */
break;
- case 137:
-#line 588 "config-parser.y" /* yacc.c:1646 */
+ case 139:
+#line 596 "config-parser.y" /* yacc.c:1646 */
{
struct BlacklistConf *item = tmp;
MyFree(item->kline);
item->kline = xstrdup((yyvsp[-1].string));
}
-#line 2143 "config-parser.c" /* yacc.c:1646 */
+#line 2159 "config-parser.c" /* yacc.c:1646 */
break;
- case 138:
-#line 595 "config-parser.y" /* yacc.c:1646 */
+ case 140:
+#line 603 "config-parser.y" /* yacc.c:1646 */
{
struct BlacklistConf *item = tmp;
else
yyerror("Unknown blacklist type defined");
}
-#line 2158 "config-parser.c" /* yacc.c:1646 */
+#line 2174 "config-parser.c" /* yacc.c:1646 */
break;
- case 139:
-#line 606 "config-parser.y" /* yacc.c:1646 */
+ case 141:
+#line 614 "config-parser.y" /* yacc.c:1646 */
{
struct BlacklistConf *item = tmp;
item->ban_unknown = (yyvsp[-1].number);
}
-#line 2168 "config-parser.c" /* yacc.c:1646 */
+#line 2184 "config-parser.c" /* yacc.c:1646 */
break;
- case 143:
-#line 618 "config-parser.y" /* yacc.c:1646 */
+ case 145:
+#line 626 "config-parser.y" /* yacc.c:1646 */
{
struct BlacklistReplyConf *item;
struct BlacklistConf *blacklist = tmp;
node = node_create(item);
list_add(blacklist->reply, node);
}
-#line 2186 "config-parser.c" /* yacc.c:1646 */
+#line 2202 "config-parser.c" /* yacc.c:1646 */
break;
- case 149:
-#line 644 "config-parser.y" /* yacc.c:1646 */
+ case 151:
+#line 652 "config-parser.y" /* yacc.c:1646 */
{
node_t *node;
node = node_create(xstrdup((yyvsp[-1].string)));
list_add(ExemptItem->masks, node);
}
-#line 2197 "config-parser.c" /* yacc.c:1646 */
+#line 2213 "config-parser.c" /* yacc.c:1646 */
break;
-#line 2201 "config-parser.c" /* yacc.c:1646 */
+#line 2217 "config-parser.c" /* yacc.c:1646 */
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
#endif
return yyresult;
}
-#line 651 "config-parser.y" /* yacc.c:1906 */
+#line 659 "config-parser.y" /* yacc.c:1906 */