/[svn]/ircd-hybrid-7.3/src/ircd_parser.c
ViewVC logotype

Contents of /ircd-hybrid-7.3/src/ircd_parser.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1133 - (show annotations)
Fri May 27 20:11:42 2011 UTC (9 years, 1 month ago) by michael
File MIME type: text/x-chdr
File size: 245537 byte(s)
- Bison 2.5

1 /* A Bison parser, made by GNU Bison 2.5. */
2
3 /* Bison implementation for Yacc-like parsers in C
4
5 Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
6
7 This program is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
19
20 /* As a special exception, you may create a larger work that contains
21 part or all of the Bison parser skeleton and distribute that work
22 under terms of your choice, so long as that work isn't itself a
23 parser generator using the skeleton or a modified version thereof
24 as a parser skeleton. Alternatively, if you modify or redistribute
25 the parser skeleton itself, you may (at your option) remove this
26 special exception, which will cause the skeleton and the resulting
27 Bison output files to be licensed under the GNU General Public
28 License without this special exception.
29
30 This special exception was added by the Free Software Foundation in
31 version 2.2 of Bison. */
32
33 /* C LALR(1) parser skeleton written by Richard Stallman, by
34 simplifying the original so-called "semantic" parser. */
35
36 /* All symbols defined below should begin with yy or YY, to avoid
37 infringing on user name space. This should be done even for local
38 variables, as they might otherwise be expanded by user macros.
39 There are some unavoidable exceptions within include files to
40 define necessary library symbols; they are noted "INFRINGES ON
41 USER NAME SPACE" below. */
42
43 /* Identify Bison output. */
44 #define YYBISON 1
45
46 /* Bison version. */
47 #define YYBISON_VERSION "2.5"
48
49 /* Skeleton name. */
50 #define YYSKELETON_NAME "yacc.c"
51
52 /* Pure parsers. */
53 #define YYPURE 0
54
55 /* Push parsers. */
56 #define YYPUSH 0
57
58 /* Pull parsers. */
59 #define YYPULL 1
60
61 /* Using locations. */
62 #define YYLSP_NEEDED 0
63
64
65
66 /* Copy the first part of user declarations. */
67
68 /* Line 268 of yacc.c */
69 #line 25 "ircd_parser.y"
70
71
72 #define YY_NO_UNPUT
73 #include <sys/types.h>
74 #include <string.h>
75
76 #include "config.h"
77 #include "stdinc.h"
78 #include "ircd.h"
79 #include "list.h"
80 #include "s_conf.h"
81 #include "event.h"
82 #include "s_log.h"
83 #include "client.h" /* for UMODE_ALL only */
84 #include "irc_string.h"
85 #include "sprintf_irc.h"
86 #include "memory.h"
87 #include "modules.h"
88 #include "s_serv.h"
89 #include "hostmask.h"
90 #include "send.h"
91 #include "listener.h"
92 #include "resv.h"
93 #include "numeric.h"
94 #include "s_user.h"
95
96 #ifdef HAVE_LIBCRYPTO
97 #include <openssl/rsa.h>
98 #include <openssl/bio.h>
99 #include <openssl/pem.h>
100 #endif
101
102 static char *class_name = NULL;
103 static struct ConfItem *yy_conf = NULL;
104 static struct AccessItem *yy_aconf = NULL;
105 static struct MatchItem *yy_match_item = NULL;
106 static struct ClassItem *yy_class = NULL;
107 static char *yy_class_name = NULL;
108
109 static dlink_list col_conf_list = { NULL, NULL, 0 };
110 static dlink_list hub_conf_list = { NULL, NULL, 0 };
111 static dlink_list leaf_conf_list = { NULL, NULL, 0 };
112 static unsigned int listener_flags = 0;
113 static unsigned int regex_ban = 0;
114 static char userbuf[IRCD_BUFSIZE];
115 static char hostbuf[IRCD_BUFSIZE];
116 static char reasonbuf[REASONLEN + 1];
117 static char gecos_name[REALLEN * 4];
118
119 static char *resv_reason = NULL;
120 static char *listener_address = NULL;
121 static int not_atom = 0;
122
123 struct CollectItem
124 {
125 dlink_node node;
126 char *name;
127 char *user;
128 char *host;
129 char *passwd;
130 int port;
131 int flags;
132 #ifdef HAVE_LIBCRYPTO
133 char *rsa_public_key_file;
134 RSA *rsa_public_key;
135 #endif
136 };
137
138 static void
139 free_collect_item(struct CollectItem *item)
140 {
141 MyFree(item->name);
142 MyFree(item->user);
143 MyFree(item->host);
144 MyFree(item->passwd);
145 #ifdef HAVE_LIBCRYPTO
146 MyFree(item->rsa_public_key_file);
147 #endif
148 MyFree(item);
149 }
150
151 static void
152 unhook_hub_leaf_confs(void)
153 {
154 dlink_node *ptr;
155 dlink_node *next_ptr;
156 struct CollectItem *yy_hconf;
157 struct CollectItem *yy_lconf;
158
159 DLINK_FOREACH_SAFE(ptr, next_ptr, hub_conf_list.head)
160 {
161 yy_hconf = ptr->data;
162 dlinkDelete(&yy_hconf->node, &hub_conf_list);
163 free_collect_item(yy_hconf);
164 }
165
166 DLINK_FOREACH_SAFE(ptr, next_ptr, leaf_conf_list.head)
167 {
168 yy_lconf = ptr->data;
169 dlinkDelete(&yy_lconf->node, &leaf_conf_list);
170 free_collect_item(yy_lconf);
171 }
172 }
173
174
175
176 /* Line 268 of yacc.c */
177 #line 178 "ircd_parser.c"
178
179 /* Enabling traces. */
180 #ifndef YYDEBUG
181 # define YYDEBUG 0
182 #endif
183
184 /* Enabling verbose error messages. */
185 #ifdef YYERROR_VERBOSE
186 # undef YYERROR_VERBOSE
187 # define YYERROR_VERBOSE 1
188 #else
189 # define YYERROR_VERBOSE 0
190 #endif
191
192 /* Enabling the token table. */
193 #ifndef YYTOKEN_TABLE
194 # define YYTOKEN_TABLE 0
195 #endif
196
197
198 /* Tokens. */
199 #ifndef YYTOKENTYPE
200 # define YYTOKENTYPE
201 /* Put the tokens into the symbol table, so that GDB and other debuggers
202 know about them. */
203 enum yytokentype {
204 ACCEPT_PASSWORD = 258,
205 ACTION = 259,
206 ADMIN = 260,
207 AFTYPE = 261,
208 T_ALLOW = 262,
209 ANTI_NICK_FLOOD = 263,
210 ANTI_SPAM_EXIT_MESSAGE_TIME = 264,
211 AUTOCONN = 265,
212 T_BLOCK = 266,
213 BURST_AWAY = 267,
214 BURST_TOPICWHO = 268,
215 BYTES = 269,
216 KBYTES = 270,
217 MBYTES = 271,
218 GBYTES = 272,
219 TBYTES = 273,
220 CALLER_ID_WAIT = 274,
221 CAN_FLOOD = 275,
222 CAN_IDLE = 276,
223 CHANNEL = 277,
224 CIDR_BITLEN_IPV4 = 278,
225 CIDR_BITLEN_IPV6 = 279,
226 CIPHER_PREFERENCE = 280,
227 CLASS = 281,
228 COMPRESSED = 282,
229 COMPRESSION_LEVEL = 283,
230 CONNECT = 284,
231 CONNECTFREQ = 285,
232 CRYPTLINK = 286,
233 DEFAULT_CIPHER_PREFERENCE = 287,
234 DEFAULT_FLOODCOUNT = 288,
235 DEFAULT_SPLIT_SERVER_COUNT = 289,
236 DEFAULT_SPLIT_USER_COUNT = 290,
237 DENY = 291,
238 DESCRIPTION = 292,
239 DIE = 293,
240 DISABLE_AUTH = 294,
241 DISABLE_FAKE_CHANNELS = 295,
242 DISABLE_HIDDEN = 296,
243 DISABLE_LOCAL_CHANNELS = 297,
244 DISABLE_REMOTE_COMMANDS = 298,
245 DOTS_IN_IDENT = 299,
246 DURATION = 300,
247 EGDPOOL_PATH = 301,
248 EMAIL = 302,
249 ENABLE = 303,
250 ENCRYPTED = 304,
251 EXCEED_LIMIT = 305,
252 EXEMPT = 306,
253 FAILED_OPER_NOTICE = 307,
254 IRCD_FLAGS = 308,
255 FLATTEN_LINKS = 309,
256 FFAILED_OPERLOG = 310,
257 FKILLLOG = 311,
258 FKLINELOG = 312,
259 FGLINELOG = 313,
260 FIOERRLOG = 314,
261 FOPERLOG = 315,
262 FOPERSPYLOG = 316,
263 FUSERLOG = 317,
264 GECOS = 318,
265 GENERAL = 319,
266 GLINE = 320,
267 GLINES = 321,
268 GLINE_EXEMPT = 322,
269 GLINE_LOG = 323,
270 GLINE_TIME = 324,
271 GLINE_MIN_CIDR = 325,
272 GLINE_MIN_CIDR6 = 326,
273 GLOBAL_KILL = 327,
274 IRCD_AUTH = 328,
275 NEED_IDENT = 329,
276 HAVENT_READ_CONF = 330,
277 HIDDEN = 331,
278 HIDDEN_ADMIN = 332,
279 HIDDEN_NAME = 333,
280 HIDDEN_OPER = 334,
281 HIDE_SERVER_IPS = 335,
282 HIDE_SERVERS = 336,
283 HIDE_SPOOF_IPS = 337,
284 HOST = 338,
285 HUB = 339,
286 HUB_MASK = 340,
287 IDLETIME = 341,
288 IGNORE_BOGUS_TS = 342,
289 INVISIBLE_ON_CONNECT = 343,
290 IP = 344,
291 KILL = 345,
292 KILL_CHASE_TIME_LIMIT = 346,
293 KLINE = 347,
294 KLINE_EXEMPT = 348,
295 KLINE_REASON = 349,
296 KLINE_WITH_REASON = 350,
297 KNOCK_DELAY = 351,
298 KNOCK_DELAY_CHANNEL = 352,
299 LEAF_MASK = 353,
300 LINKS_DELAY = 354,
301 LISTEN = 355,
302 T_LOG = 356,
303 LOGGING = 357,
304 LOG_LEVEL = 358,
305 MAX_ACCEPT = 359,
306 MAX_BANS = 360,
307 MAX_CHANS_PER_USER = 361,
308 MAX_GLOBAL = 362,
309 MAX_IDENT = 363,
310 MAX_LOCAL = 364,
311 MAX_NICK_CHANGES = 365,
312 MAX_NICK_TIME = 366,
313 MAX_NUMBER = 367,
314 MAX_TARGETS = 368,
315 MAX_WATCH = 369,
316 MESSAGE_LOCALE = 370,
317 MIN_NONWILDCARD = 371,
318 MIN_NONWILDCARD_SIMPLE = 372,
319 MODULE = 373,
320 MODULES = 374,
321 NAME = 375,
322 NEED_PASSWORD = 376,
323 NETWORK_DESC = 377,
324 NETWORK_NAME = 378,
325 NICK = 379,
326 NICK_CHANGES = 380,
327 NO_CREATE_ON_SPLIT = 381,
328 NO_JOIN_ON_SPLIT = 382,
329 NO_OPER_FLOOD = 383,
330 NO_TILDE = 384,
331 NOT = 385,
332 NUMBER = 386,
333 NUMBER_PER_IDENT = 387,
334 NUMBER_PER_CIDR = 388,
335 NUMBER_PER_IP = 389,
336 NUMBER_PER_IP_GLOBAL = 390,
337 OPERATOR = 391,
338 OPERS_BYPASS_CALLERID = 392,
339 OPER_LOG = 393,
340 OPER_ONLY_UMODES = 394,
341 OPER_PASS_RESV = 395,
342 OPER_SPY_T = 396,
343 OPER_UMODES = 397,
344 JOIN_FLOOD_COUNT = 398,
345 JOIN_FLOOD_TIME = 399,
346 PACE_WAIT = 400,
347 PACE_WAIT_SIMPLE = 401,
348 PASSWORD = 402,
349 PATH = 403,
350 PING_COOKIE = 404,
351 PING_TIME = 405,
352 PING_WARNING = 406,
353 PORT = 407,
354 QSTRING = 408,
355 QUIET_ON_BAN = 409,
356 REASON = 410,
357 REDIRPORT = 411,
358 REDIRSERV = 412,
359 REGEX_T = 413,
360 REHASH = 414,
361 TREJECT_HOLD_TIME = 415,
362 REMOTE = 416,
363 REMOTEBAN = 417,
364 RESTRICT_CHANNELS = 418,
365 RESTRICTED = 419,
366 RSA_PRIVATE_KEY_FILE = 420,
367 RSA_PUBLIC_KEY_FILE = 421,
368 SSL_CERTIFICATE_FILE = 422,
369 T_SSL_CONNECTION_METHOD = 423,
370 T_SSLV3 = 424,
371 T_TLSV1 = 425,
372 RESV = 426,
373 RESV_EXEMPT = 427,
374 SECONDS = 428,
375 MINUTES = 429,
376 HOURS = 430,
377 DAYS = 431,
378 WEEKS = 432,
379 SENDQ = 433,
380 SEND_PASSWORD = 434,
381 SERVERHIDE = 435,
382 SERVERINFO = 436,
383 SERVLINK_PATH = 437,
384 IRCD_SID = 438,
385 TKLINE_EXPIRE_NOTICES = 439,
386 T_SHARED = 440,
387 T_CLUSTER = 441,
388 TYPE = 442,
389 SHORT_MOTD = 443,
390 SILENT = 444,
391 SPOOF = 445,
392 SPOOF_NOTICE = 446,
393 STATS_E_DISABLED = 447,
394 STATS_I_OPER_ONLY = 448,
395 STATS_K_OPER_ONLY = 449,
396 STATS_O_OPER_ONLY = 450,
397 STATS_P_OPER_ONLY = 451,
398 TBOOL = 452,
399 TMASKED = 453,
400 T_REJECT = 454,
401 TS_MAX_DELTA = 455,
402 TS_WARN_DELTA = 456,
403 TWODOTS = 457,
404 T_ALL = 458,
405 T_BOTS = 459,
406 T_SOFTCALLERID = 460,
407 T_CALLERID = 461,
408 T_CCONN = 462,
409 T_CCONN_FULL = 463,
410 T_CLIENT_FLOOD = 464,
411 T_DEAF = 465,
412 T_DEBUG = 466,
413 T_DRONE = 467,
414 T_EXTERNAL = 468,
415 T_FULL = 469,
416 T_INVISIBLE = 470,
417 T_IPV4 = 471,
418 T_IPV6 = 472,
419 T_LOCOPS = 473,
420 T_LOGPATH = 474,
421 T_L_CRIT = 475,
422 T_L_DEBUG = 476,
423 T_L_ERROR = 477,
424 T_L_INFO = 478,
425 T_L_NOTICE = 479,
426 T_L_TRACE = 480,
427 T_L_WARN = 481,
428 T_MAX_CLIENTS = 482,
429 T_NCHANGE = 483,
430 T_OPERWALL = 484,
431 T_REJ = 485,
432 T_SERVER = 486,
433 T_SERVNOTICE = 487,
434 T_SKILL = 488,
435 T_SPY = 489,
436 T_SSL = 490,
437 T_UMODES = 491,
438 T_UNAUTH = 492,
439 T_UNRESV = 493,
440 T_UNXLINE = 494,
441 T_WALLOP = 495,
442 THROTTLE_TIME = 496,
443 TOPICBURST = 497,
444 TRUE_NO_OPER_FLOOD = 498,
445 TKLINE = 499,
446 TXLINE = 500,
447 TRESV = 501,
448 UNKLINE = 502,
449 USER = 503,
450 USE_EGD = 504,
451 USE_EXCEPT = 505,
452 USE_INVEX = 506,
453 USE_KNOCK = 507,
454 USE_LOGGING = 508,
455 USE_WHOIS_ACTUALLY = 509,
456 VHOST = 510,
457 VHOST6 = 511,
458 XLINE = 512,
459 WARN = 513,
460 WARN_NO_NLINE = 514
461 };
462 #endif
463 /* Tokens. */
464 #define ACCEPT_PASSWORD 258
465 #define ACTION 259
466 #define ADMIN 260
467 #define AFTYPE 261
468 #define T_ALLOW 262
469 #define ANTI_NICK_FLOOD 263
470 #define ANTI_SPAM_EXIT_MESSAGE_TIME 264
471 #define AUTOCONN 265
472 #define T_BLOCK 266
473 #define BURST_AWAY 267
474 #define BURST_TOPICWHO 268
475 #define BYTES 269
476 #define KBYTES 270
477 #define MBYTES 271
478 #define GBYTES 272
479 #define TBYTES 273
480 #define CALLER_ID_WAIT 274
481 #define CAN_FLOOD 275
482 #define CAN_IDLE 276
483 #define CHANNEL 277
484 #define CIDR_BITLEN_IPV4 278
485 #define CIDR_BITLEN_IPV6 279
486 #define CIPHER_PREFERENCE 280
487 #define CLASS 281
488 #define COMPRESSED 282
489 #define COMPRESSION_LEVEL 283
490 #define CONNECT 284
491 #define CONNECTFREQ 285
492 #define CRYPTLINK 286
493 #define DEFAULT_CIPHER_PREFERENCE 287
494 #define DEFAULT_FLOODCOUNT 288
495 #define DEFAULT_SPLIT_SERVER_COUNT 289
496 #define DEFAULT_SPLIT_USER_COUNT 290
497 #define DENY 291
498 #define DESCRIPTION 292
499 #define DIE 293
500 #define DISABLE_AUTH 294
501 #define DISABLE_FAKE_CHANNELS 295
502 #define DISABLE_HIDDEN 296
503 #define DISABLE_LOCAL_CHANNELS 297
504 #define DISABLE_REMOTE_COMMANDS 298
505 #define DOTS_IN_IDENT 299
506 #define DURATION 300
507 #define EGDPOOL_PATH 301
508 #define EMAIL 302
509 #define ENABLE 303
510 #define ENCRYPTED 304
511 #define EXCEED_LIMIT 305
512 #define EXEMPT 306
513 #define FAILED_OPER_NOTICE 307
514 #define IRCD_FLAGS 308
515 #define FLATTEN_LINKS 309
516 #define FFAILED_OPERLOG 310
517 #define FKILLLOG 311
518 #define FKLINELOG 312
519 #define FGLINELOG 313
520 #define FIOERRLOG 314
521 #define FOPERLOG 315
522 #define FOPERSPYLOG 316
523 #define FUSERLOG 317
524 #define GECOS 318
525 #define GENERAL 319
526 #define GLINE 320
527 #define GLINES 321
528 #define GLINE_EXEMPT 322
529 #define GLINE_LOG 323
530 #define GLINE_TIME 324
531 #define GLINE_MIN_CIDR 325
532 #define GLINE_MIN_CIDR6 326
533 #define GLOBAL_KILL 327
534 #define IRCD_AUTH 328
535 #define NEED_IDENT 329
536 #define HAVENT_READ_CONF 330
537 #define HIDDEN 331
538 #define HIDDEN_ADMIN 332
539 #define HIDDEN_NAME 333
540 #define HIDDEN_OPER 334
541 #define HIDE_SERVER_IPS 335
542 #define HIDE_SERVERS 336
543 #define HIDE_SPOOF_IPS 337
544 #define HOST 338
545 #define HUB 339
546 #define HUB_MASK 340
547 #define IDLETIME 341
548 #define IGNORE_BOGUS_TS 342
549 #define INVISIBLE_ON_CONNECT 343
550 #define IP 344
551 #define KILL 345
552 #define KILL_CHASE_TIME_LIMIT 346
553 #define KLINE 347
554 #define KLINE_EXEMPT 348
555 #define KLINE_REASON 349
556 #define KLINE_WITH_REASON 350
557 #define KNOCK_DELAY 351
558 #define KNOCK_DELAY_CHANNEL 352
559 #define LEAF_MASK 353
560 #define LINKS_DELAY 354
561 #define LISTEN 355
562 #define T_LOG 356
563 #define LOGGING 357
564 #define LOG_LEVEL 358
565 #define MAX_ACCEPT 359
566 #define MAX_BANS 360
567 #define MAX_CHANS_PER_USER 361
568 #define MAX_GLOBAL 362
569 #define MAX_IDENT 363
570 #define MAX_LOCAL 364
571 #define MAX_NICK_CHANGES 365
572 #define MAX_NICK_TIME 366
573 #define MAX_NUMBER 367
574 #define MAX_TARGETS 368
575 #define MAX_WATCH 369
576 #define MESSAGE_LOCALE 370
577 #define MIN_NONWILDCARD 371
578 #define MIN_NONWILDCARD_SIMPLE 372
579 #define MODULE 373
580 #define MODULES 374
581 #define NAME 375
582 #define NEED_PASSWORD 376
583 #define NETWORK_DESC 377
584 #define NETWORK_NAME 378
585 #define NICK 379
586 #define NICK_CHANGES 380
587 #define NO_CREATE_ON_SPLIT 381
588 #define NO_JOIN_ON_SPLIT 382
589 #define NO_OPER_FLOOD 383
590 #define NO_TILDE 384
591 #define NOT 385
592 #define NUMBER 386
593 #define NUMBER_PER_IDENT 387
594 #define NUMBER_PER_CIDR 388
595 #define NUMBER_PER_IP 389
596 #define NUMBER_PER_IP_GLOBAL 390
597 #define OPERATOR 391
598 #define OPERS_BYPASS_CALLERID 392
599 #define OPER_LOG 393
600 #define OPER_ONLY_UMODES 394
601 #define OPER_PASS_RESV 395
602 #define OPER_SPY_T 396
603 #define OPER_UMODES 397
604 #define JOIN_FLOOD_COUNT 398
605 #define JOIN_FLOOD_TIME 399
606 #define PACE_WAIT 400
607 #define PACE_WAIT_SIMPLE 401
608 #define PASSWORD 402
609 #define PATH 403
610 #define PING_COOKIE 404
611 #define PING_TIME 405
612 #define PING_WARNING 406
613 #define PORT 407
614 #define QSTRING 408
615 #define QUIET_ON_BAN 409
616 #define REASON 410
617 #define REDIRPORT 411
618 #define REDIRSERV 412
619 #define REGEX_T 413
620 #define REHASH 414
621 #define TREJECT_HOLD_TIME 415
622 #define REMOTE 416
623 #define REMOTEBAN 417
624 #define RESTRICT_CHANNELS 418
625 #define RESTRICTED 419
626 #define RSA_PRIVATE_KEY_FILE 420
627 #define RSA_PUBLIC_KEY_FILE 421
628 #define SSL_CERTIFICATE_FILE 422
629 #define T_SSL_CONNECTION_METHOD 423
630 #define T_SSLV3 424
631 #define T_TLSV1 425
632 #define RESV 426
633 #define RESV_EXEMPT 427
634 #define SECONDS 428
635 #define MINUTES 429
636 #define HOURS 430
637 #define DAYS 431
638 #define WEEKS 432
639 #define SENDQ 433
640 #define SEND_PASSWORD 434
641 #define SERVERHIDE 435
642 #define SERVERINFO 436
643 #define SERVLINK_PATH 437
644 #define IRCD_SID 438
645 #define TKLINE_EXPIRE_NOTICES 439
646 #define T_SHARED 440
647 #define T_CLUSTER 441
648 #define TYPE 442
649 #define SHORT_MOTD 443
650 #define SILENT 444
651 #define SPOOF 445
652 #define SPOOF_NOTICE 446
653 #define STATS_E_DISABLED 447
654 #define STATS_I_OPER_ONLY 448
655 #define STATS_K_OPER_ONLY 449
656 #define STATS_O_OPER_ONLY 450
657 #define STATS_P_OPER_ONLY 451
658 #define TBOOL 452
659 #define TMASKED 453
660 #define T_REJECT 454
661 #define TS_MAX_DELTA 455
662 #define TS_WARN_DELTA 456
663 #define TWODOTS 457
664 #define T_ALL 458
665 #define T_BOTS 459
666 #define T_SOFTCALLERID 460
667 #define T_CALLERID 461
668 #define T_CCONN 462
669 #define T_CCONN_FULL 463
670 #define T_CLIENT_FLOOD 464
671 #define T_DEAF 465
672 #define T_DEBUG 466
673 #define T_DRONE 467
674 #define T_EXTERNAL 468
675 #define T_FULL 469
676 #define T_INVISIBLE 470
677 #define T_IPV4 471
678 #define T_IPV6 472
679 #define T_LOCOPS 473
680 #define T_LOGPATH 474
681 #define T_L_CRIT 475
682 #define T_L_DEBUG 476
683 #define T_L_ERROR 477
684 #define T_L_INFO 478
685 #define T_L_NOTICE 479
686 #define T_L_TRACE 480
687 #define T_L_WARN 481
688 #define T_MAX_CLIENTS 482
689 #define T_NCHANGE 483
690 #define T_OPERWALL 484
691 #define T_REJ 485
692 #define T_SERVER 486
693 #define T_SERVNOTICE 487
694 #define T_SKILL 488
695 #define T_SPY 489
696 #define T_SSL 490
697 #define T_UMODES 491
698 #define T_UNAUTH 492
699 #define T_UNRESV 493
700 #define T_UNXLINE 494
701 #define T_WALLOP 495
702 #define THROTTLE_TIME 496
703 #define TOPICBURST 497
704 #define TRUE_NO_OPER_FLOOD 498
705 #define TKLINE 499
706 #define TXLINE 500
707 #define TRESV 501
708 #define UNKLINE 502
709 #define USER 503
710 #define USE_EGD 504
711 #define USE_EXCEPT 505
712 #define USE_INVEX 506
713 #define USE_KNOCK 507
714 #define USE_LOGGING 508
715 #define USE_WHOIS_ACTUALLY 509
716 #define VHOST 510
717 #define VHOST6 511
718 #define XLINE 512
719 #define WARN 513
720 #define WARN_NO_NLINE 514
721
722
723
724
725 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
726 typedef union YYSTYPE
727 {
728
729 /* Line 293 of yacc.c */
730 #line 131 "ircd_parser.y"
731
732 int number;
733 char *string;
734
735
736
737 /* Line 293 of yacc.c */
738 #line 739 "ircd_parser.c"
739 } YYSTYPE;
740 # define YYSTYPE_IS_TRIVIAL 1
741 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
742 # define YYSTYPE_IS_DECLARED 1
743 #endif
744
745
746 /* Copy the second part of user declarations. */
747
748
749 /* Line 343 of yacc.c */
750 #line 751 "ircd_parser.c"
751
752 #ifdef short
753 # undef short
754 #endif
755
756 #ifdef YYTYPE_UINT8
757 typedef YYTYPE_UINT8 yytype_uint8;
758 #else
759 typedef unsigned char yytype_uint8;
760 #endif
761
762 #ifdef YYTYPE_INT8
763 typedef YYTYPE_INT8 yytype_int8;
764 #elif (defined __STDC__ || defined __C99__FUNC__ \
765 || defined __cplusplus || defined _MSC_VER)
766 typedef signed char yytype_int8;
767 #else
768 typedef short int yytype_int8;
769 #endif
770
771 #ifdef YYTYPE_UINT16
772 typedef YYTYPE_UINT16 yytype_uint16;
773 #else
774 typedef unsigned short int yytype_uint16;
775 #endif
776
777 #ifdef YYTYPE_INT16
778 typedef YYTYPE_INT16 yytype_int16;
779 #else
780 typedef short int yytype_int16;
781 #endif
782
783 #ifndef YYSIZE_T
784 # ifdef __SIZE_TYPE__
785 # define YYSIZE_T __SIZE_TYPE__
786 # elif defined size_t
787 # define YYSIZE_T size_t
788 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
789 || defined __cplusplus || defined _MSC_VER)
790 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
791 # define YYSIZE_T size_t
792 # else
793 # define YYSIZE_T unsigned int
794 # endif
795 #endif
796
797 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
798
799 #ifndef YY_
800 # if defined YYENABLE_NLS && YYENABLE_NLS
801 # if ENABLE_NLS
802 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
803 # define YY_(msgid) dgettext ("bison-runtime", msgid)
804 # endif
805 # endif
806 # ifndef YY_
807 # define YY_(msgid) msgid
808 # endif
809 #endif
810
811 /* Suppress unused-variable warnings by "using" E. */
812 #if ! defined lint || defined __GNUC__
813 # define YYUSE(e) ((void) (e))
814 #else
815 # define YYUSE(e) /* empty */
816 #endif
817
818 /* Identity function, used to suppress warnings about constant conditions. */
819 #ifndef lint
820 # define YYID(n) (n)
821 #else
822 #if (defined __STDC__ || defined __C99__FUNC__ \
823 || defined __cplusplus || defined _MSC_VER)
824 static int
825 YYID (int yyi)
826 #else
827 static int
828 YYID (yyi)
829 int yyi;
830 #endif
831 {
832 return yyi;
833 }
834 #endif
835
836 #if ! defined yyoverflow || YYERROR_VERBOSE
837
838 /* The parser invokes alloca or malloc; define the necessary symbols. */
839
840 # ifdef YYSTACK_USE_ALLOCA
841 # if YYSTACK_USE_ALLOCA
842 # ifdef __GNUC__
843 # define YYSTACK_ALLOC __builtin_alloca
844 # elif defined __BUILTIN_VA_ARG_INCR
845 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
846 # elif defined _AIX
847 # define YYSTACK_ALLOC __alloca
848 # elif defined _MSC_VER
849 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
850 # define alloca _alloca
851 # else
852 # define YYSTACK_ALLOC alloca
853 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
854 || defined __cplusplus || defined _MSC_VER)
855 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
856 # ifndef EXIT_SUCCESS
857 # define EXIT_SUCCESS 0
858 # endif
859 # endif
860 # endif
861 # endif
862 # endif
863
864 # ifdef YYSTACK_ALLOC
865 /* Pacify GCC's `empty if-body' warning. */
866 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
867 # ifndef YYSTACK_ALLOC_MAXIMUM
868 /* The OS might guarantee only one guard page at the bottom of the stack,
869 and a page size can be as small as 4096 bytes. So we cannot safely
870 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
871 to allow for a few compiler-allocated temporary stack slots. */
872 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
873 # endif
874 # else
875 # define YYSTACK_ALLOC YYMALLOC
876 # define YYSTACK_FREE YYFREE
877 # ifndef YYSTACK_ALLOC_MAXIMUM
878 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
879 # endif
880 # if (defined __cplusplus && ! defined EXIT_SUCCESS \
881 && ! ((defined YYMALLOC || defined malloc) \
882 && (defined YYFREE || defined free)))
883 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
884 # ifndef EXIT_SUCCESS
885 # define EXIT_SUCCESS 0
886 # endif
887 # endif
888 # ifndef YYMALLOC
889 # define YYMALLOC malloc
890 # if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
891 || defined __cplusplus || defined _MSC_VER)
892 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
893 # endif
894 # endif
895 # ifndef YYFREE
896 # define YYFREE free
897 # if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
898 || defined __cplusplus || defined _MSC_VER)
899 void free (void *); /* INFRINGES ON USER NAME SPACE */
900 # endif
901 # endif
902 # endif
903 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
904
905
906 #if (! defined yyoverflow \
907 && (! defined __cplusplus \
908 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
909
910 /* A type that is properly aligned for any stack member. */
911 union yyalloc
912 {
913 yytype_int16 yyss_alloc;
914 YYSTYPE yyvs_alloc;
915 };
916
917 /* The size of the maximum gap between one aligned stack and the next. */
918 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
919
920 /* The size of an array large to enough to hold all stacks, each with
921 N elements. */
922 # define YYSTACK_BYTES(N) \
923 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
924 + YYSTACK_GAP_MAXIMUM)
925
926 # define YYCOPY_NEEDED 1
927
928 /* Relocate STACK from its old location to the new one. The
929 local variables YYSIZE and YYSTACKSIZE give the old and new number of
930 elements in the stack, and YYPTR gives the new location of the
931 stack. Advance YYPTR to a properly aligned location for the next
932 stack. */
933 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
934 do \
935 { \
936 YYSIZE_T yynewbytes; \
937 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
938 Stack = &yyptr->Stack_alloc; \
939 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
940 yyptr += yynewbytes / sizeof (*yyptr); \
941 } \
942 while (YYID (0))
943
944 #endif
945
946 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
947 /* Copy COUNT objects from FROM to TO. The source and destination do
948 not overlap. */
949 # ifndef YYCOPY
950 # if defined __GNUC__ && 1 < __GNUC__
951 # define YYCOPY(To, From, Count) \
952 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
953 # else
954 # define YYCOPY(To, From, Count) \
955 do \
956 { \
957 YYSIZE_T yyi; \
958 for (yyi = 0; yyi < (Count); yyi++) \
959 (To)[yyi] = (From)[yyi]; \
960 } \
961 while (YYID (0))
962 # endif
963 # endif
964 #endif /* !YYCOPY_NEEDED */
965
966 /* YYFINAL -- State number of the termination state. */
967 #define YYFINAL 2
968 /* YYLAST -- Last index in YYTABLE. */
969 #define YYLAST 1258
970
971 /* YYNTOKENS -- Number of terminals. */
972 #define YYNTOKENS 265
973 /* YYNNTS -- Number of nonterminals. */
974 #define YYNNTS 318
975 /* YYNRULES -- Number of rules. */
976 #define YYNRULES 687
977 /* YYNRULES -- Number of states. */
978 #define YYNSTATES 1354
979
980 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
981 #define YYUNDEFTOK 2
982 #define YYMAXUTOK 514
983
984 #define YYTRANSLATE(YYX) \
985 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
986
987 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
988 static const yytype_uint16 yytranslate[] =
989 {
990 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
991 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
992 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
993 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
994 2, 2, 2, 2, 264, 2, 2, 2, 2, 2,
995 2, 2, 2, 2, 2, 2, 2, 2, 2, 260,
996 2, 263, 2, 2, 2, 2, 2, 2, 2, 2,
997 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
998 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
999 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1000 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1001 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1002 2, 2, 2, 262, 2, 261, 2, 2, 2, 2,
1003 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1004 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1005 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1006 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1007 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1008 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1009 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1010 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1011 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1012 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1013 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1014 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1015 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
1016 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
1017 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1018 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1019 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
1020 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1021 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1022 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1023 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
1024 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1025 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
1026 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1027 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
1028 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1029 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
1030 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
1031 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
1032 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
1033 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
1034 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
1035 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1036 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
1037 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
1038 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
1039 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
1040 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
1041 255, 256, 257, 258, 259
1042 };
1043
1044 #if YYDEBUG
1045 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
1046 YYRHS. */
1047 static const yytype_uint16 yyprhs[] =
1048 {
1049 0, 0, 3, 4, 7, 9, 11, 13, 15, 17,
1050 19, 21, 23, 25, 27, 29, 31, 33, 35, 37,
1051 39, 41, 43, 45, 47, 50, 53, 54, 56, 59,
1052 63, 67, 71, 75, 79, 80, 82, 85, 89, 93,
1053 97, 103, 106, 108, 110, 112, 115, 120, 125, 131,
1054 134, 136, 138, 140, 142, 144, 146, 148, 150, 152,
1055 154, 156, 158, 160, 163, 164, 170, 174, 176, 178,
1056 180, 185, 190, 195, 200, 205, 210, 215, 220, 225,
1057 230, 235, 241, 244, 246, 248, 250, 252, 255, 260,
1058 265, 270, 276, 279, 281, 283, 285, 287, 289, 291,
1059 293, 295, 297, 299, 301, 303, 305, 308, 313, 318,
1060 323, 328, 333, 338, 343, 348, 353, 358, 363, 368,
1061 373, 378, 383, 388, 393, 398, 399, 407, 408, 410,
1062 413, 415, 417, 419, 421, 423, 425, 427, 429, 431,
1063 434, 439, 441, 446, 451, 456, 461, 466, 467, 473,
1064 477, 479, 481, 483, 485, 487, 489, 491, 493, 495,
1065 497, 499, 501, 503, 505, 507, 509, 511, 513, 515,
1066 517, 518, 524, 528, 530, 531, 535, 536, 539, 541,
1067 543, 545, 547, 549, 551, 553, 555, 557, 559, 561,
1068 563, 565, 567, 569, 571, 572, 580, 581, 583, 586,
1069 588, 590, 592, 594, 596, 598, 600, 602, 604, 606,
1070 608, 610, 612, 614, 617, 622, 624, 629, 634, 639,
1071 644, 649, 654, 659, 664, 669, 674, 679, 684, 685,
1072 692, 693, 699, 703, 705, 707, 709, 711, 714, 716,
1073 718, 720, 722, 724, 727, 728, 734, 738, 740, 742,
1074 746, 751, 756, 757, 764, 767, 769, 771, 773, 775,
1075 777, 779, 781, 783, 785, 788, 793, 798, 803, 808,
1076 809, 815, 819, 821, 822, 826, 827, 830, 832, 834,
1077 836, 838, 840, 842, 844, 846, 848, 850, 855, 860,
1078 865, 866, 873, 876, 878, 880, 882, 884, 887, 892,
1079 897, 902, 903, 910, 913, 915, 917, 919, 921, 924,
1080 929, 934, 935, 941, 945, 947, 949, 951, 953, 955,
1081 957, 959, 961, 963, 965, 967, 969, 970, 977, 980,
1082 982, 984, 986, 989, 994, 995, 1001, 1005, 1007, 1009,
1083 1011, 1013, 1015, 1017, 1019, 1021, 1023, 1025, 1027, 1029,
1084 1030, 1038, 1039, 1041, 1044, 1046, 1048, 1050, 1052, 1054,
1085 1056, 1058, 1060, 1062, 1064, 1066, 1068, 1070, 1072, 1074,
1086 1077, 1082, 1084, 1089, 1094, 1099, 1104, 1109, 1114, 1119,
1087 1120, 1126, 1130, 1132, 1133, 1137, 1138, 1141, 1143, 1145,
1088 1147, 1149, 1151, 1156, 1161, 1166, 1171, 1176, 1181, 1182,
1089 1189, 1190, 1196, 1200, 1202, 1204, 1207, 1209, 1211, 1213,
1090 1215, 1217, 1222, 1227, 1228, 1235, 1238, 1240, 1242, 1244,
1091 1246, 1251, 1256, 1262, 1265, 1267, 1269, 1271, 1276, 1277,
1092 1284, 1285, 1291, 1295, 1297, 1299, 1302, 1304, 1306, 1308,
1093 1310, 1312, 1317, 1322, 1328, 1331, 1333, 1335, 1337, 1339,
1094 1341, 1343, 1345, 1347, 1349, 1351, 1353, 1355, 1357, 1359,
1095 1361, 1363, 1365, 1367, 1369, 1371, 1373, 1375, 1377, 1379,
1096 1381, 1383, 1385, 1387, 1389, 1391, 1393, 1395, 1397, 1399,
1097 1401, 1403, 1405, 1407, 1409, 1411, 1413, 1415, 1417, 1419,
1098 1421, 1423, 1425, 1427, 1429, 1431, 1433, 1435, 1437, 1439,
1099 1441, 1443, 1445, 1450, 1455, 1460, 1465, 1470, 1475, 1480,
1100 1485, 1490, 1495, 1500, 1505, 1510, 1515, 1520, 1525, 1530,
1101 1535, 1540, 1545, 1550, 1555, 1560, 1565, 1570, 1575, 1580,
1102 1585, 1590, 1595, 1600, 1605, 1610, 1615, 1620, 1625, 1630,
1103 1635, 1640, 1645, 1650, 1655, 1660, 1665, 1670, 1675, 1680,
1104 1685, 1690, 1695, 1700, 1701, 1707, 1711, 1713, 1715, 1717,
1105 1719, 1721, 1723, 1725, 1727, 1729, 1731, 1733, 1735, 1737,
1106 1739, 1741, 1743, 1745, 1747, 1749, 1751, 1752, 1758, 1762,
1107 1764, 1766, 1768, 1770, 1772, 1774, 1776, 1778, 1780, 1782,
1108 1784, 1786, 1788, 1790, 1792, 1794, 1796, 1798, 1800, 1802,
1109 1807, 1812, 1817, 1822, 1823, 1830, 1833, 1835, 1837, 1839,
1110 1841, 1843, 1845, 1847, 1849, 1854, 1859, 1860, 1866, 1870,
1111 1872, 1874, 1876, 1881, 1886, 1887, 1893, 1897, 1899, 1901,
1112 1903, 1909, 1912, 1914, 1916, 1918, 1920, 1922, 1924, 1926,
1113 1928, 1930, 1932, 1934, 1936, 1938, 1940, 1942, 1944, 1946,
1114 1948, 1950, 1952, 1957, 1962, 1967, 1972, 1977, 1982, 1987,
1115 1992, 1997, 2002, 2007, 2012, 2017, 2022, 2027, 2032, 2037,
1116 2042, 2048, 2051, 2053, 2055, 2057, 2059, 2061, 2063, 2065,
1117 2067, 2069, 2074, 2079, 2084, 2089, 2094, 2099
1118 };
1119
1120 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
1121 static const yytype_int16 yyrhs[] =
1122 {
1123 266, 0, -1, -1, 266, 267, -1, 295, -1, 301,
1124 -1, 316, -1, 552, -1, 339, -1, 358, -1, 372,
1125 -1, 277, -1, 573, -1, 390, -1, 397, -1, 407,
1126 -1, 416, -1, 442, -1, 452, -1, 458, -1, 472,
1127 -1, 536, -1, 462, -1, 272, -1, 1, 260, -1,
1128 1, 261, -1, -1, 269, -1, 131, 268, -1, 131,
1129 173, 268, -1, 131, 174, 268, -1, 131, 175, 268,
1130 -1, 131, 176, 268, -1, 131, 177, 268, -1, -1,
1131 271, -1, 131, 270, -1, 131, 14, 270, -1, 131,
1132 15, 270, -1, 131, 16, 270, -1, 119, 262, 273,
1133 261, 260, -1, 273, 274, -1, 274, -1, 275, -1,
1134 276, -1, 1, 260, -1, 118, 263, 153, 260, -1,
1135 148, 263, 153, 260, -1, 181, 262, 278, 261, 260,
1136 -1, 278, 279, -1, 279, -1, 286, -1, 291, -1,
1137 294, -1, 288, -1, 289, -1, 290, -1, 293, -1,
1138 285, -1, 292, -1, 287, -1, 284, -1, 280, -1,
1139 1, 260, -1, -1, 168, 281, 263, 282, 260, -1,
1140 282, 264, 283, -1, 283, -1, 169, -1, 170, -1,
1141 167, 263, 153, 260, -1, 165, 263, 153, 260, -1,
1142 120, 263, 153, 260, -1, 183, 263, 153, 260, -1,
1143 37, 263, 153, 260, -1, 123, 263, 153, 260, -1,
1144 122, 263, 153, 260, -1, 255, 263, 153, 260, -1,
1145 256, 263, 153, 260, -1, 227, 263, 131, 260, -1,
1146 84, 263, 197, 260, -1, 5, 262, 296, 261, 260,
1147 -1, 296, 297, -1, 297, -1, 298, -1, 300, -1,
1148 299, -1, 1, 260, -1, 120, 263, 153, 260, -1,
1149 47, 263, 153, 260, -1, 37, 263, 153, 260, -1,
1150 102, 262, 302, 261, 260, -1, 302, 303, -1, 303,
1151 -1, 304, -1, 305, -1, 314, -1, 315, -1, 306,
1152 -1, 308, -1, 310, -1, 311, -1, 313, -1, 309,
1153 -1, 312, -1, 307, -1, 1, 260, -1, 219, 263,
1154 153, 260, -1, 138, 263, 153, 260, -1, 62, 263,
1155 153, 260, -1, 55, 263, 153, 260, -1, 60, 263,
1156 153, 260, -1, 61, 263, 153, 260, -1, 58, 263,
1157 153, 260, -1, 57, 263, 153, 260, -1, 59, 263,
1158 153, 260, -1, 56, 263, 153, 260, -1, 103, 263,
1159 220, 260, -1, 103, 263, 222, 260, -1, 103, 263,
1160 226, 260, -1, 103, 263, 224, 260, -1, 103, 263,
1161 225, 260, -1, 103, 263, 223, 260, -1, 103, 263,
1162 221, 260, -1, 253, 263, 197, 260, -1, -1, 136,
1163 317, 318, 262, 319, 261, 260, -1, -1, 322, -1,
1164 319, 320, -1, 320, -1, 321, -1, 323, -1, 324,
1165 -1, 328, -1, 327, -1, 325, -1, 326, -1, 332,
1166 -1, 1, 260, -1, 120, 263, 153, 260, -1, 153,
1167 -1, 248, 263, 153, 260, -1, 147, 263, 153, 260,
1168 -1, 49, 263, 197, 260, -1, 166, 263, 153, 260,
1169 -1, 26, 263, 153, 260, -1, -1, 236, 329, 263,
1170 330, 260, -1, 330, 264, 331, -1, 331, -1, 204,
1171 -1, 207, -1, 208, -1, 210, -1, 211, -1, 214,
1172 -1, 233, -1, 228, -1, 230, -1, 237, -1, 234,
1173 -1, 213, -1, 229, -1, 232, -1, 215, -1, 240,
1174 -1, 205, -1, 206, -1, 218, -1, -1, 53, 333,
1175 263, 334, 260, -1, 334, 264, 335, -1, 335, -1,
1176 -1, 130, 336, 338, -1, -1, 337, 338, -1, 72,
1177 -1, 161, -1, 92, -1, 247, -1, 257, -1, 65,
1178 -1, 38, -1, 159, -1, 5, -1, 77, -1, 125,
1179 -1, 229, -1, 141, -1, 79, -1, 162, -1, 49,
1180 -1, -1, 26, 340, 341, 262, 342, 261, 260, -1,
1181 -1, 345, -1, 342, 343, -1, 343, -1, 344, -1,
1182 355, -1, 356, -1, 346, -1, 347, -1, 357, -1,
1183 348, -1, 349, -1, 350, -1, 351, -1, 352, -1,
1184 353, -1, 354, -1, 1, 260, -1, 120, 263, 153,
1185 260, -1, 153, -1, 150, 263, 269, 260, -1, 151,
1186 263, 269, 260, -1, 134, 263, 131, 260, -1, 30,
1187 263, 269, 260, -1, 112, 263, 131, 260, -1, 107,
1188 263, 131, 260, -1, 109, 263, 131, 260, -1, 108,
1189 263, 131, 260, -1, 178, 263, 271, 260, -1, 23,
1190 263, 131, 260, -1, 24, 263, 131, 260, -1, 133,
1191 263, 131, 260, -1, -1, 100, 359, 262, 364, 261,
1192 260, -1, -1, 53, 361, 263, 362, 260, -1, 362,
1193 264, 363, -1, 363, -1, 235, -1, 76, -1, 231,
1194 -1, 364, 365, -1, 365, -1, 366, -1, 360, -1,
1195 370, -1, 371, -1, 1, 260, -1, -1, 152, 263,
1196 368, 367, 260, -1, 368, 264, 369, -1, 369, -1,
1197 131, -1, 131, 202, 131, -1, 89, 263, 153, 260,
1198 -1, 83, 263, 153, 260, -1, -1, 73, 373, 262,
1199 374, 261, 260, -1, 374, 375, -1, 375, -1, 376,
1200 -1, 377, -1, 378, -1, 380, -1, 387, -1, 388,
1201 -1, 389, -1, 379, -1, 1, 260, -1, 248, 263,
1202 153, 260, -1, 147, 263, 153, 260, -1, 26, 263,
1203 153, 260, -1, 49, 263, 197, 260, -1, -1, 53,
1204 381, 263, 382, 260, -1, 382, 264, 383, -1, 383,
1205 -1, -1, 130, 384, 386, -1, -1, 385, 386, -1,
1206 191, -1, 50, -1, 93, -1, 74, -1, 20, -1,
1207 21, -1, 129, -1, 67, -1, 172, -1, 121, -1,
1208 190, 263, 153, 260, -1, 157, 263, 153, 260, -1,
1209 156, 263, 131, 260, -1, -1, 171, 391, 262, 392,
1210 261, 260, -1, 392, 393, -1, 393, -1, 394, -1,
1211 395, -1, 396, -1, 1, 260, -1, 155, 263, 153,
1212 260, -1, 22, 263, 153, 260, -1, 124, 263, 153,
1213 260, -1, -1, 185, 398, 262, 399, 261, 260, -1,
1214 399, 400, -1, 400, -1, 401, -1, 402, -1, 403,
1215 -1, 1, 260, -1, 120, 263, 153, 260, -1, 248,
1216 263, 153, 260, -1, -1, 187, 404, 263, 405, 260,
1217 -1, 405, 264, 406, -1, 406, -1, 92, -1, 244,
1218 -1, 247, -1, 257, -1, 245, -1, 239, -1, 171,
1219 -1, 246, -1, 238, -1, 218, -1, 203, -1, -1,
1220 186, 408, 262, 409, 261, 260, -1, 409, 410, -1,
1221 410, -1, 411, -1, 412, -1, 1, 260, -1, 120,
1222 263, 153, 260, -1, -1, 187, 413, 263, 414, 260,
1223 -1, 414, 264, 415, -1, 415, -1, 92, -1, 244,
1224 -1, 247, -1, 257, -1, 245, -1, 239, -1, 171,
1225 -1, 246, -1, 238, -1, 218, -1, 203, -1, -1,
1226 29, 417, 418, 262, 419, 261, 260, -1, -1, 422,
1227 -1, 419, 420, -1, 420, -1, 421, -1, 423, -1,
1228 424, -1, 425, -1, 426, -1, 428, -1, 427, -1,
1229 429, -1, 438, -1, 439, -1, 440, -1, 437, -1,
1230 436, -1, 441, -1, 1, 260, -1, 120, 263, 153,
1231 260, -1, 153, -1, 83, 263, 153, 260, -1, 255,
1232 263, 153, 260, -1, 179, 263, 153, 260, -1, 3,
1233 263, 153, 260, -1, 152, 263, 131, 260, -1, 6,
1234 263, 216, 260, -1, 6, 263, 217, 260, -1, -1,
1235 53, 430, 263, 431, 260, -1, 431, 264, 432, -1,
1236 432, -1, -1, 130, 433, 435, -1, -1, 434, 435,
1237 -1, 27, -1, 31, -1, 10, -1, 12, -1, 242,
1238 -1, 166, 263, 153, 260, -1, 49, 263, 197, 260,
1239 -1, 85, 263, 153, 260, -1, 98, 263, 153, 260,
1240 -1, 26, 263, 153, 260, -1, 25, 263, 153, 260,
1241 -1, -1, 90, 443, 262, 448, 261, 260, -1, -1,
1242 187, 445, 263, 446, 260, -1, 446, 264, 447, -1,
1243 447, -1, 158, -1, 448, 449, -1, 449, -1, 450,
1244 -1, 451, -1, 444, -1, 1, -1, 248, 263, 153,
1245 260, -1, 155, 263, 153, 260, -1, -1, 36, 453,
1246 262, 454, 261, 260, -1, 454, 455, -1, 455, -1,
1247 456, -1, 457, -1, 1, -1, 89, 263, 153, 260,
1248 -1, 155, 263, 153, 260, -1, 51, 262, 459, 261,
1249 260, -1, 459, 460, -1, 460, -1, 461, -1, 1,
1250 -1, 89, 263, 153, 260, -1, -1, 63, 463, 262,
1251 468, 261, 260, -1, -1, 187, 465, 263, 466, 260,
1252 -1, 466, 264, 467, -1, 467, -1, 158, -1, 468,
1253 469, -1, 469, -1, 470, -1, 471, -1, 464, -1,
1254 1, -1, 120, 263, 153, 260, -1, 155, 263, 153,
1255 260, -1, 64, 262, 473, 261, 260, -1, 473, 474,
1256 -1, 474, -1, 483, -1, 484, -1, 486, -1, 487,
1257 -1, 488, -1, 489, -1, 490, -1, 491, -1, 492,
1258 -1, 493, -1, 482, -1, 495, -1, 496, -1, 497,
1259 -1, 498, -1, 514, -1, 500, -1, 502, -1, 504,
1260 -1, 503, -1, 507, -1, 501, -1, 508, -1, 509,
1261 -1, 510, -1, 511, -1, 513, -1, 512, -1, 528,
1262 -1, 515, -1, 519, -1, 520, -1, 524, -1, 505,
1263 -1, 506, -1, 534, -1, 532, -1, 533, -1, 516,
1264 -1, 485, -1, 517, -1, 518, -1, 535, -1, 523,
1265 -1, 494, -1, 521, -1, 522, -1, 478, -1, 481,
1266 -1, 476, -1, 477, -1, 479, -1, 480, -1, 499,
1267 -1, 475, -1, 1, -1, 114, 263, 131, 260, -1,
1268 70, 263, 131, 260, -1, 71, 263, 131, 260, -1,
1269 12, 263, 197, 260, -1, 254, 263, 197, 260, -1,
1270 160, 263, 269, 260, -1, 184, 263, 197, 260, -1,
1271 91, 263, 269, 260, -1, 82, 263, 197, 260, -1,
1272 87, 263, 197, 260, -1, 43, 263, 197, 260, -1,
1273 52, 263, 197, 260, -1, 8, 263, 197, 260, -1,
1274 111, 263, 269, 260, -1, 110, 263, 131, 260, -1,
1275 104, 263, 131, 260, -1, 9, 263, 269, 260, -1,
1276 201, 263, 269, 260, -1, 200, 263, 269, 260, -1,
1277 75, 263, 131, 260, -1, 95, 263, 197, 260, -1,
1278 94, 263, 153, 260, -1, 88, 263, 197, 260, -1,
1279 259, 263, 197, 260, -1, 192, 263, 197, 260, -1,
1280 195, 263, 197, 260, -1, 196, 263, 197, 260, -1,
1281 194, 263, 197, 260, -1, 194, 263, 198, 260, -1,
1282 193, 263, 197, 260, -1, 193, 263, 198, 260, -1,
1283 145, 263, 269, 260, -1, 19, 263, 269, 260, -1,
1284 137, 263, 197, 260, -1, 146, 263, 269, 260, -1,
1285 188, 263, 197, 260, -1, 128, 263, 197, 260, -1,
1286 243, 263, 197, 260, -1, 140, 263, 197, 260, -1,
1287 115, 263, 153, 260, -1, 86, 263, 269, 260, -1,
1288 44, 263, 131, 260, -1, 113, 263, 131, 260, -1,
1289 182, 263, 153, 260, -1, 32, 263, 153, 260, -1,
1290 28, 263, 131, 260, -1, 249, 263, 197, 260, -1,
1291 46, 263, 153, 260, -1, 149, 263, 197, 260, -1,
1292 39, 263, 197, 260, -1, 241, 263, 269, 260, -1,
1293 -1, 142, 525, 263, 526, 260, -1, 526, 264, 527,
1294 -1, 527, -1, 204, -1, 207, -1, 208, -1, 210,
1295 -1, 211, -1, 214, -1, 233, -1, 228, -1, 230,
1296 -1, 237, -1, 234, -1, 213, -1, 229, -1, 232,
1297 -1, 215, -1, 240, -1, 205, -1, 206, -1, 218,
1298 -1, -1, 139, 529, 263, 530, 260, -1, 530, 264,
1299 531, -1, 531, -1, 204, -1, 207, -1, 208, -1,
1300 210, -1, 211, -1, 214, -1, 233, -1, 228, -1,
1301 230, -1, 237, -1, 234, -1, 213, -1, 229, -1,
1302 232, -1, 215, -1, 240, -1, 205, -1, 206, -1,
1303 218, -1, 116, 263, 131, 260, -1, 117, 263, 131,
1304 260, -1, 33, 263, 131, 260, -1, 209, 263, 271,
1305 260, -1, -1, 66, 537, 262, 538, 261, 260, -1,
1306 538, 539, -1, 539, -1, 540, -1, 541, -1, 542,
1307 -1, 546, -1, 547, -1, 548, -1, 1, -1, 48,
1308 263, 197, 260, -1, 45, 263, 269, 260, -1, -1,
1309 102, 543, 263, 544, 260, -1, 544, 264, 545, -1,
1310 545, -1, 199, -1, 11, -1, 248, 263, 153, 260,
1311 -1, 120, 263, 153, 260, -1, -1, 4, 549, 263,
1312 550, 260, -1, 550, 264, 551, -1, 551, -1, 199,
1313 -1, 11, -1, 22, 262, 553, 261, 260, -1, 553,
1314 554, -1, 554, -1, 557, -1, 558, -1, 559, -1,
1315 560, -1, 565, -1, 561, -1, 562, -1, 563, -1,
1316 564, -1, 566, -1, 567, -1, 568, -1, 556, -1,
1317 569, -1, 570, -1, 571, -1, 572, -1, 555, -1,
1318 1, -1, 40, 263, 197, 260, -1, 163, 263, 197,
1319 260, -1, 42, 263, 197, 260, -1, 250, 263, 197,
1320 260, -1, 251, 263, 197, 260, -1, 252, 263, 197,
1321 260, -1, 96, 263, 269, 260, -1, 97, 263, 269,
1322 260, -1, 106, 263, 131, 260, -1, 154, 263, 197,
1323 260, -1, 105, 263, 131, 260, -1, 35, 263, 131,
1324 260, -1, 34, 263, 131, 260, -1, 126, 263, 197,
1325 260, -1, 127, 263, 197, 260, -1, 13, 263, 197,
1326 260, -1, 143, 263, 131, 260, -1, 144, 263, 269,
1327 260, -1, 180, 262, 574, 261, 260, -1, 574, 575,
1328 -1, 575, -1, 576, -1, 577, -1, 579, -1, 581,
1329 -1, 580, -1, 578, -1, 582, -1, 1, -1, 54,
1330 263, 197, 260, -1, 81, 263, 197, 260, -1, 78,
1331 263, 153, 260, -1, 99, 263, 269, 260, -1, 76,
1332 263, 197, 260, -1, 41, 263, 197, 260, -1, 80,
1333 263, 197, 260, -1
1334 };
1335
1336 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
1337 static const yytype_uint16 yyrline[] =
1338 {
1339 0, 394, 394, 395, 398, 399, 400, 401, 402, 403,
1340 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
1341 414, 415, 416, 417, 418, 419, 423, 423, 424, 428,
1342 432, 436, 440, 444, 450, 450, 451, 452, 453, 454,
1343 461, 464, 464, 465, 465, 465, 467, 473, 480, 482,
1344 482, 483, 483, 484, 484, 485, 485, 486, 487, 487,
1345 488, 488, 489, 490, 494, 493, 512, 512, 513, 519,
1346 527, 561, 621, 636, 651, 660, 674, 683, 711, 741,
1347 764, 773, 775, 775, 776, 776, 777, 777, 779, 788,
1348 797, 810, 812, 813, 815, 815, 816, 817, 817, 818,
1349 818, 819, 819, 820, 820, 821, 822, 824, 828, 832,
1350 839, 846, 853, 860, 867, 874, 881, 888, 892, 896,
1351 900, 904, 908, 912, 918, 928, 927, 1021, 1021, 1022,
1352 1022, 1023, 1023, 1023, 1024, 1024, 1024, 1025, 1025, 1025,
1353 1027, 1039, 1051, 1085, 1097, 1108, 1150, 1160, 1159, 1165,
1354 1165, 1166, 1170, 1174, 1178, 1182, 1186, 1190, 1194, 1198,
1355 1202, 1206, 1210, 1214, 1218, 1222, 1226, 1230, 1234, 1238,
1356 1245, 1244, 1248, 1248, 1249, 1249, 1250, 1250, 1252, 1259,
1357 1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329,
1358 1336, 1343, 1350, 1357, 1371, 1370, 1420, 1420, 1422, 1422,
1359 1423, 1424, 1424, 1425, 1426, 1427, 1428, 1429, 1430, 1431,
1360 1432, 1433, 1434, 1435, 1437, 1446, 1455, 1461, 1467, 1473,
1361 1479, 1485, 1491, 1497, 1503, 1509, 1515, 1521, 1531, 1530,
1362 1547, 1546, 1551, 1551, 1552, 1556, 1560, 1568, 1568, 1569,
1363 1569, 1569, 1569, 1569, 1571, 1571, 1573, 1573, 1575, 1589,
1364 1609, 1618, 1631, 1630, 1699, 1699, 1700, 1700, 1700, 1700,
1365 1701, 1701, 1701, 1702, 1702, 1704, 1741, 1754, 1763, 1775,
1366 1774, 1778, 1778, 1779, 1779, 1780, 1780, 1782, 1789, 1796,
1367 1803, 1810, 1817, 1824, 1831, 1838, 1845, 1855, 1874, 1884,
1368 1898, 1897, 1913, 1913, 1914, 1914, 1914, 1914, 1916, 1925,
1369 1940, 1954, 1953, 1969, 1969, 1970, 1970, 1970, 1970, 1972,
1370 1981, 2004, 2003, 2009, 2009, 2010, 2014, 2018, 2022, 2026,
1371 2030, 2034, 2038, 2042, 2046, 2050, 2060, 2059, 2076, 2076,
1372 2077, 2077, 2077, 2079, 2086, 2085, 2091, 2091, 2092, 2096,
1373 2100, 2104, 2108, 2112, 2116, 2120, 2124, 2128, 2132, 2142,
1374 2141, 2287, 2287, 2288, 2288, 2289, 2289, 2289, 2290, 2290,
1375 2291, 2291, 2292, 2292, 2292, 2293, 2293, 2294, 2294, 2295,
1376 2297, 2309, 2321, 2330, 2356, 2374, 2392, 2398, 2402, 2411,
1377 2410, 2414, 2414, 2415, 2415, 2416, 2416, 2418, 2429, 2436,
1378 2443, 2450, 2460, 2501, 2512, 2525, 2538, 2547, 2583, 2582,
1379 2646, 2645, 2649, 2649, 2650, 2656, 2656, 2657, 2657, 2657,
1380 2657, 2659, 2678, 2688, 2687, 2710, 2710, 2711, 2711, 2711,
1381 2713, 2719, 2728, 2730, 2730, 2731, 2731, 2733, 2752, 2751,
1382 2799, 2798, 2802, 2802, 2803, 2809, 2809, 2810, 2810, 2810,
1383 2810, 2812, 2818, 2827, 2830, 2830, 2831, 2831, 2832, 2832,
1384 2833, 2833, 2834, 2834, 2835, 2835, 2836, 2836, 2837, 2837,
1385 2838, 2838, 2839, 2839, 2840, 2840, 2841, 2841, 2842, 2842,
1386 2843, 2843, 2844, 2844, 2845, 2845, 2846, 2846, 2847, 2847,
1387 2848, 2848, 2849, 2849, 2850, 2850, 2851, 2852, 2852, 2853,
1388 2853, 2854, 2855, 2855, 2856, 2856, 2857, 2857, 2858, 2858,
1389 2859, 2860, 2863, 2868, 2873, 2878, 2883, 2888, 2893, 2898,
1390 2903, 2908, 2913, 2918, 2923, 2928, 2933, 2938, 2943, 2948,
1391 2953, 2959, 2970, 2975, 2984, 2989, 2994, 2999, 3004, 3009,
1392 3012, 3017, 3020, 3025, 3030, 3035, 3040, 3045, 3050, 3055,
1393 3060, 3065, 3076, 3081, 3086, 3091, 3100, 3132, 3150, 3155,
1394 3164, 3169, 3174, 3180, 3179, 3184, 3184, 3185, 3188, 3191,
1395 3194, 3197, 3200, 3203, 3206, 3209, 3212, 3215, 3218, 3221,
1396 3224, 3227, 3230, 3233, 3236, 3239, 3245, 3244, 3249, 3249,
1397 3250, 3253, 3256, 3259, 3262, 3265, 3268, 3271, 3274, 3277,
1398 3280, 3283, 3286, 3289, 3292, 3295, 3298, 3301, 3304, 3309,
1399 3314, 3319, 3324, 3334, 3333, 3357, 3357, 3358, 3359, 3360,
1400 3361, 3362, 3363, 3364, 3366, 3372, 3379, 3378, 3383, 3383,
1401 3384, 3388, 3394, 3428, 3438, 3437, 3487, 3487, 3488, 3492,
1402 3501, 3504, 3504, 3505, 3505, 3506, 3506, 3507, 3507, 3508,
1403 3508, 3509, 3509, 3510, 3511, 3511, 3512, 3512, 3513, 3513,
1404 3514, 3514, 3516, 3521, 3526, 3531, 3536, 3541, 3546, 3551,
1405 3556, 3561, 3566, 3571, 3576, 3581, 3586, 3591, 3596, 3601,
1406 3609, 3612, 3612, 3613, 3613, 3614, 3615, 3616, 3616, 3617,
1407 3618, 3620, 3626, 3632, 3641, 3655, 3661, 3667
1408 };
1409 #endif
1410
1411 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
1412 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
1413 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
1414 static const char *const yytname[] =
1415 {
1416 "$end", "error", "$undefined", "ACCEPT_PASSWORD", "ACTION", "ADMIN",
1417 "AFTYPE", "T_ALLOW", "ANTI_NICK_FLOOD", "ANTI_SPAM_EXIT_MESSAGE_TIME",
1418 "AUTOCONN", "T_BLOCK", "BURST_AWAY", "BURST_TOPICWHO", "BYTES", "KBYTES",
1419 "MBYTES", "GBYTES", "TBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CAN_IDLE",
1420 "CHANNEL", "CIDR_BITLEN_IPV4", "CIDR_BITLEN_IPV6", "CIPHER_PREFERENCE",
1421 "CLASS", "COMPRESSED", "COMPRESSION_LEVEL", "CONNECT", "CONNECTFREQ",
1422 "CRYPTLINK", "DEFAULT_CIPHER_PREFERENCE", "DEFAULT_FLOODCOUNT",
1423 "DEFAULT_SPLIT_SERVER_COUNT", "DEFAULT_SPLIT_USER_COUNT", "DENY",
1424 "DESCRIPTION", "DIE", "DISABLE_AUTH", "DISABLE_FAKE_CHANNELS",
1425 "DISABLE_HIDDEN", "DISABLE_LOCAL_CHANNELS", "DISABLE_REMOTE_COMMANDS",
1426 "DOTS_IN_IDENT", "DURATION", "EGDPOOL_PATH", "EMAIL", "ENABLE",
1427 "ENCRYPTED", "EXCEED_LIMIT", "EXEMPT", "FAILED_OPER_NOTICE",
1428 "IRCD_FLAGS", "FLATTEN_LINKS", "FFAILED_OPERLOG", "FKILLLOG",
1429 "FKLINELOG", "FGLINELOG", "FIOERRLOG", "FOPERLOG", "FOPERSPYLOG",
1430 "FUSERLOG", "GECOS", "GENERAL", "GLINE", "GLINES", "GLINE_EXEMPT",
1431 "GLINE_LOG", "GLINE_TIME", "GLINE_MIN_CIDR", "GLINE_MIN_CIDR6",
1432 "GLOBAL_KILL", "IRCD_AUTH", "NEED_IDENT", "HAVENT_READ_CONF", "HIDDEN",
1433 "HIDDEN_ADMIN", "HIDDEN_NAME", "HIDDEN_OPER", "HIDE_SERVER_IPS",
1434 "HIDE_SERVERS", "HIDE_SPOOF_IPS", "HOST", "HUB", "HUB_MASK", "IDLETIME",
1435 "IGNORE_BOGUS_TS", "INVISIBLE_ON_CONNECT", "IP", "KILL",
1436 "KILL_CHASE_TIME_LIMIT", "KLINE", "KLINE_EXEMPT", "KLINE_REASON",
1437 "KLINE_WITH_REASON", "KNOCK_DELAY", "KNOCK_DELAY_CHANNEL", "LEAF_MASK",
1438 "LINKS_DELAY", "LISTEN", "T_LOG", "LOGGING", "LOG_LEVEL", "MAX_ACCEPT",
1439 "MAX_BANS", "MAX_CHANS_PER_USER", "MAX_GLOBAL", "MAX_IDENT", "MAX_LOCAL",
1440 "MAX_NICK_CHANGES", "MAX_NICK_TIME", "MAX_NUMBER", "MAX_TARGETS",
1441 "MAX_WATCH", "MESSAGE_LOCALE", "MIN_NONWILDCARD",
1442 "MIN_NONWILDCARD_SIMPLE", "MODULE", "MODULES", "NAME", "NEED_PASSWORD",
1443 "NETWORK_DESC", "NETWORK_NAME", "NICK", "NICK_CHANGES",
1444 "NO_CREATE_ON_SPLIT", "NO_JOIN_ON_SPLIT", "NO_OPER_FLOOD", "NO_TILDE",
1445 "NOT", "NUMBER", "NUMBER_PER_IDENT", "NUMBER_PER_CIDR", "NUMBER_PER_IP",
1446 "NUMBER_PER_IP_GLOBAL", "OPERATOR", "OPERS_BYPASS_CALLERID", "OPER_LOG",
1447 "OPER_ONLY_UMODES", "OPER_PASS_RESV", "OPER_SPY_T", "OPER_UMODES",
1448 "JOIN_FLOOD_COUNT", "JOIN_FLOOD_TIME", "PACE_WAIT", "PACE_WAIT_SIMPLE",
1449 "PASSWORD", "PATH", "PING_COOKIE", "PING_TIME", "PING_WARNING", "PORT",
1450 "QSTRING", "QUIET_ON_BAN", "REASON", "REDIRPORT", "REDIRSERV", "REGEX_T",
1451 "REHASH", "TREJECT_HOLD_TIME", "REMOTE", "REMOTEBAN",
1452 "RESTRICT_CHANNELS", "RESTRICTED", "RSA_PRIVATE_KEY_FILE",
1453 "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "T_SSL_CONNECTION_METHOD",
1454 "T_SSLV3", "T_TLSV1", "RESV", "RESV_EXEMPT", "SECONDS", "MINUTES",
1455 "HOURS", "DAYS", "WEEKS", "SENDQ", "SEND_PASSWORD", "SERVERHIDE",
1456 "SERVERINFO", "SERVLINK_PATH", "IRCD_SID", "TKLINE_EXPIRE_NOTICES",
1457 "T_SHARED", "T_CLUSTER", "TYPE", "SHORT_MOTD", "SILENT", "SPOOF",
1458 "SPOOF_NOTICE", "STATS_E_DISABLED", "STATS_I_OPER_ONLY",
1459 "STATS_K_OPER_ONLY", "STATS_O_OPER_ONLY", "STATS_P_OPER_ONLY", "TBOOL",
1460 "TMASKED", "T_REJECT", "TS_MAX_DELTA", "TS_WARN_DELTA", "TWODOTS",
1461 "T_ALL", "T_BOTS", "T_SOFTCALLERID", "T_CALLERID", "T_CCONN",
1462 "T_CCONN_FULL", "T_CLIENT_FLOOD", "T_DEAF", "T_DEBUG", "T_DRONE",
1463 "T_EXTERNAL", "T_FULL", "T_INVISIBLE", "T_IPV4", "T_IPV6", "T_LOCOPS",
1464 "T_LOGPATH", "T_L_CRIT", "T_L_DEBUG", "T_L_ERROR", "T_L_INFO",
1465 "T_L_NOTICE", "T_L_TRACE", "T_L_WARN", "T_MAX_CLIENTS", "T_NCHANGE",
1466 "T_OPERWALL", "T_REJ", "T_SERVER", "T_SERVNOTICE", "T_SKILL", "T_SPY",
1467 "T_SSL", "T_UMODES", "T_UNAUTH", "T_UNRESV", "T_UNXLINE", "T_WALLOP",
1468 "THROTTLE_TIME", "TOPICBURST", "TRUE_NO_OPER_FLOOD", "TKLINE", "TXLINE",
1469 "TRESV", "UNKLINE", "USER", "USE_EGD", "USE_EXCEPT", "USE_INVEX",
1470 "USE_KNOCK", "USE_LOGGING", "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6",
1471 "XLINE", "WARN", "WARN_NO_NLINE", "';'", "'}'", "'{'", "'='", "','",
1472 "$accept", "conf", "conf_item", "timespec_", "timespec", "sizespec_",
1473 "sizespec", "modules_entry", "modules_items", "modules_item",
1474 "modules_module", "modules_path", "serverinfo_entry", "serverinfo_items",
1475 "serverinfo_item", "serverinfo_ssl_connection_method", "$@1",
1476 "method_types", "method_type_item", "serverinfo_ssl_certificate_file",
1477 "serverinfo_rsa_private_key_file", "serverinfo_name", "serverinfo_sid",
1478 "serverinfo_description", "serverinfo_network_name",
1479 "serverinfo_network_desc", "serverinfo_vhost", "serverinfo_vhost6",
1480 "serverinfo_max_clients", "serverinfo_hub", "admin_entry", "admin_items",
1481 "admin_item", "admin_name", "admin_email", "admin_description",
1482 "logging_entry", "logging_items", "logging_item", "logging_path",
1483 "logging_oper_log", "logging_fuserlog", "logging_ffailed_operlog",
1484 "logging_foperlog", "logging_foperspylog", "logging_fglinelog",
1485 "logging_fklinelog", "logging_ioerrlog", "logging_killlog",
1486 "logging_log_level", "logging_use_logging", "oper_entry", "$@2",
1487 "oper_name_b", "oper_items", "oper_item", "oper_name", "oper_name_t",
1488 "oper_user", "oper_password", "oper_encrypted",
1489 "oper_rsa_public_key_file", "oper_class", "oper_umodes", "$@3",
1490 "oper_umodes_items", "oper_umodes_item", "oper_flags", "$@4",
1491 "oper_flags_items", "oper_flags_item", "$@5", "$@6",
1492 "oper_flags_item_atom", "class_entry", "$@7", "class_name_b",
1493 "class_items", "class_item", "class_name", "class_name_t",
1494 "class_ping_time", "class_ping_warning", "class_number_per_ip",
1495 "class_connectfreq", "class_max_number", "class_max_global",
1496 "class_max_local", "class_max_ident", "class_sendq",
1497 "class_cidr_bitlen_ipv4", "class_cidr_bitlen_ipv6",
1498 "class_number_per_cidr", "listen_entry", "$@8", "listen_flags", "$@9",
1499 "listen_flags_items", "listen_flags_item", "listen_items", "listen_item",
1500 "listen_port", "$@10", "port_items", "port_item", "listen_address",
1501 "listen_host", "auth_entry", "$@11", "auth_items", "auth_item",
1502 "auth_user", "auth_passwd", "auth_class", "auth_encrypted", "auth_flags",
1503 "$@12", "auth_flags_items", "auth_flags_item", "$@13", "$@14",
1504 "auth_flags_item_atom", "auth_spoof", "auth_redir_serv",
1505 "auth_redir_port", "resv_entry", "$@15", "resv_items", "resv_item",
1506 "resv_creason", "resv_channel", "resv_nick", "shared_entry", "$@16",
1507 "shared_items", "shared_item", "shared_name", "shared_user",
1508 "shared_type", "$@17", "shared_types", "shared_type_item",
1509 "cluster_entry", "$@18", "cluster_items", "cluster_item", "cluster_name",
1510 "cluster_type", "$@19", "cluster_types", "cluster_type_item",
1511 "connect_entry", "$@20", "connect_name_b", "connect_items",
1512 "connect_item", "connect_name", "connect_name_t", "connect_host",
1513 "connect_vhost", "connect_send_password", "connect_accept_password",
1514 "connect_port", "connect_aftype", "connect_flags", "$@21",
1515 "connect_flags_items", "connect_flags_item", "$@22", "$@23",
1516 "connect_flags_item_atom", "connect_rsa_public_key_file",
1517 "connect_encrypted", "connect_hub_mask", "connect_leaf_mask",
1518 "connect_class", "connect_cipher_preference", "kill_entry", "$@24",
1519 "kill_type", "$@25", "kill_type_items", "kill_type_item", "kill_items",
1520 "kill_item", "kill_user", "kill_reason", "deny_entry", "$@26",
1521 "deny_items", "deny_item", "deny_ip", "deny_reason", "exempt_entry",
1522 "exempt_items", "exempt_item", "exempt_ip", "gecos_entry", "$@27",
1523 "gecos_flags", "$@28", "gecos_flags_items", "gecos_flags_item",
1524 "gecos_items", "gecos_item", "gecos_name", "gecos_reason",
1525 "general_entry", "general_items", "general_item", "general_max_watch",
1526 "general_gline_min_cidr", "general_gline_min_cidr6",
1527 "general_burst_away", "general_use_whois_actually",
1528 "general_reject_hold_time", "general_tkline_expire_notices",
1529 "general_kill_chase_time_limit", "general_hide_spoof_ips",
1530 "general_ignore_bogus_ts", "general_disable_remote_commands",
1531 "general_failed_oper_notice", "general_anti_nick_flood",
1532 "general_max_nick_time", "general_max_nick_changes",
1533 "general_max_accept", "general_anti_spam_exit_message_time",
1534 "general_ts_warn_delta", "general_ts_max_delta",
1535 "general_havent_read_conf", "general_kline_with_reason",
1536 "general_kline_reason", "general_invisible_on_connect",
1537 "general_warn_no_nline", "general_stats_e_disabled",
1538 "general_stats_o_oper_only", "general_stats_P_oper_only",
1539 "general_stats_k_oper_only", "general_stats_i_oper_only",
1540 "general_pace_wait", "general_caller_id_wait",
1541 "general_opers_bypass_callerid", "general_pace_wait_simple",
1542 "general_short_motd", "general_no_oper_flood",
1543 "general_true_no_oper_flood", "general_oper_pass_resv",
1544 "general_message_locale", "general_idletime", "general_dots_in_ident",
1545 "general_max_targets", "general_servlink_path",
1546 "general_default_cipher_preference", "general_compression_level",
1547 "general_use_egd", "general_egdpool_path", "general_ping_cookie",
1548 "general_disable_auth", "general_throttle_time", "general_oper_umodes",
1549 "$@29", "umode_oitems", "umode_oitem", "general_oper_only_umodes",
1550 "$@30", "umode_items", "umode_item", "general_min_nonwildcard",
1551 "general_min_nonwildcard_simple", "general_default_floodcount",
1552 "general_client_flood", "gline_entry", "$@31", "gline_items",
1553 "gline_item", "gline_enable", "gline_duration", "gline_logging", "$@32",
1554 "gline_logging_types", "gline_logging_type_item", "gline_user",
1555 "gline_server", "gline_action", "$@33", "gdeny_types", "gdeny_type_item",
1556 "channel_entry", "channel_items", "channel_item",
1557 "channel_disable_fake_channels", "channel_restrict_channels",
1558 "channel_disable_local_channels", "channel_use_except",
1559 "channel_use_invex", "channel_use_knock", "channel_knock_delay",
1560 "channel_knock_delay_channel", "channel_max_chans_per_user",
1561 "channel_quiet_on_ban", "channel_max_bans",
1562 "channel_default_split_user_count", "channel_default_split_server_count",
1563 "channel_no_create_on_split", "channel_no_join_on_split",
1564 "channel_burst_topicwho", "channel_jflood_count", "channel_jflood_time",
1565 "serverhide_entry", "serverhide_items", "serverhide_item",
1566 "serverhide_flatten_links", "serverhide_hide_servers",
1567 "serverhide_hidden_name", "serverhide_links_delay", "serverhide_hidden",
1568 "serverhide_disable_hidden", "serverhide_hide_server_ips", 0
1569 };
1570 #endif
1571
1572 # ifdef YYPRINT
1573 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
1574 token YYLEX-NUM. */
1575 static const yytype_uint16 yytoknum[] =
1576 {
1577 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
1578 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
1579 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1580 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
1581 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
1582 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
1583 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
1584 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
1585 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
1586 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
1587 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
1588 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
1589 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
1590 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
1591 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
1592 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
1593 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
1594 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
1595 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
1596 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
1597 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
1598 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
1599 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
1600 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
1601 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
1602 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
1603 59, 125, 123, 61, 44
1604 };
1605 # endif
1606
1607 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
1608 static const yytype_uint16 yyr1[] =
1609 {
1610 0, 265, 266, 266, 267, 267, 267, 267, 267, 267,
1611 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
1612 267, 267, 267, 267, 267, 267, 268, 268, 269, 269,
1613 269, 269, 269, 269, 270, 270, 271, 271, 271, 271,
1614 272, 273, 273, 274, 274, 274, 275, 276, 277, 278,
1615 278, 279, 279, 279, 279, 279, 279, 279, 279, 279,
1616 279, 279, 279, 279, 281, 280, 282, 282, 283, 283,
1617 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
1618 294, 295, 296, 296, 297, 297, 297, 297, 298, 299,
1619 300, 301, 302, 302, 303, 303, 303, 303, 303, 303,
1620 303, 303, 303, 303, 303, 303, 303, 304, 305, 306,
1621 307, 308, 309, 310, 311, 312, 313, 314, 314, 314,
1622 314, 314, 314, 314, 315, 317, 316, 318, 318, 319,
1623 319, 320, 320, 320, 320, 320, 320, 320, 320, 320,
1624 321, 322, 323, 324, 325, 326, 327, 329, 328, 330,
1625 330, 331, 331, 331, 331, 331, 331, 331, 331, 331,
1626 331, 331, 331, 331, 331, 331, 331, 331, 331, 331,
1627 333, 332, 334, 334, 336, 335, 337, 335, 338, 338,
1628 338, 338, 338, 338, 338, 338, 338, 338, 338, 338,
1629 338, 338, 338, 338, 340, 339, 341, 341, 342, 342,
1630 343, 343, 343, 343, 343, 343, 343, 343, 343, 343,
1631 343, 343, 343, 343, 344, 345, 346, 347, 348, 349,
1632 350, 351, 352, 353, 354, 355, 356, 357, 359, 358,
1633 361, 360, 362, 362, 363, 363, 363, 364, 364, 365,
1634 365, 365, 365, 365, 367, 366, 368, 368, 369, 369,
1635 370, 371, 373, 372, 374, 374, 375, 375, 375, 375,
1636 375, 375, 375, 375, 375, 376, 377, 378, 379, 381,
1637 380, 382, 382, 384, 383, 385, 383, 386, 386, 386,
1638 386, 386, 386, 386, 386, 386, 386, 387, 388, 389,
1639 391, 390, 392, 392, 393, 393, 393, 393, 394, 395,
1640 396, 398, 397, 399, 399, 400, 400, 400, 400, 401,
1641 402, 404, 403, 405, 405, 406, 406, 406, 406, 406,
1642 406, 406, 406, 406, 406, 406, 408, 407, 409, 409,
1643 410, 410, 410, 411, 413, 412, 414, 414, 415, 415,
1644 415, 415, 415, 415, 415, 415, 415, 415, 415, 417,
1645 416, 418, 418, 419, 419, 420, 420, 420, 420, 420,
1646 420, 420, 420, 420, 420, 420, 420, 420, 420, 420,
1647 421, 422, 423, 424, 425, 426, 427, 428, 428, 430,
1648 429, 431, 431, 433, 432, 434, 432, 435, 435, 435,
1649 435, 435, 436, 437, 438, 439, 440, 441, 443, 442,
1650 445, 444, 446, 446, 447, 448, 448, 449, 449, 449,
1651 449, 450, 451, 453, 452, 454, 454, 455, 455, 455,
1652 456, 457, 458, 459, 459, 460, 460, 461, 463, 462,
1653 465, 464, 466, 466, 467, 468, 468, 469, 469, 469,
1654 469, 470, 471, 472, 473, 473, 474, 474, 474, 474,
1655 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
1656 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
1657 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
1658 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
1659 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
1660 474, 474, 475, 476, 477, 478, 479, 480, 481, 482,
1661 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
1662 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
1663 502, 503, 503, 504, 505, 506, 507, 508, 509, 510,
1664 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
1665 521, 522, 523, 525, 524, 526, 526, 527, 527, 527,
1666 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
1667 527, 527, 527, 527, 527, 527, 529, 528, 530, 530,
1668 531, 531, 531, 531, 531, 531, 531, 531, 531, 531,
1669 531, 531, 531, 531, 531, 531, 531, 531, 531, 532,
1670 533, 534, 535, 537, 536, 538, 538, 539, 539, 539,
1671 539, 539, 539, 539, 540, 541, 543, 542, 544, 544,
1672 545, 545, 546, 547, 549, 548, 550, 550, 551, 551,
1673 552, 553, 553, 554, 554, 554, 554, 554, 554, 554,
1674 554, 554, 554, 554, 554, 554, 554, 554, 554, 554,
1675 554, 554, 555, 556, 557, 558, 559, 560, 561, 562,
1676 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
1677 573, 574, 574, 575, 575, 575, 575, 575, 575, 575,
1678 575, 576, 577, 578, 579, 580, 581, 582
1679 };
1680
1681 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
1682 static const yytype_uint8 yyr2[] =
1683 {
1684 0, 2, 0, 2, 1, 1, 1, 1, 1, 1,
1685 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1686 1, 1, 1, 1, 2, 2, 0, 1, 2, 3,
1687 3, 3, 3, 3, 0, 1, 2, 3, 3, 3,
1688 5, 2, 1, 1, 1, 2, 4, 4, 5, 2,
1689 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1690 1, 1, 1, 2, 0, 5, 3, 1, 1, 1,
1691 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1692 4, 5, 2, 1, 1, 1, 1, 2, 4, 4,
1693 4, 5, 2, 1, 1, 1, 1, 1, 1, 1,
1694 1, 1, 1, 1, 1, 1, 2, 4, 4, 4,
1695 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1696 4, 4, 4, 4, 4, 0, 7, 0, 1, 2,
1697 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
1698 4, 1, 4, 4, 4, 4, 4, 0, 5, 3,
1699 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1700 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1701 0, 5, 3, 1, 0, 3, 0, 2, 1, 1,
1702 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1703 1, 1, 1, 1, 0, 7, 0, 1, 2, 1,
1704 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1705 1, 1, 1, 2, 4, 1, 4, 4, 4, 4,
1706 4, 4, 4, 4, 4, 4, 4, 4, 0, 6,
1707 0, 5, 3, 1, 1, 1, 1, 2, 1, 1,
1708 1, 1, 1, 2, 0, 5, 3, 1, 1, 3,
1709 4, 4, 0, 6, 2, 1, 1, 1, 1, 1,
1710 1, 1, 1, 1, 2, 4, 4, 4, 4, 0,
1711 5, 3, 1, 0, 3, 0, 2, 1, 1, 1,
1712 1, 1, 1, 1, 1, 1, 1, 4, 4, 4,
1713 0, 6, 2, 1, 1, 1, 1, 2, 4, 4,
1714 4, 0, 6, 2, 1, 1, 1, 1, 2, 4,
1715 4, 0, 5, 3, 1, 1, 1, 1, 1, 1,
1716 1, 1, 1, 1, 1, 1, 0, 6, 2, 1,
1717 1, 1, 2, 4, 0, 5, 3, 1, 1, 1,
1718 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
1719 7, 0, 1, 2, 1, 1, 1, 1, 1, 1,
1720 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
1721 4, 1, 4, 4, 4, 4, 4, 4, 4, 0,
1722 5, 3, 1, 0, 3, 0, 2, 1, 1, 1,
1723 1, 1, 4, 4, 4, 4, 4, 4, 0, 6,
1724 0, 5, 3, 1, 1, 2, 1, 1, 1, 1,
1725 1, 4, 4, 0, 6, 2, 1, 1, 1, 1,
1726 4, 4, 5, 2, 1, 1, 1, 4, 0, 6,
1727 0, 5, 3, 1, 1, 2, 1, 1, 1, 1,
1728 1, 4, 4, 5, 2, 1, 1, 1, 1, 1,
1729 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1730 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1731 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1732 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1733 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1734 1, 1, 4, 4, 4, 4, 4, 4, 4, 4,
1735 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1736 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1737 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1738 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1739 4, 4, 4, 0, 5, 3, 1, 1, 1, 1,
1740 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1741 1, 1, 1, 1, 1, 1, 0, 5, 3, 1,
1742 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1743 1, 1, 1, 1, 1, 1, 1, 1, 1, 4,
1744 4, 4, 4, 0, 6, 2, 1, 1, 1, 1,
1745 1, 1, 1, 1, 4, 4, 0, 5, 3, 1,
1746 1, 1, 4, 4, 0, 5, 3, 1, 1, 1,
1747 5, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1748 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1749 1, 1, 4, 4, 4, 4, 4, 4, 4, 4,
1750 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1751 5, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1752 1, 4, 4, 4, 4, 4, 4, 4
1753 };
1754
1755 /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
1756 Performed when YYTABLE doesn't specify something else to do. Zero
1757 means the default is an error. */
1758 static const yytype_uint16 yydefact[] =
1759 {
1760 2, 0, 1, 0, 0, 0, 194, 349, 413, 0,
1761 428, 0, 603, 252, 398, 228, 0, 0, 125, 290,
1762 0, 0, 301, 326, 3, 23, 11, 4, 5, 6,
1763 8, 9, 10, 13, 14, 15, 16, 17, 18, 19,
1764 22, 20, 21, 7, 12, 24, 25, 0, 0, 196,
1765 351, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1766 0, 127, 0, 0, 0, 0, 0, 0, 0, 0,
1767 0, 0, 83, 84, 86, 85, 651, 0, 0, 0,
1768 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1769 0, 0, 0, 0, 0, 0, 632, 650, 645, 633,
1770 634, 635, 636, 638, 639, 640, 641, 637, 642, 643,
1771 644, 646, 647, 648, 649, 215, 0, 197, 371, 0,
1772 352, 0, 426, 0, 0, 424, 425, 0, 501, 0,
1773 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1774 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1775 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1776 0, 576, 0, 553, 0, 0, 0, 0, 0, 0,
1777 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1778 0, 0, 0, 0, 0, 445, 500, 495, 496, 493,
1779 497, 498, 494, 456, 446, 447, 485, 448, 449, 450,
1780 451, 452, 453, 454, 455, 490, 457, 458, 459, 460,
1781 499, 462, 467, 463, 465, 464, 479, 480, 466, 468,
1782 469, 470, 471, 473, 472, 461, 475, 484, 486, 487,
1783 476, 477, 491, 492, 489, 478, 474, 482, 483, 481,
1784 488, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1785 0, 0, 0, 0, 0, 0, 0, 0, 0, 93,
1786 94, 95, 98, 105, 99, 103, 100, 101, 104, 102,
1787 96, 97, 0, 0, 0, 0, 42, 43, 44, 141,
1788 0, 128, 0, 680, 0, 0, 0, 0, 0, 0,
1789 0, 0, 672, 673, 674, 678, 675, 677, 676, 679,
1790 0, 0, 0, 0, 0, 0, 0, 0, 64, 0,
1791 0, 0, 0, 0, 50, 62, 61, 58, 51, 60,
1792 54, 55, 56, 52, 59, 57, 53, 0, 0, 87,
1793 0, 0, 0, 0, 82, 0, 0, 0, 0, 0,
1794 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1795 0, 0, 0, 0, 631, 0, 0, 419, 0, 0,
1796 0, 416, 417, 418, 0, 0, 423, 440, 0, 0,
1797 430, 439, 0, 436, 437, 438, 0, 0, 0, 0,
1798 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1799 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1800 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1801 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1802 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1803 0, 0, 444, 613, 624, 0, 0, 616, 0, 0,
1804 0, 606, 607, 608, 609, 610, 611, 612, 0, 0,
1805 0, 269, 0, 0, 0, 0, 0, 0, 255, 256,
1806 257, 258, 263, 259, 260, 261, 262, 410, 0, 400,
1807 0, 409, 0, 406, 407, 408, 0, 230, 0, 0,
1808 0, 240, 0, 238, 239, 241, 242, 106, 0, 0,
1809 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1810 0, 92, 45, 0, 0, 0, 41, 0, 0, 0,
1811 0, 0, 0, 293, 294, 295, 296, 0, 0, 0,
1812 0, 0, 0, 0, 0, 671, 63, 0, 0, 0,
1813 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1814 49, 0, 0, 311, 0, 0, 304, 305, 306, 307,
1815 0, 0, 334, 0, 329, 330, 331, 0, 0, 0,
1816 81, 0, 0, 0, 0, 0, 26, 0, 0, 0,
1817 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1818 630, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1819 0, 0, 0, 0, 0, 0, 199, 200, 203, 204,
1820 206, 207, 208, 209, 210, 211, 212, 201, 202, 205,
1821 0, 0, 0, 0, 0, 0, 379, 0, 0, 0,
1822 0, 0, 0, 0, 0, 0, 354, 355, 356, 357,
1823 358, 359, 361, 360, 362, 367, 366, 363, 364, 365,
1824 368, 0, 0, 0, 415, 0, 422, 0, 0, 0,
1825 0, 435, 0, 0, 0, 0, 0, 0, 0, 0,
1826 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1827 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1828 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1829 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1830 0, 0, 0, 34, 0, 0, 0, 0, 0, 0,
1831 443, 0, 0, 0, 0, 0, 0, 0, 605, 264,
1832 0, 0, 0, 0, 0, 0, 0, 0, 0, 254,
1833 0, 0, 0, 0, 405, 243, 0, 0, 0, 0,
1834 0, 237, 0, 0, 0, 0, 0, 0, 0, 0,
1835 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1836 91, 0, 0, 40, 0, 0, 0, 170, 0, 0,
1837 0, 147, 0, 0, 130, 131, 132, 133, 136, 137,
1838 135, 134, 138, 297, 0, 0, 0, 0, 292, 0,
1839 0, 0, 0, 0, 0, 0, 670, 0, 0, 0,
1840 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
1841 308, 0, 0, 0, 0, 303, 332, 0, 0, 0,
1842 328, 90, 89, 88, 667, 664, 663, 652, 654, 26,
1843 26, 26, 26, 26, 28, 27, 658, 659, 662, 660,
1844 665, 666, 668, 669, 661, 653, 655, 656, 657, 213,
1845 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1846 0, 0, 0, 0, 198, 369, 0, 0, 0, 0,
1847 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1848 0, 353, 0, 0, 414, 427, 0, 0, 0, 429,
1849 514, 518, 505, 534, 547, 546, 601, 551, 512, 543,
1850 549, 513, 503, 504, 521, 510, 542, 511, 524, 509,
1851 523, 522, 517, 516, 515, 544, 502, 541, 599, 600,
1852 538, 535, 580, 596, 597, 581, 582, 583, 584, 591,
1853 585, 594, 598, 587, 592, 588, 593, 586, 590, 589,
1854 595, 0, 579, 540, 557, 573, 574, 558, 559, 560,
1855 561, 568, 562, 571, 575, 564, 569, 565, 570, 563,
1856 567, 566, 572, 0, 556, 533, 536, 550, 507, 545,
1857 508, 537, 526, 531, 532, 529, 530, 527, 528, 520,
1858 519, 34, 34, 34, 36, 35, 602, 552, 539, 548,
1859 506, 525, 0, 0, 0, 0, 0, 0, 604, 0,
1860 0, 275, 0, 0, 0, 0, 0, 253, 0, 0,
1861 0, 399, 0, 0, 0, 248, 244, 247, 229, 110,
1862 116, 114, 113, 115, 111, 112, 109, 117, 123, 118,
1863 122, 120, 121, 119, 108, 107, 124, 46, 47, 139,
1864 0, 0, 0, 0, 0, 0, 0, 0, 0, 129,
1865 0, 0, 0, 291, 686, 681, 685, 683, 687, 682,
1866 684, 74, 80, 72, 76, 75, 71, 70, 68, 69,
1867 0, 67, 73, 79, 77, 78, 0, 0, 0, 302,
1868 0, 0, 327, 29, 30, 31, 32, 33, 0, 0,
1869 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1870 0, 195, 0, 0, 0, 0, 0, 0, 385, 0,
1871 0, 0, 0, 0, 0, 0, 0, 350, 420, 421,
1872 441, 442, 434, 0, 433, 577, 0, 554, 0, 37,
1873 38, 39, 629, 628, 0, 627, 615, 614, 621, 620,
1874 0, 619, 623, 622, 267, 268, 273, 0, 272, 0,
1875 266, 289, 288, 287, 265, 412, 404, 0, 403, 411,
1876 235, 236, 234, 0, 233, 251, 250, 0, 0, 0,
1877 0, 0, 176, 0, 0, 0, 0, 0, 126, 299,
1878 300, 298, 65, 0, 309, 315, 321, 325, 324, 323,
1879 320, 316, 319, 322, 317, 318, 0, 314, 310, 333,
1880 338, 344, 348, 347, 346, 343, 339, 342, 345, 340,
1881 341, 0, 337, 225, 226, 219, 221, 223, 222, 220,
1882 214, 227, 218, 216, 217, 224, 375, 377, 378, 397,
1883 396, 393, 383, 0, 382, 0, 372, 394, 395, 370,
1884 376, 392, 374, 373, 431, 0, 578, 555, 625, 0,
1885 617, 0, 0, 270, 275, 281, 282, 278, 284, 280,
1886 279, 286, 283, 285, 277, 276, 401, 0, 231, 0,
1887 249, 246, 245, 146, 144, 174, 0, 173, 0, 140,
1888 143, 145, 151, 167, 168, 152, 153, 154, 155, 162,
1889 156, 165, 169, 158, 163, 159, 164, 157, 161, 160,
1890 166, 0, 150, 142, 66, 312, 0, 335, 0, 0,
1891 380, 385, 389, 390, 387, 388, 391, 386, 432, 626,
1892 618, 274, 271, 402, 232, 0, 171, 176, 186, 184,
1893 193, 183, 178, 187, 191, 180, 188, 190, 185, 179,
1894 192, 189, 181, 182, 177, 148, 0, 313, 336, 384,
1895 381, 175, 172, 149
1896 };
1897
1898 /* YYDEFGOTO[NTERM-NUM]. */
1899 static const yytype_int16 yydefgoto[] =
1900 {
1901 -1, 1, 24, 834, 835, 984, 985, 25, 275, 276,
1902 277, 278, 26, 313, 314, 315, 534, 1070, 1071, 316,
1903 317, 318, 319, 320, 321, 322, 323, 324, 325, 326,
1904 27, 71, 72, 73, 74, 75, 28, 258, 259, 260,
1905 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
1906 271, 29, 61, 280, 773, 774, 775, 281, 776, 777,
1907 778, 779, 780, 781, 1046, 1301, 1302, 782, 1042, 1276,
1908 1277, 1325, 1278, 1344, 30, 49, 116, 595, 596, 597,
1909 117, 598, 599, 600, 601, 602, 603, 604, 605, 606,
1910 607, 608, 609, 31, 58, 481, 736, 1163, 1164, 482,
1911 483, 484, 1169, 1016, 1017, 485, 486, 32, 56, 457,
1912 458, 459, 460, 461, 462, 463, 722, 1147, 1148, 1252,
1913 1149, 1265, 464, 465, 466, 33, 62, 512, 513, 514,
1914 515, 516, 34, 65, 545, 546, 547, 548, 549, 812,
1915 1196, 1197, 35, 66, 553, 554, 555, 556, 818, 1211,
1916 1212, 36, 50, 119, 625, 626, 627, 120, 628, 629,
1917 630, 631, 632, 633, 634, 871, 1233, 1234, 1309, 1235,
1918 1317, 635, 636, 637, 638, 639, 640, 37, 57, 471,
1919 731, 1157, 1158, 472, 473, 474, 475, 38, 51, 360,
1920 361, 362, 363, 39, 124, 125, 126, 40, 53, 371,
1921 649, 1123, 1124, 372, 373, 374, 375, 41, 184, 185,
1922 186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
1923 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
1924 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
1925 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
1926 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
1927 410, 963, 964, 236, 408, 941, 942, 237, 238, 239,
1928 240, 42, 55, 440, 441, 442, 443, 444, 714, 1140,
1929 1141, 445, 446, 447, 711, 1134, 1135, 43, 95, 96,
1930 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1931 107, 108, 109, 110, 111, 112, 113, 114, 44, 291,
1932 292, 293, 294, 295, 296, 297, 298, 299
1933 };
1934
1935 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1936 STATE-NUM. */
1937 #define YYPACT_NINF -949
1938 static const yytype_int16 yypact[] =
1939 {
1940 -949, 670, -949, -256, -248, -245, -949, -949, -949, -212,
1941 -949, -205, -949, -949, -949, -949, -189, -183, -949, -949,
1942 -154, -152, -949, -949, -949, -949, -949, -949, -949, -949,
1943 -949, -949, -949, -949, -949, -949, -949, -949, -949, -949,
1944 -949, -949, -949, -949, -949, -949, -949, 22, 642, -127,
1945 -31, -132, 5, -125, 415, -119, -98, -89, -86, 578,
1946 14, -8, -75, 664, 313, -74, -61, -45, -46, -37,
1947 -23, 31, -949, -949, -949, -949, -949, -22, 15, 30,
1948 33, 41, 42, 47, 48, 50, 61, 62, 70, 78,
1949 79, 80, 86, 90, 93, 94, -949, -949, -949, -949,
1950 -949, -949, -949, -949, -949, -949, -949, -949, -949, -949,
1951 -949, -949, -949, -949, -949, -949, -44, -949, -949, 89,
1952 -949, 20, -949, 99, 2, -949, -949, 140, -949, 100,
1953 104, 106, 111, 113, 115, 122, 123, 126, 127, 128,
1954 129, 131, 133, 135, 136, 137, 145, 147, 148, 151,
1955 155, 156, 157, 159, 163, 165, 167, 169, 174, 175,
1956 177, -949, 178, -949, 186, 187, 188, 193, 194, 197,
1957 199, 200, 205,