summaryrefslogtreecommitdiff
path: root/src/read_config_yy.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/read_config_yy.c')
-rw-r--r--src/read_config_yy.c1238
1 files changed, 694 insertions, 544 deletions
diff --git a/src/read_config_yy.c b/src/read_config_yy.c
index bd3a785..fe9ecd7 100644
--- a/src/read_config_yy.c
+++ b/src/read_config_yy.c
@@ -237,11 +237,14 @@ static void __max_dedicated_links_reached(void);
T_DISABLE_INTERNAL_CACHE = 343,
T_DISABLE_EXTERNAL_CACHE = 344,
T_ERROR_QUEUE_LENGTH = 345,
- T_IP = 346,
- T_PATH_VAL = 347,
- T_NUMBER = 348,
- T_SIGNED_NUMBER = 349,
- T_STRING = 350
+ T_OPTIONS = 346,
+ T_TCP_WINDOW_TRACKING = 347,
+ T_EXPECT_SYNC = 348,
+ T_IP = 349,
+ T_PATH_VAL = 350,
+ T_NUMBER = 351,
+ T_SIGNED_NUMBER = 352,
+ T_STRING = 353
};
#endif
/* Tokens. */
@@ -333,11 +336,14 @@ static void __max_dedicated_links_reached(void);
#define T_DISABLE_INTERNAL_CACHE 343
#define T_DISABLE_EXTERNAL_CACHE 344
#define T_ERROR_QUEUE_LENGTH 345
-#define T_IP 346
-#define T_PATH_VAL 347
-#define T_NUMBER 348
-#define T_SIGNED_NUMBER 349
-#define T_STRING 350
+#define T_OPTIONS 346
+#define T_TCP_WINDOW_TRACKING 347
+#define T_EXPECT_SYNC 348
+#define T_IP 349
+#define T_PATH_VAL 350
+#define T_NUMBER 351
+#define T_SIGNED_NUMBER 352
+#define T_STRING 353
@@ -355,7 +361,7 @@ typedef union YYSTYPE
/* Line 214 of yacc.c */
-#line 359 "read_config_yy.c"
+#line 365 "read_config_yy.c"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
@@ -367,7 +373,7 @@ typedef union YYSTYPE
/* Line 264 of yacc.c */
-#line 371 "read_config_yy.c"
+#line 377 "read_config_yy.c"
#ifdef short
# undef short
@@ -582,20 +588,20 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 21
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 332
+#define YYLAST 349
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 98
+#define YYNTOKENS 101
/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS 94
+#define YYNNTS 99
/* YYNRULES -- Number of rules. */
-#define YYNRULES 234
+#define YYNRULES 248
/* YYNRULES -- Number of states. */
-#define YYNSTATES 367
+#define YYNSTATES 385
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
-#define YYMAXUTOK 350
+#define YYMAXUTOK 353
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -615,7 +621,7 @@ static const yytype_uint8 yytranslate[] =
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, 96, 2, 97, 2, 2, 2, 2,
+ 2, 2, 2, 99, 2, 100, 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,
@@ -638,7 +644,7 @@ static const yytype_uint8 yytranslate[] =
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
- 95
+ 95, 96, 97, 98
};
#if YYDEBUG
@@ -656,119 +662,125 @@ static const yytype_uint16 yyprhs[] =
205, 208, 211, 214, 217, 220, 223, 226, 231, 232,
235, 238, 241, 246, 247, 250, 252, 254, 259, 260,
263, 265, 267, 269, 271, 273, 275, 277, 279, 281,
- 283, 285, 287, 289, 291, 293, 295, 297, 303, 309,
- 315, 316, 319, 321, 323, 325, 327, 329, 331, 332,
- 335, 337, 339, 341, 343, 345, 347, 348, 351, 353,
- 355, 357, 359, 362, 365, 368, 371, 374, 377, 380,
- 383, 385, 387, 390, 395, 396, 399, 401, 403, 404,
- 407, 409, 411, 413, 415, 417, 419, 421, 423, 425,
- 428, 431, 436, 437, 440, 442, 444, 446, 448, 450,
- 452, 454, 456, 458, 460, 462, 464, 466, 468, 470,
- 472, 474, 476, 479, 482, 485, 488, 491, 494, 497,
- 500, 505, 506, 509, 512, 515, 518, 521, 524, 529,
- 536, 543, 544, 547, 553, 559, 560, 563, 565, 567,
- 573, 579, 580, 583, 586, 589, 595, 601, 602, 605,
- 609, 614, 615, 618, 620, 622, 624, 626, 628, 631,
- 634, 637, 640, 643, 646
+ 283, 285, 287, 289, 291, 293, 295, 297, 299, 304,
+ 305, 308, 311, 314, 317, 320, 325, 326, 329, 331,
+ 337, 343, 349, 350, 353, 355, 357, 359, 361, 363,
+ 365, 366, 369, 371, 373, 375, 377, 379, 381, 382,
+ 385, 387, 389, 391, 393, 396, 399, 402, 405, 408,
+ 411, 414, 417, 419, 421, 424, 429, 430, 433, 435,
+ 437, 438, 441, 443, 445, 447, 449, 451, 453, 455,
+ 457, 459, 462, 465, 470, 471, 474, 476, 478, 480,
+ 482, 484, 486, 488, 490, 492, 494, 496, 498, 500,
+ 502, 504, 506, 508, 510, 513, 516, 519, 522, 525,
+ 528, 531, 534, 539, 540, 543, 546, 549, 552, 555,
+ 558, 563, 570, 577, 578, 581, 587, 593, 594, 597,
+ 599, 601, 603, 605, 611, 617, 618, 621, 624, 627,
+ 633, 639, 640, 643, 647, 652, 653, 656, 658, 660,
+ 662, 664, 666, 669, 672, 675, 678, 681, 684
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
static const yytype_int16 yyrhs[] =
{
- 99, 0, -1, -1, 100, -1, 101, -1, 100, 101,
- -1, 130, -1, 113, -1, 107, -1, 161, -1, 133,
- -1, 184, -1, 19, 45, -1, 19, 46, -1, 19,
- 92, -1, 61, 45, -1, 61, 46, -1, 61, 95,
- -1, 26, 92, -1, 27, -1, 11, 93, -1, 29,
- 93, -1, 30, 93, -1, 50, 93, -1, 43, 45,
- -1, 43, 46, -1, 16, 96, 114, 97, -1, -1,
- 114, 115, -1, 3, 91, -1, 12, 91, -1, 8,
- 96, 117, 97, -1, 8, 79, 96, 117, 97, -1,
- -1, 117, 118, -1, 3, 91, -1, 12, 91, -1,
- 4, 91, -1, 13, 91, -1, 49, 95, -1, 17,
- 93, -1, 18, 93, -1, 66, 93, -1, 65, 93,
- -1, 43, 45, -1, 43, 46, -1, 20, 96, 120,
- 97, -1, 20, 79, 96, 120, 97, -1, -1, 120,
- 121, -1, 3, 91, -1, 12, 91, -1, 82, 91,
- -1, 83, 91, -1, 49, 95, -1, 5, 93, -1,
- 66, 93, -1, 65, 93, -1, 43, 45, -1, 43,
- 46, -1, 24, 96, 123, 97, -1, 24, 79, 96,
- 123, 97, -1, -1, 123, 124, -1, 3, 91, -1,
- 12, 91, -1, 82, 91, -1, 83, 91, -1, 49,
- 95, -1, 5, 93, -1, 66, 93, -1, 65, 93,
- -1, 43, 45, -1, 43, 46, -1, 90, 93, -1,
- 6, 93, -1, 7, 93, -1, 10, 96, 128, 97,
- -1, -1, 128, 129, -1, 9, 92, -1, 17, 93,
- -1, 25, 96, 131, 97, -1, -1, 131, 132, -1,
- 93, -1, 95, -1, 32, 96, 134, 97, -1, -1,
- 134, 135, -1, 108, -1, 109, -1, 110, -1, 111,
- -1, 112, -1, 116, -1, 119, -1, 122, -1, 151,
- -1, 152, -1, 136, -1, 137, -1, 138, -1, 153,
- -1, 154, -1, 160, -1, 150, -1, 37, 41, 96,
- 139, 97, -1, 37, 42, 96, 141, 97, -1, 37,
- 67, 96, 143, 97, -1, -1, 139, 140, -1, 108,
- -1, 109, -1, 110, -1, 111, -1, 151, -1, 152,
- -1, -1, 141, 142, -1, 148, -1, 147, -1, 110,
- -1, 111, -1, 149, -1, 146, -1, -1, 143, 144,
- -1, 110, -1, 111, -1, 145, -1, 146, -1, 88,
- 45, -1, 88, 46, -1, 89, 45, -1, 89, 46,
- -1, 40, 93, -1, 51, 93, -1, 44, 93, -1,
- 64, 93, -1, 34, -1, 36, -1, 38, 91, -1,
- 47, 155, 48, 156, -1, -1, 155, 157, -1, 95,
- -1, 159, -1, -1, 158, 159, -1, 53, -1, 54,
- -1, 52, -1, 55, -1, 56, -1, 57, -1, 58,
- -1, 59, -1, 60, -1, 62, 45, -1, 62, 46,
- -1, 31, 96, 162, 97, -1, -1, 162, 163, -1,
- 125, -1, 126, -1, 102, -1, 103, -1, 105, -1,
- 104, -1, 106, -1, 127, -1, 164, -1, 165, -1,
- 172, -1, 173, -1, 174, -1, 175, -1, 166, -1,
- 167, -1, 168, -1, 169, -1, 35, 93, -1, 28,
- 93, -1, 80, 45, -1, 80, 46, -1, 80, 93,
- -1, 87, 45, -1, 87, 46, -1, 81, 94, -1,
- 84, 96, 170, 97, -1, -1, 170, 171, -1, 85,
- 95, -1, 86, 93, -1, 39, 95, -1, 78, 93,
- -1, 68, 93, -1, 69, 96, 176, 97, -1, 69,
- 75, 76, 96, 176, 97, -1, 69, 75, 77, 96,
- 176, 97, -1, -1, 176, 177, -1, 71, 73, 96,
- 178, 97, -1, 71, 74, 96, 178, 97, -1, -1,
- 178, 179, -1, 95, -1, 24, -1, 70, 73, 96,
- 180, 97, -1, 70, 74, 96, 180, 97, -1, -1,
- 180, 181, -1, 3, 91, -1, 12, 91, -1, 72,
- 73, 96, 182, 97, -1, 72, 74, 96, 182, 97,
- -1, -1, 182, 183, -1, 158, 48, 24, -1, 33,
- 96, 185, 97, -1, -1, 185, 186, -1, 187, -1,
- 188, -1, 189, -1, 190, -1, 191, -1, 19, 45,
- -1, 19, 46, -1, 19, 92, -1, 61, 45, -1,
- 61, 46, -1, 61, 95, -1, 63, 93, -1
+ 102, 0, -1, -1, 103, -1, 104, -1, 103, 104,
+ -1, 133, -1, 116, -1, 110, -1, 169, -1, 136,
+ -1, 192, -1, 19, 45, -1, 19, 46, -1, 19,
+ 95, -1, 61, 45, -1, 61, 46, -1, 61, 98,
+ -1, 26, 95, -1, 27, -1, 11, 96, -1, 29,
+ 96, -1, 30, 96, -1, 50, 96, -1, 43, 45,
+ -1, 43, 46, -1, 16, 99, 117, 100, -1, -1,
+ 117, 118, -1, 3, 94, -1, 12, 94, -1, 8,
+ 99, 120, 100, -1, 8, 79, 99, 120, 100, -1,
+ -1, 120, 121, -1, 3, 94, -1, 12, 94, -1,
+ 4, 94, -1, 13, 94, -1, 49, 98, -1, 17,
+ 96, -1, 18, 96, -1, 66, 96, -1, 65, 96,
+ -1, 43, 45, -1, 43, 46, -1, 20, 99, 123,
+ 100, -1, 20, 79, 99, 123, 100, -1, -1, 123,
+ 124, -1, 3, 94, -1, 12, 94, -1, 82, 94,
+ -1, 83, 94, -1, 49, 98, -1, 5, 96, -1,
+ 66, 96, -1, 65, 96, -1, 43, 45, -1, 43,
+ 46, -1, 24, 99, 126, 100, -1, 24, 79, 99,
+ 126, 100, -1, -1, 126, 127, -1, 3, 94, -1,
+ 12, 94, -1, 82, 94, -1, 83, 94, -1, 49,
+ 98, -1, 5, 96, -1, 66, 96, -1, 65, 96,
+ -1, 43, 45, -1, 43, 46, -1, 90, 96, -1,
+ 6, 96, -1, 7, 96, -1, 10, 99, 131, 100,
+ -1, -1, 131, 132, -1, 9, 95, -1, 17, 96,
+ -1, 25, 99, 134, 100, -1, -1, 134, 135, -1,
+ 96, -1, 98, -1, 32, 99, 137, 100, -1, -1,
+ 137, 138, -1, 111, -1, 112, -1, 113, -1, 114,
+ -1, 115, -1, 119, -1, 122, -1, 125, -1, 159,
+ -1, 160, -1, 144, -1, 145, -1, 146, -1, 161,
+ -1, 162, -1, 168, -1, 158, -1, 139, -1, 91,
+ 99, 140, 100, -1, -1, 140, 141, -1, 92, 45,
+ -1, 92, 46, -1, 93, 45, -1, 93, 46, -1,
+ 93, 99, 142, 100, -1, -1, 142, 143, -1, 98,
+ -1, 37, 41, 99, 147, 100, -1, 37, 42, 99,
+ 149, 100, -1, 37, 67, 99, 151, 100, -1, -1,
+ 147, 148, -1, 111, -1, 112, -1, 113, -1, 114,
+ -1, 159, -1, 160, -1, -1, 149, 150, -1, 156,
+ -1, 155, -1, 113, -1, 114, -1, 157, -1, 154,
+ -1, -1, 151, 152, -1, 113, -1, 114, -1, 153,
+ -1, 154, -1, 88, 45, -1, 88, 46, -1, 89,
+ 45, -1, 89, 46, -1, 40, 96, -1, 51, 96,
+ -1, 44, 96, -1, 64, 96, -1, 34, -1, 36,
+ -1, 38, 94, -1, 47, 163, 48, 164, -1, -1,
+ 163, 165, -1, 98, -1, 167, -1, -1, 166, 167,
+ -1, 53, -1, 54, -1, 52, -1, 55, -1, 56,
+ -1, 57, -1, 58, -1, 59, -1, 60, -1, 62,
+ 45, -1, 62, 46, -1, 31, 99, 170, 100, -1,
+ -1, 170, 171, -1, 128, -1, 129, -1, 105, -1,
+ 106, -1, 108, -1, 107, -1, 109, -1, 130, -1,
+ 172, -1, 173, -1, 180, -1, 181, -1, 182, -1,
+ 183, -1, 174, -1, 175, -1, 176, -1, 177, -1,
+ 35, 96, -1, 28, 96, -1, 80, 45, -1, 80,
+ 46, -1, 80, 96, -1, 87, 45, -1, 87, 46,
+ -1, 81, 97, -1, 84, 99, 178, 100, -1, -1,
+ 178, 179, -1, 85, 98, -1, 86, 96, -1, 39,
+ 98, -1, 78, 96, -1, 68, 96, -1, 69, 99,
+ 184, 100, -1, 69, 75, 76, 99, 184, 100, -1,
+ 69, 75, 77, 99, 184, 100, -1, -1, 184, 185,
+ -1, 71, 73, 99, 186, 100, -1, 71, 74, 99,
+ 186, 100, -1, -1, 186, 187, -1, 98, -1, 24,
+ -1, 20, -1, 20, -1, 70, 73, 99, 188, 100,
+ -1, 70, 74, 99, 188, 100, -1, -1, 188, 189,
+ -1, 3, 94, -1, 12, 94, -1, 72, 73, 99,
+ 190, 100, -1, 72, 74, 99, 190, 100, -1, -1,
+ 190, 191, -1, 166, 48, 24, -1, 33, 99, 193,
+ 100, -1, -1, 193, 194, -1, 195, -1, 196, -1,
+ 197, -1, 198, -1, 199, -1, 19, 45, -1, 19,
+ 46, -1, 19, 95, -1, 61, 45, -1, 61, 46,
+ -1, 61, 98, -1, 63, 96, -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 84, 84, 85, 88, 89, 92, 93, 94, 95,
- 96, 97, 100, 105, 109, 114, 119, 124, 156, 161,
- 166, 171, 176, 181, 186, 197, 208, 218, 219, 221,
- 243, 269, 283, 299, 300, 302, 321, 361, 380, 385,
- 405, 412, 418, 424, 430, 436, 442, 456, 472, 473,
- 475, 486, 503, 514, 531, 546, 552, 558, 564, 570,
- 576, 592, 610, 611, 613, 624, 641, 652, 669, 684,
- 690, 696, 702, 708, 714, 720, 725, 730, 732, 733,
- 736, 741, 746, 756, 757, 760, 768, 781, 791, 792,
- 794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
- 804, 805, 806, 807, 808, 809, 810, 813, 818, 823,
- 828, 829, 831, 832, 833, 834, 835, 836, 839, 840,
- 842, 843, 844, 845, 846, 847, 850, 851, 853, 854,
- 855, 856, 859, 864, 869, 874, 879, 885, 890, 895,
- 900, 906, 912, 917, 927, 928, 930, 937, 939, 940,
- 942, 950, 958, 966, 974, 982, 990, 998, 1006, 1015,
- 1021, 1027, 1029, 1030, 1033, 1034, 1035, 1036, 1037, 1038,
- 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048,
- 1049, 1050, 1053, 1058, 1063, 1068, 1073, 1078, 1083, 1088,
- 1093, 1095, 1096, 1099, 1111, 1120, 1128, 1133, 1143, 1148,
- 1153, 1158, 1159, 1161, 1170, 1183, 1184, 1186, 1205, 1224,
- 1233, 1255, 1256, 1258, 1317, 1377, 1386, 1400, 1401, 1403,
- 1405, 1415, 1416, 1419, 1420, 1421, 1422, 1423, 1426, 1431,
- 1435, 1440, 1445, 1450, 1482
+ 0, 85, 85, 86, 89, 90, 93, 94, 95, 96,
+ 97, 98, 101, 106, 110, 115, 120, 125, 157, 162,
+ 167, 172, 177, 182, 187, 198, 209, 219, 220, 222,
+ 244, 270, 284, 300, 301, 303, 322, 362, 381, 386,
+ 406, 413, 419, 425, 431, 437, 443, 457, 473, 474,
+ 476, 487, 504, 515, 532, 547, 553, 559, 565, 571,
+ 577, 593, 611, 612, 614, 625, 642, 653, 670, 685,
+ 691, 697, 703, 709, 715, 721, 726, 731, 733, 734,
+ 737, 742, 747, 757, 758, 761, 769, 782, 792, 793,
+ 795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
+ 805, 806, 807, 808, 809, 810, 811, 812, 815, 817,
+ 818, 821, 826, 831, 843, 851, 863, 864, 866, 871,
+ 876, 881, 886, 887, 889, 890, 891, 892, 893, 894,
+ 897, 898, 900, 901, 902, 903, 904, 905, 908, 909,
+ 911, 912, 913, 914, 917, 922, 927, 932, 937, 943,
+ 948, 953, 958, 964, 970, 975, 985, 986, 988, 995,
+ 997, 998, 1000, 1008, 1016, 1024, 1032, 1040, 1048, 1056,
+ 1064, 1073, 1079, 1085, 1087, 1088, 1091, 1092, 1093, 1094,
+ 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104,
+ 1105, 1106, 1107, 1108, 1111, 1116, 1121, 1126, 1131, 1136,
+ 1141, 1146, 1151, 1153, 1154, 1157, 1169, 1178, 1186, 1191,
+ 1201, 1206, 1211, 1216, 1217, 1219, 1228, 1241, 1242, 1244,
+ 1263, 1282, 1301, 1320, 1329, 1351, 1352, 1354, 1413, 1473,
+ 1482, 1496, 1497, 1499, 1501, 1511, 1512, 1515, 1516, 1517,
+ 1518, 1519, 1522, 1527, 1531, 1536, 1541, 1546, 1578
};
#endif
@@ -797,7 +809,8 @@ static const char *const yytname[] =
"T_NETLINK_OVERRUN_RESYNC", "T_NICE", "T_IPV4_DEST_ADDR",
"T_IPV6_DEST_ADDR", "T_SCHEDULER", "T_TYPE", "T_PRIO",
"T_NETLINK_EVENTS_RELIABLE", "T_DISABLE_INTERNAL_CACHE",
- "T_DISABLE_EXTERNAL_CACHE", "T_ERROR_QUEUE_LENGTH", "T_IP", "T_PATH_VAL",
+ "T_DISABLE_EXTERNAL_CACHE", "T_ERROR_QUEUE_LENGTH", "T_OPTIONS",
+ "T_TCP_WINDOW_TRACKING", "T_EXPECT_SYNC", "T_IP", "T_PATH_VAL",
"T_NUMBER", "T_SIGNED_NUMBER", "T_STRING", "'{'", "'}'", "$accept",
"configfile", "lines", "line", "logfile_bool", "logfile_path",
"syslog_bool", "syslog_facility", "lock", "strip_nat", "refreshtime",
@@ -807,7 +820,8 @@ static const char *const yytname[] =
"udp_option", "tcp_line", "tcp_options", "tcp_option", "hashsize",
"hashlimit", "unix_line", "unix_options", "unix_option",
"ignore_protocol", "ignore_proto_list", "ignore_proto", "sync",
- "sync_list", "sync_line", "sync_mode_alarm", "sync_mode_ftfw",
+ "sync_list", "sync_line", "option_line", "options", "option",
+ "expect_list", "expect_item", "sync_mode_alarm", "sync_mode_ftfw",
"sync_mode_notrack", "sync_mode_alarm_list", "sync_mode_alarm_line",
"sync_mode_ftfw_list", "sync_mode_ftfw_line", "sync_mode_notrack_list",
"sync_mode_notrack_line", "disable_internal_cache",
@@ -841,37 +855,39 @@ static const yytype_uint16 yytoknum[] =
315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
- 345, 346, 347, 348, 349, 350, 123, 125
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 123,
+ 125
};
# endif
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_uint8 yyr1[] =
{
- 0, 98, 99, 99, 100, 100, 101, 101, 101, 101,
- 101, 101, 102, 102, 103, 104, 104, 105, 106, 107,
- 108, 109, 110, 111, 112, 112, 113, 114, 114, 115,
- 115, 116, 116, 117, 117, 118, 118, 118, 118, 118,
- 118, 118, 118, 118, 118, 118, 119, 119, 120, 120,
- 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
- 122, 122, 123, 123, 124, 124, 124, 124, 124, 124,
- 124, 124, 124, 124, 124, 125, 126, 127, 128, 128,
- 129, 129, 130, 131, 131, 132, 132, 133, 134, 134,
- 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
- 135, 135, 135, 135, 135, 135, 135, 136, 137, 138,
- 139, 139, 140, 140, 140, 140, 140, 140, 141, 141,
- 142, 142, 142, 142, 142, 142, 143, 143, 144, 144,
- 144, 144, 145, 145, 146, 146, 147, 148, 149, 150,
- 151, 152, 153, 154, 155, 155, 156, 157, 158, 158,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 160,
- 160, 161, 162, 162, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 164, 165, 166, 166, 166, 167, 167, 168,
- 169, 170, 170, 171, 171, 172, 173, 174, 175, 175,
- 175, 176, 176, 177, 177, 178, 178, 179, 179, 177,
- 177, 180, 180, 181, 181, 177, 177, 182, 182, 183,
- 184, 185, 185, 186, 186, 186, 186, 186, 187, 187,
- 188, 189, 189, 190, 191
+ 0, 101, 102, 102, 103, 103, 104, 104, 104, 104,
+ 104, 104, 105, 105, 106, 107, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, 115, 116, 117, 117, 118,
+ 118, 119, 119, 120, 120, 121, 121, 121, 121, 121,
+ 121, 121, 121, 121, 121, 121, 122, 122, 123, 123,
+ 124, 124, 124, 124, 124, 124, 124, 124, 124, 124,
+ 125, 125, 126, 126, 127, 127, 127, 127, 127, 127,
+ 127, 127, 127, 127, 127, 128, 129, 130, 131, 131,
+ 132, 132, 133, 134, 134, 135, 135, 136, 137, 137,
+ 138, 138, 138, 138, 138, 138, 138, 138, 138, 138,
+ 138, 138, 138, 138, 138, 138, 138, 138, 139, 140,
+ 140, 141, 141, 141, 141, 141, 142, 142, 143, 144,
+ 145, 146, 147, 147, 148, 148, 148, 148, 148, 148,
+ 149, 149, 150, 150, 150, 150, 150, 150, 151, 151,
+ 152, 152, 152, 152, 153, 153, 154, 154, 155, 156,
+ 157, 158, 159, 160, 161, 162, 163, 163, 164, 165,
+ 166, 166, 167, 167, 167, 167, 167, 167, 167, 167,
+ 167, 168, 168, 169, 170, 170, 171, 171, 171, 171,
+ 171, 171, 171, 171, 171, 171, 171, 171, 171, 171,
+ 171, 171, 171, 171, 172, 173, 174, 174, 174, 175,
+ 175, 176, 177, 178, 178, 179, 179, 180, 181, 182,
+ 183, 183, 183, 184, 184, 185, 185, 186, 186, 187,
+ 187, 187, 187, 185, 185, 188, 188, 189, 189, 185,
+ 185, 190, 190, 191, 192, 193, 193, 194, 194, 194,
+ 194, 194, 195, 195, 196, 197, 197, 198, 199
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
@@ -887,20 +903,21 @@ static const yytype_uint8 yyr2[] =
2, 2, 2, 2, 2, 2, 2, 4, 0, 2,
2, 2, 4, 0, 2, 1, 1, 4, 0, 2,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 5, 5, 5,
+ 1, 1, 1, 1, 1, 1, 1, 1, 4, 0,
+ 2, 2, 2, 2, 2, 4, 0, 2, 1, 5,
+ 5, 5, 0, 2, 1, 1, 1, 1, 1, 1,
0, 2, 1, 1, 1, 1, 1, 1, 0, 2,
- 1, 1, 1, 1, 1, 1, 0, 2, 1, 1,
- 1, 1, 2, 2, 2, 2, 2, 2, 2, 2,
- 1, 1, 2, 4, 0, 2, 1, 1, 0, 2,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
- 2, 4, 0, 2, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 2, 2, 2, 2, 2, 2,
+ 2, 2, 1, 1, 2, 4, 0, 2, 1, 1,
+ 0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 2, 2, 4, 0, 2, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 2, 2, 2, 2, 2, 2, 2, 2,
- 4, 0, 2, 2, 2, 2, 2, 2, 4, 6,
- 6, 0, 2, 5, 5, 0, 2, 1, 1, 5,
- 5, 0, 2, 2, 2, 5, 5, 0, 2, 3,
- 4, 0, 2, 1, 1, 1, 1, 1, 2, 2,
- 2, 2, 2, 2, 2
+ 1, 1, 1, 1, 2, 2, 2, 2, 2, 2,
+ 2, 2, 4, 0, 2, 2, 2, 2, 2, 2,
+ 4, 6, 6, 0, 2, 5, 5, 0, 2, 1,
+ 1, 1, 1, 5, 5, 0, 2, 2, 2, 5,
+ 5, 0, 2, 3, 4, 0, 2, 1, 1, 1,
+ 1, 1, 2, 2, 2, 2, 2, 2, 2
};
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
@@ -909,116 +926,120 @@ static const yytype_uint8 yyr2[] =
static const yytype_uint8 yydefact[] =
{
2, 0, 0, 19, 0, 0, 0, 0, 3, 4,
- 8, 7, 6, 10, 9, 11, 27, 83, 162, 88,
- 221, 1, 5, 0, 0, 0, 0, 0, 0, 0,
+ 8, 7, 6, 10, 9, 11, 27, 83, 174, 88,
+ 235, 1, 5, 0, 0, 0, 0, 0, 0, 0,
26, 28, 85, 86, 82, 84, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 161, 166, 167, 169, 168, 170, 164, 165,
- 171, 163, 172, 173, 178, 179, 180, 181, 174, 175,
- 176, 177, 0, 0, 0, 0, 0, 0, 140, 141,
- 0, 0, 0, 144, 0, 0, 0, 87, 90, 91,
- 92, 93, 94, 95, 96, 97, 89, 100, 101, 102,
- 106, 98, 99, 103, 104, 105, 0, 0, 0, 220,
- 222, 223, 224, 225, 226, 227, 29, 30, 75, 76,
- 78, 12, 13, 14, 18, 183, 182, 195, 15, 16,
- 17, 197, 0, 201, 196, 184, 185, 186, 189, 191,
- 187, 188, 0, 33, 20, 0, 48, 0, 62, 21,
- 22, 0, 0, 0, 142, 24, 25, 0, 23, 159,
- 160, 139, 228, 229, 230, 231, 232, 233, 234, 0,
- 0, 0, 0, 0, 33, 0, 48, 0, 62, 0,
- 110, 118, 126, 0, 152, 150, 151, 153, 154, 155,
- 156, 157, 158, 145, 147, 0, 0, 77, 79, 201,
- 201, 0, 0, 0, 198, 202, 0, 0, 190, 192,
+ 0, 0, 173, 178, 179, 181, 180, 182, 176, 177,
+ 183, 175, 184, 185, 190, 191, 192, 193, 186, 187,
+ 188, 189, 0, 0, 0, 0, 0, 0, 152, 153,
+ 0, 0, 0, 156, 0, 0, 0, 0, 87, 90,
+ 91, 92, 93, 94, 95, 96, 97, 89, 107, 100,
+ 101, 102, 106, 98, 99, 103, 104, 105, 0, 0,
+ 0, 234, 236, 237, 238, 239, 240, 241, 29, 30,
+ 75, 76, 78, 12, 13, 14, 18, 195, 194, 207,
+ 15, 16, 17, 209, 0, 213, 208, 196, 197, 198,
+ 201, 203, 199, 200, 0, 33, 20, 0, 48, 0,
+ 62, 21, 22, 0, 0, 0, 154, 24, 25, 0,
+ 23, 171, 172, 151, 109, 242, 243, 244, 245, 246,
+ 247, 248, 0, 0, 0, 0, 0, 33, 0, 48,
+ 0, 62, 0, 122, 130, 138, 0, 164, 162, 163,
+ 165, 166, 167, 168, 169, 170, 157, 159, 0, 0,
+ 0, 77, 79, 213, 213, 0, 0, 0, 210, 214,
+ 0, 0, 202, 204, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 31, 34, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 46, 49, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 31, 34, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 46, 49, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 60, 63, 0, 0,
- 0, 146, 143, 80, 81, 0, 0, 0, 0, 0,
- 0, 0, 0, 193, 194, 32, 35, 37, 36, 38,
- 40, 41, 44, 45, 39, 43, 42, 47, 50, 55,
- 51, 58, 59, 54, 57, 56, 52, 53, 61, 64,
- 69, 65, 72, 73, 68, 71, 70, 66, 67, 74,
- 107, 112, 113, 114, 115, 111, 116, 117, 0, 0,
- 0, 0, 108, 122, 123, 119, 125, 121, 120, 124,
- 0, 109, 128, 129, 127, 130, 131, 199, 200, 211,
- 211, 205, 205, 217, 217, 136, 138, 137, 134, 135,
- 132, 133, 0, 0, 0, 0, 148, 148, 0, 0,
- 209, 212, 210, 208, 207, 203, 206, 204, 215, 0,
- 218, 216, 213, 214, 0, 149, 219
+ 60, 63, 0, 0, 0, 158, 155, 0, 0, 108,
+ 110, 80, 81, 0, 0, 0, 0, 0, 0, 0,
+ 0, 205, 206, 32, 35, 37, 36, 38, 40, 41,
+ 44, 45, 39, 43, 42, 47, 50, 55, 51, 58,
+ 59, 54, 57, 56, 52, 53, 61, 64, 69, 65,
+ 72, 73, 68, 71, 70, 66, 67, 74, 119, 124,
+ 125, 126, 127, 123, 128, 129, 0, 0, 0, 0,
+ 120, 134, 135, 131, 137, 133, 132, 136, 0, 121,
+ 140, 141, 139, 142, 143, 111, 112, 113, 114, 116,
+ 211, 212, 225, 225, 217, 217, 231, 231, 148, 150,
+ 149, 146, 147, 144, 145, 0, 0, 0, 0, 0,
+ 160, 160, 118, 115, 117, 0, 0, 223, 226, 224,
+ 221, 220, 219, 215, 218, 216, 229, 0, 232, 230,
+ 227, 228, 0, 161, 233
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
-1, 7, 8, 9, 53, 54, 55, 56, 57, 10,
- 88, 89, 90, 91, 92, 11, 23, 31, 93, 175,
- 222, 94, 177, 234, 95, 179, 247, 58, 59, 60,
- 169, 198, 12, 24, 35, 13, 26, 96, 97, 98,
- 99, 248, 305, 249, 315, 250, 324, 325, 316, 317,
- 318, 319, 100, 101, 102, 103, 104, 157, 252, 193,
- 359, 194, 105, 14, 25, 61, 62, 63, 64, 65,
- 66, 67, 173, 209, 68, 69, 70, 71, 172, 205,
- 344, 356, 342, 351, 346, 360, 15, 27, 110, 111,
- 112, 113, 114, 115
+ 89, 90, 91, 92, 93, 11, 23, 31, 94, 178,
+ 226, 95, 180, 238, 96, 182, 251, 58, 59, 60,
+ 172, 202, 12, 24, 35, 13, 26, 97, 98, 198,
+ 260, 355, 364, 99, 100, 101, 252, 313, 253, 323,
+ 254, 332, 333, 324, 325, 326, 327, 102, 103, 104,
+ 105, 106, 159, 256, 196, 377, 197, 107, 14, 25,
+ 61, 62, 63, 64, 65, 66, 67, 176, 213, 68,
+ 69, 70, 71, 175, 209, 358, 374, 356, 368, 360,
+ 378, 15, 27, 112, 113, 114, 115, 116, 117
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
-#define YYPACT_NINF -94
+#define YYPACT_NINF -77
static const yytype_int16 yypact[] =
{
- 193, -93, -90, -94, -84, -77, -70, 52, 193, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, 15, 115, 119, 155, 24, -24, -13,
- -94, -94, -94, -94, -94, -94, 2, 20, 28, 60,
- 38, 23, 42, 49, -7, 62, -52, 97, 53, 59,
- 105, 26, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -47, 101, -38, -23, 111, 114, -94, -94,
- 13, 76, 30, -94, 118, 65, 135, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, 104, 5, 137, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, 88, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, 171, -94, -94, 172, -94, 173, -94, -94,
- -94, 174, 175, 176, -94, -94, -94, 179, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -4,
- 177, 178, -36, 84, -94, -3, -94, 54, -94, -1,
- -94, -94, -94, 180, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, 184, 185, -94, -94, -94,
- -94, 100, 149, 170, -94, -94, 182, 186, -94, -94,
- 4, 189, 190, 191, 192, 194, 195, 200, 196, 197,
- 199, -94, -94, 74, 198, 203, 204, 202, 206, 207,
- 209, 208, 212, -94, -94, 25, 213, 214, 215, 205,
- 210, 216, 218, 221, 222, 223, -94, -94, 98, 132,
- -5, -94, -94, -94, -94, 71, 89, 188, 224, 225,
- 226, 227, 228, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, 232, 233,
- 234, 217, -94, -94, -94, -94, -94, -94, -94, -94,
- 219, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, 17, 21, 7, 36, 169, 211, 237, 238,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, 201,
- -94, -94, -94, -94, 261, -94, -94
+ 194, -76, -68, -77, -49, -39, -14, 98, 194, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, 0, -42, 124, 153, 10, 20, 28,
+ -77, -77, -77, -77, -77, -77, 36, 40, 50, 56,
+ 77, 79, 82, 86, 30, 90, -50, 92, 42, 104,
+ 117, 121, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -73, 122, -44, 34, 135, 145, -77, -77,
+ -23, 126, 149, -77, 147, 152, 181, 177, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, 73, 47,
+ 184, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -10, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, 182, -77, -77, 183, -77, 185,
+ -77, -77, -77, 186, 187, 188, -77, -77, -77, 180,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -4, 189, 190, 99, 62, -77, -3, -77,
+ 29, -77, -1, -77, -77, -77, 131, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, 130, 195,
+ 196, -77, -77, -77, -77, 81, 133, 175, -77, -77,
+ 193, 197, -77, -77, 4, 200, 201, 203, 204, 205,
+ 207, 206, 198, 208, 209, -77, -77, 74, 212, 211,
+ 214, 221, 213, 216, 217, 215, 220, -77, -77, 25,
+ 222, 219, 224, 223, 226, 230, 231, 228, 234, 233,
+ -77, -77, 9, 76, 53, -77, -77, 225, 6, -77,
+ -77, -77, -77, 109, 142, 218, 232, 235, 236, 237,
+ 238, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, 242, 243, 244, 227,
+ -77, -77, -77, -77, -77, -77, -77, -77, 229, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, 46, 21, 24, 37, 60,
+ 199, 210, -77, -77, -77, 239, 247, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, 202, -77, -77,
+ -77, -77, 259, -77, -77
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -94, -94, -94, 278, -94, -94, -94, -94, -94, -94,
- 45, 46, -35, -8, -94, -94, -94, -94, -94, 123,
- -94, -94, 122, -94, -94, 136, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, 67, -94,
- -94, -94, -94, 70, 82, -94, -94, -94, -94, -94,
- -94, -49, -94, -94, -94, -94, -94, -94, -94, -94,
- -94, -94, -94, -94, -94, -94, -94, -94, -22, -94,
- -17, -94, -11, -94, -2, -94, -94, -94, -94, -94,
- -94, -94, -94, -94
+ -77, -77, -77, 292, -77, -77, -77, -77, -77, -77,
+ 67, 68, -7, 11, -77, -77, -77, -77, -77, 125,
+ -77, -77, 144, -77, -77, 140, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, 71, -77, -77, -77, -77, 78, 80,
+ -77, -77, -77, -77, -77, -77, -35, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, 75, -77, -2, -77, 1, -77, 2,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
@@ -1028,121 +1049,125 @@ static const yytype_int16 yypgoto[] =
#define YYTABLE_NINF -1
static const yytype_uint16 yytable[] =
{
- 211, 212, 236, 16, 237, 195, 17, 211, 212, 213,
- 214, 238, 18, 196, 215, 216, 213, 214, 28, 19,
- 348, 215, 216, 132, 348, 77, 20, 29, 236, 349,
- 237, 353, 142, 349, 201, 202, 203, 238, 128, 129,
- 217, 145, 239, 106, 133, 84, 218, 217, 240, 143,
- 165, 166, 21, 218, 151, 152, 147, 224, 146, 225,
- 353, 204, 219, 220, 241, 242, 226, 116, 239, 219,
- 220, 140, 141, 148, 240, 155, 156, 224, 117, 225,
- 153, 243, 244, 320, 311, 107, 226, 108, 130, 245,
- 241, 242, 321, 197, 221, 118, 246, 227, 135, 136,
- 167, 265, 354, 228, 355, 121, 122, 243, 244, 73,
- 159, 160, 30, 119, 350, 245, 125, 227, 352, 229,
- 230, 109, 288, 228, 120, 36, 37, 76, 77, 38,
- 124, 354, 78, 357, 79, 126, 231, 232, 39, 229,
- 230, 201, 202, 203, 127, 40, 137, 41, 84, 162,
- 163, 233, 123, 138, 42, 131, 231, 232, 43, 201,
- 202, 203, 77, 72, 170, 171, 73, 154, 327, 206,
- 207, 277, 308, 257, 258, 74, 309, 255, 256, 75,
- 44, 208, 84, 310, 76, 77, 328, 45, 46, 78,
- 134, 79, 80, 81, 144, 300, 164, 47, 82, 48,
- 49, 139, 83, 50, 149, 84, 51, 150, 32, 1,
- 33, 158, 34, 303, 313, 322, 52, 85, 2, 86,
- 3, 311, 259, 260, 4, 5, 6, 183, 161, 312,
- 168, 184, 185, 186, 187, 188, 189, 190, 191, 192,
- 304, 314, 323, 261, 262, 272, 273, 281, 282, 364,
- 292, 293, 87, 184, 185, 186, 187, 188, 189, 190,
- 191, 192, 338, 339, 340, 341, 358, 174, 176, 178,
- 180, 181, 182, 199, 200, 251, 253, 263, 254, 264,
- 266, 267, 268, 269, 329, 366, 22, 270, 271, 278,
- 275, 274, 276, 301, 302, 280, 279, 210, 223, 286,
- 284, 283, 285, 287, 289, 294, 291, 290, 361, 295,
- 365, 296, 297, 298, 235, 345, 299, 326, 306, 343,
- 330, 331, 332, 333, 334, 335, 336, 337, 362, 363,
- 307, 0, 347
+ 215, 216, 240, 28, 241, 199, 144, 215, 216, 217,
+ 218, 242, 29, 200, 219, 220, 217, 218, 153, 154,
+ 73, 219, 220, 16, 365, 134, 145, 365, 240, 108,
+ 241, 17, 228, 366, 229, 147, 366, 242, 76, 77,
+ 221, 230, 243, 78, 155, 79, 222, 221, 244, 135,
+ 18, 337, 338, 222, 32, 148, 33, 370, 34, 84,
+ 19, 371, 223, 224, 245, 246, 173, 174, 243, 223,
+ 224, 109, 231, 110, 244, 130, 131, 228, 232, 229,
+ 370, 247, 248, 77, 371, 20, 230, 137, 138, 249,
+ 245, 246, 168, 169, 233, 234, 201, 225, 21, 250,
+ 30, 123, 124, 84, 273, 339, 77, 247, 248, 308,
+ 111, 235, 236, 149, 118, 249, 316, 231, 165, 166,
+ 317, 367, 119, 232, 369, 296, 84, 318, 132, 237,
+ 36, 37, 120, 150, 38, 372, 121, 373, 139, 233,
+ 234, 328, 319, 39, 362, 170, 363, 210, 211, 122,
+ 40, 125, 41, 329, 265, 266, 235, 236, 372, 42,
+ 375, 72, 212, 43, 73, 319, 142, 143, 167, 205,
+ 206, 207, 126, 74, 285, 127, 320, 75, 128, 205,
+ 206, 207, 76, 77, 129, 44, 133, 78, 136, 79,
+ 80, 81, 45, 46, 157, 158, 82, 161, 162, 208,
+ 83, 140, 47, 84, 48, 49, 267, 268, 50, 340,
+ 1, 51, 205, 206, 207, 85, 141, 86, 146, 2,
+ 156, 3, 257, 258, 52, 4, 5, 6, 186, 255,
+ 259, 151, 187, 188, 189, 190, 191, 192, 193, 194,
+ 195, 152, 341, 160, 87, 311, 321, 330, 269, 270,
+ 382, 280, 281, 88, 187, 188, 189, 190, 191, 192,
+ 193, 194, 195, 312, 322, 331, 289, 290, 300, 301,
+ 335, 336, 351, 352, 353, 354, 164, 163, 263, 264,
+ 171, 177, 179, 384, 181, 183, 184, 185, 203, 204,
+ 261, 271, 262, 272, 274, 275, 282, 276, 277, 376,
+ 22, 278, 214, 279, 283, 284, 286, 287, 288, 294,
+ 379, 291, 292, 293, 295, 298, 297, 342, 299, 309,
+ 310, 239, 305, 227, 302, 334, 303, 304, 306, 307,
+ 314, 343, 315, 380, 344, 345, 346, 347, 348, 349,
+ 350, 381, 383, 359, 357, 0, 0, 0, 0, 361
};
static const yytype_int16 yycheck[] =
{
- 3, 4, 3, 96, 5, 9, 96, 3, 4, 12,
- 13, 12, 96, 17, 17, 18, 12, 13, 3, 96,
- 3, 17, 18, 75, 3, 30, 96, 12, 3, 12,
- 5, 24, 79, 12, 70, 71, 72, 12, 45, 46,
- 43, 79, 43, 19, 96, 50, 49, 43, 49, 96,
- 45, 46, 0, 49, 41, 42, 79, 3, 96, 5,
- 24, 97, 65, 66, 65, 66, 12, 91, 43, 65,
- 66, 45, 46, 96, 49, 45, 46, 3, 91, 5,
- 67, 82, 83, 88, 89, 61, 12, 63, 95, 90,
- 65, 66, 97, 97, 97, 93, 97, 43, 45, 46,
- 95, 97, 95, 49, 97, 45, 46, 82, 83, 11,
- 45, 46, 97, 93, 97, 90, 93, 43, 97, 65,
- 66, 97, 97, 49, 96, 6, 7, 29, 30, 10,
- 92, 95, 34, 97, 36, 93, 82, 83, 19, 65,
- 66, 70, 71, 72, 95, 26, 93, 28, 50, 45,
- 46, 97, 92, 94, 35, 93, 82, 83, 39, 70,
- 71, 72, 30, 8, 76, 77, 11, 91, 97, 85,
- 86, 97, 40, 73, 74, 20, 44, 199, 200, 24,
- 61, 97, 50, 51, 29, 30, 97, 68, 69, 34,
- 93, 36, 37, 38, 93, 97, 92, 78, 43, 80,
- 81, 96, 47, 84, 93, 50, 87, 93, 93, 16,
- 95, 93, 97, 248, 249, 250, 97, 62, 25, 64,
- 27, 89, 73, 74, 31, 32, 33, 48, 93, 97,
- 93, 52, 53, 54, 55, 56, 57, 58, 59, 60,
- 248, 249, 250, 73, 74, 45, 46, 45, 46, 48,
- 45, 46, 97, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, 45, 46, 45, 46, 97, 96, 96, 96,
- 96, 96, 96, 96, 96, 95, 92, 95, 93, 93,
- 91, 91, 91, 91, 96, 24, 8, 93, 93, 91,
- 93, 95, 93, 248, 248, 91, 93, 174, 176, 91,
- 93, 95, 93, 91, 91, 95, 91, 93, 97, 93,
- 359, 93, 91, 91, 178, 332, 93, 250, 248, 330,
- 96, 96, 96, 96, 96, 93, 93, 93, 91, 91,
- 248, -1, 334
+ 3, 4, 3, 3, 5, 9, 79, 3, 4, 12,
+ 13, 12, 12, 17, 17, 18, 12, 13, 41, 42,
+ 11, 17, 18, 99, 3, 75, 99, 3, 3, 19,
+ 5, 99, 3, 12, 5, 79, 12, 12, 29, 30,
+ 43, 12, 43, 34, 67, 36, 49, 43, 49, 99,
+ 99, 45, 46, 49, 96, 99, 98, 20, 100, 50,
+ 99, 24, 65, 66, 65, 66, 76, 77, 43, 65,
+ 66, 61, 43, 63, 49, 45, 46, 3, 49, 5,
+ 20, 82, 83, 30, 24, 99, 12, 45, 46, 90,
+ 65, 66, 45, 46, 65, 66, 100, 100, 0, 100,
+ 100, 45, 46, 50, 100, 99, 30, 82, 83, 100,
+ 100, 82, 83, 79, 94, 90, 40, 43, 45, 46,
+ 44, 100, 94, 49, 100, 100, 50, 51, 98, 100,
+ 6, 7, 96, 99, 10, 98, 96, 100, 96, 65,
+ 66, 88, 89, 19, 98, 98, 100, 85, 86, 99,
+ 26, 95, 28, 100, 73, 74, 82, 83, 98, 35,
+ 100, 8, 100, 39, 11, 89, 45, 46, 95, 70,
+ 71, 72, 95, 20, 100, 96, 100, 24, 96, 70,
+ 71, 72, 29, 30, 98, 61, 96, 34, 96, 36,
+ 37, 38, 68, 69, 45, 46, 43, 45, 46, 100,
+ 47, 97, 78, 50, 80, 81, 73, 74, 84, 100,
+ 16, 87, 70, 71, 72, 62, 99, 64, 96, 25,
+ 94, 27, 92, 93, 100, 31, 32, 33, 48, 98,
+ 100, 96, 52, 53, 54, 55, 56, 57, 58, 59,
+ 60, 96, 100, 96, 91, 252, 253, 254, 73, 74,
+ 48, 45, 46, 100, 52, 53, 54, 55, 56, 57,
+ 58, 59, 60, 252, 253, 254, 45, 46, 45, 46,
+ 45, 46, 45, 46, 45, 46, 99, 96, 203, 204,
+ 96, 99, 99, 24, 99, 99, 99, 99, 99, 99,
+ 95, 98, 96, 96, 94, 94, 98, 94, 94, 100,
+ 8, 96, 177, 96, 96, 96, 94, 96, 94, 94,
+ 100, 98, 96, 96, 94, 96, 94, 99, 94, 252,
+ 252, 181, 94, 179, 98, 254, 96, 96, 94, 96,
+ 252, 99, 252, 94, 99, 99, 99, 99, 96, 96,
+ 96, 94, 377, 345, 343, -1, -1, -1, -1, 347
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const yytype_uint8 yystos[] =
{
- 0, 16, 25, 27, 31, 32, 33, 99, 100, 101,
- 107, 113, 130, 133, 161, 184, 96, 96, 96, 96,
- 96, 0, 101, 114, 131, 162, 134, 185, 3, 12,
- 97, 115, 93, 95, 97, 132, 6, 7, 10, 19,
+ 0, 16, 25, 27, 31, 32, 33, 102, 103, 104,
+ 110, 116, 133, 136, 169, 192, 99, 99, 99, 99,
+ 99, 0, 104, 117, 134, 170, 137, 193, 3, 12,
+ 100, 118, 96, 98, 100, 135, 6, 7, 10, 19,
26, 28, 35, 39, 61, 68, 69, 78, 80, 81,
- 84, 87, 97, 102, 103, 104, 105, 106, 125, 126,
- 127, 163, 164, 165, 166, 167, 168, 169, 172, 173,
- 174, 175, 8, 11, 20, 24, 29, 30, 34, 36,
- 37, 38, 43, 47, 50, 62, 64, 97, 108, 109,
- 110, 111, 112, 116, 119, 122, 135, 136, 137, 138,
- 150, 151, 152, 153, 154, 160, 19, 61, 63, 97,
- 186, 187, 188, 189, 190, 191, 91, 91, 93, 93,
- 96, 45, 46, 92, 92, 93, 93, 95, 45, 46,
- 95, 93, 75, 96, 93, 45, 46, 93, 94, 96,
- 45, 46, 79, 96, 93, 79, 96, 79, 96, 93,
- 93, 41, 42, 67, 91, 45, 46, 155, 93, 45,
- 46, 93, 45, 46, 92, 45, 46, 95, 93, 128,
- 76, 77, 176, 170, 96, 117, 96, 120, 96, 123,
- 96, 96, 96, 48, 52, 53, 54, 55, 56, 57,
- 58, 59, 60, 157, 159, 9, 17, 97, 129, 96,
- 96, 70, 71, 72, 97, 177, 85, 86, 97, 171,
- 117, 3, 4, 12, 13, 17, 18, 43, 49, 65,
- 66, 97, 118, 120, 3, 5, 12, 43, 49, 65,
- 66, 82, 83, 97, 121, 123, 3, 5, 12, 43,
- 49, 65, 66, 82, 83, 90, 97, 124, 139, 141,
- 143, 95, 156, 92, 93, 176, 176, 73, 74, 73,
- 74, 73, 74, 95, 93, 97, 91, 91, 91, 91,
- 93, 93, 45, 46, 95, 93, 93, 97, 91, 93,
- 91, 45, 46, 95, 93, 93, 91, 91, 97, 91,
- 93, 91, 45, 46, 95, 93, 93, 91, 91, 93,
- 97, 108, 109, 110, 111, 140, 151, 152, 40, 44,
- 51, 89, 97, 110, 111, 142, 146, 147, 148, 149,
- 88, 97, 110, 111, 144, 145, 146, 97, 97, 96,
- 96, 96, 96, 96, 96, 93, 93, 93, 45, 46,
- 45, 46, 180, 180, 178, 178, 182, 182, 3, 12,
- 97, 181, 97, 24, 95, 97, 179, 97, 97, 158,
- 183, 97, 91, 91, 48, 159, 24
+ 84, 87, 100, 105, 106, 107, 108, 109, 128, 129,
+ 130, 171, 172, 173, 174, 175, 176, 177, 180, 181,
+ 182, 183, 8, 11, 20, 24, 29, 30, 34, 36,
+ 37, 38, 43, 47, 50, 62, 64, 91, 100, 111,
+ 112, 113, 114, 115, 119, 122, 125, 138, 139, 144,
+ 145, 146, 158, 159, 160, 161, 162, 168, 19, 61,
+ 63, 100, 194, 195, 196, 197, 198, 199, 94, 94,
+ 96, 96, 99, 45, 46, 95, 95, 96, 96, 98,
+ 45, 46, 98, 96, 75, 99, 96, 45, 46, 96,
+ 97, 99, 45, 46, 79, 99, 96, 79, 99, 79,
+ 99, 96, 96, 41, 42, 67, 94, 45, 46, 163,
+ 96, 45, 46, 96, 99, 45, 46, 95, 45, 46,
+ 98, 96, 131, 76, 77, 184, 178, 99, 120, 99,
+ 123, 99, 126, 99, 99, 99, 48, 52, 53, 54,
+ 55, 56, 57, 58, 59, 60, 165, 167, 140, 9,
+ 17, 100, 132, 99, 99, 70, 71, 72, 100, 185,
+ 85, 86, 100, 179, 120, 3, 4, 12, 13, 17,
+ 18, 43, 49, 65, 66, 100, 121, 123, 3, 5,
+ 12, 43, 49, 65, 66, 82, 83, 100, 124, 126,
+ 3, 5, 12, 43, 49, 65, 66, 82, 83, 90,
+ 100, 127, 147, 149, 151, 98, 164, 92, 93, 100,
+ 141, 95, 96, 184, 184, 73, 74, 73, 74, 73,
+ 74, 98, 96, 100, 94, 94, 94, 94, 96, 96,
+ 45, 46, 98, 96, 96, 100, 94, 96, 94, 45,
+ 46, 98, 96, 96, 94, 94, 100, 94, 96, 94,
+ 45, 46, 98, 96, 96, 94, 94, 96, 100, 111,
+ 112, 113, 114, 148, 159, 160, 40, 44, 51, 89,
+ 100, 113, 114, 150, 154, 155, 156, 157, 88, 100,
+ 113, 114, 152, 153, 154, 45, 46, 45, 46, 99,
+ 100, 100, 99, 99, 99, 99, 99, 99, 96, 96,
+ 96, 45, 46, 45, 46, 142, 188, 188, 186, 186,
+ 190, 190, 98, 100, 143, 3, 12, 100, 189, 100,
+ 20, 24, 98, 100, 187, 100, 100, 166, 191, 100,
+ 94, 94, 48, 167, 24
};
#define yyerrok (yyerrstatus = 0)
@@ -1956,7 +1981,7 @@ yyreduce:
case 12:
/* Line 1455 of yacc.c */
-#line 101 "read_config_yy.y"
+#line 102 "read_config_yy.y"
{
strncpy(conf.logfile, DEFAULT_LOGFILE, FILENAME_MAXLEN);
}
@@ -1965,7 +1990,7 @@ yyreduce:
case 13:
/* Line 1455 of yacc.c */
-#line 106 "read_config_yy.y"
+#line 107 "read_config_yy.y"
{
}
break;
@@ -1973,7 +1998,7 @@ yyreduce:
case 14:
/* Line 1455 of yacc.c */
-#line 110 "read_config_yy.y"
+#line 111 "read_config_yy.y"
{
strncpy(conf.logfile, (yyvsp[(2) - (2)].string), FILENAME_MAXLEN);
}
@@ -1982,7 +2007,7 @@ yyreduce:
case 15:
/* Line 1455 of yacc.c */
-#line 115 "read_config_yy.y"
+#line 116 "read_config_yy.y"
{
conf.syslog_facility = DEFAULT_SYSLOG_FACILITY;
}
@@ -1991,7 +2016,7 @@ yyreduce:
case 16:
/* Line 1455 of yacc.c */
-#line 120 "read_config_yy.y"
+#line 121 "read_config_yy.y"
{
conf.syslog_facility = -1;
}
@@ -2000,7 +2025,7 @@ yyreduce:
case 17:
/* Line 1455 of yacc.c */
-#line 125 "read_config_yy.y"
+#line 126 "read_config_yy.y"
{
if (!strcmp((yyvsp[(2) - (2)].string), "daemon"))
conf.syslog_facility = LOG_DAEMON;
@@ -2036,7 +2061,7 @@ yyreduce:
case 18:
/* Line 1455 of yacc.c */
-#line 157 "read_config_yy.y"
+#line 158 "read_config_yy.y"
{
strncpy(conf.lockfile, (yyvsp[(2) - (2)].string), FILENAME_MAXLEN);
}
@@ -2045,7 +2070,7 @@ yyreduce:
case 19:
/* Line 1455 of yacc.c */
-#line 162 "read_config_yy.y"
+#line 163 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "`StripNAT' clause is obsolete, ignoring");
}
@@ -2054,7 +2079,7 @@ yyreduce:
case 20:
/* Line 1455 of yacc.c */
-#line 167 "read_config_yy.y"
+#line 168 "read_config_yy.y"
{
conf.refresh = (yyvsp[(2) - (2)].val);
}
@@ -2063,7 +2088,7 @@ yyreduce:
case 21:
/* Line 1455 of yacc.c */
-#line 172 "read_config_yy.y"
+#line 173 "read_config_yy.y"
{
conf.cache_timeout = (yyvsp[(2) - (2)].val);
}
@@ -2072,7 +2097,7 @@ yyreduce:
case 22:
/* Line 1455 of yacc.c */
-#line 177 "read_config_yy.y"
+#line 178 "read_config_yy.y"
{
conf.commit_timeout = (yyvsp[(2) - (2)].val);
}
@@ -2081,7 +2106,7 @@ yyreduce:
case 23:
/* Line 1455 of yacc.c */
-#line 182 "read_config_yy.y"
+#line 183 "read_config_yy.y"
{
conf.purge_timeout = (yyvsp[(2) - (2)].val);
}
@@ -2090,7 +2115,7 @@ yyreduce:
case 24:
/* Line 1455 of yacc.c */
-#line 187 "read_config_yy.y"
+#line 188 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "the use of `Checksum' outside the "
"`Multicast' clause is ambiguous");
@@ -2105,7 +2130,7 @@ yyreduce:
case 25:
/* Line 1455 of yacc.c */
-#line 198 "read_config_yy.y"
+#line 199 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "the use of `Checksum' outside the "
"`Multicast' clause is ambiguous");
@@ -2120,7 +2145,7 @@ yyreduce:
case 26:
/* Line 1455 of yacc.c */
-#line 209 "read_config_yy.y"
+#line 210 "read_config_yy.y"
{
ct_filter_set_logic(STATE(us_filter),
CT_FILTER_ADDRESS,
@@ -2134,7 +2159,7 @@ yyreduce:
case 29:
/* Line 1455 of yacc.c */
-#line 222 "read_config_yy.y"
+#line 223 "read_config_yy.y"
{
union inet_address ip;
@@ -2160,7 +2185,7 @@ yyreduce:
case 30:
/* Line 1455 of yacc.c */
-#line 244 "read_config_yy.y"
+#line 245 "read_config_yy.y"
{
union inet_address ip;
@@ -2190,7 +2215,7 @@ yyreduce:
case 31:
/* Line 1455 of yacc.c */
-#line 270 "read_config_yy.y"
+#line 271 "read_config_yy.y"
{
if (conf.channel_type_global != CHANNEL_NONE &&
conf.channel_type_global != CHANNEL_MCAST) {
@@ -2208,7 +2233,7 @@ yyreduce:
case 32:
/* Line 1455 of yacc.c */
-#line 284 "read_config_yy.y"
+#line 285 "read_config_yy.y"
{
if (conf.channel_type_global != CHANNEL_NONE &&
conf.channel_type_global != CHANNEL_MCAST) {
@@ -2228,7 +2253,7 @@ yyreduce:
case 35:
/* Line 1455 of yacc.c */
-#line 303 "read_config_yy.y"
+#line 304 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2251,7 +2276,7 @@ yyreduce:
case 36:
/* Line 1455 of yacc.c */
-#line 322 "read_config_yy.y"
+#line 323 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2295,7 +2320,7 @@ yyreduce:
case 37:
/* Line 1455 of yacc.c */
-#line 362 "read_config_yy.y"
+#line 363 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2318,7 +2343,7 @@ yyreduce:
case 38:
/* Line 1455 of yacc.c */
-#line 381 "read_config_yy.y"
+#line 382 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "`IPv6_interface' not required, ignoring");
}
@@ -2327,7 +2352,7 @@ yyreduce:
case 39:
/* Line 1455 of yacc.c */
-#line 386 "read_config_yy.y"
+#line 387 "read_config_yy.y"
{
unsigned int idx;
@@ -2351,7 +2376,7 @@ yyreduce:
case 40:
/* Line 1455 of yacc.c */
-#line 406 "read_config_yy.y"
+#line 407 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "`Backlog' option inside Multicast clause is "
"obsolete. Please, remove it from "
@@ -2362,7 +2387,7 @@ yyreduce:
case 41:
/* Line 1455 of yacc.c */
-#line 413 "read_config_yy.y"
+#line 414 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.mcast.port = (yyvsp[(2) - (2)].val);
@@ -2372,7 +2397,7 @@ yyreduce:
case 42:
/* Line 1455 of yacc.c */
-#line 419 "read_config_yy.y"
+#line 420 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.mcast.sndbuf = (yyvsp[(2) - (2)].val);
@@ -2382,7 +2407,7 @@ yyreduce:
case 43:
/* Line 1455 of yacc.c */
-#line 425 "read_config_yy.y"
+#line 426 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.mcast.rcvbuf = (yyvsp[(2) - (2)].val);
@@ -2392,7 +2417,7 @@ yyreduce:
case 44:
/* Line 1455 of yacc.c */
-#line 431 "read_config_yy.y"
+#line 432 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.mcast.checksum = 0;
@@ -2402,7 +2427,7 @@ yyreduce:
case 45:
/* Line 1455 of yacc.c */
-#line 437 "read_config_yy.y"
+#line 438 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.mcast.checksum = 1;
@@ -2412,7 +2437,7 @@ yyreduce:
case 46:
/* Line 1455 of yacc.c */
-#line 443 "read_config_yy.y"
+#line 444 "read_config_yy.y"
{
if (conf.channel_type_global != CHANNEL_NONE &&
conf.channel_type_global != CHANNEL_UDP) {
@@ -2430,7 +2455,7 @@ yyreduce:
case 47:
/* Line 1455 of yacc.c */
-#line 457 "read_config_yy.y"
+#line 458 "read_config_yy.y"
{
if (conf.channel_type_global != CHANNEL_NONE &&
conf.channel_type_global != CHANNEL_UDP) {
@@ -2450,7 +2475,7 @@ yyreduce:
case 50:
/* Line 1455 of yacc.c */
-#line 476 "read_config_yy.y"
+#line 477 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2465,7 +2490,7 @@ yyreduce:
case 51:
/* Line 1455 of yacc.c */
-#line 487 "read_config_yy.y"
+#line 488 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2486,7 +2511,7 @@ yyreduce:
case 52:
/* Line 1455 of yacc.c */
-#line 504 "read_config_yy.y"
+#line 505 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2501,7 +2526,7 @@ yyreduce:
case 53:
/* Line 1455 of yacc.c */
-#line 515 "read_config_yy.y"
+#line 516 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2522,7 +2547,7 @@ yyreduce:
case 54:
/* Line 1455 of yacc.c */
-#line 532 "read_config_yy.y"
+#line 533 "read_config_yy.y"
{
int idx;
@@ -2541,7 +2566,7 @@ yyreduce:
case 55:
/* Line 1455 of yacc.c */
-#line 547 "read_config_yy.y"
+#line 548 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.udp.port = (yyvsp[(2) - (2)].val);
@@ -2551,7 +2576,7 @@ yyreduce:
case 56:
/* Line 1455 of yacc.c */
-#line 553 "read_config_yy.y"
+#line 554 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.udp.sndbuf = (yyvsp[(2) - (2)].val);
@@ -2561,7 +2586,7 @@ yyreduce:
case 57:
/* Line 1455 of yacc.c */
-#line 559 "read_config_yy.y"
+#line 560 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.udp.rcvbuf = (yyvsp[(2) - (2)].val);
@@ -2571,7 +2596,7 @@ yyreduce:
case 58:
/* Line 1455 of yacc.c */
-#line 565 "read_config_yy.y"
+#line 566 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.udp.checksum = 0;
@@ -2581,7 +2606,7 @@ yyreduce:
case 59:
/* Line 1455 of yacc.c */
-#line 571 "read_config_yy.y"
+#line 572 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.udp.checksum = 1;
@@ -2591,7 +2616,7 @@ yyreduce:
case 60:
/* Line 1455 of yacc.c */
-#line 577 "read_config_yy.y"
+#line 578 "read_config_yy.y"
{
if (conf.channel_type_global != CHANNEL_NONE &&
conf.channel_type_global != CHANNEL_TCP) {
@@ -2611,7 +2636,7 @@ yyreduce:
case 61:
/* Line 1455 of yacc.c */
-#line 593 "read_config_yy.y"
+#line 594 "read_config_yy.y"
{
if (conf.channel_type_global != CHANNEL_NONE &&
conf.channel_type_global != CHANNEL_TCP) {
@@ -2633,7 +2658,7 @@ yyreduce:
case 64:
/* Line 1455 of yacc.c */
-#line 614 "read_config_yy.y"
+#line 615 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2648,7 +2673,7 @@ yyreduce:
case 65:
/* Line 1455 of yacc.c */
-#line 625 "read_config_yy.y"
+#line 626 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2669,7 +2694,7 @@ yyreduce:
case 66:
/* Line 1455 of yacc.c */
-#line 642 "read_config_yy.y"
+#line 643 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2684,7 +2709,7 @@ yyreduce:
case 67:
/* Line 1455 of yacc.c */
-#line 653 "read_config_yy.y"
+#line 654 "read_config_yy.y"
{
__max_dedicated_links_reached();
@@ -2705,7 +2730,7 @@ yyreduce:
case 68:
/* Line 1455 of yacc.c */
-#line 670 "read_config_yy.y"
+#line 671 "read_config_yy.y"
{
int idx;
@@ -2724,7 +2749,7 @@ yyreduce:
case 69:
/* Line 1455 of yacc.c */
-#line 685 "read_config_yy.y"
+#line 686 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.tcp.port = (yyvsp[(2) - (2)].val);
@@ -2734,7 +2759,7 @@ yyreduce:
case 70:
/* Line 1455 of yacc.c */
-#line 691 "read_config_yy.y"
+#line 692 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.tcp.sndbuf = (yyvsp[(2) - (2)].val);
@@ -2744,7 +2769,7 @@ yyreduce:
case 71:
/* Line 1455 of yacc.c */
-#line 697 "read_config_yy.y"
+#line 698 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.tcp.rcvbuf = (yyvsp[(2) - (2)].val);
@@ -2754,7 +2779,7 @@ yyreduce:
case 72:
/* Line 1455 of yacc.c */
-#line 703 "read_config_yy.y"
+#line 704 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.tcp.checksum = 0;
@@ -2764,7 +2789,7 @@ yyreduce:
case 73:
/* Line 1455 of yacc.c */
-#line 709 "read_config_yy.y"
+#line 710 "read_config_yy.y"
{
__max_dedicated_links_reached();
conf.channel[conf.channel_num].u.tcp.checksum = 1;
@@ -2774,7 +2799,7 @@ yyreduce:
case 74:
/* Line 1455 of yacc.c */
-#line 715 "read_config_yy.y"
+#line 716 "read_config_yy.y"
{
__max_dedicated_links_reached();
CONFIG(channelc).error_queue_length = (yyvsp[(2) - (2)].val);
@@ -2784,7 +2809,7 @@ yyreduce:
case 75:
/* Line 1455 of yacc.c */
-#line 721 "read_config_yy.y"
+#line 722 "read_config_yy.y"
{
conf.hashsize = (yyvsp[(2) - (2)].val);
}
@@ -2793,7 +2818,7 @@ yyreduce:
case 76:
/* Line 1455 of yacc.c */
-#line 726 "read_config_yy.y"
+#line 727 "read_config_yy.y"
{
conf.limit = (yyvsp[(2) - (2)].val);
}
@@ -2802,7 +2827,7 @@ yyreduce:
case 80:
/* Line 1455 of yacc.c */
-#line 737 "read_config_yy.y"
+#line 738 "read_config_yy.y"
{
strcpy(conf.local.path, (yyvsp[(2) - (2)].string));
}
@@ -2811,7 +2836,7 @@ yyreduce:
case 81:
/* Line 1455 of yacc.c */
-#line 742 "read_config_yy.y"
+#line 743 "read_config_yy.y"
{
conf.local.backlog = (yyvsp[(2) - (2)].val);
}
@@ -2820,7 +2845,7 @@ yyreduce:
case 82:
/* Line 1455 of yacc.c */
-#line 747 "read_config_yy.y"
+#line 748 "read_config_yy.y"
{
ct_filter_set_logic(STATE(us_filter),
CT_FILTER_L4PROTO,
@@ -2834,7 +2859,7 @@ yyreduce:
case 85:
/* Line 1455 of yacc.c */
-#line 761 "read_config_yy.y"
+#line 762 "read_config_yy.y"
{
if ((yyvsp[(1) - (1)].val) < IPPROTO_MAX)
ct_filter_add_proto(STATE(us_filter), (yyvsp[(1) - (1)].val));
@@ -2846,7 +2871,7 @@ yyreduce:
case 86:
/* Line 1455 of yacc.c */
-#line 769 "read_config_yy.y"
+#line 770 "read_config_yy.y"
{
struct protoent *pent;
@@ -2863,7 +2888,7 @@ yyreduce:
case 87:
/* Line 1455 of yacc.c */
-#line 782 "read_config_yy.y"
+#line 783 "read_config_yy.y"
{
if (conf.flags & CTD_STATS_MODE) {
print_err(CTD_CFG_ERROR, "cannot use both `Stats' and `Sync' "
@@ -2874,139 +2899,210 @@ yyreduce:
}
break;
- case 107:
+ case 111:
/* Line 1455 of yacc.c */
-#line 814 "read_config_yy.y"
+#line 822 "read_config_yy.y"
+ {
+ CONFIG(sync).tcp_window_tracking = 1;
+}
+ break;
+
+ case 112:
+
+/* Line 1455 of yacc.c */
+#line 827 "read_config_yy.y"
+ {
+ CONFIG(sync).tcp_window_tracking = 0;
+}
+ break;
+
+ case 113:
+
+/* Line 1455 of yacc.c */
+#line 832 "read_config_yy.y"
+ {
+ CONFIG(flags) |= CTD_EXPECT;
+ CONFIG(netlink).subsys_id = NFNL_SUBSYS_NONE;
+ CONFIG(netlink).groups = NF_NETLINK_CONNTRACK_NEW |
+ NF_NETLINK_CONNTRACK_UPDATE |
+ NF_NETLINK_CONNTRACK_DESTROY |
+ NF_NETLINK_CONNTRACK_EXP_NEW |
+ NF_NETLINK_CONNTRACK_EXP_UPDATE |
+ NF_NETLINK_CONNTRACK_EXP_DESTROY;
+}
+ break;
+
+ case 114:
+
+/* Line 1455 of yacc.c */
+#line 844 "read_config_yy.y"
+ {
+ CONFIG(netlink).subsys_id = NFNL_SUBSYS_CTNETLINK;
+ CONFIG(netlink).groups = NF_NETLINK_CONNTRACK_NEW |
+ NF_NETLINK_CONNTRACK_UPDATE |
+ NF_NETLINK_CONNTRACK_DESTROY;
+}
+ break;
+
+ case 115:
+
+/* Line 1455 of yacc.c */
+#line 852 "read_config_yy.y"
+ {
+ CONFIG(flags) |= CTD_EXPECT;
+ CONFIG(netlink).subsys_id = NFNL_SUBSYS_NONE;
+ CONFIG(netlink).groups = NF_NETLINK_CONNTRACK_NEW |
+ NF_NETLINK_CONNTRACK_UPDATE |
+ NF_NETLINK_CONNTRACK_DESTROY |
+ NF_NETLINK_CONNTRACK_EXP_NEW |
+ NF_NETLINK_CONNTRACK_EXP_UPDATE |
+ NF_NETLINK_CONNTRACK_EXP_DESTROY;
+}
+ break;
+
+ case 118:
+
+/* Line 1455 of yacc.c */
+#line 867 "read_config_yy.y"
+ {
+ exp_filter_add(STATE(exp_filter), (yyvsp[(1) - (1)].string));
+}
+ break;
+
+ case 119:
+
+/* Line 1455 of yacc.c */
+#line 872 "read_config_yy.y"
{
conf.flags |= CTD_SYNC_ALARM;
}
break;
- case 108:
+ case 120:
/* Line 1455 of yacc.c */
-#line 819 "read_config_yy.y"
+#line 877 "read_config_yy.y"
{
conf.flags |= CTD_SYNC_FTFW;
}
break;
- case 109:
+ case 121:
/* Line 1455 of yacc.c */
-#line 824 "read_config_yy.y"
+#line 882 "read_config_yy.y"
{
conf.flags |= CTD_SYNC_NOTRACK;
}
break;
- case 132:
+ case 144:
/* Line 1455 of yacc.c */
-#line 860 "read_config_yy.y"
+#line 918 "read_config_yy.y"
{
conf.sync.internal_cache_disable = 1;
}
break;
- case 133:
+ case 145:
/* Line 1455 of yacc.c */
-#line 865 "read_config_yy.y"
+#line 923 "read_config_yy.y"
{
conf.sync.internal_cache_disable = 0;
}
break;
- case 134:
+ case 146:
/* Line 1455 of yacc.c */
-#line 870 "read_config_yy.y"
+#line 928 "read_config_yy.y"
{
conf.sync.external_cache_disable = 1;
}
break;
- case 135:
+ case 147:
/* Line 1455 of yacc.c */
-#line 875 "read_config_yy.y"
+#line 933 "read_config_yy.y"
{
conf.sync.external_cache_disable = 0;
}
break;
- case 136:
+ case 148:
/* Line 1455 of yacc.c */
-#line 880 "read_config_yy.y"
+#line 938 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "`ResendBufferSize' is deprecated. "
"Use `ResendQueueSize' instead");
}
break;
- case 137:
+ case 149:
/* Line 1455 of yacc.c */
-#line 886 "read_config_yy.y"
+#line 944 "read_config_yy.y"
{
conf.resend_queue_size = (yyvsp[(2) - (2)].val);
}
break;
- case 138:
+ case 150:
/* Line 1455 of yacc.c */
-#line 891 "read_config_yy.y"
+#line 949 "read_config_yy.y"
{
conf.window_size = (yyvsp[(2) - (2)].val);
}
break;
- case 139:
+ case 151:
/* Line 1455 of yacc.c */
-#line 896 "read_config_yy.y"
+#line 954 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "`DestroyTimeout' is deprecated. Remove it");
}
break;
- case 140:
+ case 152:
/* Line 1455 of yacc.c */
-#line 901 "read_config_yy.y"
+#line 959 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "`RelaxTransitions' clause is obsolete. "
"Please, remove it from conntrackd.conf");
}
break;
- case 141:
+ case 153:
/* Line 1455 of yacc.c */
-#line 907 "read_config_yy.y"
+#line 965 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "`DelayDestroyMessages' clause is obsolete. "
"Please, remove it from conntrackd.conf");
}
break;
- case 142:
+ case 154:
/* Line 1455 of yacc.c */
-#line 913 "read_config_yy.y"
+#line 971 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "the clause `ListenTo' is obsolete, ignoring");
}
break;
- case 143:
+ case 155:
/* Line 1455 of yacc.c */
-#line 918 "read_config_yy.y"
+#line 976 "read_config_yy.y"
{
ct_filter_set_logic(STATE(us_filter),
CT_FILTER_STATE,
@@ -3017,10 +3113,10 @@ yyreduce:
}
break;
- case 146:
+ case 158:
/* Line 1455 of yacc.c */
-#line 931 "read_config_yy.y"
+#line 989 "read_config_yy.y"
{
if (strncmp((yyvsp[(1) - (1)].string), "TCP", strlen("TCP")) != 0) {
print_err(CTD_CFG_WARN, "unsupported protocol `%s' in line %d",
@@ -3029,10 +3125,10 @@ yyreduce:
}
break;
- case 150:
+ case 162:
/* Line 1455 of yacc.c */
-#line 943 "read_config_yy.y"
+#line 1001 "read_config_yy.y"
{
ct_filter_add_state(STATE(us_filter),
IPPROTO_TCP,
@@ -3042,10 +3138,10 @@ yyreduce:
}
break;
- case 151:
+ case 163:
/* Line 1455 of yacc.c */
-#line 951 "read_config_yy.y"
+#line 1009 "read_config_yy.y"
{
ct_filter_add_state(STATE(us_filter),
IPPROTO_TCP,
@@ -3055,10 +3151,10 @@ yyreduce:
}
break;
- case 152:
+ case 164:
/* Line 1455 of yacc.c */
-#line 959 "read_config_yy.y"
+#line 1017 "read_config_yy.y"
{
ct_filter_add_state(STATE(us_filter),
IPPROTO_TCP,
@@ -3068,10 +3164,10 @@ yyreduce:
}
break;
- case 153:
+ case 165:
/* Line 1455 of yacc.c */
-#line 967 "read_config_yy.y"
+#line 1025 "read_config_yy.y"
{
ct_filter_add_state(STATE(us_filter),
IPPROTO_TCP,
@@ -3081,10 +3177,10 @@ yyreduce:
}
break;
- case 154:
+ case 166:
/* Line 1455 of yacc.c */
-#line 975 "read_config_yy.y"
+#line 1033 "read_config_yy.y"
{
ct_filter_add_state(STATE(us_filter),
IPPROTO_TCP,
@@ -3094,10 +3190,10 @@ yyreduce:
}
break;
- case 155:
+ case 167:
/* Line 1455 of yacc.c */
-#line 983 "read_config_yy.y"
+#line 1041 "read_config_yy.y"
{
ct_filter_add_state(STATE(us_filter),
IPPROTO_TCP,
@@ -3107,10 +3203,10 @@ yyreduce:
}
break;
- case 156:
+ case 168:
/* Line 1455 of yacc.c */
-#line 991 "read_config_yy.y"
+#line 1049 "read_config_yy.y"
{
ct_filter_add_state(STATE(us_filter),
IPPROTO_TCP,
@@ -3120,10 +3216,10 @@ yyreduce:
}
break;
- case 157:
+ case 169:
/* Line 1455 of yacc.c */
-#line 999 "read_config_yy.y"
+#line 1057 "read_config_yy.y"
{
ct_filter_add_state(STATE(us_filter),
IPPROTO_TCP,
@@ -3133,10 +3229,10 @@ yyreduce:
}
break;
- case 158:
+ case 170:
/* Line 1455 of yacc.c */
-#line 1007 "read_config_yy.y"
+#line 1065 "read_config_yy.y"
{
ct_filter_add_state(STATE(us_filter),
IPPROTO_TCP,
@@ -3146,102 +3242,102 @@ yyreduce:
}
break;
- case 159:
+ case 171:
/* Line 1455 of yacc.c */
-#line 1016 "read_config_yy.y"
+#line 1074 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "`CacheWriteThrough' clause is obsolete, "
"ignoring");
}
break;
- case 160:
+ case 172:
/* Line 1455 of yacc.c */
-#line 1022 "read_config_yy.y"
+#line 1080 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "`CacheWriteThrough' clause is obsolete, "
"ignoring");
}
break;
- case 182:
+ case 194:
/* Line 1455 of yacc.c */
-#line 1054 "read_config_yy.y"
+#line 1112 "read_config_yy.y"
{
conf.netlink_buffer_size = (yyvsp[(2) - (2)].val);
}
break;
- case 183:
+ case 195:
/* Line 1455 of yacc.c */
-#line 1059 "read_config_yy.y"
+#line 1117 "read_config_yy.y"
{
conf.netlink_buffer_size_max_grown = (yyvsp[(2) - (2)].val);
}
break;
- case 184:
+ case 196:
/* Line 1455 of yacc.c */
-#line 1064 "read_config_yy.y"
+#line 1122 "read_config_yy.y"
{
conf.nl_overrun_resync = 30;
}
break;
- case 185:
+ case 197:
/* Line 1455 of yacc.c */
-#line 1069 "read_config_yy.y"
+#line 1127 "read_config_yy.y"
{
conf.nl_overrun_resync = -1;
}
break;
- case 186:
+ case 198:
/* Line 1455 of yacc.c */
-#line 1074 "read_config_yy.y"
+#line 1132 "read_config_yy.y"
{
conf.nl_overrun_resync = (yyvsp[(2) - (2)].val);
}
break;
- case 187:
+ case 199:
/* Line 1455 of yacc.c */
-#line 1079 "read_config_yy.y"
+#line 1137 "read_config_yy.y"
{
conf.netlink.events_reliable = 1;
}
break;
- case 188:
+ case 200:
/* Line 1455 of yacc.c */
-#line 1084 "read_config_yy.y"
+#line 1142 "read_config_yy.y"
{
conf.netlink.events_reliable = 0;
}
break;
- case 189:
+ case 201:
/* Line 1455 of yacc.c */
-#line 1089 "read_config_yy.y"
+#line 1147 "read_config_yy.y"
{
conf.nice = (yyvsp[(2) - (2)].val);
}
break;
- case 193:
+ case 205:
/* Line 1455 of yacc.c */
-#line 1100 "read_config_yy.y"
+#line 1158 "read_config_yy.y"
{
if (strcasecmp((yyvsp[(2) - (2)].string), "rr") == 0) {
conf.sched.type = SCHED_RR;
@@ -3254,10 +3350,10 @@ yyreduce:
}
break;
- case 194:
+ case 206:
/* Line 1455 of yacc.c */
-#line 1112 "read_config_yy.y"
+#line 1170 "read_config_yy.y"
{
conf.sched.prio = (yyvsp[(2) - (2)].val);
if (conf.sched.prio < 0 || conf.sched.prio > 99) {
@@ -3267,10 +3363,10 @@ yyreduce:
}
break;
- case 195:
+ case 207:
/* Line 1455 of yacc.c */
-#line 1121 "read_config_yy.y"
+#line 1179 "read_config_yy.y"
{
if (strncmp((yyvsp[(2) - (2)].string), "IPv6", strlen("IPv6")) == 0)
conf.family = AF_INET6;
@@ -3279,19 +3375,19 @@ yyreduce:
}
break;
- case 196:
+ case 208:
/* Line 1455 of yacc.c */
-#line 1129 "read_config_yy.y"
+#line 1187 "read_config_yy.y"
{
CONFIG(event_iterations_limit) = (yyvsp[(2) - (2)].val);
}
break;
- case 197:
+ case 209:
/* Line 1455 of yacc.c */
-#line 1134 "read_config_yy.y"
+#line 1192 "read_config_yy.y"
{
conf.flags |= CTD_POLL;
conf.poll_kernel_secs = (yyvsp[(2) - (2)].val);
@@ -3302,37 +3398,37 @@ yyreduce:
}
break;
- case 198:
+ case 210:
/* Line 1455 of yacc.c */
-#line 1144 "read_config_yy.y"
+#line 1202 "read_config_yy.y"
{
CONFIG(filter_from_kernelspace) = 0;
}
break;
- case 199:
+ case 211:
/* Line 1455 of yacc.c */
-#line 1149 "read_config_yy.y"
+#line 1207 "read_config_yy.y"
{
CONFIG(filter_from_kernelspace) = 0;
}
break;
- case 200:
+ case 212:
/* Line 1455 of yacc.c */
-#line 1154 "read_config_yy.y"
+#line 1212 "read_config_yy.y"
{
CONFIG(filter_from_kernelspace) = 1;
}
break;
- case 203:
+ case 215:
/* Line 1455 of yacc.c */
-#line 1162 "read_config_yy.y"
+#line 1220 "read_config_yy.y"
{
ct_filter_set_logic(STATE(us_filter),
CT_FILTER_L4PROTO,
@@ -3342,10 +3438,10 @@ yyreduce:
}
break;
- case 204:
+ case 216:
/* Line 1455 of yacc.c */
-#line 1171 "read_config_yy.y"
+#line 1229 "read_config_yy.y"
{
ct_filter_set_logic(STATE(us_filter),
CT_FILTER_L4PROTO,
@@ -3359,10 +3455,10 @@ yyreduce:
}
break;
- case 207:
+ case 219:
/* Line 1455 of yacc.c */
-#line 1187 "read_config_yy.y"
+#line 1245 "read_config_yy.y"
{
struct protoent *pent;
@@ -3382,10 +3478,10 @@ yyreduce:
}
break;
- case 208:
+ case 220:
/* Line 1455 of yacc.c */
-#line 1206 "read_config_yy.y"
+#line 1264 "read_config_yy.y"
{
struct protoent *pent;
@@ -3405,10 +3501,56 @@ yyreduce:
}
break;
- case 209:
+ case 221:
+
+/* Line 1455 of yacc.c */
+#line 1283 "read_config_yy.y"
+ {
+ struct protoent *pent;
+
+ pent = getprotobyname("udp");
+ if (pent == NULL) {
+ print_err(CTD_CFG_WARN, "getprotobyname() cannot find "
+ "protocol `udp' in /etc/protocols");
+ break;
+ }
+ ct_filter_add_proto(STATE(us_filter), pent->p_proto);
+
+ __kernel_filter_start();
+
+ nfct_filter_add_attr_u32(STATE(filter),
+ NFCT_FILTER_L4PROTO,
+ pent->p_proto);
+}
+ break;
+
+ case 222:
/* Line 1455 of yacc.c */
-#line 1225 "read_config_yy.y"
+#line 1302 "read_config_yy.y"
+ {
+ struct protoent *pent;
+
+ pent = getprotobyname("udp");
+ if (pent == NULL) {
+ print_err(CTD_CFG_WARN, "getprotobyname() cannot find "
+ "protocol `udp' in /etc/protocols");
+ break;
+ }
+ ct_filter_add_proto(STATE(us_filter), pent->p_proto);
+
+ __kernel_filter_start();
+
+ nfct_filter_add_attr_u32(STATE(filter),
+ NFCT_FILTER_L4PROTO,
+ pent->p_proto);
+}
+ break;
+
+ case 223:
+
+/* Line 1455 of yacc.c */
+#line 1321 "read_config_yy.y"
{
ct_filter_set_logic(STATE(us_filter),
CT_FILTER_ADDRESS,
@@ -3418,10 +3560,10 @@ yyreduce:
}
break;
- case 210:
+ case 224:
/* Line 1455 of yacc.c */
-#line 1234 "read_config_yy.y"
+#line 1330 "read_config_yy.y"
{
ct_filter_set_logic(STATE(us_filter),
CT_FILTER_ADDRESS,
@@ -3444,10 +3586,10 @@ yyreduce:
}
break;
- case 213:
+ case 227:
/* Line 1455 of yacc.c */
-#line 1259 "read_config_yy.y"
+#line 1355 "read_config_yy.y"
{
union inet_address ip;
char *slash;
@@ -3507,10 +3649,10 @@ yyreduce:
}
break;
- case 214:
+ case 228:
/* Line 1455 of yacc.c */
-#line 1318 "read_config_yy.y"
+#line 1414 "read_config_yy.y"
{
union inet_address ip;
char *slash;
@@ -3571,10 +3713,10 @@ yyreduce:
}
break;
- case 215:
+ case 229:
/* Line 1455 of yacc.c */
-#line 1378 "read_config_yy.y"
+#line 1474 "read_config_yy.y"
{
ct_filter_set_logic(STATE(us_filter),
CT_FILTER_STATE,
@@ -3584,10 +3726,10 @@ yyreduce:
}
break;
- case 216:
+ case 230:
/* Line 1455 of yacc.c */
-#line 1387 "read_config_yy.y"
+#line 1483 "read_config_yy.y"
{
ct_filter_set_logic(STATE(us_filter),
CT_FILTER_STATE,
@@ -3602,10 +3744,10 @@ yyreduce:
}
break;
- case 220:
+ case 234:
/* Line 1455 of yacc.c */
-#line 1406 "read_config_yy.y"
+#line 1502 "read_config_yy.y"
{
if (conf.flags & CTD_SYNC_MODE) {
print_err(CTD_CFG_ERROR, "cannot use both `Stats' and `Sync' "
@@ -3616,54 +3758,54 @@ yyreduce:
}
break;
- case 228:
+ case 242:
/* Line 1455 of yacc.c */
-#line 1427 "read_config_yy.y"
+#line 1523 "read_config_yy.y"
{
strncpy(conf.stats.logfile, DEFAULT_STATS_LOGFILE, FILENAME_MAXLEN);
}
break;
- case 229:
+ case 243:
/* Line 1455 of yacc.c */
-#line 1432 "read_config_yy.y"
+#line 1528 "read_config_yy.y"
{
}
break;
- case 230:
+ case 244:
/* Line 1455 of yacc.c */
-#line 1436 "read_config_yy.y"
+#line 1532 "read_config_yy.y"
{
strncpy(conf.stats.logfile, (yyvsp[(2) - (2)].string), FILENAME_MAXLEN);
}
break;
- case 231:
+ case 245:
/* Line 1455 of yacc.c */
-#line 1441 "read_config_yy.y"
+#line 1537 "read_config_yy.y"
{
conf.stats.syslog_facility = DEFAULT_SYSLOG_FACILITY;
}
break;
- case 232:
+ case 246:
/* Line 1455 of yacc.c */
-#line 1446 "read_config_yy.y"
+#line 1542 "read_config_yy.y"
{
conf.stats.syslog_facility = -1;
}
break;
- case 233:
+ case 247:
/* Line 1455 of yacc.c */
-#line 1451 "read_config_yy.y"
+#line 1547 "read_config_yy.y"
{
if (!strcmp((yyvsp[(2) - (2)].string), "daemon"))
conf.stats.syslog_facility = LOG_DAEMON;
@@ -3696,10 +3838,10 @@ yyreduce:
}
break;
- case 234:
+ case 248:
/* Line 1455 of yacc.c */
-#line 1483 "read_config_yy.y"
+#line 1579 "read_config_yy.y"
{
print_err(CTD_CFG_WARN, "`LogFileBufferSize' is deprecated");
}
@@ -3708,7 +3850,7 @@ yyreduce:
/* Line 1455 of yacc.c */
-#line 3712 "read_config_yy.c"
+#line 3854 "read_config_yy.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
@@ -3920,7 +4062,7 @@ yyreturn:
/* Line 1675 of yacc.c */
-#line 1487 "read_config_yy.y"
+#line 1583 "read_config_yy.y"
int __attribute__((noreturn))
@@ -3998,6 +4140,7 @@ init_config(char *filename)
/* Zero may be a valid facility */
CONFIG(syslog_facility) = -1;
CONFIG(stats).syslog_facility = -1;
+ CONFIG(netlink).subsys_id = -1;
yyrestart(fp);
yyparse();
@@ -4036,7 +4179,7 @@ init_config(char *filename)
/* default number of bucket of the hashtable that are committed in
one run loop. XXX: no option available to tune this value yet. */
if (CONFIG(general).commit_steps == 0)
- CONFIG(general).commit_steps = 64;
+ CONFIG(general).commit_steps = 8192;
/* if overrun, automatically resync with kernel after 30 seconds */
if (CONFIG(nl_overrun_resync) == 0)
@@ -4046,6 +4189,13 @@ init_config(char *filename)
if (CONFIG(channelc).error_queue_length == 0)
CONFIG(channelc).error_queue_length = 128;
+ if (CONFIG(netlink).subsys_id == -1) {
+ CONFIG(netlink).subsys_id = NFNL_SUBSYS_CTNETLINK;
+ CONFIG(netlink).groups = NF_NETLINK_CONNTRACK_NEW |
+ NF_NETLINK_CONNTRACK_UPDATE |
+ NF_NETLINK_CONNTRACK_DESTROY;
+ }
+
return 0;
}