summaryrefslogtreecommitdiffstats
path: root/freebsd/sbin
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-01-09 14:47:04 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-01-10 11:03:27 +0100
commit0577772720a4ecb050a230f75346f90b246e93c8 (patch)
treea3fba8bb57e77c932e08dd0d4bbe49adb6312e5e /freebsd/sbin
parentUpdate to FreeBSD head 2016-12-10 (diff)
downloadrtems-libbsd-0577772720a4ecb050a230f75346f90b246e93c8.tar.bz2
Update to FreeBSD head 2017-01-09
Git mirror commit 1f8e4a995a6ede4bdb24e6d335ccda2bdb0175ab.
Diffstat (limited to 'freebsd/sbin')
-rw-r--r--freebsd/sbin/dhclient/dispatch.c8
-rw-r--r--freebsd/sbin/pfctl/parse.c1594
-rw-r--r--freebsd/sbin/pfctl/parse.y2
-rw-r--r--freebsd/sbin/ping/ping.c7
-rw-r--r--freebsd/sbin/route/keywords.h104
-rw-r--r--freebsd/sbin/sysctl/sysctl.c2
6 files changed, 885 insertions, 832 deletions
diff --git a/freebsd/sbin/dhclient/dispatch.c b/freebsd/sbin/dhclient/dispatch.c
index d37c9925..c0eee929 100644
--- a/freebsd/sbin/dhclient/dispatch.c
+++ b/freebsd/sbin/dhclient/dispatch.c
@@ -456,16 +456,12 @@ add_protocol(char *name, int fd, void (*handler)(struct protocol *),
void
remove_protocol(struct protocol *proto)
{
- struct protocol *p, *next, *prev;
+ struct protocol *p, *next;
- prev = NULL;
for (p = protocols; p; p = next) {
next = p->next;
if (p == proto) {
- if (prev)
- prev->next = p->next;
- else
- protocols = p->next;
+ protocols = p->next;
free(p);
}
}
diff --git a/freebsd/sbin/pfctl/parse.c b/freebsd/sbin/pfctl/parse.c
index 1ae5fc95..c09d4ba4 100644
--- a/freebsd/sbin/pfctl/parse.c
+++ b/freebsd/sbin/pfctl/parse.c
@@ -438,6 +438,8 @@ void decide_address_family(struct node_host *, sa_family_t *);
void remove_invalid_hosts(struct node_host **, sa_family_t *);
int invalid_redirect(struct node_host *, sa_family_t);
u_int16_t parseicmpspec(char *, sa_family_t);
+int kw_casecmp(const void *, const void *);
+int map_tos(char *string, int *);
static TAILQ_HEAD(loadanchorshead, loadanchors)
loadanchorshead = TAILQ_HEAD_INITIALIZER(loadanchorshead);
@@ -530,7 +532,7 @@ int parseport(char *, struct range *r, int);
(!((addr).iflags & PFI_AFLAG_NOALIAS) || \
!isdigit((addr).v.ifname[strlen((addr).v.ifname)-1])))
-#line 534 "pfctly.tab.c"
+#line 536 "pfctly.tab.c"
/* compatibility with bison */
#ifdef YYPARSE_PARAM
@@ -892,149 +894,149 @@ static const YYINT pfctlydgoto[] = { 2,
124, 204, 266, 127, 268, 745, 586, 648, 531, 217,
278, 259, 171, 356, 358, 351, 536, 431,
};
-static const YYINT pfctlysindex[] = { -28,
- 0, 118, 1618, 94, 0, 604, 0, 57, -163, -158,
- -158, -158, 1728, 392, -129, 213, -35, -49, 463, 0,
- 680, -20, 213, -20, 519, 525, 538, 552, 569, 622,
- 651, 664, 670, 678, 684, 691, 711, 714, 0, 716,
- 424, 720, 726, 731, 749, 0, 0, 545, 650, 657,
- 0, 0, 230, 0, -20, -158, 213, 213, 213, 386,
- -93, -72, -226, -58, -230, 390, 403, 213, -107, -158,
- 371, 1487, 754, 540, 486, 556, 0, 27, 0, 213,
- -158, 428, 0, 326, 326, 326, 0, 0, 392, 579,
- 392, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+static const YYINT pfctlysindex[] = { -48,
+ 0, 118, 1618, 71, 0, 604, 0, 35, -280, -218,
+ -218, -218, 1838, -9, -163, -21, -133, -49, 418, 0,
+ 680, 86, -21, 86, 504, 519, 525, 569, 580, 610,
+ 618, 634, 646, 651, 664, 670, 684, 711, 0, 714,
+ 424, 716, 755, 760, 764, 0, 0, 484, 508, 600,
+ 0, 0, 230, 0, 86, -218, -21, -21, -21, 313,
+ -93, -72, -226, -66, -230, 357, 375, -21, 428, -218,
+ 371, 1487, 738, 523, 471, 554, 0, 27, 0, -21,
+ -218, 475, 0, 21, 21, 21, 0, 0, -9, 633,
+ -9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 516, 475, 532, 768, 601, 0, 579, 579, 579, 0,
- 492, 496, 883, 0, 518, 883, 0, 0, 0, 0,
+ 516, 532, 535, 759, 565, 0, 633, 633, 633, 0,
+ 481, 492, 871, 0, 529, 871, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 529, 0, 555, 559,
- 489, 567, 577, 841, 0, 587, 0, 0, 931, 0,
- 347, 0, 19, 579, 0, 883, 0, 0, 611, 655,
- 1926, 0, 744, 0, 0, 0, 428, 540, 0, 0,
- 0, 213, 213, 0, 0, 747, 213, 632, 0, 0,
- 599, 0, 0, 997, 0, 0, 213, 747, 747, 747,
- 0, 0, 883, -156, 0, 669, 0, 0, 0, 0,
- 0, 0, 994, 689, 0, 0, 1487, -158, 0, 0,
- 0, 603, 0, 0, 883, 611, 0, 0, 0, 1006,
- 0, -57, 1022, 1024, 1028, 1035, 1050, 535, 707, 713,
- 739, 0, 0, 1926, -57, -158, 0, 0, 579, 382,
- -47, -187, 579, 1067, 0, 532, 0, 0, -81, 579,
- -187, -187, -187, 0, 883, 13, 883, 49, 770, 1034,
- 0, 0, 0, 347, 34, 1082, 0, -101, 67, 883,
- 0, 883, 0, 0, 745, 0, 750, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 555, 0, 559, 567,
+ 558, 577, 587, 833, 0, 590, 0, 0, 857, 0,
+ 347, 0, 19, 633, 0, 871, 0, 0, 611, 655,
+ 1735, 0, 744, 0, 0, 0, 475, 523, 0, 0,
+ 0, -21, -21, 0, 0, 747, -21, 632, 0, 0,
+ 679, 0, 0, 988, 0, 0, -21, 747, 747, 747,
+ 0, 0, 871, -96, 0, 657, 0, 0, 0, 0,
+ 0, 0, 1006, 678, 0, 0, 1487, -218, 0, 0,
+ 0, 689, 0, 0, 871, 611, 0, 0, 0, 1031,
+ 0, -57, 1028, 1033, 1035, 1050, 1052, 550, 713, 775,
+ 776, 0, 0, 1735, -57, -218, 0, 0, 633, 382,
+ -47, -187, 633, 1067, 0, 535, 0, 0, -81, 633,
+ -187, -187, -187, 0, 871, 13, 871, 49, 782, 1034,
+ 0, 0, 0, 347, 34, 1088, 0, -97, 82, 871,
+ 0, 871, 0, 0, 789, 0, 790, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 747, 0,
- 39, 39, 39, 579, 0, 0, 883, 0, 0, 192,
- 0, 758, 894, 747, 0, 1119, 777, 0, 883, 0,
- -81, 747, 810, 810, 810, 0, 0, -156, 0, 0,
- 669, 0, 801, 0, 82, 883, 0, 790, 791, 0,
- 0, -101, 0, 1006, 0, 797, 0, 679, 0, 1134,
- 349, 0, 724, 0, 1141, 483, 1142, -274, 922, 0,
- 883, 807, 0, 0, 0, 0, 747, 541, 0, 83,
- 883, 246, 0, 908, 0, 813, 1006, -45, 926, -187,
- 0, 0, 28, 0, -187, 815, 0, 0, 0, 883,
- 883, 834, 0, 0, 34, 0, 0, 0, 0, 883,
- 86, 883, 0, 745, 0, -107, -107, 0, 931, 0,
- 0, 750, 0, 24, 187, 214, 0, 931, 0, 0,
- 224, 535, -107, 0, 931, 0, 190, 56, 190, 0,
- 765, 0, 0, -187, 97, 883, 883, 0, 1143, 1144,
- 1146, 428, 822, 0, 0, 0, 32, 0, 0, 575,
- 1167, 838, 839, 0, 1171, 83, 0, 852, 810, 0,
- 883, 0, 192, 0, 0, 0, 883, 108, 0, 0,
- 0, 0, 0, 883, 0, 0, 797, 0, 0, 0,
- 0, 349, 0, 535, 0, 535, 0, 535, 0, 483,
- 535, 0, 0, 0, -274, 959, 883, 136, 1188, 0,
- 0, -158, 0, 0, 0, 0, 765, 0, 0, 541,
- 0, 61, 0, 0, 0, 0, 428, 137, 846, 847,
- 848, 1193, 1176, 855, 0, -158, 953, 858, 0, 0,
- 1405, 0, 0, 32, 1122, 4400, 0, 883, 0, 931,
- 931, 931, 0, -107, 0, 32, 758, 0, 0, 56,
- 0, 0, 0, 0, 0, 883, 155, 883, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 417, 0, 883,
- 200, 0, 863, 595, 866, 868, 0, 869, 550, 879,
- 0, 0, 1405, 883, 0, 0, 235, 361, 376, 972,
- 975, 0, 976, 0, 135, 283, 550, 37, 978, 562,
- 69, 877, 880, -158, 570, 0, 890, 0, 0, 0,
- 0, 0, 0, 4400, 0, 0, 888, 892, 893, 535,
- 0, 1006, 883, 0, 0, 61, 0, 883, 0, 984,
- 0, 0, 0, 858, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, -158, 0, 0, 1265, 0, 0,
- 896, 1234, 0, 0, 883, 1007, 0, 0, 0, 883,
- 1008, 0, 1249, 1249, 0, 0, 0, 883, 904, 630,
- 0, 0, 0, 0, 883, 909, 642, 0, 0, 0,
- -16, 934, 0, 0, 1249, 0, 0, 0, 0, 913,
- 0, 0, 0, 1014, 0, 0, -158, 0, 931, 931,
- 931, 1262, 810, 0, 883, 190, 428, 883, 0, 0,
- 0, 896, 644, 659, 661, 665, 1487, 0, 0, 116,
- 630, 0, 158, 642, 0, 0, 919, 0, 728, 0,
- 734, 428, 0, 535, 535, 535, 0, 1017, 0, 883,
- 363, 0, 0, 0, 654, 0, 385, 883, 0, 0,
- 429, 883, 0, 0, 773, 452, 883, 0, 472, 883,
- 0, 931, 0, 934, 0, 927, 0, 1269, 1271, 1272,
- 190, 0, 0, 0, 190, 0, 0, 1296, 1304, 0,
- 644, 0, 0, 661, 0, 0, 0, 116, 0, 0,
- 158, 0, 930, 0, 1276, 0, 0, 0, 1037, 883,
- 0, 0, 883, 883, 883, 883, 1277, 0, 428, 0,
+ 39, 39, 39, 633, 0, 0, 871, 0, 0, 192,
+ 0, 800, 914, 747, 0, 1140, 798, 0, 871, 0,
+ -81, 747, 826, 826, 826, 0, 0, -96, 0, 0,
+ 657, 0, 817, 0, 97, 871, 0, 807, 809, 0,
+ 0, -97, 0, 1031, 0, 808, 0, 731, 0, 1159,
+ 410, 0, 773, 0, 1160, 483, 1163, 352, 930, 0,
+ 871, 821, 0, 0, 0, 0, 747, 562, 0, 83,
+ 871, 246, 0, 923, 0, 824, 1031, -45, 946, -187,
+ 0, 0, 28, 0, -187, 837, 0, 0, 0, 871,
+ 871, 856, 0, 0, 34, 0, 0, 0, 0, 871,
+ 108, 871, 0, 789, 0, 428, 428, 0, 857, 0,
+ 0, 790, 0, 24, 187, 214, 0, 857, 0, 0,
+ 224, 550, 428, 0, 857, 0, 32, 56, 190, 0,
+ 765, 0, 0, -187, 136, 871, 871, 0, 1157, 1166,
+ 1168, 475, 840, 0, 0, 0, 32, 0, 0, 538,
+ 1183, 848, 849, 0, 1187, 83, 0, 864, 826, 0,
+ 871, 0, 192, 0, 0, 0, 871, 137, 0, 0,
+ 0, 0, 0, 871, 0, 0, 808, 0, 0, 0,
+ 0, 410, 0, 550, 0, 550, 0, 550, 0, 483,
+ 550, 0, 0, 0, 352, 972, 871, 155, 1200, 0,
+ 0, -218, 0, 0, 0, 0, 765, 0, 0, 562,
+ 0, 61, 0, 0, 0, 0, 475, 200, 858, 860,
+ 863, 1210, 1190, 868, 0, -218, 966, 874, 0, 0,
+ 1405, 0, 0, 32, 1132, 4400, 0, 871, 0, 857,
+ 857, 857, 0, 428, 0, 32, 800, 0, 0, 56,
+ 0, 0, 0, 0, 0, 871, 363, 871, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 417, 0, 871,
+ 385, 0, 876, 712, 877, 875, 0, 879, 570, 891,
+ 0, 0, 1405, 871, 0, 0, 235, 361, 376, 985,
+ 990, 0, 994, 0, 135, 283, 570, 37, 995, 575,
+ 69, 890, 895, -218, 595, 0, 907, 0, 0, 0,
+ 0, 0, 0, 4400, 0, 0, 902, 903, 904, 550,
+ 0, 1031, 871, 0, 0, 61, 0, 871, 0, 1011,
+ 0, 0, 0, 874, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -218, 0, 0, 1280, 0, 0,
+ 912, 1250, 0, 0, 871, 1018, 0, 0, 0, 871,
+ 1023, 0, 1264, 1264, 0, 0, 0, 871, 919, 630,
+ 0, 0, 0, 0, 871, 920, 659, 0, 0, 0,
+ -16, 948, 0, 0, 1264, 0, 0, 0, 0, 927,
+ 0, 0, 0, 1029, 0, 0, -218, 0, 857, 857,
+ 857, 1271, 826, 0, 871, 190, 475, 871, 0, 0,
+ 0, 912, 661, 665, 687, 697, 1487, 0, 0, 116,
+ 630, 0, 158, 659, 0, 0, 929, 0, 812, 0,
+ 813, 475, 0, 550, 550, 550, 0, 1030, 0, 871,
+ 429, 0, 0, 0, 654, 0, 452, 871, 0, 0,
+ 472, 871, 0, 0, 862, 501, 871, 0, 518, 871,
+ 0, 857, 0, 948, 0, 931, 0, 1276, 1278, 1281,
+ 190, 0, 0, 0, 190, 0, 0, 1311, 1313, 0,
+ 661, 0, 0, 687, 0, 0, 0, 116, 0, 0,
+ 158, 0, 941, 0, 1287, 0, 0, 0, 1047, 871,
+ 0, 0, 871, 871, 871, 871, 1291, 0, 475, 0,
0, 0, 0, 0, 0, 0,
};
static const YYINT pfctlyrindex[] = { 36,
- 0, 723, 738, 0, 0, 1644, 0, 0, 2743, 0,
- 0, 0, 0, 986, 0, 1156, 0, 0, 0, 0,
+ 0, 723, 741, 0, 0, 1644, 0, 0, 2743, 0,
+ 0, 0, 0, 1000, 0, 1156, 0, 0, 0, 0,
0, 2290, 2701, 4182, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1712, 1836, 1959,
0, 0, 0, 0, 3033, 1283, 1115, 1115, 1115, 0,
- 0, 0, 0, 0, 0, 0, 0, 1312, 0, 0,
- 0, 0, 1155, 1394, 0, 1521, 0, 939, 1813, 1027,
+ 0, 0, 0, 0, 0, 0, 0, 1331, 0, 0,
+ 0, 0, 1155, 1394, 0, 1521, 0, 963, 1697, 1027,
0, 0, 0, 4235, 4235, 878, 0, 0, 2811, 4313,
4202, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3144, 0, 629, 629, 629, 0,
- 0, 0, -99, 0, 0, 942, 0, 0, 0, 0,
+ 0, 0, 263, 0, 0, 964, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
289, 0, 0, 0, 0, 0, 0, 0, 793, 0,
0, 0, 0, 15, 0, -23, 0, 0, 0, 0,
- 0, 1055, 0, 0, 0, 0, 1318, 4267, 0, 0,
+ 0, 1055, 0, 0, 0, 0, 1339, 4267, 0, 0,
0, 533, 2922, 0, 0, 4320, 3576, 0, 0, 0,
- 687, 0, 0, 0, 2, 0, 3255, 219, 219, 219,
+ 710, 0, 0, 0, 2, 0, 3255, 219, 219, 219,
0, 0, 1481, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 459, 0, 0, 78, 0, 0, 0, 30, 939,
- 0, 1321, 258, 438, 795, 992, 1012, 0, 0, 0,
- 0, 0, 0, 6, 1321, 0, 0, 0, -204, 3323,
+ 0, 459, 0, 0, 78, 0, 0, 0, 30, 963,
+ 0, 1351, 258, 438, 795, 992, 1012, 0, 0, 0,
+ 0, 0, 0, 6, 1351, 0, 0, 0, -204, 3323,
0, 505, 2139, 0, 0, 0, 0, 0, 0, 3459,
- 73, 73, 73, 0, 574, -96, -27, 948, 0, 0,
+ 73, 73, 73, 0, 574, 273, -27, 978, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -13, -18,
- 0, 942, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1066, 0,
- 0, 0, 0, 3528, 0, 0, 697, 0, 0, 510,
+ 0, 964, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1096, 0,
+ 0, 0, 0, 3528, 0, 0, 733, 0, 0, 510,
0, 154, 2167, 8, 0, 0, 0, 0, 1352, 0,
- 684, 3645, 1331, 1331, 1331, 0, 0, 0, 0, 0,
+ 664, 3645, 1357, 1357, 1357, 0, 0, 0, 0, 0,
0, 0, 572, 0, 80, -17, 0, 0, 0, 0,
- 0, 519, 0, 939, 0, 0, 0, 948, 0, 0,
- 0, 0, 948, 0, 0, 0, 0, 0, 0, 0,
+ 0, 504, 0, 963, 0, 0, 0, 978, 0, 0,
+ 0, 0, 978, 0, 0, 0, 0, 0, 0, 0,
78, 0, 0, 2499, 2499, 2499, 3697, 0, 0, 0,
59, 0, 0, 2057, 0, 0, 748, 0, 2388, 2543,
0, 0, 510, 0, 3795, 0, 0, 0, 0, 574,
-27, 690, 0, 0, 0, 0, 0, 0, 0, -18,
- 948, -27, 0, 0, 0, 0, 0, 0, 287, 0,
+ 978, -27, 0, 0, 0, 0, 0, 0, 287, 0,
0, 0, 0, 0, 0, 0, 0, 285, 0, 0,
- 0, 0, 0, 0, 514, 0, 0, 0, 0, 0,
- 0, 0, 0, 3846, 687, 142, 175, 0, 0, 710,
- 733, 0, 695, 0, 0, 0, 510, 0, 0, 414,
+ 0, 0, 0, 0, 514, 0, 510, 0, 0, 0,
+ 0, 0, 0, 3846, 710, 142, 175, 0, 0, 739,
+ 749, 0, 695, 0, 0, 0, 510, 0, 0, 414,
0, 0, 0, 0, 547, 0, 0, 0, 195, 0,
- 942, 0, 510, 0, 882, 0, 1184, 704, 3935, 0,
+ 964, 0, 510, 0, 882, 0, 1184, 704, 3935, 0,
0, 0, 0, -17, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 23, -17, 80, 0, 0,
0, 2610, 0, 0, 0, 0, 3391, 4079, 0, 0,
0, 0, 0, 0, 0, 0, 0, 704, 0, 0,
0, 0, 0, 0, 0, 0, 75, 0, 0, 0,
- 973, 0, 0, 510, 1338, 973, 0, -27, 0, 964,
- 964, 964, 0, 0, 0, 510, -1, 0, 0, 0,
+ 1004, 0, 0, 510, 1358, 1004, 0, -27, 0, 999,
+ 999, 999, 0, 0, 0, 510, -1, 0, 0, 0,
0, 0, 0, 0, 0, 142, 240, 10, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 229, -27,
- 948, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 978, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 11, 1184, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -1042,40 +1044,40 @@ static const YYINT pfctlyrindex[] = { 36,
0, 43, -17, 0, 0, 0, 0, 209, 0, 653,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 697, 917, 0, 0, 0, 697,
+ 0, 0, 0, 0, 733, 917, 0, 0, 0, 733,
968, 0, 3981, 3981, 0, 0, 0, 175, 123, 0,
0, 0, 0, 0, 175, 828, 0, 0, 0, 0,
0, 0, 0, 0, 3981, 0, 0, 0, 0, 0,
- 0, 0, 0, 4033, 0, 0, 0, 0, 687, 687,
- 687, 0, 1, 0, 10, 0, 0, -27, 0, 0,
+ 0, 0, 0, 4033, 0, 0, 0, 0, 710, 710,
+ 710, 0, 1, 0, 10, 0, 0, -27, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 999, 0,
- 948, 0, 0, 0, 0, 0, 0, 1353, 0, 87,
- 264, 0, 0, 0, 0, 0, 687, 142, 0, 0,
- 687, 142, 0, 0, 1707, 240, 10, 0, 240, 10,
- 0, 964, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1017, 0,
+ 978, 0, 0, 0, 0, 0, 0, 1376, 0, 87,
+ 264, 0, 0, 0, 0, 0, 710, 142, 0, 0,
+ 710, 142, 0, 0, 1689, 240, 10, 0, 240, 10,
+ 0, 999, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1357, 87,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1377, 87,
0, 0, 142, 142, 10, 10, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
};
static const YYINT pfctlygindex[] = { 0,
- 1557, 0, -208, -102, -320, 0, 0, -476, -619, 771,
- -70, 0, 0, 1359, 490, 1165, 0, 0, 0, 0,
- 328, 1307, 0, 0, 874, 0, 0, -612, 0, 0,
- 647, 578, -308, 0, 1650, 0, -331, 0, 0, 0,
- -668, 0, -525, 0, 1128, 851, 923, 0, 0, -345,
- 0, 0, -315, 0, 946, 0, 0, -379, 0, 677,
- 0, -497, 0, 938, 0, -457, 0, 0, -554, 0,
- 0, -444, 0, 0, 0, -421, 0, 860, 0, -8,
- 1218, -80, 0, -182, 688, 1196, 537, 0, 130, 0,
- 1136, 0, 0, -223, 0, 1170, 0, -312, 0, 0,
- 1015, 0, 1004, 0, 936, 0, 0, 937, 0, 0,
- 958, 0, 1472, 933, 821, 0, 0, -591, 0, 0,
- 1100, 0, 1274, 1205, 0, 0, 872, 0, 0, 1135,
- 0, -337, 955, 0, 842, -319, 0, 0, 0, 1462,
- 1464, -3, -2, 0, 0, 0, 0, 0, 0, 0,
+ 1557, 0, -208, -102, -320, 0, 0, -480, -619, 796,
+ -70, 0, 0, 1391, 204, 1165, 0, 0, 0, 0,
+ 328, 1324, 0, 0, 953, 0, 0, -612, 0, 0,
+ 673, 598, -325, 0, -88, 0, -331, 0, 0, 0,
+ -668, 0, -581, 0, 1154, 851, 950, 0, 0, -345,
+ 0, 0, -315, 0, 969, 0, 0, -379, 0, 853,
+ 0, -497, 0, 959, 0, -457, 0, 0, -590, 0,
+ 0, -514, 0, 0, 0, -421, 0, 872, 0, -8,
+ 1249, -80, 0, -182, 715, 1218, 599, 0, 130, 0,
+ 1167, 0, 0, -223, 0, 1195, 0, -312, 0, 0,
+ 1038, 0, 1037, 0, 956, 0, 0, 960, 0, 0,
+ 974, 0, 1472, 954, 850, 0, 0, -591, 0, 0,
+ 1123, 0, 1295, 1224, 0, 0, 887, 0, 0, 1150,
+ 0, -337, 967, 0, 854, -319, 0, 0, 0, 1475,
+ 1477, -3, -2, 0, 0, 0, 0, 0, 0, 0,
-169, -119, 0, -192, 0, 0, 0, 0, 0, -178,
0, 0, 0, 0, 0, 0, 0, 0,
};
@@ -1088,34 +1090,34 @@ static const YYINT pfctlytable[] = { 44,
251, 319, 275, 274, 748, 1, 230, 116, 497, 128,
126, 336, 414, 275, 558, 280, 216, 725, 226, 167,
167, 143, 248, 484, 167, 282, 231, 133, 248, 275,
- 275, 275, 173, 226, 421, 307, 682, 461, 362, 310,
- 422, 423, 267, 264, 385, 480, 481, 328, 311, 331,
- 728, 275, 216, 439, 1, 362, 177, 275, 275, 746,
- 344, 467, 494, 46, 761, 275, 275, 275, 690, 424,
- 216, 496, 803, 499, 610, 439, 53, 275, 275, 437,
- 440, 438, 441, 276, 101, 216, 275, 20, 113, 216,
- 275, 175, 309, 516, 275, 400, 708, 327, 391, 527,
+ 275, 275, 173, 226, 1, 307, 682, 461, 362, 310,
+ 46, 496, 267, 264, 385, 480, 481, 328, 311, 331,
+ 728, 275, 216, 439, 53, 362, 177, 275, 275, 746,
+ 344, 467, 494, 54, 761, 275, 275, 275, 690, 261,
+ 262, 263, 803, 499, 610, 439, 516, 275, 275, 437,
+ 440, 438, 441, 276, 101, 216, 275, 20, 113, 757,
+ 275, 175, 309, 752, 275, 400, 708, 327, 391, 527,
216, 225, 440, 438, 441, 326, 275, 329, 439, 166,
371, 216, 466, 134, 371, 309, 395, 129, 390, 169,
- 345, 361, 346, 412, 538, 757, 309, 439, 705, 404,
+ 345, 361, 346, 412, 538, 56, 309, 439, 705, 404,
623, 474, 794, 330, 412, 440, 438, 441, 556, 216,
- 216, 275, 309, 309, 309, 275, 412, 368, 584, 752,
- 439, 343, 610, 722, 440, 438, 441, 338, 216, 383,
- 621, 131, 121, 162, 416, 437, 394, 275, 559, 272,
- 476, 275, 317, 180, 180, 180, 396, 440, 438, 441,
- 54, 509, 477, 620, 167, 56, 486, 122, 251, 452,
- 482, 631, 533, 805, 275, 275, 275, 298, 392, 490,
- 87, 428, 88, 216, 758, 309, 495, 309, 275, 453,
- 132, 447, 629, 488, 77, 339, 510, 668, 804, 275,
- 549, 560, 437, 491, 81, 121, 275, 124, 275, 251,
- 471, 472, 437, 169, 251, 251, 139, 140, 760, 625,
- 475, 651, 478, 251, 275, 452, 412, 437, 416, 534,
+ 216, 275, 309, 309, 309, 275, 412, 368, 584, 722,
+ 439, 559, 610, 131, 440, 438, 441, 805, 216, 383,
+ 621, 338, 804, 162, 416, 437, 343, 275, 760, 272,
+ 359, 275, 317, 180, 180, 180, 396, 440, 438, 441,
+ 77, 394, 477, 620, 167, 380, 486, 91, 251, 452,
+ 482, 631, 476, 385, 275, 275, 275, 298, 392, 490,
+ 758, 428, 132, 216, 78, 309, 495, 309, 275, 453,
+ 80, 447, 629, 488, 73, 74, 510, 668, 115, 339,
+ 509, 533, 121, 491, 81, 121, 275, 124, 275, 251,
+ 471, 472, 437, 169, 251, 251, 806, 178, 434, 549,
+ 475, 651, 478, 251, 73, 452, 412, 122, 416, 534,
122, 1, 1, 1, 1, 101, 251, 251, 347, 437,
437, 437, 318, 437, 369, 453, 458, 248, 369, 251,
280, 125, 251, 248, 371, 439, 511, 512, 251, 550,
- 1, 1, 1, 437, 633, 141, 281, 161, 91, 347,
+ 1, 1, 1, 437, 560, 141, 281, 161, 91, 347,
414, 251, 347, 1, 267, 275, 305, 306, 460, 534,
- 267, 528, 440, 438, 441, 1, 806, 532, 80, 1,
+ 267, 528, 440, 438, 441, 1, 87, 532, 88, 1,
1, 1, 1, 1, 537, 412, 275, 113, 275, 275,
275, 617, 618, 619, 251, 275, 275, 1, 726, 1,
437, 248, 412, 4, 5, 6, 1, 548, 626, 280,
@@ -1128,107 +1130,107 @@ static const YYINT pfctlytable[] = { 44,
309, 412, 275, 275, 174, 175, 286, 132, 309, 14,
632, 15, 689, 286, 286, 799, 452, 286, 16, 800,
580, 275, 309, 437, 647, 607, 174, 175, 369, 17,
- 275, 275, 216, 286, 309, 370, 453, 18, 78, 309,
- 251, 719, 416, 655, 309, 251, 251, 774, 412, 412,
+ 275, 275, 216, 286, 309, 370, 453, 18, 82, 309,
+ 251, 719, 416, 655, 309, 251, 251, 625, 412, 412,
412, 412, 412, 553, 251, 216, 309, 309, 660, 666,
- 667, 19, 730, 704, 309, 309, 309, 309, 706, 780,
- 412, 649, 580, 91, 267, 216, 412, 567, 666, 667,
- 734, 735, 736, 82, 696, 275, 275, 412, 92, 416,
- 416, 416, 416, 416, 93, 713, 286, 267, 286, 628,
- 715, 673, 674, 607, 115, 448, 449, 94, 720, 99,
- 764, 458, 766, 783, 152, 723, 290, 416, 275, 275,
- 132, 95, 775, 390, 390, 390, 390, 390, 781, 99,
- 290, 291, 784, 450, 451, 251, 787, 788, 96, 290,
- 791, 356, 178, 793, 111, 739, 290, 290, 744, 73,
- 290, 390, 275, 275, 347, 693, 790, 290, 291, 124,
+ 667, 19, 730, 704, 309, 309, 309, 309, 706, 633,
+ 412, 649, 580, 92, 267, 216, 412, 567, 666, 667,
+ 734, 735, 736, 111, 696, 275, 275, 412, 93, 416,
+ 416, 416, 416, 416, 94, 713, 286, 267, 286, 628,
+ 715, 673, 674, 607, 216, 448, 449, 112, 720, 99,
+ 764, 458, 766, 774, 152, 723, 290, 416, 275, 275,
+ 132, 216, 775, 390, 390, 390, 390, 390, 781, 99,
+ 290, 291, 784, 450, 451, 251, 780, 788, 95, 290,
+ 791, 356, 519, 793, 520, 739, 290, 290, 744, 96,
+ 290, 390, 275, 275, 347, 693, 783, 290, 291, 124,
124, 124, 124, 124, 124, 124, 290, 290, 291, 124,
- 124, 124, 356, 114, 218, 356, 347, 275, 650, 519,
- 773, 520, 219, 437, 437, 183, 743, 187, 782, 450,
- 451, 97, 785, 437, 437, 437, 709, 789, 248, 255,
- 792, 124, 216, 273, 437, 437, 216, 437, 437, 220,
- 221, 696, 347, 347, 347, 73, 74, 347, 347, 347,
- 98, 347, 386, 776, 347, 347, 673, 674, 437, 290,
- 437, 290, 347, 99, 300, 286, 301, 302, 303, 100,
- 810, 286, 286, 811, 812, 813, 814, 101, 733, 112,
- 286, 286, 286, 102, 286, 286, 113, 286, 275, 357,
- 103, 286, 286, 286, 300, 286, 406, 407, 84, 85,
- 86, 286, 286, 286, 286, 286, 286, 286, 286, 403,
- 104, 286, 216, 105, 286, 106, 437, 300, 743, 107,
- 357, 286, 408, 357, 437, 108, 437, 286, 300, 286,
- 109, 778, 779, 437, 653, 654, 144, 145, 286, 286,
- 286, 286, 286, 286, 300, 300, 300, 414, 110, 658,
- 659, 437, 437, 437, 411, 286, 267, 216, 763, 120,
- 286, 216, 267, 136, 765, 286, 286, 216, 777, 132,
- 132, 132, 132, 132, 132, 132, 137, 286, 286, 132,
- 132, 132, 267, 161, 286, 286, 286, 286, 286, 241,
- 450, 451, 41, 73, 126, 241, 241, 241, 290, 99,
- 99, 174, 175, 786, 290, 290, 216, 300, 163, 300,
- 165, 132, 188, 290, 290, 290, 437, 290, 290, 195,
+ 124, 124, 356, 114, 218, 356, 347, 275, 650, 97,
+ 773, 275, 219, 437, 437, 787, 743, 98, 782, 450,
+ 451, 437, 785, 437, 437, 437, 709, 789, 248, 113,
+ 792, 124, 790, 99, 437, 437, 275, 437, 437, 220,
+ 221, 696, 347, 347, 347, 100, 437, 347, 347, 347,
+ 101, 347, 386, 776, 347, 347, 673, 674, 437, 290,
+ 437, 290, 347, 102, 300, 286, 301, 302, 303, 103,
+ 810, 286, 286, 811, 812, 813, 814, 183, 733, 187,
+ 286, 286, 286, 104, 286, 286, 120, 286, 275, 357,
+ 421, 286, 286, 286, 300, 286, 422, 423, 84, 85,
+ 86, 286, 286, 286, 286, 286, 286, 286, 286, 255,
+ 105, 286, 216, 106, 286, 107, 437, 300, 743, 273,
+ 357, 286, 216, 357, 437, 424, 437, 286, 300, 286,
+ 136, 778, 779, 437, 653, 654, 144, 145, 286, 286,
+ 286, 286, 286, 286, 300, 300, 300, 414, 137, 658,
+ 659, 437, 437, 437, 108, 286, 267, 406, 407, 109,
+ 286, 403, 267, 110, 216, 286, 286, 161, 777, 132,
+ 132, 132, 132, 132, 132, 132, 73, 286, 286, 132,
+ 132, 132, 267, 408, 286, 286, 286, 286, 286, 241,
+ 450, 451, 41, 163, 126, 241, 241, 241, 290, 99,
+ 99, 139, 140, 411, 290, 290, 216, 300, 165, 300,
+ 195, 132, 188, 290, 290, 290, 437, 290, 290, 196,
290, 414, 415, 416, 290, 290, 290, 318, 290, 267,
267, 267, 267, 267, 290, 290, 290, 290, 290, 290,
- 290, 290, 184, 185, 290, 210, 211, 290, 189, 190,
- 318, 267, 437, 47, 290, 196, 417, 267, 437, 437,
- 290, 318, 290, 48, 49, 50, 201, 356, 267, 267,
- 202, 290, 290, 290, 290, 290, 290, 318, 318, 318,
- 248, 69, 203, 99, 99, 248, 248, 437, 290, 356,
- 214, 248, 205, 290, 248, 636, 637, 638, 290, 290,
- 5, 6, 51, 207, 67, 192, 193, 126, 290, 291,
- 290, 290, 670, 677, 305, 306, 335, 290, 290, 290,
- 290, 290, 275, 642, 643, 356, 356, 356, 83, 208,
- 356, 356, 356, 209, 356, 686, 687, 356, 356, 335,
- 318, 212, 318, 694, 175, 356, 300, 275, 181, 182,
- 335, 213, 300, 300, 84, 85, 86, 9, 10, 11,
- 12, 215, 300, 300, 216, 300, 300, 338, 365, 366,
+ 290, 290, 763, 765, 290, 216, 216, 290, 174, 175,
+ 318, 267, 437, 47, 290, 201, 417, 267, 437, 437,
+ 290, 318, 290, 48, 49, 50, 202, 356, 267, 267,
+ 203, 290, 290, 290, 290, 290, 290, 318, 318, 318,
+ 248, 69, 214, 99, 99, 248, 248, 437, 290, 356,
+ 216, 248, 786, 290, 248, 216, 184, 185, 290, 290,
+ 5, 6, 51, 205, 67, 189, 190, 126, 192, 193,
+ 290, 290, 670, 677, 210, 211, 335, 290, 290, 290,
+ 290, 290, 275, 290, 291, 356, 356, 356, 83, 207,
+ 356, 356, 356, 208, 356, 305, 306, 356, 356, 335,
+ 318, 209, 318, 642, 643, 356, 300, 275, 686, 687,
+ 335, 212, 300, 300, 84, 85, 86, 9, 10, 11,
+ 12, 213, 300, 300, 215, 300, 300, 338, 694, 175,
437, 378, 300, 300, 300, 248, 300, 386, 386, 386,
386, 386, 300, 300, 224, 357, 300, 300, 300, 300,
338, 128, 300, 437, 437, 300, 232, 378, 378, 378,
246, 338, 300, 666, 667, 386, 254, 357, 300, 251,
- 300, 130, 378, 378, 378, 673, 674, 653, 654, 300,
- 300, 300, 300, 300, 300, 414, 241, 257, 167, 335,
- 269, 335, 749, 750, 658, 659, 300, 670, 753, 754,
- 677, 300, 125, 357, 357, 357, 300, 300, 357, 357,
- 357, 285, 357, 286, 114, 357, 357, 287, 300, 300,
- 437, 437, 270, 357, 288, 300, 300, 300, 300, 300,
- 275, 275, 414, 414, 414, 414, 414, 437, 437, 289,
- 338, 293, 338, 443, 443, 333, 318, 294, 437, 500,
+ 300, 130, 636, 637, 638, 378, 378, 378, 257, 300,
+ 300, 300, 300, 300, 300, 414, 241, 181, 182, 335,
+ 125, 335, 673, 674, 653, 654, 300, 670, 749, 750,
+ 677, 300, 269, 357, 357, 357, 300, 300, 357, 357,
+ 357, 270, 357, 167, 114, 357, 357, 285, 300, 300,
+ 658, 659, 286, 357, 287, 300, 300, 300, 300, 300,
+ 753, 754, 414, 414, 414, 414, 414, 437, 437, 288,
+ 338, 289, 338, 437, 437, 333, 318, 293, 437, 500,
501, 502, 503, 504, 414, 318, 318, 315, 318, 318,
- 414, 323, 324, 325, 128, 670, 445, 445, 677, 318,
- 437, 99, 337, 295, 241, 318, 318, 505, 347, 318,
- 318, 318, 376, 352, 130, 318, 126, 126, 126, 126,
+ 414, 323, 324, 325, 128, 670, 275, 275, 677, 318,
+ 437, 99, 443, 443, 241, 318, 318, 505, 337, 318,
+ 318, 318, 445, 445, 130, 318, 126, 126, 126, 126,
126, 126, 126, 404, 404, 318, 126, 126, 126, 241,
- 404, 404, 404, 318, 332, 378, 437, 437, 437, 381,
- 382, 437, 437, 437, 233, 437, 386, 318, 437, 437,
- 67, 67, 392, 397, 405, 398, 437, 114, 126, 318,
- 281, 413, 420, 67, 318, 335, 67, 233, 427, 318,
- 429, 456, 67, 463, 335, 335, 457, 335, 335, 470,
- 473, 318, 318, 513, 514, 67, 515, 517, 335, 318,
- 318, 318, 318, 521, 335, 335, 275, 524, 335, 335,
- 335, 522, 523, 275, 335, 526, 546, 275, 551, 561,
- 465, 562, 563, 564, 335, 469, 338, 565, 67, 566,
- 568, 460, 335, 275, 585, 338, 338, 635, 338, 338,
- 639, 640, 645, 641, 663, 67, 335, 664, 665, 338,
- 685, 691, 67, 697, 692, 338, 338, 707, 335, 338,
- 338, 338, 699, 335, 710, 338, 700, 701, 335, 650,
- 712, 198, 199, 200, 508, 338, 714, 716, 717, 721,
- 335, 335, 45, 338, 724, 681, 731, 732, 335, 335,
- 335, 335, 737, 762, 771, 801, 275, 338, 275, 796,
- 795, 797, 798, 802, 807, 45, 808, 815, 228, 338,
- 809, 241, 99, 45, 338, 275, 45, 47, 229, 338,
- 167, 437, 251, 128, 128, 128, 128, 128, 128, 128,
- 416, 338, 338, 128, 128, 128, 99, 59, 437, 338,
+ 404, 404, 404, 318, 365, 366, 437, 437, 437, 294,
+ 295, 437, 437, 437, 233, 437, 332, 318, 437, 437,
+ 67, 67, 347, 352, 376, 378, 437, 114, 126, 318,
+ 381, 382, 386, 67, 318, 335, 67, 233, 392, 318,
+ 397, 281, 67, 398, 335, 335, 427, 335, 335, 405,
+ 413, 318, 318, 420, 429, 67, 456, 457, 335, 318,
+ 318, 318, 318, 463, 335, 335, 275, 513, 335, 335,
+ 335, 470, 473, 275, 335, 517, 514, 275, 515, 521,
+ 465, 522, 523, 524, 335, 469, 338, 526, 67, 546,
+ 551, 561, 335, 275, 562, 338, 338, 563, 338, 338,
+ 564, 565, 566, 568, 585, 67, 335, 460, 640, 338,
+ 635, 639, 67, 641, 645, 338, 338, 663, 335, 338,
+ 338, 338, 664, 335, 691, 338, 665, 685, 335, 692,
+ 697, 198, 199, 200, 508, 338, 699, 700, 701, 710,
+ 335, 335, 45, 338, 707, 650, 712, 714, 335, 335,
+ 335, 335, 716, 717, 721, 724, 275, 338, 275, 681,
+ 731, 737, 732, 762, 795, 45, 796, 771, 797, 338,
+ 801, 798, 802, 45, 338, 807, 45, 808, 229, 338,
+ 809, 815, 228, 128, 128, 128, 128, 128, 128, 128,
+ 241, 338, 338, 128, 128, 128, 99, 275, 47, 338,
338, 338, 338, 130, 130, 130, 130, 130, 130, 130,
- 437, 41, 401, 130, 130, 130, 402, 680, 241, 241,
- 241, 241, 241, 241, 241, 128, 241, 146, 767, 241,
- 241, 241, 241, 316, 275, 529, 816, 241, 241, 241,
- 241, 275, 518, 525, 247, 130, 112, 112, 112, 112,
- 112, 112, 112, 230, 755, 45, 622, 112, 112, 334,
- 241, 275, 271, 299, 297, 483, 233, 314, 479, 233,
- 233, 233, 233, 233, 322, 543, 230, 233, 233, 233,
- 233, 545, 233, 233, 698, 233, 233, 167, 114, 539,
- 555, 399, 233, 233, 233, 245, 233, 233, 296, 233,
- 233, 233, 233, 233, 646, 384, 233, 233, 233, 233,
- 275, 554, 233, 703, 42, 233, 43, 0, 367, 0,
- 0, 241, 233, 0, 275, 0, 275, 0, 233, 0,
+ 167, 437, 251, 130, 130, 130, 416, 59, 241, 241,
+ 241, 241, 241, 241, 241, 128, 241, 99, 437, 241,
+ 241, 241, 241, 437, 275, 401, 402, 241, 241, 241,
+ 241, 275, 680, 41, 146, 130, 112, 112, 112, 112,
+ 112, 112, 112, 230, 767, 45, 816, 112, 112, 316,
+ 241, 275, 529, 299, 525, 518, 233, 314, 622, 233,
+ 233, 233, 233, 233, 322, 247, 230, 233, 233, 233,
+ 233, 755, 233, 233, 271, 233, 233, 167, 114, 297,
+ 334, 479, 233, 233, 233, 543, 233, 233, 483, 233,
+ 233, 233, 233, 233, 545, 539, 233, 233, 233, 233,
+ 275, 555, 233, 698, 399, 233, 245, 296, 367, 646,
+ 384, 241, 233, 554, 275, 703, 275, 42, 233, 43,
233, 0, 0, 275, 275, 0, 0, 233, 0, 233,
233, 233, 233, 233, 233, 0, 0, 241, 241, 241,
241, 241, 241, 241, 0, 0, 233, 241, 241, 241,
@@ -1265,7 +1267,7 @@ static const YYINT pfctlytable[] = { 44,
229, 0, 229, 229, 148, 229, 229, 229, 229, 229,
0, 0, 229, 229, 229, 229, 0, 0, 229, 0,
0, 229, 0, 0, 0, 0, 0, 0, 229, 275,
- 0, 0, 0, 0, 229, 213, 229, 261, 262, 263,
+ 0, 0, 0, 0, 229, 213, 229, 0, 0, 0,
149, 150, 151, 229, 0, 152, 153, 154, 0, 155,
229, 0, 144, 145, 275, 275, 0, 0, 213, 0,
156, 0, 229, 38, 5, 6, 0, 229, 0, 0,
@@ -1275,40 +1277,40 @@ static const YYINT pfctlytable[] = { 44,
209, 209, 209, 0, 0, 7, 209, 209, 209, 209,
0, 209, 209, 0, 209, 209, 0, 0, 0, 0,
0, 9, 10, 11, 12, 209, 209, 0, 209, 209,
- 209, 209, 209, 0, 0, 209, 209, 209, 359, 0,
+ 209, 209, 209, 0, 0, 209, 209, 209, 0, 0,
0, 209, 0, 0, 0, 540, 0, 541, 0, 542,
- 0, 209, 544, 380, 0, 0, 0, 0, 214, 209,
- 0, 385, 211, 211, 211, 211, 211, 211, 211, 211,
+ 0, 209, 544, 0, 0, 0, 0, 0, 214, 209,
+ 0, 0, 211, 211, 211, 211, 211, 211, 211, 211,
211, 0, 0, 209, 211, 211, 211, 211, 0, 211,
- 211, 214, 211, 211, 0, 209, 0, 0, 0, 0,
+ 211, 214, 211, 211, 437, 209, 0, 0, 0, 0,
209, 0, 0, 211, 211, 209, 211, 211, 211, 211,
- 211, 0, 437, 211, 211, 211, 434, 209, 209, 211,
+ 211, 0, 0, 211, 211, 211, 437, 209, 209, 211,
0, 0, 0, 0, 0, 209, 209, 0, 0, 211,
- 0, 0, 0, 0, 437, 0, 0, 211, 0, 0,
- 0, 0, 0, 0, 0, 0, 60, 61, 62, 63,
- 64, 211, 65, 0, 66, 0, 67, 68, 69, 0,
- 0, 0, 0, 211, 0, 0, 271, 0, 211, 0,
- 437, 437, 437, 211, 0, 437, 437, 437, 0, 437,
- 0, 0, 437, 437, 0, 211, 211, 0, 70, 271,
- 437, 702, 0, 211, 211, 0, 213, 213, 213, 213,
- 213, 213, 213, 213, 213, 71, 72, 0, 213, 213,
+ 0, 0, 0, 0, 0, 0, 0, 211, 112, 112,
+ 112, 112, 112, 112, 112, 0, 0, 0, 114, 112,
+ 112, 211, 437, 437, 437, 0, 0, 437, 437, 437,
+ 0, 437, 0, 211, 437, 437, 271, 0, 211, 0,
+ 0, 0, 437, 211, 0, 0, 233, 234, 235, 236,
+ 237, 238, 239, 0, 0, 211, 211, 240, 241, 271,
+ 0, 702, 0, 211, 211, 0, 213, 213, 213, 213,
+ 213, 213, 213, 213, 213, 0, 0, 0, 213, 213,
213, 213, 0, 213, 213, 0, 213, 213, 0, 0,
0, 0, 0, 0, 0, 0, 0, 213, 213, 0,
213, 213, 213, 213, 213, 0, 0, 213, 213, 213,
0, 0, 0, 213, 0, 0, 0, 0, 248, 0,
- 0, 0, 0, 213, 112, 112, 112, 112, 112, 112,
- 112, 213, 0, 0, 114, 112, 112, 0, 0, 0,
+ 0, 0, 0, 213, 0, 0, 60, 61, 62, 63,
+ 64, 213, 65, 0, 66, 0, 67, 68, 69, 0,
0, 248, 0, 0, 0, 213, 261, 0, 0, 271,
0, 0, 0, 0, 0, 0, 0, 213, 0, 0,
- 0, 0, 213, 0, 0, 0, 0, 213, 0, 261,
+ 0, 0, 213, 0, 0, 0, 0, 213, 70, 261,
0, 0, 0, 0, 0, 768, 769, 770, 0, 213,
- 213, 0, 0, 0, 0, 0, 0, 213, 213, 214,
+ 213, 0, 0, 0, 0, 71, 72, 213, 213, 214,
214, 214, 214, 214, 214, 214, 214, 214, 0, 0,
0, 214, 214, 214, 214, 0, 214, 214, 0, 214,
214, 0, 0, 0, 0, 0, 0, 0, 0, 0,
214, 214, 0, 214, 214, 214, 214, 214, 0, 0,
- 214, 214, 214, 0, 0, 0, 214, 233, 234, 235,
- 236, 237, 238, 239, 0, 0, 214, 0, 240, 241,
+ 214, 214, 214, 0, 0, 0, 214, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 214, 0, 0, 0,
0, 0, 0, 0, 214, 0, 0, 0, 0, 261,
0, 0, 0, 0, 0, 0, 0, 0, 214, 223,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -1569,34 +1571,34 @@ static const YYINT pfctlycheck[] = { 3,
33, 123, 33, 222, 713, 10, 166, 56, 428, 276,
123, 275, 10, 44, 512, 33, 44, 677, 40, 33,
33, 70, 267, 40, 33, 123, 169, 298, 273, 60,
- 61, 62, 81, 40, 349, 123, 40, 123, 40, 267,
- 355, 356, 10, 203, 10, 406, 407, 266, 276, 268,
- 682, 33, 44, 33, 123, 40, 177, 125, 40, 712,
- 279, 447, 423, 10, 724, 225, 125, 125, 40, 384,
- 44, 427, 781, 429, 536, 33, 60, 40, 60, 40,
- 60, 61, 62, 226, 123, 44, 40, 10, 123, 44,
- 44, 123, 10, 442, 125, 344, 634, 125, 331, 459,
+ 61, 62, 81, 40, 123, 123, 40, 123, 40, 267,
+ 10, 427, 10, 203, 10, 406, 407, 266, 276, 268,
+ 682, 33, 44, 33, 60, 40, 177, 125, 40, 712,
+ 279, 447, 423, 384, 724, 225, 125, 125, 40, 198,
+ 199, 200, 781, 429, 536, 33, 442, 40, 60, 40,
+ 60, 61, 62, 226, 123, 44, 40, 10, 123, 720,
+ 44, 123, 10, 715, 125, 344, 634, 125, 331, 459,
44, 123, 60, 61, 62, 265, 60, 267, 33, 123,
123, 44, 125, 384, 123, 33, 335, 384, 328, 230,
- 280, 123, 282, 10, 477, 720, 44, 33, 626, 348,
+ 280, 123, 282, 10, 477, 384, 44, 33, 626, 348,
550, 395, 764, 125, 353, 60, 61, 62, 510, 44,
- 44, 123, 60, 61, 62, 44, 33, 307, 534, 715,
- 33, 125, 614, 670, 60, 61, 62, 299, 44, 319,
- 546, 260, 359, 74, 10, 123, 125, 33, 517, 218,
- 125, 125, 294, 84, 85, 86, 336, 60, 61, 62,
- 384, 125, 401, 544, 33, 384, 40, 384, 10, 40,
- 409, 569, 125, 788, 60, 61, 62, 246, 10, 418,
- 261, 361, 263, 44, 721, 123, 425, 125, 40, 60,
- 309, 371, 568, 40, 384, 357, 435, 123, 784, 359,
+ 44, 123, 60, 61, 62, 44, 33, 307, 534, 670,
+ 33, 517, 614, 260, 60, 61, 62, 788, 44, 319,
+ 546, 299, 784, 74, 10, 123, 125, 33, 723, 218,
+ 299, 125, 294, 84, 85, 86, 336, 60, 61, 62,
+ 384, 125, 401, 544, 33, 314, 40, 24, 10, 40,
+ 409, 569, 125, 322, 60, 61, 62, 246, 10, 418,
+ 721, 361, 309, 44, 266, 123, 425, 125, 40, 60,
+ 384, 371, 568, 40, 264, 265, 435, 123, 55, 357,
125, 125, 359, 40, 314, 359, 125, 10, 60, 262,
- 390, 391, 33, 344, 267, 268, 384, 385, 723, 125,
- 400, 47, 402, 276, 384, 40, 288, 384, 288, 468,
+ 390, 391, 33, 344, 267, 268, 791, 257, 367, 125,
+ 400, 47, 402, 276, 264, 40, 288, 384, 288, 468,
384, 256, 257, 258, 259, 294, 289, 290, 10, 60,
61, 62, 384, 40, 277, 60, 377, 178, 277, 302,
288, 384, 305, 299, 123, 33, 436, 437, 311, 498,
285, 286, 287, 60, 125, 41, 384, 41, 299, 41,
288, 324, 44, 298, 262, 277, 384, 385, 384, 518,
- 268, 461, 60, 61, 62, 310, 791, 467, 384, 314,
+ 268, 461, 60, 61, 62, 310, 261, 467, 263, 314,
315, 316, 317, 318, 474, 357, 384, 352, 300, 301,
384, 540, 541, 542, 357, 384, 384, 332, 385, 334,
384, 357, 374, 256, 257, 258, 341, 497, 557, 357,
@@ -1609,107 +1611,107 @@ static const YYINT pfctlycheck[] = { 3,
318, 288, 384, 385, 384, 385, 33, 10, 326, 332,
570, 334, 384, 40, 41, 771, 40, 44, 341, 775,
531, 384, 340, 384, 584, 536, 384, 385, 277, 352,
- 384, 385, 44, 60, 352, 284, 60, 360, 266, 357,
+ 384, 385, 44, 60, 352, 284, 60, 360, 61, 357,
262, 664, 288, 123, 362, 267, 268, 125, 335, 336,
337, 338, 339, 502, 276, 44, 374, 375, 123, 384,
385, 384, 685, 623, 382, 383, 384, 385, 628, 125,
- 357, 277, 583, 24, 10, 44, 363, 526, 384, 385,
- 699, 700, 701, 61, 605, 384, 385, 374, 10, 335,
+ 357, 277, 583, 10, 10, 44, 363, 526, 384, 385,
+ 699, 700, 701, 40, 605, 384, 385, 374, 10, 335,
336, 337, 338, 339, 10, 655, 123, 33, 125, 123,
- 660, 384, 385, 614, 55, 300, 301, 10, 668, 40,
+ 660, 384, 385, 614, 44, 300, 301, 40, 668, 40,
729, 622, 731, 125, 41, 675, 10, 363, 384, 385,
- 123, 10, 741, 335, 336, 337, 338, 339, 747, 60,
+ 123, 44, 741, 335, 336, 337, 338, 339, 747, 60,
384, 385, 751, 384, 385, 357, 125, 756, 10, 33,
- 759, 10, 257, 762, 40, 705, 40, 41, 708, 264,
+ 759, 10, 45, 762, 47, 705, 40, 41, 708, 10,
44, 363, 384, 385, 306, 604, 125, 384, 385, 342,
343, 344, 345, 346, 347, 348, 60, 384, 385, 352,
- 353, 354, 41, 384, 268, 44, 328, 44, 384, 45,
- 740, 47, 276, 384, 385, 89, 707, 91, 748, 384,
- 385, 10, 752, 349, 350, 351, 645, 757, 10, 41,
- 760, 384, 44, 41, 358, 359, 44, 384, 385, 303,
- 304, 732, 364, 365, 366, 264, 265, 369, 370, 371,
+ 353, 354, 41, 384, 268, 44, 328, 44, 384, 10,
+ 740, 359, 276, 384, 385, 125, 707, 10, 748, 384,
+ 385, 359, 752, 349, 350, 351, 645, 757, 10, 40,
+ 760, 384, 125, 10, 358, 359, 384, 384, 385, 303,
+ 304, 732, 364, 365, 366, 10, 384, 369, 370, 371,
10, 373, 10, 10, 376, 377, 384, 385, 384, 123,
384, 125, 384, 10, 293, 262, 295, 296, 297, 10,
- 800, 268, 269, 803, 804, 805, 806, 10, 697, 40,
- 277, 278, 279, 10, 281, 282, 40, 284, 125, 10,
- 10, 288, 289, 290, 10, 292, 358, 359, 285, 286,
+ 800, 268, 269, 803, 804, 805, 806, 89, 697, 91,
+ 277, 278, 279, 10, 281, 282, 384, 284, 125, 10,
+ 349, 288, 289, 290, 10, 292, 355, 356, 285, 286,
287, 298, 299, 300, 301, 302, 303, 304, 305, 41,
- 10, 308, 44, 10, 311, 10, 268, 33, 809, 10,
- 41, 318, 384, 44, 276, 10, 33, 324, 44, 326,
- 10, 745, 745, 40, 384, 385, 376, 377, 335, 336,
- 337, 338, 339, 340, 60, 61, 62, 10, 10, 384,
- 385, 303, 304, 60, 41, 352, 262, 44, 41, 384,
- 357, 44, 268, 384, 41, 362, 363, 44, 125, 342,
- 343, 344, 345, 346, 347, 348, 384, 374, 375, 352,
- 353, 354, 288, 40, 381, 382, 383, 384, 385, 267,
- 384, 385, 10, 264, 10, 273, 274, 275, 262, 300,
- 301, 384, 385, 41, 268, 269, 44, 123, 333, 125,
- 265, 384, 307, 277, 278, 279, 123, 281, 282, 62,
+ 10, 308, 44, 10, 311, 10, 268, 33, 809, 41,
+ 41, 318, 44, 44, 276, 384, 33, 324, 44, 326,
+ 384, 745, 745, 40, 384, 385, 376, 377, 335, 336,
+ 337, 338, 339, 340, 60, 61, 62, 10, 384, 384,
+ 385, 303, 304, 60, 10, 352, 262, 358, 359, 10,
+ 357, 41, 268, 10, 44, 362, 363, 40, 125, 342,
+ 343, 344, 345, 346, 347, 348, 264, 374, 375, 352,
+ 353, 354, 288, 384, 381, 382, 383, 384, 385, 267,
+ 384, 385, 10, 333, 10, 273, 274, 275, 262, 300,
+ 301, 384, 385, 41, 268, 269, 44, 123, 265, 125,
+ 62, 384, 307, 277, 278, 279, 123, 281, 282, 265,
284, 349, 350, 351, 288, 289, 290, 10, 292, 335,
336, 337, 338, 339, 298, 299, 300, 301, 302, 303,
- 304, 305, 274, 275, 308, 367, 368, 311, 384, 385,
- 33, 357, 349, 260, 318, 265, 384, 363, 355, 356,
+ 304, 305, 41, 41, 308, 44, 44, 311, 384, 385,
+ 33, 357, 349, 260, 318, 385, 384, 363, 355, 356,
324, 44, 326, 270, 271, 272, 385, 306, 374, 375,
- 385, 335, 336, 337, 338, 339, 340, 60, 61, 62,
- 262, 10, 10, 384, 385, 267, 268, 384, 352, 328,
- 60, 273, 385, 357, 276, 311, 312, 313, 362, 363,
+ 10, 335, 336, 337, 338, 339, 340, 60, 61, 62,
+ 262, 10, 60, 384, 385, 267, 268, 384, 352, 328,
+ 44, 273, 41, 357, 276, 44, 274, 275, 362, 363,
257, 258, 309, 385, 33, 384, 385, 123, 384, 385,
- 374, 375, 595, 596, 384, 385, 10, 381, 382, 383,
+ 374, 375, 595, 596, 367, 368, 10, 381, 382, 383,
384, 385, 359, 384, 385, 364, 365, 366, 259, 385,
369, 370, 371, 385, 373, 384, 385, 376, 377, 33,
- 123, 385, 125, 384, 385, 384, 262, 384, 85, 86,
+ 123, 385, 125, 384, 385, 384, 262, 384, 384, 385,
44, 385, 268, 269, 285, 286, 287, 314, 315, 316,
- 317, 385, 278, 279, 44, 281, 282, 10, 302, 303,
+ 317, 385, 278, 279, 385, 281, 282, 10, 384, 385,
277, 259, 288, 289, 290, 357, 292, 335, 336, 337,
338, 339, 298, 299, 384, 306, 302, 303, 304, 305,
33, 10, 308, 300, 301, 311, 352, 285, 286, 287,
267, 44, 318, 384, 385, 363, 385, 328, 324, 273,
- 326, 10, 285, 286, 287, 384, 385, 384, 385, 335,
- 336, 337, 338, 339, 340, 288, 10, 41, 33, 123,
- 47, 125, 384, 385, 384, 385, 352, 720, 384, 385,
- 723, 357, 384, 364, 365, 366, 362, 363, 369, 370,
- 371, 40, 373, 40, 10, 376, 377, 40, 374, 375,
- 384, 385, 384, 384, 40, 381, 382, 383, 384, 385,
+ 326, 10, 311, 312, 313, 285, 286, 287, 41, 335,
+ 336, 337, 338, 339, 340, 288, 10, 85, 86, 123,
+ 384, 125, 384, 385, 384, 385, 352, 720, 384, 385,
+ 723, 357, 47, 364, 365, 366, 362, 363, 369, 370,
+ 371, 384, 373, 33, 10, 376, 377, 40, 374, 375,
+ 384, 385, 40, 384, 40, 381, 382, 383, 384, 385,
384, 385, 335, 336, 337, 338, 339, 384, 385, 40,
- 123, 385, 125, 384, 385, 62, 269, 385, 306, 335,
+ 123, 40, 125, 384, 385, 62, 269, 385, 306, 335,
336, 337, 338, 339, 357, 278, 279, 41, 281, 282,
363, 261, 262, 263, 123, 788, 384, 385, 791, 292,
- 328, 374, 41, 385, 10, 298, 299, 363, 384, 302,
- 303, 304, 375, 384, 123, 308, 342, 343, 344, 345,
+ 328, 374, 384, 385, 10, 298, 299, 363, 41, 302,
+ 303, 304, 384, 385, 123, 308, 342, 343, 344, 345,
346, 347, 348, 266, 267, 318, 352, 353, 354, 123,
- 273, 274, 275, 326, 385, 262, 364, 365, 366, 41,
- 384, 369, 370, 371, 10, 373, 357, 340, 376, 377,
- 289, 290, 372, 384, 41, 385, 384, 123, 384, 352,
- 384, 41, 41, 302, 357, 269, 305, 33, 267, 362,
- 384, 284, 311, 268, 278, 279, 384, 281, 282, 385,
- 367, 374, 375, 61, 61, 324, 61, 386, 292, 382,
- 383, 384, 385, 47, 298, 299, 33, 47, 302, 303,
- 304, 384, 384, 40, 308, 374, 268, 44, 41, 384,
- 380, 385, 385, 41, 318, 385, 269, 62, 357, 385,
- 288, 384, 326, 60, 123, 278, 279, 385, 281, 282,
- 385, 384, 374, 385, 283, 374, 340, 283, 283, 292,
- 283, 385, 381, 374, 385, 298, 299, 284, 352, 302,
- 303, 304, 385, 357, 10, 308, 385, 385, 362, 384,
- 47, 117, 118, 119, 434, 318, 280, 280, 40, 386,
- 374, 375, 10, 326, 386, 362, 384, 284, 382, 383,
- 384, 385, 41, 385, 288, 10, 123, 340, 125, 41,
- 384, 41, 41, 10, 385, 33, 41, 41, 333, 352,
- 284, 10, 384, 41, 357, 384, 44, 10, 164, 362,
- 10, 384, 267, 342, 343, 344, 345, 346, 347, 348,
- 10, 374, 375, 352, 353, 354, 374, 10, 385, 382,
+ 273, 274, 275, 326, 302, 303, 364, 365, 366, 385,
+ 385, 369, 370, 371, 10, 373, 385, 340, 376, 377,
+ 289, 290, 384, 384, 375, 262, 384, 123, 384, 352,
+ 41, 384, 357, 302, 357, 269, 305, 33, 372, 362,
+ 384, 384, 311, 385, 278, 279, 267, 281, 282, 41,
+ 41, 374, 375, 41, 384, 324, 284, 384, 292, 382,
+ 383, 384, 385, 268, 298, 299, 33, 61, 302, 303,
+ 304, 385, 367, 40, 308, 386, 61, 44, 61, 47,
+ 380, 384, 384, 47, 318, 385, 269, 374, 357, 268,
+ 41, 384, 326, 60, 385, 278, 279, 385, 281, 282,
+ 41, 62, 385, 288, 123, 374, 340, 384, 384, 292,
+ 385, 385, 381, 385, 374, 298, 299, 283, 352, 302,
+ 303, 304, 283, 357, 385, 308, 283, 283, 362, 385,
+ 374, 117, 118, 119, 434, 318, 385, 385, 385, 10,
+ 374, 375, 10, 326, 284, 384, 47, 280, 382, 383,
+ 384, 385, 280, 40, 386, 386, 123, 340, 125, 362,
+ 384, 41, 284, 385, 384, 33, 41, 288, 41, 352,
+ 10, 41, 10, 41, 357, 385, 44, 41, 164, 362,
+ 284, 41, 333, 342, 343, 344, 345, 346, 347, 348,
+ 10, 374, 375, 352, 353, 354, 384, 384, 10, 382,
383, 384, 385, 342, 343, 344, 345, 346, 347, 348,
- 362, 3, 10, 352, 353, 354, 10, 597, 342, 343,
- 344, 345, 346, 347, 348, 384, 262, 71, 732, 353,
- 354, 267, 268, 256, 33, 463, 809, 273, 274, 275,
- 276, 40, 447, 456, 177, 384, 342, 343, 344, 345,
- 346, 347, 348, 10, 717, 123, 547, 353, 354, 274,
- 384, 60, 217, 249, 245, 412, 262, 253, 404, 265,
- 266, 267, 268, 269, 260, 490, 33, 273, 274, 275,
- 276, 495, 278, 279, 614, 281, 282, 33, 384, 482,
- 508, 342, 288, 289, 290, 172, 292, 293, 244, 295,
- 296, 297, 298, 299, 583, 321, 302, 303, 304, 305,
- 277, 507, 308, 622, 3, 311, 3, -1, 304, -1,
- -1, 357, 318, -1, 123, -1, 125, -1, 324, -1,
+ 10, 384, 267, 352, 353, 354, 10, 10, 342, 343,
+ 344, 345, 346, 347, 348, 384, 262, 374, 362, 353,
+ 354, 267, 268, 385, 33, 10, 10, 273, 274, 275,
+ 276, 40, 597, 3, 71, 384, 342, 343, 344, 345,
+ 346, 347, 348, 10, 732, 123, 809, 353, 354, 256,
+ 384, 60, 463, 249, 456, 447, 262, 253, 547, 265,
+ 266, 267, 268, 269, 260, 177, 33, 273, 274, 275,
+ 276, 717, 278, 279, 217, 281, 282, 33, 384, 245,
+ 274, 404, 288, 289, 290, 490, 292, 293, 412, 295,
+ 296, 297, 298, 299, 495, 482, 302, 303, 304, 305,
+ 277, 508, 308, 614, 342, 311, 172, 244, 304, 583,
+ 321, 357, 318, 507, 123, 622, 125, 3, 324, 3,
326, -1, -1, 300, 301, -1, -1, 333, -1, 335,
336, 337, 338, 339, 340, -1, -1, 342, 343, 344,
345, 346, 347, 348, -1, -1, 352, 352, 353, 354,
@@ -1746,7 +1748,7 @@ static const YYINT pfctlycheck[] = { 3,
290, -1, 292, 293, 328, 295, 296, 297, 298, 299,
-1, -1, 302, 303, 304, 305, -1, -1, 308, -1,
-1, 311, -1, -1, -1, -1, -1, -1, 318, 359,
- -1, -1, -1, -1, 324, 10, 326, 198, 199, 200,
+ -1, -1, -1, -1, 324, 10, 326, -1, -1, -1,
364, 365, 366, 333, -1, 369, 370, 371, -1, 373,
340, -1, 376, 377, 384, 385, -1, -1, 33, -1,
384, -1, 352, 256, 257, 258, -1, 357, -1, -1,
@@ -1756,40 +1758,40 @@ static const YYINT pfctlycheck[] = { 3,
267, 268, 269, -1, -1, 298, 273, 274, 275, 276,
-1, 278, 279, -1, 281, 282, -1, -1, -1, -1,
-1, 314, 315, 316, 317, 292, 293, -1, 295, 296,
- 297, 298, 299, -1, -1, 302, 303, 304, 299, -1,
+ 297, 298, 299, -1, -1, 302, 303, 304, -1, -1,
-1, 308, -1, -1, -1, 484, -1, 486, -1, 488,
- -1, 318, 491, 314, -1, -1, -1, -1, 10, 326,
- -1, 322, 261, 262, 263, 264, 265, 266, 267, 268,
+ -1, 318, 491, -1, -1, -1, -1, -1, 10, 326,
+ -1, -1, 261, 262, 263, 264, 265, 266, 267, 268,
269, -1, -1, 340, 273, 274, 275, 276, -1, 278,
- 279, 33, 281, 282, -1, 352, -1, -1, -1, -1,
+ 279, 33, 281, 282, 306, 352, -1, -1, -1, -1,
357, -1, -1, 292, 293, 362, 295, 296, 297, 298,
- 299, -1, 306, 302, 303, 304, 367, 374, 375, 308,
+ 299, -1, -1, 302, 303, 304, 328, 374, 375, 308,
-1, -1, -1, -1, -1, 382, 383, -1, -1, 318,
- -1, -1, -1, -1, 328, -1, -1, 326, -1, -1,
- -1, -1, -1, -1, -1, -1, 319, 320, 321, 322,
- 323, 340, 325, -1, 327, -1, 329, 330, 331, -1,
- -1, -1, -1, 352, -1, -1, 10, -1, 357, -1,
- 364, 365, 366, 362, -1, 369, 370, 371, -1, 373,
- -1, -1, 376, 377, -1, 374, 375, -1, 361, 33,
- 384, 620, -1, 382, 383, -1, 261, 262, 263, 264,
- 265, 266, 267, 268, 269, 378, 379, -1, 273, 274,
+ -1, -1, -1, -1, -1, -1, -1, 326, 342, 343,
+ 344, 345, 346, 347, 348, -1, -1, -1, 352, 353,
+ 354, 340, 364, 365, 366, -1, -1, 369, 370, 371,
+ -1, 373, -1, 352, 376, 377, 10, -1, 357, -1,
+ -1, -1, 384, 362, -1, -1, 342, 343, 344, 345,
+ 346, 347, 348, -1, -1, 374, 375, 353, 354, 33,
+ -1, 620, -1, 382, 383, -1, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, -1, -1, -1, 273, 274,
275, 276, -1, 278, 279, -1, 281, 282, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 292, 293, -1,
295, 296, 297, 298, 299, -1, -1, 302, 303, 304,
-1, -1, -1, 308, -1, -1, -1, -1, 10, -1,
- -1, -1, -1, 318, 342, 343, 344, 345, 346, 347,
- 348, 326, -1, -1, 352, 353, 354, -1, -1, -1,
+ -1, -1, -1, 318, -1, -1, 319, 320, 321, 322,
+ 323, 326, 325, -1, 327, -1, 329, 330, 331, -1,
-1, 33, -1, -1, -1, 340, 10, -1, -1, 123,
-1, -1, -1, -1, -1, -1, -1, 352, -1, -1,
- -1, -1, 357, -1, -1, -1, -1, 362, -1, 33,
+ -1, -1, 357, -1, -1, -1, -1, 362, 361, 33,
-1, -1, -1, -1, -1, 734, 735, 736, -1, 374,
- 375, -1, -1, -1, -1, -1, -1, 382, 383, 261,
+ 375, -1, -1, -1, -1, 378, 379, 382, 383, 261,
262, 263, 264, 265, 266, 267, 268, 269, -1, -1,
-1, 273, 274, 275, 276, -1, 278, 279, -1, 281,
282, -1, -1, -1, -1, -1, -1, -1, -1, -1,
292, 293, -1, 295, 296, 297, 298, 299, -1, -1,
- 302, 303, 304, -1, -1, -1, 308, 342, 343, 344,
- 345, 346, 347, 348, -1, -1, 318, -1, 353, 354,
+ 302, 303, 304, -1, -1, -1, 308, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, -1, -1, -1,
-1, -1, -1, -1, 326, -1, -1, -1, -1, 123,
-1, -1, -1, -1, -1, -1, -1, -1, 340, 10,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
@@ -2494,7 +2496,7 @@ static const char *const pfctlyrule[] = {
"nataction : no NAT natpasslog",
"nataction : no RDR natpasslog",
"natrule : nataction interface af proto fromto tag tagged rtable redirpool pool_opts",
-"binatrule : no BINAT natpasslog interface af proto FROM host toipspec tag tagged rtable redirection",
+"binatrule : no BINAT natpasslog interface af proto FROM ipspec toipspec tag tagged rtable redirection",
"tag :",
"tag : TAG STRING",
"tagged :",
@@ -2566,7 +2568,7 @@ typedef struct {
} YYSTACKDATA;
/* variables for the parser stack */
static YYSTACKDATA yystack;
-#line 4545 "../../freebsd/sbin/pfctl/parse.y"
+#line 4550 "../../freebsd/sbin/pfctl/parse.y"
#ifdef __rtems__
RTEMS_LINKER_RWSET_CONTENT(bsd_prog_pfctl, extern YYSTYPE pfctlyval);
RTEMS_LINKER_RWSET_CONTENT(bsd_prog_pfctl, extern YYSTYPE pfctlylval);
@@ -4295,6 +4297,57 @@ pfctl_load_anchors(int dev, struct pfctl *pf, struct pfr_buffer *trans)
}
int
+kw_casecmp(const void *k, const void *e)
+{
+ return (strcasecmp(k, ((const struct keywords *)e)->k_name));
+}
+
+int
+map_tos(char *s, int *val)
+{
+ /* DiffServ Codepoints and other TOS mappings */
+ const struct keywords toswords[] = {
+ { "af11", IPTOS_DSCP_AF11 },
+ { "af12", IPTOS_DSCP_AF12 },
+ { "af13", IPTOS_DSCP_AF13 },
+ { "af21", IPTOS_DSCP_AF21 },
+ { "af22", IPTOS_DSCP_AF22 },
+ { "af23", IPTOS_DSCP_AF23 },
+ { "af31", IPTOS_DSCP_AF31 },
+ { "af32", IPTOS_DSCP_AF32 },
+ { "af33", IPTOS_DSCP_AF33 },
+ { "af41", IPTOS_DSCP_AF41 },
+ { "af42", IPTOS_DSCP_AF42 },
+ { "af43", IPTOS_DSCP_AF43 },
+ { "critical", IPTOS_PREC_CRITIC_ECP },
+ { "cs0", IPTOS_DSCP_CS0 },
+ { "cs1", IPTOS_DSCP_CS1 },
+ { "cs2", IPTOS_DSCP_CS2 },
+ { "cs3", IPTOS_DSCP_CS3 },
+ { "cs4", IPTOS_DSCP_CS4 },
+ { "cs5", IPTOS_DSCP_CS5 },
+ { "cs6", IPTOS_DSCP_CS6 },
+ { "cs7", IPTOS_DSCP_CS7 },
+ { "ef", IPTOS_DSCP_EF },
+ { "inetcontrol", IPTOS_PREC_INTERNETCONTROL },
+ { "lowdelay", IPTOS_LOWDELAY },
+ { "netcontrol", IPTOS_PREC_NETCONTROL },
+ { "reliability", IPTOS_RELIABILITY },
+ { "throughput", IPTOS_THROUGHPUT }
+ };
+ const struct keywords *p;
+
+ p = bsearch(s, toswords, sizeof(toswords)/sizeof(toswords[0]),
+ sizeof(toswords[0]), kw_casecmp);
+
+ if (p) {
+ *val = p->k_val;
+ return (1);
+ }
+ return (0);
+}
+
+int
rt_tableid_max(void)
{
#ifdef __FreeBSD__
@@ -4313,7 +4366,7 @@ rt_tableid_max(void)
return (RT_TABLEID_MAX);
#endif
}
-#line 4317 "pfctly.tab.c"
+#line 4370 "pfctly.tab.c"
#if YYDEBUG
#include <stdio.h> /* needed for printf */
@@ -4516,11 +4569,11 @@ yyreduce:
switch (yyn)
{
case 17:
-#line 553 "../../freebsd/sbin/pfctl/parse.y"
+#line 555 "../../freebsd/sbin/pfctl/parse.y"
{ file->errors++; }
break;
case 18:
-#line 556 "../../freebsd/sbin/pfctl/parse.y"
+#line 558 "../../freebsd/sbin/pfctl/parse.y"
{
struct file *nfile;
@@ -4536,7 +4589,7 @@ case 18:
}
break;
case 25:
-#line 583 "../../freebsd/sbin/pfctl/parse.y"
+#line 585 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strcmp(yystack.l_mark[0].v.string, "none"))
yyval.v.i = 0;
@@ -4551,7 +4604,7 @@ case 25:
}
break;
case 26:
-#line 597 "../../freebsd/sbin/pfctl/parse.y"
+#line 599 "../../freebsd/sbin/pfctl/parse.y"
{
if (check_rulestate(PFCTL_STATE_OPTION)) {
free(yystack.l_mark[0].v.string);
@@ -4566,7 +4619,7 @@ case 26:
}
break;
case 27:
-#line 609 "../../freebsd/sbin/pfctl/parse.y"
+#line 611 "../../freebsd/sbin/pfctl/parse.y"
{
if (!(pf->opts & PF_OPT_OPTIMIZE)) {
pf->opts |= PF_OPT_OPTIMIZE;
@@ -4575,7 +4628,7 @@ case 27:
}
break;
case 32:
-#line 619 "../../freebsd/sbin/pfctl/parse.y"
+#line 621 "../../freebsd/sbin/pfctl/parse.y"
{
if (check_rulestate(PFCTL_STATE_OPTION)) {
free(yystack.l_mark[0].v.string);
@@ -4590,7 +4643,7 @@ case 32:
}
break;
case 33:
-#line 631 "../../freebsd/sbin/pfctl/parse.y"
+#line 633 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number == 0 || yystack.l_mark[0].v.number > UINT_MAX) {
yyerror("hostid must be non-zero");
@@ -4603,7 +4656,7 @@ case 33:
}
break;
case 34:
-#line 641 "../../freebsd/sbin/pfctl/parse.y"
+#line 643 "../../freebsd/sbin/pfctl/parse.y"
{
if (pf->opts & PF_OPT_VERBOSE)
printf("set block-policy drop\n");
@@ -4613,7 +4666,7 @@ case 34:
}
break;
case 35:
-#line 648 "../../freebsd/sbin/pfctl/parse.y"
+#line 650 "../../freebsd/sbin/pfctl/parse.y"
{
if (pf->opts & PF_OPT_VERBOSE)
printf("set block-policy return\n");
@@ -4623,7 +4676,7 @@ case 35:
}
break;
case 36:
-#line 655 "../../freebsd/sbin/pfctl/parse.y"
+#line 657 "../../freebsd/sbin/pfctl/parse.y"
{
if (pf->opts & PF_OPT_VERBOSE)
printf("set require-order %s\n",
@@ -4632,7 +4685,7 @@ case 36:
}
break;
case 37:
-#line 661 "../../freebsd/sbin/pfctl/parse.y"
+#line 663 "../../freebsd/sbin/pfctl/parse.y"
{
if (pf->opts & PF_OPT_VERBOSE)
printf("set fingerprints \"%s\"\n", yystack.l_mark[0].v.string);
@@ -4653,7 +4706,7 @@ case 37:
}
break;
case 38:
-#line 679 "../../freebsd/sbin/pfctl/parse.y"
+#line 681 "../../freebsd/sbin/pfctl/parse.y"
{
if (pf->opts & PF_OPT_VERBOSE)
switch (yystack.l_mark[0].v.i) {
@@ -4668,7 +4721,7 @@ case 38:
}
break;
case 39:
-#line 691 "../../freebsd/sbin/pfctl/parse.y"
+#line 693 "../../freebsd/sbin/pfctl/parse.y"
{
if (check_rulestate(PFCTL_STATE_OPTION)) {
free(yystack.l_mark[0].v.string);
@@ -4683,7 +4736,7 @@ case 39:
}
break;
case 40:
-#line 703 "../../freebsd/sbin/pfctl/parse.y"
+#line 705 "../../freebsd/sbin/pfctl/parse.y"
{
if (expand_skip_interface(yystack.l_mark[0].v.interface) != 0) {
yyerror("error setting skip interface(s)");
@@ -4692,7 +4745,7 @@ case 40:
}
break;
case 41:
-#line 709 "../../freebsd/sbin/pfctl/parse.y"
+#line 711 "../../freebsd/sbin/pfctl/parse.y"
{
if (keep_state_defaults != NULL) {
yyerror("cannot redefine state-defaults");
@@ -4702,11 +4755,11 @@ case 41:
}
break;
case 42:
-#line 718 "../../freebsd/sbin/pfctl/parse.y"
+#line 720 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.string = yystack.l_mark[0].v.string; }
break;
case 43:
-#line 719 "../../freebsd/sbin/pfctl/parse.y"
+#line 721 "../../freebsd/sbin/pfctl/parse.y"
{
if ((yyval.v.string = strdup("all")) == NULL) {
err(1, "stringall: strdup");
@@ -4714,7 +4767,7 @@ case 43:
}
break;
case 44:
-#line 726 "../../freebsd/sbin/pfctl/parse.y"
+#line 728 "../../freebsd/sbin/pfctl/parse.y"
{
if (asprintf(&yyval.v.string, "%s %s", yystack.l_mark[-1].v.string, yystack.l_mark[0].v.string) == -1)
err(1, "string: asprintf");
@@ -4723,7 +4776,7 @@ case 44:
}
break;
case 46:
-#line 735 "../../freebsd/sbin/pfctl/parse.y"
+#line 737 "../../freebsd/sbin/pfctl/parse.y"
{
if (asprintf(&yyval.v.string, "%s %s", yystack.l_mark[-1].v.string, yystack.l_mark[0].v.string) == -1)
err(1, "string: asprintf");
@@ -4732,7 +4785,7 @@ case 46:
}
break;
case 48:
-#line 744 "../../freebsd/sbin/pfctl/parse.y"
+#line 746 "../../freebsd/sbin/pfctl/parse.y"
{
char *s;
if (asprintf(&s, "%lld", (long long)yystack.l_mark[0].v.number) == -1) {
@@ -4743,7 +4796,7 @@ case 48:
}
break;
case 50:
-#line 755 "../../freebsd/sbin/pfctl/parse.y"
+#line 757 "../../freebsd/sbin/pfctl/parse.y"
{
if (pf->opts & PF_OPT_VERBOSE)
printf("%s = \"%s\"\n", yystack.l_mark[-2].v.string, yystack.l_mark[0].v.string);
@@ -4754,15 +4807,15 @@ case 50:
}
break;
case 51:
-#line 765 "../../freebsd/sbin/pfctl/parse.y"
+#line 767 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.string = yystack.l_mark[0].v.string; }
break;
case 52:
-#line 766 "../../freebsd/sbin/pfctl/parse.y"
+#line 768 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.string = NULL; }
break;
case 57:
-#line 776 "../../freebsd/sbin/pfctl/parse.y"
+#line 778 "../../freebsd/sbin/pfctl/parse.y"
{
char ta[PF_ANCHOR_NAME_SIZE];
struct pf_ruleset *rs;
@@ -4782,7 +4835,7 @@ case 57:
}
break;
case 58:
-#line 793 "../../freebsd/sbin/pfctl/parse.y"
+#line 795 "../../freebsd/sbin/pfctl/parse.y"
{
pf->alast = pf->anchor;
pf->asd--;
@@ -4790,7 +4843,7 @@ case 58:
}
break;
case 60:
-#line 803 "../../freebsd/sbin/pfctl/parse.y"
+#line 805 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_rule r;
struct node_proto *proto;
@@ -4925,7 +4978,7 @@ case 60:
}
break;
case 61:
-#line 935 "../../freebsd/sbin/pfctl/parse.y"
+#line 937 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_rule r;
@@ -4949,7 +5002,7 @@ case 61:
}
break;
case 62:
-#line 956 "../../freebsd/sbin/pfctl/parse.y"
+#line 958 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_rule r;
@@ -4994,7 +5047,7 @@ case 62:
}
break;
case 63:
-#line 998 "../../freebsd/sbin/pfctl/parse.y"
+#line 1000 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_rule r;
@@ -5032,7 +5085,7 @@ case 63:
}
break;
case 64:
-#line 1035 "../../freebsd/sbin/pfctl/parse.y"
+#line 1037 "../../freebsd/sbin/pfctl/parse.y"
{
struct loadanchors *loadanchor;
@@ -5065,7 +5118,7 @@ case 64:
}
break;
case 65:
-#line 1066 "../../freebsd/sbin/pfctl/parse.y"
+#line 1068 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.b.b2 = yyval.v.b.w = 0;
if (yystack.l_mark[-1].v.i)
@@ -5075,7 +5128,7 @@ case 65:
}
break;
case 66:
-#line 1076 "../../freebsd/sbin/pfctl/parse.y"
+#line 1078 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_rule r;
@@ -5133,18 +5186,18 @@ case 66:
}
break;
case 67:
-#line 1133 "../../freebsd/sbin/pfctl/parse.y"
+#line 1135 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&scrub_opts, sizeof scrub_opts);
scrub_opts.rtableid = -1;
}
break;
case 68:
-#line 1138 "../../freebsd/sbin/pfctl/parse.y"
+#line 1140 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.scrub_opts = scrub_opts; }
break;
case 69:
-#line 1139 "../../freebsd/sbin/pfctl/parse.y"
+#line 1141 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&scrub_opts, sizeof scrub_opts);
scrub_opts.rtableid = -1;
@@ -5152,7 +5205,7 @@ case 69:
}
break;
case 72:
-#line 1150 "../../freebsd/sbin/pfctl/parse.y"
+#line 1152 "../../freebsd/sbin/pfctl/parse.y"
{
if (scrub_opts.nodf) {
yyerror("no-df cannot be respecified");
@@ -5162,7 +5215,7 @@ case 72:
}
break;
case 73:
-#line 1157 "../../freebsd/sbin/pfctl/parse.y"
+#line 1159 "../../freebsd/sbin/pfctl/parse.y"
{
if (scrub_opts.marker & SOM_MINTTL) {
yyerror("min-ttl cannot be respecified");
@@ -5177,7 +5230,7 @@ case 73:
}
break;
case 74:
-#line 1169 "../../freebsd/sbin/pfctl/parse.y"
+#line 1171 "../../freebsd/sbin/pfctl/parse.y"
{
if (scrub_opts.marker & SOM_MAXMSS) {
yyerror("max-mss cannot be respecified");
@@ -5192,7 +5245,7 @@ case 74:
}
break;
case 75:
-#line 1181 "../../freebsd/sbin/pfctl/parse.y"
+#line 1183 "../../freebsd/sbin/pfctl/parse.y"
{
if (scrub_opts.marker & SOM_SETTOS) {
yyerror("set-tos cannot be respecified");
@@ -5203,7 +5256,7 @@ case 75:
}
break;
case 76:
-#line 1189 "../../freebsd/sbin/pfctl/parse.y"
+#line 1191 "../../freebsd/sbin/pfctl/parse.y"
{
if (scrub_opts.marker & SOM_FRAGCACHE) {
yyerror("fragcache cannot be respecified");
@@ -5214,7 +5267,7 @@ case 76:
}
break;
case 77:
-#line 1197 "../../freebsd/sbin/pfctl/parse.y"
+#line 1199 "../../freebsd/sbin/pfctl/parse.y"
{
if (strcasecmp(yystack.l_mark[0].v.string, "tcp") != 0) {
yyerror("scrub reassemble supports only tcp, "
@@ -5231,7 +5284,7 @@ case 77:
}
break;
case 78:
-#line 1211 "../../freebsd/sbin/pfctl/parse.y"
+#line 1213 "../../freebsd/sbin/pfctl/parse.y"
{
if (scrub_opts.randomid) {
yyerror("random-id cannot be respecified");
@@ -5241,7 +5294,7 @@ case 78:
}
break;
case 79:
-#line 1218 "../../freebsd/sbin/pfctl/parse.y"
+#line 1220 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > rt_tableid_max()) {
yyerror("invalid rtable id");
@@ -5251,26 +5304,26 @@ case 79:
}
break;
case 80:
-#line 1225 "../../freebsd/sbin/pfctl/parse.y"
+#line 1227 "../../freebsd/sbin/pfctl/parse.y"
{
scrub_opts.match_tag = yystack.l_mark[0].v.string;
scrub_opts.match_tag_not = yystack.l_mark[-2].v.number;
}
break;
case 81:
-#line 1231 "../../freebsd/sbin/pfctl/parse.y"
+#line 1233 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = 0; /* default */ }
break;
case 82:
-#line 1232 "../../freebsd/sbin/pfctl/parse.y"
+#line 1234 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = 0; }
break;
case 83:
-#line 1233 "../../freebsd/sbin/pfctl/parse.y"
+#line 1235 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = 0; }
break;
case 84:
-#line 1236 "../../freebsd/sbin/pfctl/parse.y"
+#line 1238 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_rule r;
struct node_host *h = NULL, *hh;
@@ -5358,19 +5411,19 @@ case 84:
}
break;
case 85:
-#line 1323 "../../freebsd/sbin/pfctl/parse.y"
+#line 1325 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.interface = yystack.l_mark[0].v.interface; }
break;
case 86:
-#line 1324 "../../freebsd/sbin/pfctl/parse.y"
+#line 1326 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.interface = yystack.l_mark[-1].v.interface; }
break;
case 87:
-#line 1327 "../../freebsd/sbin/pfctl/parse.y"
+#line 1329 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.interface = yystack.l_mark[-1].v.interface; }
break;
case 88:
-#line 1328 "../../freebsd/sbin/pfctl/parse.y"
+#line 1330 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.interface->tail->next = yystack.l_mark[-1].v.interface;
yystack.l_mark[-3].v.interface->tail = yystack.l_mark[-1].v.interface;
@@ -5378,29 +5431,29 @@ case 88:
}
break;
case 89:
-#line 1335 "../../freebsd/sbin/pfctl/parse.y"
+#line 1337 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.interface = yystack.l_mark[0].v.interface; }
break;
case 90:
-#line 1336 "../../freebsd/sbin/pfctl/parse.y"
+#line 1338 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-1].v.interface->dynamic = 1;
yyval.v.interface = yystack.l_mark[-1].v.interface;
}
break;
case 91:
-#line 1342 "../../freebsd/sbin/pfctl/parse.y"
+#line 1344 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&antispoof_opts, sizeof antispoof_opts);
antispoof_opts.rtableid = -1;
}
break;
case 92:
-#line 1347 "../../freebsd/sbin/pfctl/parse.y"
+#line 1349 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.antispoof_opts = antispoof_opts; }
break;
case 93:
-#line 1348 "../../freebsd/sbin/pfctl/parse.y"
+#line 1350 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&antispoof_opts, sizeof antispoof_opts);
antispoof_opts.rtableid = -1;
@@ -5408,7 +5461,7 @@ case 93:
}
break;
case 96:
-#line 1359 "../../freebsd/sbin/pfctl/parse.y"
+#line 1361 "../../freebsd/sbin/pfctl/parse.y"
{
if (antispoof_opts.label) {
yyerror("label cannot be redefined");
@@ -5418,7 +5471,7 @@ case 96:
}
break;
case 97:
-#line 1366 "../../freebsd/sbin/pfctl/parse.y"
+#line 1368 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > rt_tableid_max()) {
yyerror("invalid rtable id");
@@ -5428,15 +5481,15 @@ case 97:
}
break;
case 98:
-#line 1375 "../../freebsd/sbin/pfctl/parse.y"
+#line 1377 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.number = 1; }
break;
case 99:
-#line 1376 "../../freebsd/sbin/pfctl/parse.y"
+#line 1378 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.number = 0; }
break;
case 100:
-#line 1379 "../../freebsd/sbin/pfctl/parse.y"
+#line 1381 "../../freebsd/sbin/pfctl/parse.y"
{
struct node_host *h, *nh;
struct node_tinit *ti, *nti;
@@ -5467,18 +5520,18 @@ case 100:
}
break;
case 101:
-#line 1409 "../../freebsd/sbin/pfctl/parse.y"
+#line 1411 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&table_opts, sizeof table_opts);
SIMPLEQ_INIT(&table_opts.init_nodes);
}
break;
case 102:
-#line 1414 "../../freebsd/sbin/pfctl/parse.y"
+#line 1416 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.table_opts = table_opts; }
break;
case 103:
-#line 1416 "../../freebsd/sbin/pfctl/parse.y"
+#line 1418 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&table_opts, sizeof table_opts);
SIMPLEQ_INIT(&table_opts.init_nodes);
@@ -5486,7 +5539,7 @@ case 103:
}
break;
case 106:
-#line 1427 "../../freebsd/sbin/pfctl/parse.y"
+#line 1429 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strcmp(yystack.l_mark[0].v.string, "const"))
table_opts.flags |= PFR_TFLAG_CONST;
@@ -5503,11 +5556,11 @@ case 106:
}
break;
case 107:
-#line 1441 "../../freebsd/sbin/pfctl/parse.y"
+#line 1443 "../../freebsd/sbin/pfctl/parse.y"
{ table_opts.init_addr = 1; }
break;
case 108:
-#line 1442 "../../freebsd/sbin/pfctl/parse.y"
+#line 1444 "../../freebsd/sbin/pfctl/parse.y"
{
struct node_host *n;
struct node_tinit *ti;
@@ -5550,7 +5603,7 @@ case 108:
}
break;
case 109:
-#line 1482 "../../freebsd/sbin/pfctl/parse.y"
+#line 1484 "../../freebsd/sbin/pfctl/parse.y"
{
struct node_tinit *ti;
@@ -5563,7 +5616,7 @@ case 109:
}
break;
case 110:
-#line 1494 "../../freebsd/sbin/pfctl/parse.y"
+#line 1496 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_altq a;
@@ -5588,7 +5641,7 @@ case 110:
}
break;
case 111:
-#line 1518 "../../freebsd/sbin/pfctl/parse.y"
+#line 1520 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_altq a;
@@ -5626,7 +5679,7 @@ case 111:
}
break;
case 112:
-#line 1555 "../../freebsd/sbin/pfctl/parse.y"
+#line 1557 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&queue_opts, sizeof queue_opts);
queue_opts.priority = DEFAULT_PRIORITY;
@@ -5636,11 +5689,11 @@ case 112:
}
break;
case 113:
-#line 1563 "../../freebsd/sbin/pfctl/parse.y"
+#line 1565 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.queue_opts = queue_opts; }
break;
case 114:
-#line 1564 "../../freebsd/sbin/pfctl/parse.y"
+#line 1566 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&queue_opts, sizeof queue_opts);
queue_opts.priority = DEFAULT_PRIORITY;
@@ -5651,7 +5704,7 @@ case 114:
}
break;
case 117:
-#line 1578 "../../freebsd/sbin/pfctl/parse.y"
+#line 1580 "../../freebsd/sbin/pfctl/parse.y"
{
if (queue_opts.marker & QOM_BWSPEC) {
yyerror("bandwidth cannot be respecified");
@@ -5662,7 +5715,7 @@ case 117:
}
break;
case 118:
-#line 1586 "../../freebsd/sbin/pfctl/parse.y"
+#line 1588 "../../freebsd/sbin/pfctl/parse.y"
{
if (queue_opts.marker & QOM_PRIORITY) {
yyerror("priority cannot be respecified");
@@ -5677,7 +5730,7 @@ case 118:
}
break;
case 119:
-#line 1598 "../../freebsd/sbin/pfctl/parse.y"
+#line 1600 "../../freebsd/sbin/pfctl/parse.y"
{
if (queue_opts.marker & QOM_QLIMIT) {
yyerror("qlimit cannot be respecified");
@@ -5692,7 +5745,7 @@ case 119:
}
break;
case 120:
-#line 1610 "../../freebsd/sbin/pfctl/parse.y"
+#line 1612 "../../freebsd/sbin/pfctl/parse.y"
{
if (queue_opts.marker & QOM_SCHEDULER) {
yyerror("scheduler cannot be respecified");
@@ -5703,7 +5756,7 @@ case 120:
}
break;
case 121:
-#line 1618 "../../freebsd/sbin/pfctl/parse.y"
+#line 1620 "../../freebsd/sbin/pfctl/parse.y"
{
if (queue_opts.marker & QOM_TBRSIZE) {
yyerror("tbrsize cannot be respecified");
@@ -5718,7 +5771,7 @@ case 121:
}
break;
case 122:
-#line 1632 "../../freebsd/sbin/pfctl/parse.y"
+#line 1634 "../../freebsd/sbin/pfctl/parse.y"
{
double bps;
char *cp;
@@ -5764,7 +5817,7 @@ case 122:
}
break;
case 123:
-#line 1675 "../../freebsd/sbin/pfctl/parse.y"
+#line 1677 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > UINT_MAX) {
yyerror("bandwidth number too big");
@@ -5775,35 +5828,35 @@ case 123:
}
break;
case 124:
-#line 1685 "../../freebsd/sbin/pfctl/parse.y"
+#line 1687 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue_options.qtype = ALTQT_CBQ;
yyval.v.queue_options.data.cbq_opts.flags = 0;
}
break;
case 125:
-#line 1689 "../../freebsd/sbin/pfctl/parse.y"
+#line 1691 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue_options.qtype = ALTQT_CBQ;
yyval.v.queue_options.data.cbq_opts.flags = yystack.l_mark[-1].v.number;
}
break;
case 126:
-#line 1693 "../../freebsd/sbin/pfctl/parse.y"
+#line 1695 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue_options.qtype = ALTQT_PRIQ;
yyval.v.queue_options.data.priq_opts.flags = 0;
}
break;
case 127:
-#line 1697 "../../freebsd/sbin/pfctl/parse.y"
+#line 1699 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue_options.qtype = ALTQT_PRIQ;
yyval.v.queue_options.data.priq_opts.flags = yystack.l_mark[-1].v.number;
}
break;
case 128:
-#line 1701 "../../freebsd/sbin/pfctl/parse.y"
+#line 1703 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue_options.qtype = ALTQT_HFSC;
bzero(&yyval.v.queue_options.data.hfsc_opts,
@@ -5811,14 +5864,14 @@ case 128:
}
break;
case 129:
-#line 1706 "../../freebsd/sbin/pfctl/parse.y"
+#line 1708 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue_options.qtype = ALTQT_HFSC;
yyval.v.queue_options.data.hfsc_opts = yystack.l_mark[-1].v.hfsc_opts;
}
break;
case 130:
-#line 1710 "../../freebsd/sbin/pfctl/parse.y"
+#line 1712 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue_options.qtype = ALTQT_FAIRQ;
bzero(&yyval.v.queue_options.data.fairq_opts,
@@ -5826,14 +5879,14 @@ case 130:
}
break;
case 131:
-#line 1715 "../../freebsd/sbin/pfctl/parse.y"
+#line 1717 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue_options.qtype = ALTQT_FAIRQ;
yyval.v.queue_options.data.fairq_opts = yystack.l_mark[-1].v.fairq_opts;
}
break;
case 132:
-#line 1719 "../../freebsd/sbin/pfctl/parse.y"
+#line 1721 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue_options.qtype = ALTQT_CODEL;
bzero(&yyval.v.queue_options.data.codel_opts,
@@ -5841,22 +5894,22 @@ case 132:
}
break;
case 133:
-#line 1724 "../../freebsd/sbin/pfctl/parse.y"
+#line 1726 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue_options.qtype = ALTQT_CODEL;
yyval.v.queue_options.data.codel_opts = yystack.l_mark[-1].v.codel_opts;
}
break;
case 134:
-#line 1730 "../../freebsd/sbin/pfctl/parse.y"
+#line 1732 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.number |= yystack.l_mark[0].v.number; }
break;
case 135:
-#line 1731 "../../freebsd/sbin/pfctl/parse.y"
+#line 1733 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.number |= yystack.l_mark[0].v.number; }
break;
case 136:
-#line 1734 "../../freebsd/sbin/pfctl/parse.y"
+#line 1736 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strcmp(yystack.l_mark[0].v.string, "default"))
yyval.v.number = CBQCLF_DEFCLASS;
@@ -5879,15 +5932,15 @@ case 136:
}
break;
case 137:
-#line 1756 "../../freebsd/sbin/pfctl/parse.y"
+#line 1758 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.number |= yystack.l_mark[0].v.number; }
break;
case 138:
-#line 1757 "../../freebsd/sbin/pfctl/parse.y"
+#line 1759 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.number |= yystack.l_mark[0].v.number; }
break;
case 139:
-#line 1760 "../../freebsd/sbin/pfctl/parse.y"
+#line 1762 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strcmp(yystack.l_mark[0].v.string, "default"))
yyval.v.number = PRCF_DEFAULTCLASS;
@@ -5908,20 +5961,20 @@ case 139:
}
break;
case 140:
-#line 1780 "../../freebsd/sbin/pfctl/parse.y"
+#line 1782 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&hfsc_opts,
sizeof(struct node_hfsc_opts));
}
break;
case 141:
-#line 1784 "../../freebsd/sbin/pfctl/parse.y"
+#line 1786 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.hfsc_opts = hfsc_opts;
}
break;
case 144:
-#line 1793 "../../freebsd/sbin/pfctl/parse.y"
+#line 1795 "../../freebsd/sbin/pfctl/parse.y"
{
if (hfsc_opts.linkshare.used) {
yyerror("linkshare already specified");
@@ -5932,7 +5985,7 @@ case 144:
}
break;
case 145:
-#line 1802 "../../freebsd/sbin/pfctl/parse.y"
+#line 1804 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-3].v.number < 0 || yystack.l_mark[-3].v.number > INT_MAX) {
yyerror("timing in curve out of range");
@@ -5949,7 +6002,7 @@ case 145:
}
break;
case 146:
-#line 1816 "../../freebsd/sbin/pfctl/parse.y"
+#line 1818 "../../freebsd/sbin/pfctl/parse.y"
{
if (hfsc_opts.realtime.used) {
yyerror("realtime already specified");
@@ -5960,7 +6013,7 @@ case 146:
}
break;
case 147:
-#line 1825 "../../freebsd/sbin/pfctl/parse.y"
+#line 1827 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-3].v.number < 0 || yystack.l_mark[-3].v.number > INT_MAX) {
yyerror("timing in curve out of range");
@@ -5977,7 +6030,7 @@ case 147:
}
break;
case 148:
-#line 1839 "../../freebsd/sbin/pfctl/parse.y"
+#line 1841 "../../freebsd/sbin/pfctl/parse.y"
{
if (hfsc_opts.upperlimit.used) {
yyerror("upperlimit already specified");
@@ -5988,7 +6041,7 @@ case 148:
}
break;
case 149:
-#line 1848 "../../freebsd/sbin/pfctl/parse.y"
+#line 1850 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-3].v.number < 0 || yystack.l_mark[-3].v.number > INT_MAX) {
yyerror("timing in curve out of range");
@@ -6005,7 +6058,7 @@ case 149:
}
break;
case 150:
-#line 1862 "../../freebsd/sbin/pfctl/parse.y"
+#line 1864 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strcmp(yystack.l_mark[0].v.string, "default"))
hfsc_opts.flags |= HFCF_DEFAULTCLASS;
@@ -6026,20 +6079,20 @@ case 150:
}
break;
case 151:
-#line 1882 "../../freebsd/sbin/pfctl/parse.y"
+#line 1884 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&fairq_opts,
sizeof(struct node_fairq_opts));
}
break;
case 152:
-#line 1886 "../../freebsd/sbin/pfctl/parse.y"
+#line 1888 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.fairq_opts = fairq_opts;
}
break;
case 155:
-#line 1895 "../../freebsd/sbin/pfctl/parse.y"
+#line 1897 "../../freebsd/sbin/pfctl/parse.y"
{
if (fairq_opts.linkshare.used) {
yyerror("linkshare already specified");
@@ -6050,7 +6103,7 @@ case 155:
}
break;
case 156:
-#line 1903 "../../freebsd/sbin/pfctl/parse.y"
+#line 1905 "../../freebsd/sbin/pfctl/parse.y"
{
if (fairq_opts.linkshare.used) {
yyerror("linkshare already specified");
@@ -6063,19 +6116,19 @@ case 156:
}
break;
case 157:
-#line 1913 "../../freebsd/sbin/pfctl/parse.y"
+#line 1915 "../../freebsd/sbin/pfctl/parse.y"
{
fairq_opts.hogs_bw = yystack.l_mark[0].v.queue_bwspec;
}
break;
case 158:
-#line 1916 "../../freebsd/sbin/pfctl/parse.y"
+#line 1918 "../../freebsd/sbin/pfctl/parse.y"
{
fairq_opts.nbuckets = yystack.l_mark[0].v.number;
}
break;
case 159:
-#line 1919 "../../freebsd/sbin/pfctl/parse.y"
+#line 1921 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strcmp(yystack.l_mark[0].v.string, "default"))
fairq_opts.flags |= FARF_DEFAULTCLASS;
@@ -6096,20 +6149,20 @@ case 159:
}
break;
case 160:
-#line 1939 "../../freebsd/sbin/pfctl/parse.y"
+#line 1941 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&codel_opts,
sizeof(struct codel_opts));
}
break;
case 161:
-#line 1943 "../../freebsd/sbin/pfctl/parse.y"
+#line 1945 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.codel_opts = codel_opts;
}
break;
case 164:
-#line 1952 "../../freebsd/sbin/pfctl/parse.y"
+#line 1954 "../../freebsd/sbin/pfctl/parse.y"
{
if (codel_opts.interval) {
yyerror("interval already specified");
@@ -6119,7 +6172,7 @@ case 164:
}
break;
case 165:
-#line 1959 "../../freebsd/sbin/pfctl/parse.y"
+#line 1961 "../../freebsd/sbin/pfctl/parse.y"
{
if (codel_opts.target) {
yyerror("target already specified");
@@ -6129,7 +6182,7 @@ case 165:
}
break;
case 166:
-#line 1966 "../../freebsd/sbin/pfctl/parse.y"
+#line 1968 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strcmp(yystack.l_mark[0].v.string, "ecn"))
codel_opts.ecn = 1;
@@ -6142,23 +6195,23 @@ case 166:
}
break;
case 167:
-#line 1978 "../../freebsd/sbin/pfctl/parse.y"
+#line 1980 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.queue = NULL; }
break;
case 168:
-#line 1979 "../../freebsd/sbin/pfctl/parse.y"
+#line 1981 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.queue = yystack.l_mark[0].v.queue; }
break;
case 169:
-#line 1980 "../../freebsd/sbin/pfctl/parse.y"
+#line 1982 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.queue = yystack.l_mark[-1].v.queue; }
break;
case 170:
-#line 1983 "../../freebsd/sbin/pfctl/parse.y"
+#line 1985 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.queue = yystack.l_mark[-1].v.queue; }
break;
case 171:
-#line 1984 "../../freebsd/sbin/pfctl/parse.y"
+#line 1986 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.queue->tail->next = yystack.l_mark[-1].v.queue;
yystack.l_mark[-3].v.queue->tail = yystack.l_mark[-1].v.queue;
@@ -6166,7 +6219,7 @@ case 171:
}
break;
case 172:
-#line 1991 "../../freebsd/sbin/pfctl/parse.y"
+#line 1993 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.queue = calloc(1, sizeof(struct node_queue));
if (yyval.v.queue == NULL)
@@ -6185,7 +6238,7 @@ case 172:
}
break;
case 173:
-#line 2011 "../../freebsd/sbin/pfctl/parse.y"
+#line 2013 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_rule r;
struct node_state_opt *o;
@@ -6524,7 +6577,7 @@ case 173:
memcpy(&r.rpool.key, yystack.l_mark[-4].v.route.key,
sizeof(struct pf_poolhashkey));
}
- if (r.rt && r.rt != PF_FASTROUTE) {
+ if (r.rt) {
decide_address_family(yystack.l_mark[-4].v.route.host, &r.af);
remove_invalid_hosts(&yystack.l_mark[-4].v.route.host, &r.af);
if (yystack.l_mark[-4].v.route.host == NULL) {
@@ -6610,18 +6663,18 @@ case 173:
}
break;
case 174:
-#line 2435 "../../freebsd/sbin/pfctl/parse.y"
+#line 2437 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&filter_opts, sizeof filter_opts);
filter_opts.rtableid = -1;
}
break;
case 175:
-#line 2440 "../../freebsd/sbin/pfctl/parse.y"
+#line 2442 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.filter_opts = filter_opts; }
break;
case 176:
-#line 2441 "../../freebsd/sbin/pfctl/parse.y"
+#line 2443 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&filter_opts, sizeof filter_opts);
filter_opts.rtableid = -1;
@@ -6629,7 +6682,7 @@ case 176:
}
break;
case 179:
-#line 2452 "../../freebsd/sbin/pfctl/parse.y"
+#line 2454 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.uid)
yystack.l_mark[0].v.uid->tail->next = filter_opts.uid;
@@ -6637,7 +6690,7 @@ case 179:
}
break;
case 180:
-#line 2457 "../../freebsd/sbin/pfctl/parse.y"
+#line 2459 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.gid)
yystack.l_mark[0].v.gid->tail->next = filter_opts.gid;
@@ -6645,7 +6698,7 @@ case 180:
}
break;
case 181:
-#line 2462 "../../freebsd/sbin/pfctl/parse.y"
+#line 2464 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.marker & FOM_FLAGS) {
yyerror("flags cannot be redefined");
@@ -6659,7 +6712,7 @@ case 181:
}
break;
case 182:
-#line 2473 "../../freebsd/sbin/pfctl/parse.y"
+#line 2475 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.marker & FOM_ICMP) {
yyerror("icmp-type cannot be redefined");
@@ -6670,7 +6723,7 @@ case 182:
}
break;
case 183:
-#line 2481 "../../freebsd/sbin/pfctl/parse.y"
+#line 2483 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.marker & FOM_PRIO) {
yyerror("prio cannot be redefined");
@@ -6685,7 +6738,7 @@ case 183:
}
break;
case 184:
-#line 2493 "../../freebsd/sbin/pfctl/parse.y"
+#line 2495 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.marker & FOM_TOS) {
yyerror("tos cannot be redefined");
@@ -6696,7 +6749,7 @@ case 184:
}
break;
case 185:
-#line 2501 "../../freebsd/sbin/pfctl/parse.y"
+#line 2503 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.marker & FOM_KEEP) {
yyerror("modulate or keep cannot be redefined");
@@ -6708,19 +6761,19 @@ case 185:
}
break;
case 186:
-#line 2510 "../../freebsd/sbin/pfctl/parse.y"
+#line 2512 "../../freebsd/sbin/pfctl/parse.y"
{
filter_opts.fragment = 1;
}
break;
case 187:
-#line 2513 "../../freebsd/sbin/pfctl/parse.y"
+#line 2515 "../../freebsd/sbin/pfctl/parse.y"
{
filter_opts.allowopts = 1;
}
break;
case 188:
-#line 2516 "../../freebsd/sbin/pfctl/parse.y"
+#line 2518 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.label) {
yyerror("label cannot be redefined");
@@ -6730,7 +6783,7 @@ case 188:
}
break;
case 189:
-#line 2523 "../../freebsd/sbin/pfctl/parse.y"
+#line 2525 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.queues.qname) {
yyerror("queue cannot be redefined");
@@ -6740,20 +6793,20 @@ case 189:
}
break;
case 190:
-#line 2530 "../../freebsd/sbin/pfctl/parse.y"
+#line 2532 "../../freebsd/sbin/pfctl/parse.y"
{
filter_opts.tag = yystack.l_mark[0].v.string;
}
break;
case 191:
-#line 2533 "../../freebsd/sbin/pfctl/parse.y"
+#line 2535 "../../freebsd/sbin/pfctl/parse.y"
{
filter_opts.match_tag = yystack.l_mark[0].v.string;
filter_opts.match_tag_not = yystack.l_mark[-2].v.number;
}
break;
case 192:
-#line 2537 "../../freebsd/sbin/pfctl/parse.y"
+#line 2539 "../../freebsd/sbin/pfctl/parse.y"
{
double p;
@@ -6768,7 +6821,7 @@ case 192:
}
break;
case 193:
-#line 2549 "../../freebsd/sbin/pfctl/parse.y"
+#line 2551 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > rt_tableid_max()) {
yyerror("invalid rtable id");
@@ -6778,7 +6831,7 @@ case 193:
}
break;
case 194:
-#line 2556 "../../freebsd/sbin/pfctl/parse.y"
+#line 2558 "../../freebsd/sbin/pfctl/parse.y"
{
#ifdef __FreeBSD__
filter_opts.divert.port = yystack.l_mark[0].v.range.a;
@@ -6790,7 +6843,7 @@ case 194:
}
break;
case 195:
-#line 2565 "../../freebsd/sbin/pfctl/parse.y"
+#line 2567 "../../freebsd/sbin/pfctl/parse.y"
{
#ifndef __FreeBSD__
if ((filter_opts.divert.addr = host(yystack.l_mark[-2].v.string)) == NULL) {
@@ -6811,7 +6864,7 @@ case 195:
}
break;
case 196:
-#line 2583 "../../freebsd/sbin/pfctl/parse.y"
+#line 2585 "../../freebsd/sbin/pfctl/parse.y"
{
#ifdef __FreeBSD__
yyerror("divert-reply has no meaning in FreeBSD pf(4)");
@@ -6822,15 +6875,15 @@ case 196:
}
break;
case 198:
-#line 2594 "../../freebsd/sbin/pfctl/parse.y"
+#line 2596 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.filter_opts = filter_opts; }
break;
case 199:
-#line 2595 "../../freebsd/sbin/pfctl/parse.y"
+#line 2597 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.filter_opts = filter_opts; }
break;
case 202:
-#line 2602 "../../freebsd/sbin/pfctl/parse.y"
+#line 2604 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.marker & FOM_SETPRIO) {
yyerror("prio cannot be redefined");
@@ -6842,7 +6895,7 @@ case 202:
}
break;
case 203:
-#line 2611 "../../freebsd/sbin/pfctl/parse.y"
+#line 2613 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > PF_PRIO_MAX) {
yyerror("prio must be 0 - %u", PF_PRIO_MAX);
@@ -6852,7 +6905,7 @@ case 203:
}
break;
case 204:
-#line 2618 "../../freebsd/sbin/pfctl/parse.y"
+#line 2620 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-3].v.number < 0 || yystack.l_mark[-3].v.number > PF_PRIO_MAX ||
yystack.l_mark[-1].v.number < 0 || yystack.l_mark[-1].v.number > PF_PRIO_MAX) {
@@ -6864,7 +6917,7 @@ case 204:
}
break;
case 205:
-#line 2629 "../../freebsd/sbin/pfctl/parse.y"
+#line 2631 "../../freebsd/sbin/pfctl/parse.y"
{
char *e;
double p = strtod(yystack.l_mark[0].v.string, &e);
@@ -6883,21 +6936,21 @@ case 205:
}
break;
case 206:
-#line 2645 "../../freebsd/sbin/pfctl/parse.y"
+#line 2647 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.probability = (double)yystack.l_mark[0].v.number;
}
break;
case 207:
-#line 2651 "../../freebsd/sbin/pfctl/parse.y"
+#line 2653 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.b.b1 = PF_PASS; yyval.v.b.b2 = yyval.v.b.w = 0; }
break;
case 208:
-#line 2652 "../../freebsd/sbin/pfctl/parse.y"
+#line 2654 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.b = yystack.l_mark[0].v.b; yyval.v.b.b1 = PF_DROP; }
break;
case 209:
-#line 2655 "../../freebsd/sbin/pfctl/parse.y"
+#line 2657 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.b.b2 = blockpolicy;
yyval.v.b.w = returnicmpdefault;
@@ -6905,7 +6958,7 @@ case 209:
}
break;
case 210:
-#line 2660 "../../freebsd/sbin/pfctl/parse.y"
+#line 2662 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.b.b2 = PFRULE_DROP;
yyval.v.b.w = 0;
@@ -6913,7 +6966,7 @@ case 210:
}
break;
case 211:
-#line 2665 "../../freebsd/sbin/pfctl/parse.y"
+#line 2667 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.b.b2 = PFRULE_RETURNRST;
yyval.v.b.w = 0;
@@ -6921,7 +6974,7 @@ case 211:
}
break;
case 212:
-#line 2670 "../../freebsd/sbin/pfctl/parse.y"
+#line 2672 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-1].v.number < 0 || yystack.l_mark[-1].v.number > 255) {
yyerror("illegal ttl value %d", yystack.l_mark[-1].v.number);
@@ -6933,7 +6986,7 @@ case 212:
}
break;
case 213:
-#line 2679 "../../freebsd/sbin/pfctl/parse.y"
+#line 2681 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.b.b2 = PFRULE_RETURNICMP;
yyval.v.b.w = returnicmpdefault;
@@ -6941,7 +6994,7 @@ case 213:
}
break;
case 214:
-#line 2684 "../../freebsd/sbin/pfctl/parse.y"
+#line 2686 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.b.b2 = PFRULE_RETURNICMP;
yyval.v.b.w = returnicmpdefault;
@@ -6949,7 +7002,7 @@ case 214:
}
break;
case 215:
-#line 2689 "../../freebsd/sbin/pfctl/parse.y"
+#line 2691 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.b.b2 = PFRULE_RETURNICMP;
yyval.v.b.w = yystack.l_mark[-1].v.number;
@@ -6957,7 +7010,7 @@ case 215:
}
break;
case 216:
-#line 2694 "../../freebsd/sbin/pfctl/parse.y"
+#line 2696 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.b.b2 = PFRULE_RETURNICMP;
yyval.v.b.w = returnicmpdefault;
@@ -6965,7 +7018,7 @@ case 216:
}
break;
case 217:
-#line 2699 "../../freebsd/sbin/pfctl/parse.y"
+#line 2701 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.b.b2 = PFRULE_RETURNICMP;
yyval.v.b.w = yystack.l_mark[-3].v.number;
@@ -6973,7 +7026,7 @@ case 217:
}
break;
case 218:
-#line 2704 "../../freebsd/sbin/pfctl/parse.y"
+#line 2706 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.b.b2 = PFRULE_RETURN;
yyval.v.b.w = returnicmpdefault;
@@ -6981,7 +7034,7 @@ case 218:
}
break;
case 219:
-#line 2711 "../../freebsd/sbin/pfctl/parse.y"
+#line 2713 "../../freebsd/sbin/pfctl/parse.y"
{
if (!(yyval.v.number = parseicmpspec(yystack.l_mark[0].v.string, AF_INET))) {
free(yystack.l_mark[0].v.string);
@@ -6991,7 +7044,7 @@ case 219:
}
break;
case 220:
-#line 2718 "../../freebsd/sbin/pfctl/parse.y"
+#line 2720 "../../freebsd/sbin/pfctl/parse.y"
{
u_int8_t icmptype;
@@ -7004,7 +7057,7 @@ case 220:
}
break;
case 221:
-#line 2730 "../../freebsd/sbin/pfctl/parse.y"
+#line 2732 "../../freebsd/sbin/pfctl/parse.y"
{
if (!(yyval.v.number = parseicmpspec(yystack.l_mark[0].v.string, AF_INET6))) {
free(yystack.l_mark[0].v.string);
@@ -7014,7 +7067,7 @@ case 221:
}
break;
case 222:
-#line 2737 "../../freebsd/sbin/pfctl/parse.y"
+#line 2739 "../../freebsd/sbin/pfctl/parse.y"
{
u_int8_t icmptype;
@@ -7027,62 +7080,62 @@ case 222:
}
break;
case 223:
-#line 2749 "../../freebsd/sbin/pfctl/parse.y"
+#line 2751 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_INOUT; }
break;
case 224:
-#line 2750 "../../freebsd/sbin/pfctl/parse.y"
+#line 2752 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_IN; }
break;
case 225:
-#line 2751 "../../freebsd/sbin/pfctl/parse.y"
+#line 2753 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_OUT; }
break;
case 226:
-#line 2754 "../../freebsd/sbin/pfctl/parse.y"
+#line 2756 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick.quick = 0; }
break;
case 227:
-#line 2755 "../../freebsd/sbin/pfctl/parse.y"
+#line 2757 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick.quick = 1; }
break;
case 228:
-#line 2758 "../../freebsd/sbin/pfctl/parse.y"
+#line 2760 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick.log = 0; yyval.v.logquick.quick = 0; yyval.v.logquick.logif = 0; }
break;
case 229:
-#line 2759 "../../freebsd/sbin/pfctl/parse.y"
+#line 2761 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick = yystack.l_mark[0].v.logquick; yyval.v.logquick.quick = 0; }
break;
case 230:
-#line 2760 "../../freebsd/sbin/pfctl/parse.y"
+#line 2762 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick.quick = 1; yyval.v.logquick.log = 0; yyval.v.logquick.logif = 0; }
break;
case 231:
-#line 2761 "../../freebsd/sbin/pfctl/parse.y"
+#line 2763 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick = yystack.l_mark[-1].v.logquick; yyval.v.logquick.quick = 1; }
break;
case 232:
-#line 2762 "../../freebsd/sbin/pfctl/parse.y"
+#line 2764 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick = yystack.l_mark[0].v.logquick; yyval.v.logquick.quick = 1; }
break;
case 233:
-#line 2765 "../../freebsd/sbin/pfctl/parse.y"
+#line 2767 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick.log = PF_LOG; yyval.v.logquick.logif = 0; }
break;
case 234:
-#line 2766 "../../freebsd/sbin/pfctl/parse.y"
+#line 2768 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.logquick.log = PF_LOG | yystack.l_mark[-1].v.logquick.log;
yyval.v.logquick.logif = yystack.l_mark[-1].v.logquick.logif;
}
break;
case 235:
-#line 2772 "../../freebsd/sbin/pfctl/parse.y"
+#line 2774 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick = yystack.l_mark[0].v.logquick; }
break;
case 236:
-#line 2773 "../../freebsd/sbin/pfctl/parse.y"
+#line 2775 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.logquick.log = yystack.l_mark[-2].v.logquick.log | yystack.l_mark[0].v.logquick.log;
yyval.v.logquick.logif = yystack.l_mark[0].v.logquick.logif;
@@ -7091,19 +7144,19 @@ case 236:
}
break;
case 237:
-#line 2781 "../../freebsd/sbin/pfctl/parse.y"
+#line 2783 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick.log = PF_LOG_ALL; yyval.v.logquick.logif = 0; }
break;
case 238:
-#line 2782 "../../freebsd/sbin/pfctl/parse.y"
+#line 2784 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick.log = PF_LOG_SOCKET_LOOKUP; yyval.v.logquick.logif = 0; }
break;
case 239:
-#line 2783 "../../freebsd/sbin/pfctl/parse.y"
+#line 2785 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.logquick.log = PF_LOG_SOCKET_LOOKUP; yyval.v.logquick.logif = 0; }
break;
case 240:
-#line 2784 "../../freebsd/sbin/pfctl/parse.y"
+#line 2786 "../../freebsd/sbin/pfctl/parse.y"
{
const char *errstr;
u_int i;
@@ -7125,23 +7178,23 @@ case 240:
}
break;
case 241:
-#line 2805 "../../freebsd/sbin/pfctl/parse.y"
+#line 2807 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.interface = NULL; }
break;
case 242:
-#line 2806 "../../freebsd/sbin/pfctl/parse.y"
+#line 2808 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.interface = yystack.l_mark[0].v.interface; }
break;
case 243:
-#line 2807 "../../freebsd/sbin/pfctl/parse.y"
+#line 2809 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.interface = yystack.l_mark[-1].v.interface; }
break;
case 244:
-#line 2810 "../../freebsd/sbin/pfctl/parse.y"
+#line 2812 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.interface = yystack.l_mark[-1].v.interface; }
break;
case 245:
-#line 2811 "../../freebsd/sbin/pfctl/parse.y"
+#line 2813 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.interface->tail->next = yystack.l_mark[-1].v.interface;
yystack.l_mark[-3].v.interface->tail = yystack.l_mark[-1].v.interface;
@@ -7149,11 +7202,11 @@ case 245:
}
break;
case 246:
-#line 2818 "../../freebsd/sbin/pfctl/parse.y"
+#line 2820 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.interface = yystack.l_mark[0].v.interface; yyval.v.interface->not = yystack.l_mark[-1].v.number; }
break;
case 247:
-#line 2821 "../../freebsd/sbin/pfctl/parse.y"
+#line 2823 "../../freebsd/sbin/pfctl/parse.y"
{
struct node_host *n;
@@ -7178,35 +7231,35 @@ case 247:
}
break;
case 248:
-#line 2845 "../../freebsd/sbin/pfctl/parse.y"
+#line 2847 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = 0; }
break;
case 249:
-#line 2846 "../../freebsd/sbin/pfctl/parse.y"
+#line 2848 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = AF_INET; }
break;
case 250:
-#line 2847 "../../freebsd/sbin/pfctl/parse.y"
+#line 2849 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = AF_INET6; }
break;
case 251:
-#line 2850 "../../freebsd/sbin/pfctl/parse.y"
+#line 2852 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.proto = NULL; }
break;
case 252:
-#line 2851 "../../freebsd/sbin/pfctl/parse.y"
+#line 2853 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.proto = yystack.l_mark[0].v.proto; }
break;
case 253:
-#line 2852 "../../freebsd/sbin/pfctl/parse.y"
+#line 2854 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.proto = yystack.l_mark[-1].v.proto; }
break;
case 254:
-#line 2855 "../../freebsd/sbin/pfctl/parse.y"
+#line 2857 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.proto = yystack.l_mark[-1].v.proto; }
break;
case 255:
-#line 2856 "../../freebsd/sbin/pfctl/parse.y"
+#line 2858 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.proto->tail->next = yystack.l_mark[-1].v.proto;
yystack.l_mark[-3].v.proto->tail = yystack.l_mark[-1].v.proto;
@@ -7214,7 +7267,7 @@ case 255:
}
break;
case 256:
-#line 2863 "../../freebsd/sbin/pfctl/parse.y"
+#line 2865 "../../freebsd/sbin/pfctl/parse.y"
{
u_int8_t pr;
@@ -7232,7 +7285,7 @@ case 256:
}
break;
case 257:
-#line 2880 "../../freebsd/sbin/pfctl/parse.y"
+#line 2882 "../../freebsd/sbin/pfctl/parse.y"
{
struct protoent *p;
@@ -7247,7 +7300,7 @@ case 257:
}
break;
case 258:
-#line 2892 "../../freebsd/sbin/pfctl/parse.y"
+#line 2894 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > 255) {
yyerror("protocol outside range");
@@ -7256,7 +7309,7 @@ case 258:
}
break;
case 259:
-#line 2900 "../../freebsd/sbin/pfctl/parse.y"
+#line 2902 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.fromto.src.host = NULL;
yyval.v.fromto.src.port = NULL;
@@ -7266,7 +7319,7 @@ case 259:
}
break;
case 260:
-#line 2907 "../../freebsd/sbin/pfctl/parse.y"
+#line 2909 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.fromto.src = yystack.l_mark[-2].v.peer;
yyval.v.fromto.src_os = yystack.l_mark[-1].v.os;
@@ -7274,19 +7327,19 @@ case 260:
}
break;
case 261:
-#line 2914 "../../freebsd/sbin/pfctl/parse.y"
+#line 2916 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.os = NULL; }
break;
case 262:
-#line 2915 "../../freebsd/sbin/pfctl/parse.y"
+#line 2917 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.os = yystack.l_mark[0].v.os; }
break;
case 263:
-#line 2916 "../../freebsd/sbin/pfctl/parse.y"
+#line 2918 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.os = yystack.l_mark[-1].v.os; }
break;
case 264:
-#line 2919 "../../freebsd/sbin/pfctl/parse.y"
+#line 2921 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.os = calloc(1, sizeof(struct node_os));
if (yyval.v.os == NULL)
@@ -7296,11 +7349,11 @@ case 264:
}
break;
case 265:
-#line 2928 "../../freebsd/sbin/pfctl/parse.y"
+#line 2930 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.os = yystack.l_mark[-1].v.os; }
break;
case 266:
-#line 2929 "../../freebsd/sbin/pfctl/parse.y"
+#line 2931 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.os->tail->next = yystack.l_mark[-1].v.os;
yystack.l_mark[-3].v.os->tail = yystack.l_mark[-1].v.os;
@@ -7308,27 +7361,27 @@ case 266:
}
break;
case 267:
-#line 2936 "../../freebsd/sbin/pfctl/parse.y"
+#line 2938 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.peer.host = NULL;
yyval.v.peer.port = NULL;
}
break;
case 268:
-#line 2940 "../../freebsd/sbin/pfctl/parse.y"
+#line 2942 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.peer = yystack.l_mark[0].v.peer;
}
break;
case 269:
-#line 2945 "../../freebsd/sbin/pfctl/parse.y"
+#line 2947 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.peer.host = NULL;
yyval.v.peer.port = NULL;
}
break;
case 270:
-#line 2949 "../../freebsd/sbin/pfctl/parse.y"
+#line 2951 "../../freebsd/sbin/pfctl/parse.y"
{
if (disallow_urpf_failed(yystack.l_mark[0].v.peer.host, "\"urpf-failed\" is "
"not permitted in a destination address"))
@@ -7337,52 +7390,52 @@ case 270:
}
break;
case 271:
-#line 2957 "../../freebsd/sbin/pfctl/parse.y"
+#line 2959 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.peer.host = yystack.l_mark[0].v.host;
yyval.v.peer.port = NULL;
}
break;
case 272:
-#line 2961 "../../freebsd/sbin/pfctl/parse.y"
+#line 2963 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.peer.host = yystack.l_mark[-2].v.host;
yyval.v.peer.port = yystack.l_mark[0].v.port;
}
break;
case 273:
-#line 2965 "../../freebsd/sbin/pfctl/parse.y"
+#line 2967 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.peer.host = NULL;
yyval.v.peer.port = yystack.l_mark[0].v.port;
}
break;
case 276:
-#line 2975 "../../freebsd/sbin/pfctl/parse.y"
+#line 2977 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = NULL; }
break;
case 277:
-#line 2976 "../../freebsd/sbin/pfctl/parse.y"
+#line 2978 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = yystack.l_mark[0].v.host; }
break;
case 278:
-#line 2977 "../../freebsd/sbin/pfctl/parse.y"
+#line 2979 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = yystack.l_mark[-1].v.host; }
break;
case 279:
-#line 2980 "../../freebsd/sbin/pfctl/parse.y"
+#line 2982 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = yystack.l_mark[0].v.host; }
break;
case 280:
-#line 2981 "../../freebsd/sbin/pfctl/parse.y"
+#line 2983 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = NULL; }
break;
case 281:
-#line 2984 "../../freebsd/sbin/pfctl/parse.y"
+#line 2986 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = yystack.l_mark[-1].v.host; }
break;
case 282:
-#line 2985 "../../freebsd/sbin/pfctl/parse.y"
+#line 2987 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-1].v.host == NULL)
yyval.v.host = yystack.l_mark[-3].v.host;
@@ -7396,7 +7449,7 @@ case 282:
}
break;
case 283:
-#line 2998 "../../freebsd/sbin/pfctl/parse.y"
+#line 3000 "../../freebsd/sbin/pfctl/parse.y"
{
struct node_host *n;
@@ -7406,7 +7459,7 @@ case 283:
}
break;
case 284:
-#line 3005 "../../freebsd/sbin/pfctl/parse.y"
+#line 3007 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.host = calloc(1, sizeof(struct node_host));
if (yyval.v.host == NULL)
@@ -7418,7 +7471,7 @@ case 284:
}
break;
case 285:
-#line 3014 "../../freebsd/sbin/pfctl/parse.y"
+#line 3016 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.host = calloc(1, sizeof(struct node_host));
if (yyval.v.host == NULL)
@@ -7430,7 +7483,7 @@ case 285:
}
break;
case 286:
-#line 3025 "../../freebsd/sbin/pfctl/parse.y"
+#line 3027 "../../freebsd/sbin/pfctl/parse.y"
{
if ((yyval.v.host = host(yystack.l_mark[0].v.string)) == NULL) {
/* error. "any" is handled elsewhere */
@@ -7443,7 +7496,7 @@ case 286:
}
break;
case 287:
-#line 3035 "../../freebsd/sbin/pfctl/parse.y"
+#line 3037 "../../freebsd/sbin/pfctl/parse.y"
{
struct node_host *b, *e;
@@ -7479,7 +7532,7 @@ case 287:
}
break;
case 288:
-#line 3068 "../../freebsd/sbin/pfctl/parse.y"
+#line 3070 "../../freebsd/sbin/pfctl/parse.y"
{
char *buf;
@@ -7496,7 +7549,7 @@ case 288:
}
break;
case 289:
-#line 3082 "../../freebsd/sbin/pfctl/parse.y"
+#line 3084 "../../freebsd/sbin/pfctl/parse.y"
{
char *buf;
@@ -7517,7 +7570,7 @@ case 289:
}
break;
case 291:
-#line 3101 "../../freebsd/sbin/pfctl/parse.y"
+#line 3103 "../../freebsd/sbin/pfctl/parse.y"
{
struct node_host *n;
@@ -7531,7 +7584,7 @@ case 291:
}
break;
case 292:
-#line 3112 "../../freebsd/sbin/pfctl/parse.y"
+#line 3114 "../../freebsd/sbin/pfctl/parse.y"
{
if (strlen(yystack.l_mark[-1].v.string) >= PF_TABLE_NAME_SIZE) {
yyerror("table name '%s' too long", yystack.l_mark[-1].v.string);
@@ -7552,7 +7605,7 @@ case 292:
}
break;
case 294:
-#line 3133 "../../freebsd/sbin/pfctl/parse.y"
+#line 3135 "../../freebsd/sbin/pfctl/parse.y"
{
u_long ulval;
@@ -7566,7 +7619,7 @@ case 294:
}
break;
case 295:
-#line 3146 "../../freebsd/sbin/pfctl/parse.y"
+#line 3148 "../../freebsd/sbin/pfctl/parse.y"
{
int flags = 0;
char *p, *op;
@@ -7621,19 +7674,19 @@ case 295:
}
break;
case 296:
-#line 3200 "../../freebsd/sbin/pfctl/parse.y"
+#line 3202 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.port = yystack.l_mark[0].v.port; }
break;
case 297:
-#line 3201 "../../freebsd/sbin/pfctl/parse.y"
+#line 3203 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.port = yystack.l_mark[-1].v.port; }
break;
case 298:
-#line 3204 "../../freebsd/sbin/pfctl/parse.y"
+#line 3206 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.port = yystack.l_mark[-1].v.port; }
break;
case 299:
-#line 3205 "../../freebsd/sbin/pfctl/parse.y"
+#line 3207 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.port->tail->next = yystack.l_mark[-1].v.port;
yystack.l_mark[-3].v.port->tail = yystack.l_mark[-1].v.port;
@@ -7641,7 +7694,7 @@ case 299:
}
break;
case 300:
-#line 3212 "../../freebsd/sbin/pfctl/parse.y"
+#line 3214 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.port = calloc(1, sizeof(struct node_port));
if (yyval.v.port == NULL)
@@ -7657,7 +7710,7 @@ case 300:
}
break;
case 301:
-#line 3225 "../../freebsd/sbin/pfctl/parse.y"
+#line 3227 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.range.t) {
yyerror("':' cannot be used with an other "
@@ -7675,7 +7728,7 @@ case 301:
}
break;
case 302:
-#line 3240 "../../freebsd/sbin/pfctl/parse.y"
+#line 3242 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-2].v.range.t || yystack.l_mark[0].v.range.t) {
yyerror("':' cannot be used with an other "
@@ -7693,7 +7746,7 @@ case 302:
}
break;
case 303:
-#line 3257 "../../freebsd/sbin/pfctl/parse.y"
+#line 3259 "../../freebsd/sbin/pfctl/parse.y"
{
if (parseport(yystack.l_mark[0].v.string, &yyval.v.range, 0) == -1) {
free(yystack.l_mark[0].v.string);
@@ -7703,7 +7756,7 @@ case 303:
}
break;
case 304:
-#line 3266 "../../freebsd/sbin/pfctl/parse.y"
+#line 3268 "../../freebsd/sbin/pfctl/parse.y"
{
if (parseport(yystack.l_mark[0].v.string, &yyval.v.range, PPORT_RANGE) == -1) {
free(yystack.l_mark[0].v.string);
@@ -7713,19 +7766,19 @@ case 304:
}
break;
case 305:
-#line 3275 "../../freebsd/sbin/pfctl/parse.y"
+#line 3277 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.uid = yystack.l_mark[0].v.uid; }
break;
case 306:
-#line 3276 "../../freebsd/sbin/pfctl/parse.y"
+#line 3278 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.uid = yystack.l_mark[-1].v.uid; }
break;
case 307:
-#line 3279 "../../freebsd/sbin/pfctl/parse.y"
+#line 3281 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.uid = yystack.l_mark[-1].v.uid; }
break;
case 308:
-#line 3280 "../../freebsd/sbin/pfctl/parse.y"
+#line 3282 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.uid->tail->next = yystack.l_mark[-1].v.uid;
yystack.l_mark[-3].v.uid->tail = yystack.l_mark[-1].v.uid;
@@ -7733,7 +7786,7 @@ case 308:
}
break;
case 309:
-#line 3287 "../../freebsd/sbin/pfctl/parse.y"
+#line 3289 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.uid = calloc(1, sizeof(struct node_uid));
if (yyval.v.uid == NULL)
@@ -7746,7 +7799,7 @@ case 309:
}
break;
case 310:
-#line 3297 "../../freebsd/sbin/pfctl/parse.y"
+#line 3299 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number == UID_MAX && yystack.l_mark[-1].v.i != PF_OP_EQ && yystack.l_mark[-1].v.i != PF_OP_NE) {
yyerror("user unknown requires operator = or "
@@ -7764,7 +7817,7 @@ case 310:
}
break;
case 311:
-#line 3312 "../../freebsd/sbin/pfctl/parse.y"
+#line 3314 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-2].v.number == UID_MAX || yystack.l_mark[0].v.number == UID_MAX) {
yyerror("user unknown requires operator = or "
@@ -7782,7 +7835,7 @@ case 311:
}
break;
case 312:
-#line 3329 "../../freebsd/sbin/pfctl/parse.y"
+#line 3331 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strcmp(yystack.l_mark[0].v.string, "unknown"))
yyval.v.number = UID_MAX;
@@ -7800,7 +7853,7 @@ case 312:
}
break;
case 313:
-#line 3344 "../../freebsd/sbin/pfctl/parse.y"
+#line 3346 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number >= UID_MAX) {
yyerror("illegal uid value %lu", yystack.l_mark[0].v.number);
@@ -7810,19 +7863,19 @@ case 313:
}
break;
case 314:
-#line 3353 "../../freebsd/sbin/pfctl/parse.y"
+#line 3355 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.gid = yystack.l_mark[0].v.gid; }
break;
case 315:
-#line 3354 "../../freebsd/sbin/pfctl/parse.y"
+#line 3356 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.gid = yystack.l_mark[-1].v.gid; }
break;
case 316:
-#line 3357 "../../freebsd/sbin/pfctl/parse.y"
+#line 3359 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.gid = yystack.l_mark[-1].v.gid; }
break;
case 317:
-#line 3358 "../../freebsd/sbin/pfctl/parse.y"
+#line 3360 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.gid->tail->next = yystack.l_mark[-1].v.gid;
yystack.l_mark[-3].v.gid->tail = yystack.l_mark[-1].v.gid;
@@ -7830,7 +7883,7 @@ case 317:
}
break;
case 318:
-#line 3365 "../../freebsd/sbin/pfctl/parse.y"
+#line 3367 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.gid = calloc(1, sizeof(struct node_gid));
if (yyval.v.gid == NULL)
@@ -7843,7 +7896,7 @@ case 318:
}
break;
case 319:
-#line 3375 "../../freebsd/sbin/pfctl/parse.y"
+#line 3377 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number == GID_MAX && yystack.l_mark[-1].v.i != PF_OP_EQ && yystack.l_mark[-1].v.i != PF_OP_NE) {
yyerror("group unknown requires operator = or "
@@ -7861,7 +7914,7 @@ case 319:
}
break;
case 320:
-#line 3390 "../../freebsd/sbin/pfctl/parse.y"
+#line 3392 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-2].v.number == GID_MAX || yystack.l_mark[0].v.number == GID_MAX) {
yyerror("group unknown requires operator = or "
@@ -7879,7 +7932,7 @@ case 320:
}
break;
case 321:
-#line 3407 "../../freebsd/sbin/pfctl/parse.y"
+#line 3409 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strcmp(yystack.l_mark[0].v.string, "unknown"))
yyval.v.number = GID_MAX;
@@ -7897,7 +7950,7 @@ case 321:
}
break;
case 322:
-#line 3422 "../../freebsd/sbin/pfctl/parse.y"
+#line 3424 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number >= GID_MAX) {
yyerror("illegal gid value %lu", yystack.l_mark[0].v.number);
@@ -7907,7 +7960,7 @@ case 322:
}
break;
case 323:
-#line 3431 "../../freebsd/sbin/pfctl/parse.y"
+#line 3433 "../../freebsd/sbin/pfctl/parse.y"
{
int f;
@@ -7921,39 +7974,39 @@ case 323:
}
break;
case 324:
-#line 3444 "../../freebsd/sbin/pfctl/parse.y"
+#line 3446 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.b.b1 = yystack.l_mark[-2].v.b.b1; yyval.v.b.b2 = yystack.l_mark[0].v.b.b1; }
break;
case 325:
-#line 3445 "../../freebsd/sbin/pfctl/parse.y"
+#line 3447 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.b.b1 = 0; yyval.v.b.b2 = yystack.l_mark[0].v.b.b1; }
break;
case 326:
-#line 3446 "../../freebsd/sbin/pfctl/parse.y"
+#line 3448 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.b.b1 = 0; yyval.v.b.b2 = 0; }
break;
case 327:
-#line 3449 "../../freebsd/sbin/pfctl/parse.y"
+#line 3451 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.icmp = yystack.l_mark[0].v.icmp; }
break;
case 328:
-#line 3450 "../../freebsd/sbin/pfctl/parse.y"
+#line 3452 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.icmp = yystack.l_mark[-1].v.icmp; }
break;
case 329:
-#line 3451 "../../freebsd/sbin/pfctl/parse.y"
+#line 3453 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.icmp = yystack.l_mark[0].v.icmp; }
break;
case 330:
-#line 3452 "../../freebsd/sbin/pfctl/parse.y"
+#line 3454 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.icmp = yystack.l_mark[-1].v.icmp; }
break;
case 331:
-#line 3455 "../../freebsd/sbin/pfctl/parse.y"
+#line 3457 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.icmp = yystack.l_mark[-1].v.icmp; }
break;
case 332:
-#line 3456 "../../freebsd/sbin/pfctl/parse.y"
+#line 3458 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.icmp->tail->next = yystack.l_mark[-1].v.icmp;
yystack.l_mark[-3].v.icmp->tail = yystack.l_mark[-1].v.icmp;
@@ -7961,11 +8014,11 @@ case 332:
}
break;
case 333:
-#line 3463 "../../freebsd/sbin/pfctl/parse.y"
+#line 3465 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.icmp = yystack.l_mark[-1].v.icmp; }
break;
case 334:
-#line 3464 "../../freebsd/sbin/pfctl/parse.y"
+#line 3466 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.icmp->tail->next = yystack.l_mark[-1].v.icmp;
yystack.l_mark[-3].v.icmp->tail = yystack.l_mark[-1].v.icmp;
@@ -7973,7 +8026,7 @@ case 334:
}
break;
case 335:
-#line 3471 "../../freebsd/sbin/pfctl/parse.y"
+#line 3473 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.icmp = calloc(1, sizeof(struct node_icmp));
if (yyval.v.icmp == NULL)
@@ -7986,7 +8039,7 @@ case 335:
}
break;
case 336:
-#line 3481 "../../freebsd/sbin/pfctl/parse.y"
+#line 3483 "../../freebsd/sbin/pfctl/parse.y"
{
const struct icmpcodeent *p;
@@ -8008,7 +8061,7 @@ case 336:
}
break;
case 337:
-#line 3500 "../../freebsd/sbin/pfctl/parse.y"
+#line 3502 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > 255) {
yyerror("illegal icmp-code %lu", yystack.l_mark[0].v.number);
@@ -8025,7 +8078,7 @@ case 337:
}
break;
case 338:
-#line 3516 "../../freebsd/sbin/pfctl/parse.y"
+#line 3518 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.icmp = calloc(1, sizeof(struct node_icmp));
if (yyval.v.icmp == NULL)
@@ -8038,7 +8091,7 @@ case 338:
}
break;
case 339:
-#line 3526 "../../freebsd/sbin/pfctl/parse.y"
+#line 3528 "../../freebsd/sbin/pfctl/parse.y"
{
const struct icmpcodeent *p;
@@ -8060,7 +8113,7 @@ case 339:
}
break;
case 340:
-#line 3545 "../../freebsd/sbin/pfctl/parse.y"
+#line 3547 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > 255) {
yyerror("illegal icmp-code %lu", yystack.l_mark[0].v.number);
@@ -8077,7 +8130,7 @@ case 340:
}
break;
case 341:
-#line 3561 "../../freebsd/sbin/pfctl/parse.y"
+#line 3563 "../../freebsd/sbin/pfctl/parse.y"
{
const struct icmptypeent *p;
@@ -8091,7 +8144,7 @@ case 341:
}
break;
case 342:
-#line 3572 "../../freebsd/sbin/pfctl/parse.y"
+#line 3574 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > 255) {
yyerror("illegal icmp-type %lu", yystack.l_mark[0].v.number);
@@ -8101,7 +8154,7 @@ case 342:
}
break;
case 343:
-#line 3581 "../../freebsd/sbin/pfctl/parse.y"
+#line 3583 "../../freebsd/sbin/pfctl/parse.y"
{
const struct icmptypeent *p;
@@ -8116,7 +8169,7 @@ case 343:
}
break;
case 344:
-#line 3593 "../../freebsd/sbin/pfctl/parse.y"
+#line 3595 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > 255) {
yyerror("illegal icmp6-type %lu", yystack.l_mark[0].v.number);
@@ -8126,17 +8179,19 @@ case 344:
}
break;
case 345:
-#line 3602 "../../freebsd/sbin/pfctl/parse.y"
- {
- if (!strcmp(yystack.l_mark[0].v.string, "lowdelay"))
- yyval.v.number = IPTOS_LOWDELAY;
- else if (!strcmp(yystack.l_mark[0].v.string, "throughput"))
- yyval.v.number = IPTOS_THROUGHPUT;
- else if (!strcmp(yystack.l_mark[0].v.string, "reliability"))
- yyval.v.number = IPTOS_RELIABILITY;
- else if (yystack.l_mark[0].v.string[0] == '0' && yystack.l_mark[0].v.string[1] == 'x')
- yyval.v.number = strtoul(yystack.l_mark[0].v.string, NULL, 16);
- else
+#line 3604 "../../freebsd/sbin/pfctl/parse.y"
+ {
+ int val;
+ char *end;
+
+ if (map_tos(yystack.l_mark[0].v.string, &val))
+ yyval.v.number = val;
+ else if (yystack.l_mark[0].v.string[0] == '0' && yystack.l_mark[0].v.string[1] == 'x') {
+ errno = 0;
+ yyval.v.number = strtoul(yystack.l_mark[0].v.string, &end, 16);
+ if (errno || *end != '\0')
+ yyval.v.number = 256;
+ } else
yyval.v.number = 256; /* flag bad argument */
if (yyval.v.number < 0 || yyval.v.number > 255) {
yyerror("illegal tos value %s", yystack.l_mark[0].v.string);
@@ -8147,7 +8202,7 @@ case 345:
}
break;
case 346:
-#line 3620 "../../freebsd/sbin/pfctl/parse.y"
+#line 3624 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.number = yystack.l_mark[0].v.number;
if (yyval.v.number < 0 || yyval.v.number > 255) {
@@ -8157,85 +8212,85 @@ case 346:
}
break;
case 347:
-#line 3629 "../../freebsd/sbin/pfctl/parse.y"
+#line 3633 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_SRCTRACK; }
break;
case 348:
-#line 3630 "../../freebsd/sbin/pfctl/parse.y"
+#line 3634 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_SRCTRACK_GLOBAL; }
break;
case 349:
-#line 3631 "../../freebsd/sbin/pfctl/parse.y"
+#line 3635 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_SRCTRACK_RULE; }
break;
case 350:
-#line 3634 "../../freebsd/sbin/pfctl/parse.y"
+#line 3638 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.i = PFRULE_IFBOUND;
}
break;
case 351:
-#line 3637 "../../freebsd/sbin/pfctl/parse.y"
+#line 3641 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.i = 0;
}
break;
case 352:
-#line 3642 "../../freebsd/sbin/pfctl/parse.y"
+#line 3646 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.keep_state.action = 0;
yyval.v.keep_state.options = NULL;
}
break;
case 353:
-#line 3646 "../../freebsd/sbin/pfctl/parse.y"
+#line 3650 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.keep_state.action = PF_STATE_NORMAL;
yyval.v.keep_state.options = yystack.l_mark[0].v.state_opt;
}
break;
case 354:
-#line 3650 "../../freebsd/sbin/pfctl/parse.y"
+#line 3654 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.keep_state.action = PF_STATE_MODULATE;
yyval.v.keep_state.options = yystack.l_mark[0].v.state_opt;
}
break;
case 355:
-#line 3654 "../../freebsd/sbin/pfctl/parse.y"
+#line 3658 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.keep_state.action = PF_STATE_SYNPROXY;
yyval.v.keep_state.options = yystack.l_mark[0].v.state_opt;
}
break;
case 356:
-#line 3660 "../../freebsd/sbin/pfctl/parse.y"
+#line 3664 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = 0; }
break;
case 357:
-#line 3661 "../../freebsd/sbin/pfctl/parse.y"
+#line 3665 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_FLUSH; }
break;
case 358:
-#line 3662 "../../freebsd/sbin/pfctl/parse.y"
+#line 3666 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.i = PF_FLUSH | PF_FLUSH_GLOBAL;
}
break;
case 359:
-#line 3667 "../../freebsd/sbin/pfctl/parse.y"
+#line 3671 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.state_opt = yystack.l_mark[-1].v.state_opt; }
break;
case 360:
-#line 3668 "../../freebsd/sbin/pfctl/parse.y"
+#line 3672 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.state_opt = NULL; }
break;
case 361:
-#line 3671 "../../freebsd/sbin/pfctl/parse.y"
+#line 3675 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.state_opt = yystack.l_mark[0].v.state_opt; }
break;
case 362:
-#line 3672 "../../freebsd/sbin/pfctl/parse.y"
+#line 3676 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-2].v.state_opt->tail->next = yystack.l_mark[0].v.state_opt;
yystack.l_mark[-2].v.state_opt->tail = yystack.l_mark[0].v.state_opt;
@@ -8243,7 +8298,7 @@ case 362:
}
break;
case 363:
-#line 3679 "../../freebsd/sbin/pfctl/parse.y"
+#line 3683 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > UINT_MAX) {
yyerror("only positive values permitted");
@@ -8259,7 +8314,7 @@ case 363:
}
break;
case 364:
-#line 3692 "../../freebsd/sbin/pfctl/parse.y"
+#line 3696 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.state_opt = calloc(1, sizeof(struct node_state_opt));
if (yyval.v.state_opt == NULL)
@@ -8270,7 +8325,7 @@ case 364:
}
break;
case 365:
-#line 3700 "../../freebsd/sbin/pfctl/parse.y"
+#line 3704 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > UINT_MAX) {
yyerror("only positive values permitted");
@@ -8286,7 +8341,7 @@ case 365:
}
break;
case 366:
-#line 3713 "../../freebsd/sbin/pfctl/parse.y"
+#line 3717 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > UINT_MAX) {
yyerror("only positive values permitted");
@@ -8302,7 +8357,7 @@ case 366:
}
break;
case 367:
-#line 3726 "../../freebsd/sbin/pfctl/parse.y"
+#line 3730 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-2].v.number < 0 || yystack.l_mark[-2].v.number > UINT_MAX ||
yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > UINT_MAX) {
@@ -8320,7 +8375,7 @@ case 367:
}
break;
case 368:
-#line 3741 "../../freebsd/sbin/pfctl/parse.y"
+#line 3745 "../../freebsd/sbin/pfctl/parse.y"
{
if (strlen(yystack.l_mark[-2].v.string) >= PF_TABLE_NAME_SIZE) {
yyerror("table name '%s' too long", yystack.l_mark[-2].v.string);
@@ -8341,7 +8396,7 @@ case 368:
}
break;
case 369:
-#line 3759 "../../freebsd/sbin/pfctl/parse.y"
+#line 3763 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > UINT_MAX) {
yyerror("only positive values permitted");
@@ -8357,7 +8412,7 @@ case 369:
}
break;
case 370:
-#line 3772 "../../freebsd/sbin/pfctl/parse.y"
+#line 3776 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.state_opt = calloc(1, sizeof(struct node_state_opt));
if (yyval.v.state_opt == NULL)
@@ -8369,7 +8424,7 @@ case 370:
}
break;
case 371:
-#line 3781 "../../freebsd/sbin/pfctl/parse.y"
+#line 3785 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.state_opt = calloc(1, sizeof(struct node_state_opt));
if (yyval.v.state_opt == NULL)
@@ -8381,7 +8436,7 @@ case 371:
}
break;
case 372:
-#line 3790 "../../freebsd/sbin/pfctl/parse.y"
+#line 3794 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.state_opt = calloc(1, sizeof(struct node_state_opt));
if (yyval.v.state_opt == NULL)
@@ -8392,7 +8447,7 @@ case 372:
}
break;
case 373:
-#line 3798 "../../freebsd/sbin/pfctl/parse.y"
+#line 3802 "../../freebsd/sbin/pfctl/parse.y"
{
int i;
@@ -8425,42 +8480,42 @@ case 373:
}
break;
case 374:
-#line 3830 "../../freebsd/sbin/pfctl/parse.y"
+#line 3834 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.string = yystack.l_mark[0].v.string;
}
break;
case 375:
-#line 3835 "../../freebsd/sbin/pfctl/parse.y"
+#line 3839 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.qassign.qname = yystack.l_mark[0].v.string;
yyval.v.qassign.pqname = NULL;
}
break;
case 376:
-#line 3839 "../../freebsd/sbin/pfctl/parse.y"
+#line 3843 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.qassign.qname = yystack.l_mark[-1].v.string;
yyval.v.qassign.pqname = NULL;
}
break;
case 377:
-#line 3843 "../../freebsd/sbin/pfctl/parse.y"
+#line 3847 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.qassign.qname = yystack.l_mark[-3].v.string;
yyval.v.qassign.pqname = yystack.l_mark[-1].v.string;
}
break;
case 378:
-#line 3849 "../../freebsd/sbin/pfctl/parse.y"
+#line 3853 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = 0; }
break;
case 379:
-#line 3850 "../../freebsd/sbin/pfctl/parse.y"
+#line 3854 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = 1; }
break;
case 380:
-#line 3853 "../../freebsd/sbin/pfctl/parse.y"
+#line 3857 "../../freebsd/sbin/pfctl/parse.y"
{
if (parseport(yystack.l_mark[0].v.string, &yyval.v.range, PPORT_RANGE|PPORT_STAR) == -1) {
free(yystack.l_mark[0].v.string);
@@ -8470,19 +8525,19 @@ case 380:
}
break;
case 381:
-#line 3862 "../../freebsd/sbin/pfctl/parse.y"
+#line 3866 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = yystack.l_mark[0].v.host; }
break;
case 382:
-#line 3863 "../../freebsd/sbin/pfctl/parse.y"
+#line 3867 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = yystack.l_mark[-1].v.host; }
break;
case 383:
-#line 3866 "../../freebsd/sbin/pfctl/parse.y"
+#line 3870 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = yystack.l_mark[-1].v.host; }
break;
case 384:
-#line 3867 "../../freebsd/sbin/pfctl/parse.y"
+#line 3871 "../../freebsd/sbin/pfctl/parse.y"
{
yystack.l_mark[-3].v.host->tail->next = yystack.l_mark[-1].v.host;
yystack.l_mark[-3].v.host->tail = yystack.l_mark[-1].v.host->tail;
@@ -8490,11 +8545,11 @@ case 384:
}
break;
case 385:
-#line 3874 "../../freebsd/sbin/pfctl/parse.y"
+#line 3878 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.redirection = NULL; }
break;
case 386:
-#line 3875 "../../freebsd/sbin/pfctl/parse.y"
+#line 3879 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.redirection = calloc(1, sizeof(struct redirection));
if (yyval.v.redirection == NULL)
@@ -8504,7 +8559,7 @@ case 386:
}
break;
case 387:
-#line 3882 "../../freebsd/sbin/pfctl/parse.y"
+#line 3886 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.redirection = calloc(1, sizeof(struct redirection));
if (yyval.v.redirection == NULL)
@@ -8514,7 +8569,7 @@ case 387:
}
break;
case 388:
-#line 3892 "../../freebsd/sbin/pfctl/parse.y"
+#line 3896 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.hashkey = calloc(1, sizeof(struct pf_poolhashkey));
if (yyval.v.hashkey == NULL)
@@ -8526,7 +8581,7 @@ case 388:
}
break;
case 389:
-#line 3902 "../../freebsd/sbin/pfctl/parse.y"
+#line 3906 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strncmp(yystack.l_mark[0].v.string, "0x", 2)) {
if (strlen(yystack.l_mark[0].v.string) != 34) {
@@ -8566,22 +8621,22 @@ case 389:
}
break;
case 390:
-#line 3941 "../../freebsd/sbin/pfctl/parse.y"
+#line 3945 "../../freebsd/sbin/pfctl/parse.y"
{ bzero(&pool_opts, sizeof pool_opts); }
break;
case 391:
-#line 3943 "../../freebsd/sbin/pfctl/parse.y"
+#line 3947 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.pool_opts = pool_opts; }
break;
case 392:
-#line 3944 "../../freebsd/sbin/pfctl/parse.y"
+#line 3948 "../../freebsd/sbin/pfctl/parse.y"
{
bzero(&pool_opts, sizeof pool_opts);
yyval.v.pool_opts = pool_opts;
}
break;
case 395:
-#line 3954 "../../freebsd/sbin/pfctl/parse.y"
+#line 3958 "../../freebsd/sbin/pfctl/parse.y"
{
if (pool_opts.type) {
yyerror("pool type cannot be redefined");
@@ -8591,7 +8646,7 @@ case 395:
}
break;
case 396:
-#line 3961 "../../freebsd/sbin/pfctl/parse.y"
+#line 3965 "../../freebsd/sbin/pfctl/parse.y"
{
if (pool_opts.type) {
yyerror("pool type cannot be redefined");
@@ -8601,7 +8656,7 @@ case 396:
}
break;
case 397:
-#line 3968 "../../freebsd/sbin/pfctl/parse.y"
+#line 3972 "../../freebsd/sbin/pfctl/parse.y"
{
if (pool_opts.type) {
yyerror("pool type cannot be redefined");
@@ -8612,7 +8667,7 @@ case 397:
}
break;
case 398:
-#line 3976 "../../freebsd/sbin/pfctl/parse.y"
+#line 3980 "../../freebsd/sbin/pfctl/parse.y"
{
if (pool_opts.type) {
yyerror("pool type cannot be redefined");
@@ -8622,7 +8677,7 @@ case 398:
}
break;
case 399:
-#line 3983 "../../freebsd/sbin/pfctl/parse.y"
+#line 3987 "../../freebsd/sbin/pfctl/parse.y"
{
if (pool_opts.staticport) {
yyerror("static-port cannot be redefined");
@@ -8632,7 +8687,7 @@ case 399:
}
break;
case 400:
-#line 3990 "../../freebsd/sbin/pfctl/parse.y"
+#line 3994 "../../freebsd/sbin/pfctl/parse.y"
{
if (filter_opts.marker & POM_STICKYADDRESS) {
yyerror("sticky-address cannot be redefined");
@@ -8643,11 +8698,11 @@ case 400:
}
break;
case 401:
-#line 4000 "../../freebsd/sbin/pfctl/parse.y"
+#line 4004 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.redirection = NULL; }
break;
case 402:
-#line 4001 "../../freebsd/sbin/pfctl/parse.y"
+#line 4005 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.redirection = calloc(1, sizeof(struct redirection));
if (yyval.v.redirection == NULL)
@@ -8657,7 +8712,7 @@ case 402:
}
break;
case 403:
-#line 4008 "../../freebsd/sbin/pfctl/parse.y"
+#line 4012 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.redirection = calloc(1, sizeof(struct redirection));
if (yyval.v.redirection == NULL)
@@ -8667,23 +8722,23 @@ case 403:
}
break;
case 404:
-#line 4017 "../../freebsd/sbin/pfctl/parse.y"
+#line 4021 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.b.b1 = yyval.v.b.b2 = 0; yyval.v.b.w2 = 0; }
break;
case 405:
-#line 4018 "../../freebsd/sbin/pfctl/parse.y"
+#line 4022 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.b.b1 = 1; yyval.v.b.b2 = 0; yyval.v.b.w2 = 0; }
break;
case 406:
-#line 4019 "../../freebsd/sbin/pfctl/parse.y"
+#line 4023 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.b.b1 = 1; yyval.v.b.b2 = yystack.l_mark[0].v.logquick.log; yyval.v.b.w2 = yystack.l_mark[0].v.logquick.logif; }
break;
case 407:
-#line 4020 "../../freebsd/sbin/pfctl/parse.y"
+#line 4024 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.b.b1 = 0; yyval.v.b.b2 = yystack.l_mark[0].v.logquick.log; yyval.v.b.w2 = yystack.l_mark[0].v.logquick.logif; }
break;
case 408:
-#line 4023 "../../freebsd/sbin/pfctl/parse.y"
+#line 4027 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-2].v.i && yystack.l_mark[0].v.b.b1) {
yyerror("\"pass\" not valid with \"no\"");
@@ -8699,7 +8754,7 @@ case 408:
}
break;
case 409:
-#line 4036 "../../freebsd/sbin/pfctl/parse.y"
+#line 4040 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-2].v.i && yystack.l_mark[0].v.b.b1) {
yyerror("\"pass\" not valid with \"no\"");
@@ -8715,7 +8770,7 @@ case 409:
}
break;
case 410:
-#line 4053 "../../freebsd/sbin/pfctl/parse.y"
+#line 4057 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_rule r;
@@ -8873,7 +8928,7 @@ case 410:
}
break;
case 411:
-#line 4212 "../../freebsd/sbin/pfctl/parse.y"
+#line 4216 "../../freebsd/sbin/pfctl/parse.y"
{
struct pf_rule binat;
struct pf_pooladdr *pa;
@@ -9039,27 +9094,27 @@ case 411:
}
break;
case 412:
-#line 4377 "../../freebsd/sbin/pfctl/parse.y"
+#line 4381 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.string = NULL; }
break;
case 413:
-#line 4378 "../../freebsd/sbin/pfctl/parse.y"
+#line 4382 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.string = yystack.l_mark[0].v.string; }
break;
case 414:
-#line 4381 "../../freebsd/sbin/pfctl/parse.y"
+#line 4385 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.tagged.neg = 0; yyval.v.tagged.name = NULL; }
break;
case 415:
-#line 4382 "../../freebsd/sbin/pfctl/parse.y"
+#line 4386 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.tagged.neg = yystack.l_mark[-2].v.number; yyval.v.tagged.name = yystack.l_mark[0].v.string; }
break;
case 416:
-#line 4385 "../../freebsd/sbin/pfctl/parse.y"
+#line 4389 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.rtableid = -1; }
break;
case 417:
-#line 4386 "../../freebsd/sbin/pfctl/parse.y"
+#line 4390 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[0].v.number < 0 || yystack.l_mark[0].v.number > rt_tableid_max()) {
yyerror("invalid rtable id");
@@ -9069,7 +9124,7 @@ case 417:
}
break;
case 418:
-#line 4395 "../../freebsd/sbin/pfctl/parse.y"
+#line 4399 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.host = calloc(1, sizeof(struct node_host));
if (yyval.v.host == NULL)
@@ -9081,18 +9136,18 @@ case 418:
}
break;
case 419:
-#line 4404 "../../freebsd/sbin/pfctl/parse.y"
+#line 4408 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.host = yystack.l_mark[-1].v.host;
yyval.v.host->ifname = yystack.l_mark[-2].v.string;
}
break;
case 420:
-#line 4410 "../../freebsd/sbin/pfctl/parse.y"
+#line 4414 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = yystack.l_mark[-1].v.host; }
break;
case 421:
-#line 4411 "../../freebsd/sbin/pfctl/parse.y"
+#line 4415 "../../freebsd/sbin/pfctl/parse.y"
{
if (yystack.l_mark[-3].v.host->af == 0)
yystack.l_mark[-3].v.host->af = yystack.l_mark[-1].v.host->af;
@@ -9107,15 +9162,15 @@ case 421:
}
break;
case 422:
-#line 4425 "../../freebsd/sbin/pfctl/parse.y"
+#line 4429 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = yystack.l_mark[0].v.host; }
break;
case 423:
-#line 4426 "../../freebsd/sbin/pfctl/parse.y"
+#line 4430 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.host = yystack.l_mark[-1].v.host; }
break;
case 424:
-#line 4429 "../../freebsd/sbin/pfctl/parse.y"
+#line 4433 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.route.host = NULL;
yyval.v.route.rt = 0;
@@ -9123,15 +9178,16 @@ case 424:
}
break;
case 425:
-#line 4434 "../../freebsd/sbin/pfctl/parse.y"
+#line 4438 "../../freebsd/sbin/pfctl/parse.y"
{
+ /* backwards-compat */
yyval.v.route.host = NULL;
- yyval.v.route.rt = PF_FASTROUTE;
+ yyval.v.route.rt = 0;
yyval.v.route.pool_opts = 0;
}
break;
case 426:
-#line 4439 "../../freebsd/sbin/pfctl/parse.y"
+#line 4444 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.route.host = yystack.l_mark[-1].v.host;
yyval.v.route.rt = PF_ROUTETO;
@@ -9141,7 +9197,7 @@ case 426:
}
break;
case 427:
-#line 4446 "../../freebsd/sbin/pfctl/parse.y"
+#line 4451 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.route.host = yystack.l_mark[-1].v.host;
yyval.v.route.rt = PF_REPLYTO;
@@ -9151,7 +9207,7 @@ case 427:
}
break;
case 428:
-#line 4453 "../../freebsd/sbin/pfctl/parse.y"
+#line 4458 "../../freebsd/sbin/pfctl/parse.y"
{
yyval.v.route.host = yystack.l_mark[-1].v.host;
yyval.v.route.rt = PF_DUPTO;
@@ -9161,7 +9217,7 @@ case 428:
}
break;
case 429:
-#line 4463 "../../freebsd/sbin/pfctl/parse.y"
+#line 4468 "../../freebsd/sbin/pfctl/parse.y"
{
if (check_rulestate(PFCTL_STATE_OPTION)) {
free(yystack.l_mark[-1].v.string);
@@ -9180,7 +9236,7 @@ case 429:
}
break;
case 430:
-#line 4479 "../../freebsd/sbin/pfctl/parse.y"
+#line 4484 "../../freebsd/sbin/pfctl/parse.y"
{
if (check_rulestate(PFCTL_STATE_OPTION))
YYERROR;
@@ -9193,7 +9249,7 @@ case 430:
}
break;
case 433:
-#line 4496 "../../freebsd/sbin/pfctl/parse.y"
+#line 4501 "../../freebsd/sbin/pfctl/parse.y"
{
if (check_rulestate(PFCTL_STATE_OPTION)) {
free(yystack.l_mark[-1].v.string);
@@ -9212,11 +9268,11 @@ case 433:
}
break;
case 438:
-#line 4522 "../../freebsd/sbin/pfctl/parse.y"
+#line 4527 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.number = 0; }
break;
case 439:
-#line 4523 "../../freebsd/sbin/pfctl/parse.y"
+#line 4528 "../../freebsd/sbin/pfctl/parse.y"
{
if (!strcmp(yystack.l_mark[0].v.string, "yes"))
yyval.v.number = 1;
@@ -9230,30 +9286,30 @@ case 439:
}
break;
case 440:
-#line 4536 "../../freebsd/sbin/pfctl/parse.y"
+#line 4541 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_OP_EQ; }
break;
case 441:
-#line 4537 "../../freebsd/sbin/pfctl/parse.y"
+#line 4542 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_OP_NE; }
break;
case 442:
-#line 4538 "../../freebsd/sbin/pfctl/parse.y"
+#line 4543 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_OP_LE; }
break;
case 443:
-#line 4539 "../../freebsd/sbin/pfctl/parse.y"
+#line 4544 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_OP_LT; }
break;
case 444:
-#line 4540 "../../freebsd/sbin/pfctl/parse.y"
+#line 4545 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_OP_GE; }
break;
case 445:
-#line 4541 "../../freebsd/sbin/pfctl/parse.y"
+#line 4546 "../../freebsd/sbin/pfctl/parse.y"
{ yyval.v.i = PF_OP_GT; }
break;
-#line 9257 "pfctly.tab.c"
+#line 9313 "pfctly.tab.c"
}
yystack.s_mark -= yym;
yystate = *yystack.s_mark;
diff --git a/freebsd/sbin/pfctl/parse.y b/freebsd/sbin/pfctl/parse.y
index 9664aaf5..78ca561c 100644
--- a/freebsd/sbin/pfctl/parse.y
+++ b/freebsd/sbin/pfctl/parse.y
@@ -4211,7 +4211,7 @@ natrule : nataction interface af proto fromto tag tagged rtable
}
;
-binatrule : no BINAT natpasslog interface af proto FROM host toipspec tag
+binatrule : no BINAT natpasslog interface af proto FROM ipspec toipspec tag
tagged rtable redirection
{
struct pf_rule binat;
diff --git a/freebsd/sbin/ping/ping.c b/freebsd/sbin/ping/ping.c
index f0d1f7ce..e8d962f3 100644
--- a/freebsd/sbin/ping/ping.c
+++ b/freebsd/sbin/ping/ping.c
@@ -1743,6 +1743,7 @@ pr_icmph(struct icmp *icp)
static void
pr_iph(struct ip *ip)
{
+ struct in_addr ina;
u_char *cp;
int hlen;
@@ -1758,8 +1759,10 @@ pr_iph(struct ip *ip)
(u_long) ntohl(ip->ip_off) & 0x1fff);
(void)printf(" %02x %02x %04x", ip->ip_ttl, ip->ip_p,
ntohs(ip->ip_sum));
- (void)printf(" %s ", inet_ntoa(*(struct in_addr *)&ip->ip_src.s_addr));
- (void)printf(" %s ", inet_ntoa(*(struct in_addr *)&ip->ip_dst.s_addr));
+ memcpy(&ina, &ip->ip_src.s_addr, sizeof ina);
+ (void)printf(" %s ", inet_ntoa(ina));
+ memcpy(&ina, &ip->ip_dst.s_addr, sizeof ina);
+ (void)printf(" %s ", inet_ntoa(ina));
/* dump any option bytes */
while (hlen-- > 20) {
(void)printf("%02x", *cp++);
diff --git a/freebsd/sbin/route/keywords.h b/freebsd/sbin/route/keywords.h
index c7b5a6d0..435a3a2a 100644
--- a/freebsd/sbin/route/keywords.h
+++ b/freebsd/sbin/route/keywords.h
@@ -4,107 +4,105 @@
{"6", K_6},
#define K_ADD 3
{"add", K_ADD},
-#define K_ATALK 4
- {"atalk", K_ATALK},
-#define K_BLACKHOLE 5
+#define K_BLACKHOLE 4
{"blackhole", K_BLACKHOLE},
-#define K_CHANGE 6
+#define K_CHANGE 5
{"change", K_CHANGE},
-#define K_CLONING 7
+#define K_CLONING 6
{"cloning", K_CLONING},
-#define K_DEL 8
+#define K_DEL 7
{"del", K_DEL},
-#define K_DELETE 9
+#define K_DELETE 8
{"delete", K_DELETE},
-#define K_DST 10
+#define K_DST 9
{"dst", K_DST},
-#define K_EXPIRE 11
+#define K_EXPIRE 10
{"expire", K_EXPIRE},
-#define K_FIB 12
+#define K_FIB 11
{"fib", K_FIB},
-#define K_FLUSH 13
+#define K_FLUSH 12
{"flush", K_FLUSH},
-#define K_GATEWAY 14
+#define K_GATEWAY 13
{"gateway", K_GATEWAY},
-#define K_GENMASK 15
+#define K_GENMASK 14
{"genmask", K_GENMASK},
-#define K_GET 16
+#define K_GET 15
{"get", K_GET},
-#define K_HOST 17
+#define K_HOST 16
{"host", K_HOST},
-#define K_HOPCOUNT 18
+#define K_HOPCOUNT 17
{"hopcount", K_HOPCOUNT},
-#define K_IFACE 19
+#define K_IFACE 18
{"iface", K_IFACE},
-#define K_INTERFACE 20
+#define K_INTERFACE 19
{"interface", K_INTERFACE},
-#define K_IFA 21
+#define K_IFA 20
{"ifa", K_IFA},
-#define K_IFP 22
+#define K_IFP 21
{"ifp", K_IFP},
-#define K_INET 23
+#define K_INET 22
{"inet", K_INET},
-#define K_INET6 24
+#define K_INET6 23
{"inet6", K_INET6},
-#define K_ISO 25
+#define K_ISO 24
{"iso", K_ISO},
-#define K_LINK 26
+#define K_LINK 25
{"link", K_LINK},
-#define K_LLINFO 27
+#define K_LLINFO 26
{"llinfo", K_LLINFO},
-#define K_LOCK 28
+#define K_LOCK 27
{"lock", K_LOCK},
-#define K_LOCKREST 29
+#define K_LOCKREST 28
{"lockrest", K_LOCKREST},
-#define K_MASK 30
+#define K_MASK 29
{"mask", K_MASK},
-#define K_MONITOR 31
+#define K_MONITOR 30
{"monitor", K_MONITOR},
-#define K_MTU 32
+#define K_MTU 31
{"mtu", K_MTU},
-#define K_NET 33
+#define K_NET 32
{"net", K_NET},
-#define K_NETMASK 34
+#define K_NETMASK 33
{"netmask", K_NETMASK},
-#define K_NOSTATIC 35
+#define K_NOSTATIC 34
{"nostatic", K_NOSTATIC},
-#define K_NOSTICK 36
+#define K_NOSTICK 35
{"nostick", K_NOSTICK},
-#define K_OSI 37
+#define K_OSI 36
{"osi", K_OSI},
-#define K_PREFIXLEN 38
+#define K_PREFIXLEN 37
{"prefixlen", K_PREFIXLEN},
-#define K_PROTO1 39
+#define K_PROTO1 38
{"proto1", K_PROTO1},
-#define K_PROTO2 40
+#define K_PROTO2 39
{"proto2", K_PROTO2},
-#define K_PROXY 41
+#define K_PROXY 40
{"proxy", K_PROXY},
-#define K_RECVPIPE 42
+#define K_RECVPIPE 41
{"recvpipe", K_RECVPIPE},
-#define K_REJECT 43
+#define K_REJECT 42
{"reject", K_REJECT},
-#define K_RTT 44
+#define K_RTT 43
{"rtt", K_RTT},
-#define K_RTTVAR 45
+#define K_RTTVAR 44
{"rttvar", K_RTTVAR},
-#define K_SA 46
+#define K_SA 45
{"sa", K_SA},
-#define K_SENDPIPE 47
+#define K_SENDPIPE 46
{"sendpipe", K_SENDPIPE},
-#define K_SHOW 48
+#define K_SHOW 47
{"show", K_SHOW},
-#define K_SSTHRESH 49
+#define K_SSTHRESH 48
{"ssthresh", K_SSTHRESH},
-#define K_STATIC 50
+#define K_STATIC 49
{"static", K_STATIC},
-#define K_STICKY 51
+#define K_STICKY 50
{"sticky", K_STICKY},
-#define K_WEIGHT 52
+#define K_WEIGHT 51
{"weight", K_WEIGHT},
-#define K_X25 53
+#define K_X25 52
{"x25", K_X25},
-#define K_XNS 54
+#define K_XNS 53
{"xns", K_XNS},
-#define K_XRESOLVE 55
+#define K_XRESOLVE 54
{"xresolve", K_XRESOLVE},
diff --git a/freebsd/sbin/sysctl/sysctl.c b/freebsd/sbin/sysctl/sysctl.c
index 03069a38..ef6e8c3b 100644
--- a/freebsd/sbin/sysctl/sysctl.c
+++ b/freebsd/sbin/sysctl/sysctl.c
@@ -129,7 +129,7 @@ static const char *ctl_typename[CTLTYPE+1] = {
[CTLTYPE_ULONG] = "unsigned long",
[CTLTYPE_U8] = "uint8_t",
[CTLTYPE_U16] = "uint16_t",
- [CTLTYPE_U32] = "uint16_t",
+ [CTLTYPE_U32] = "uint32_t",
[CTLTYPE_U64] = "uint64_t",
[CTLTYPE_S8] = "int8_t",
[CTLTYPE_S16] = "int16_t",