mirror of
https://github.com/fwbuilder/fwbuilder
synced 2026-09-13 16:39:48 +02:00
see #2497 added an error on import of "include" word in pf.conf files
This commit is contained in:
@@ -81,6 +81,7 @@
|
||||
- Import of IPv6 addresses and ICMPv6 matches in pf.conf is not
|
||||
supported at this time.
|
||||
- Import of TCP flag matches for flags 'E' and 'W' is not supported.
|
||||
- Import of "include" clause is not supported
|
||||
|
||||
2011-05-26 Vadim Kurland <vadim@netcitadel.com>
|
||||
|
||||
|
||||
+313
-312
@@ -44,214 +44,215 @@ PFCfgLexer::PFCfgLexer(const ANTLR_USE_NAMESPACE(antlr)LexerSharedInputState& st
|
||||
|
||||
void PFCfgLexer::initLiterals()
|
||||
{
|
||||
literals["badhead"] = 197;
|
||||
literals["notifications"] = 231;
|
||||
literals["state-policy"] = 25;
|
||||
literals["floating"] = 27;
|
||||
literals["no"] = 83;
|
||||
literals["counters"] = 71;
|
||||
literals["esp"] = 125;
|
||||
literals["routersol"] = 156;
|
||||
literals["frags"] = 59;
|
||||
literals["reply-to"] = 138;
|
||||
literals["icmp.first"] = 48;
|
||||
literals["string-key"] = 98;
|
||||
literals["gre"] = 124;
|
||||
literals["pass"] = 85;
|
||||
literals["scrub"] = 64;
|
||||
literals["warnings"] = 232;
|
||||
literals["skip"] = 31;
|
||||
literals["timeout"] = 12;
|
||||
literals["eigrp"] = 127;
|
||||
literals["icmp-type"] = 147;
|
||||
literals["transit"] = 195;
|
||||
literals["inet"] = 114;
|
||||
literals["no-df"] = 142;
|
||||
literals["network"] = 76;
|
||||
literals["photuris"] = 172;
|
||||
literals["igmp"] = 119;
|
||||
literals["unreach"] = 150;
|
||||
literals["range"] = 224;
|
||||
literals["rsvp"] = 123;
|
||||
literals["debugging"] = 227;
|
||||
literals["host-tos"] = 185;
|
||||
literals["paramprob"] = 158;
|
||||
literals["user"] = 111;
|
||||
literals["interface"] = 213;
|
||||
literals["adaptive.end"] = 57;
|
||||
literals["limit"] = 20;
|
||||
literals["state-defaults"] = 28;
|
||||
literals["hex-key"] = 97;
|
||||
literals["net-unk"] = 179;
|
||||
literals["antispoof"] = 8;
|
||||
literals["udp.single"] = 46;
|
||||
literals["inforeq"] = 161;
|
||||
literals["ipv6-here"] = 169;
|
||||
literals["redir"] = 152;
|
||||
literals["static-port"] = 87;
|
||||
literals["common-adv"] = 194;
|
||||
literals["loginterface"] = 21;
|
||||
literals["ip"] = 117;
|
||||
literals["mobregreq"] = 170;
|
||||
literals["conservative"] = 16;
|
||||
literals["ospf"] = 128;
|
||||
literals["proto-unr"] = 175;
|
||||
literals["peer"] = 78;
|
||||
literals["inforep"] = 162;
|
||||
literals["errors"] = 229;
|
||||
literals["tables-entries"] = 63;
|
||||
literals["any"] = 135;
|
||||
literals["mobregrep"] = 171;
|
||||
literals["label"] = 210;
|
||||
literals["pptp"] = 220;
|
||||
literals["synproxy"] = 208;
|
||||
literals["debug"] = 36;
|
||||
literals["alerts"] = 225;
|
||||
literals["all"] = 110;
|
||||
literals["state"] = 209;
|
||||
literals["tag"] = 205;
|
||||
literals["in"] = 107;
|
||||
literals["tables"] = 62;
|
||||
literals["file"] = 72;
|
||||
literals["nos"] = 217;
|
||||
literals["src-nodes"] = 61;
|
||||
literals["ipv6-where"] = 168;
|
||||
literals["require-order"] = 29;
|
||||
literals["udp"] = 121;
|
||||
literals["states"] = 60;
|
||||
literals["sticky-address"] = 100;
|
||||
literals["return-icmp"] = 105;
|
||||
literals["redir-tos-net"] = 191;
|
||||
literals["pim"] = 219;
|
||||
literals["emergencies"] = 228;
|
||||
literals["squench"] = 151;
|
||||
literals["disable"] = 233;
|
||||
literals["flags"] = 146;
|
||||
literals["tcp"] = 120;
|
||||
literals["net-tos"] = 184;
|
||||
literals["reassemble"] = 37;
|
||||
literals["adaptive.start"] = 56;
|
||||
literals["frag"] = 53;
|
||||
literals["port"] = 91;
|
||||
literals["icmp"] = 118;
|
||||
literals["to"] = 112;
|
||||
literals["return-rst"] = 103;
|
||||
literals["normal-adv"] = 193;
|
||||
literals["optimization"] = 14;
|
||||
literals["log"] = 109;
|
||||
literals["fragment"] = 139;
|
||||
literals["snp"] = 222;
|
||||
literals["broadcast"] = 77;
|
||||
literals["icmp6-type"] = 203;
|
||||
literals["normal"] = 18;
|
||||
literals["code"] = 148;
|
||||
literals["if-bound"] = 26;
|
||||
literals["src.track"] = 55;
|
||||
literals["drop-ovl"] = 141;
|
||||
literals["routeradv"] = 155;
|
||||
literals["other.single"] = 51;
|
||||
literals["bitmask"] = 94;
|
||||
literals["maskreq"] = 163;
|
||||
literals["ipip"] = 129;
|
||||
literals["tcp.closed"] = 44;
|
||||
literals["block"] = 102;
|
||||
literals["high-latency"] = 17;
|
||||
literals["udp.first"] = 45;
|
||||
literals["badlen"] = 199;
|
||||
literals["tcp.first"] = 39;
|
||||
literals["host-unr"] = 174;
|
||||
literals["ah"] = 126;
|
||||
literals["random-id"] = 145;
|
||||
literals["modulate"] = 207;
|
||||
literals["interval"] = 54;
|
||||
literals["maskrep"] = 164;
|
||||
literals["ruleset-optimization"] = 13;
|
||||
literals["trace"] = 165;
|
||||
literals["rip"] = 221;
|
||||
literals["urpf-failed"] = 134;
|
||||
literals["set"] = 11;
|
||||
literals["source-hash"] = 96;
|
||||
literals["critical"] = 226;
|
||||
literals["quit"] = 212;
|
||||
literals["icmp.error"] = 49;
|
||||
literals["const"] = 70;
|
||||
literals["altq"] = 9;
|
||||
literals["tcp.closing"] = 42;
|
||||
literals["port-unr"] = 176;
|
||||
literals["table"] = 66;
|
||||
literals["redir-tos-host"] = 192;
|
||||
literals["fingerprints"] = 30;
|
||||
literals["return"] = 24;
|
||||
literals["optmiss"] = 198;
|
||||
literals["match"] = 65;
|
||||
literals["keep"] = 206;
|
||||
literals["net-prohib"] = 182;
|
||||
literals["inet6"] = 115;
|
||||
literals["from"] = 133;
|
||||
literals["tcp.finwait"] = 43;
|
||||
literals["hostid"] = 38;
|
||||
literals["proto"] = 116;
|
||||
literals["vrrp"] = 130;
|
||||
literals["drop"] = 23;
|
||||
literals["l2tp"] = 131;
|
||||
literals["max-mss"] = 144;
|
||||
literals["isolate"] = 181;
|
||||
literals["timereq"] = 159;
|
||||
literals["aggressive"] = 15;
|
||||
literals["icmp6"] = 214;
|
||||
literals["echoreq"] = 154;
|
||||
literals["tcp.established"] = 41;
|
||||
literals["decrypt-fail"] = 202;
|
||||
literals["mobredir"] = 167;
|
||||
literals["other.first"] = 50;
|
||||
literals["ipsec"] = 216;
|
||||
literals["no-route"] = 136;
|
||||
literals["random"] = 95;
|
||||
literals["binat"] = 101;
|
||||
literals["srcfail"] = 178;
|
||||
literals["self"] = 79;
|
||||
literals["timerep"] = 160;
|
||||
literals["crop"] = 140;
|
||||
literals["host-preced"] = 187;
|
||||
literals["host"] = 223;
|
||||
literals["echorep"] = 149;
|
||||
literals["other.multiple"] = 52;
|
||||
literals["althost"] = 153;
|
||||
literals["udp.multiple"] = 47;
|
||||
literals["cutoff-preced"] = 188;
|
||||
literals["redir-host"] = 190;
|
||||
literals["rdr"] = 88;
|
||||
literals["tagged"] = 204;
|
||||
literals["on"] = 32;
|
||||
literals["round-robin"] = 99;
|
||||
literals["pcp"] = 218;
|
||||
literals["block-policy"] = 22;
|
||||
literals["persist"] = 69;
|
||||
literals["unknown-ind"] = 200;
|
||||
literals["redir-net"] = 189;
|
||||
literals["filter-prohib"] = 186;
|
||||
literals["nat"] = 84;
|
||||
literals["satellite"] = 19;
|
||||
literals["informational"] = 230;
|
||||
literals["needfrag"] = 177;
|
||||
literals["tcp.opening"] = 40;
|
||||
literals["igrp"] = 215;
|
||||
literals["quick"] = 113;
|
||||
literals["timex"] = 157;
|
||||
literals["host-unk"] = 180;
|
||||
literals["route-to"] = 137;
|
||||
literals["dataconv"] = 166;
|
||||
literals["rdp"] = 122;
|
||||
literals["net-unr"] = 173;
|
||||
literals["queue"] = 10;
|
||||
literals["isis"] = 132;
|
||||
literals["reassemb"] = 196;
|
||||
literals["inactive"] = 234;
|
||||
literals["out"] = 108;
|
||||
literals["min-ttl"] = 143;
|
||||
literals["auth-fail"] = 201;
|
||||
literals["exit"] = 211;
|
||||
literals["host-prohib"] = 183;
|
||||
literals["badhead"] = 198;
|
||||
literals["notifications"] = 232;
|
||||
literals["state-policy"] = 26;
|
||||
literals["floating"] = 28;
|
||||
literals["no"] = 84;
|
||||
literals["counters"] = 72;
|
||||
literals["esp"] = 126;
|
||||
literals["routersol"] = 157;
|
||||
literals["frags"] = 60;
|
||||
literals["reply-to"] = 139;
|
||||
literals["icmp.first"] = 49;
|
||||
literals["string-key"] = 99;
|
||||
literals["gre"] = 125;
|
||||
literals["pass"] = 86;
|
||||
literals["scrub"] = 65;
|
||||
literals["warnings"] = 233;
|
||||
literals["include"] = 6;
|
||||
literals["skip"] = 32;
|
||||
literals["timeout"] = 13;
|
||||
literals["eigrp"] = 128;
|
||||
literals["icmp-type"] = 148;
|
||||
literals["transit"] = 196;
|
||||
literals["inet"] = 115;
|
||||
literals["no-df"] = 143;
|
||||
literals["network"] = 77;
|
||||
literals["photuris"] = 173;
|
||||
literals["igmp"] = 120;
|
||||
literals["unreach"] = 151;
|
||||
literals["range"] = 225;
|
||||
literals["rsvp"] = 124;
|
||||
literals["debugging"] = 228;
|
||||
literals["host-tos"] = 186;
|
||||
literals["paramprob"] = 159;
|
||||
literals["user"] = 112;
|
||||
literals["interface"] = 214;
|
||||
literals["adaptive.end"] = 58;
|
||||
literals["limit"] = 21;
|
||||
literals["state-defaults"] = 29;
|
||||
literals["hex-key"] = 98;
|
||||
literals["net-unk"] = 180;
|
||||
literals["antispoof"] = 9;
|
||||
literals["udp.single"] = 47;
|
||||
literals["inforeq"] = 162;
|
||||
literals["ipv6-here"] = 170;
|
||||
literals["redir"] = 153;
|
||||
literals["static-port"] = 88;
|
||||
literals["common-adv"] = 195;
|
||||
literals["loginterface"] = 22;
|
||||
literals["ip"] = 118;
|
||||
literals["mobregreq"] = 171;
|
||||
literals["conservative"] = 17;
|
||||
literals["ospf"] = 129;
|
||||
literals["proto-unr"] = 176;
|
||||
literals["peer"] = 79;
|
||||
literals["inforep"] = 163;
|
||||
literals["errors"] = 230;
|
||||
literals["tables-entries"] = 64;
|
||||
literals["any"] = 136;
|
||||
literals["mobregrep"] = 172;
|
||||
literals["label"] = 211;
|
||||
literals["pptp"] = 221;
|
||||
literals["synproxy"] = 209;
|
||||
literals["debug"] = 37;
|
||||
literals["alerts"] = 226;
|
||||
literals["all"] = 111;
|
||||
literals["state"] = 210;
|
||||
literals["tag"] = 206;
|
||||
literals["in"] = 108;
|
||||
literals["tables"] = 63;
|
||||
literals["file"] = 73;
|
||||
literals["nos"] = 218;
|
||||
literals["src-nodes"] = 62;
|
||||
literals["ipv6-where"] = 169;
|
||||
literals["require-order"] = 30;
|
||||
literals["udp"] = 122;
|
||||
literals["states"] = 61;
|
||||
literals["sticky-address"] = 101;
|
||||
literals["return-icmp"] = 106;
|
||||
literals["redir-tos-net"] = 192;
|
||||
literals["pim"] = 220;
|
||||
literals["emergencies"] = 229;
|
||||
literals["squench"] = 152;
|
||||
literals["disable"] = 234;
|
||||
literals["flags"] = 147;
|
||||
literals["tcp"] = 121;
|
||||
literals["net-tos"] = 185;
|
||||
literals["reassemble"] = 38;
|
||||
literals["adaptive.start"] = 57;
|
||||
literals["frag"] = 54;
|
||||
literals["port"] = 92;
|
||||
literals["icmp"] = 119;
|
||||
literals["to"] = 113;
|
||||
literals["return-rst"] = 104;
|
||||
literals["normal-adv"] = 194;
|
||||
literals["optimization"] = 15;
|
||||
literals["log"] = 110;
|
||||
literals["fragment"] = 140;
|
||||
literals["snp"] = 223;
|
||||
literals["broadcast"] = 78;
|
||||
literals["icmp6-type"] = 204;
|
||||
literals["normal"] = 19;
|
||||
literals["code"] = 149;
|
||||
literals["if-bound"] = 27;
|
||||
literals["src.track"] = 56;
|
||||
literals["drop-ovl"] = 142;
|
||||
literals["routeradv"] = 156;
|
||||
literals["other.single"] = 52;
|
||||
literals["bitmask"] = 95;
|
||||
literals["maskreq"] = 164;
|
||||
literals["ipip"] = 130;
|
||||
literals["tcp.closed"] = 45;
|
||||
literals["block"] = 103;
|
||||
literals["high-latency"] = 18;
|
||||
literals["udp.first"] = 46;
|
||||
literals["badlen"] = 200;
|
||||
literals["tcp.first"] = 40;
|
||||
literals["host-unr"] = 175;
|
||||
literals["ah"] = 127;
|
||||
literals["random-id"] = 146;
|
||||
literals["modulate"] = 208;
|
||||
literals["interval"] = 55;
|
||||
literals["maskrep"] = 165;
|
||||
literals["ruleset-optimization"] = 14;
|
||||
literals["trace"] = 166;
|
||||
literals["rip"] = 222;
|
||||
literals["urpf-failed"] = 135;
|
||||
literals["set"] = 12;
|
||||
literals["source-hash"] = 97;
|
||||
literals["critical"] = 227;
|
||||
literals["quit"] = 213;
|
||||
literals["icmp.error"] = 50;
|
||||
literals["const"] = 71;
|
||||
literals["altq"] = 10;
|
||||
literals["tcp.closing"] = 43;
|
||||
literals["port-unr"] = 177;
|
||||
literals["table"] = 67;
|
||||
literals["redir-tos-host"] = 193;
|
||||
literals["fingerprints"] = 31;
|
||||
literals["return"] = 25;
|
||||
literals["optmiss"] = 199;
|
||||
literals["match"] = 66;
|
||||
literals["keep"] = 207;
|
||||
literals["net-prohib"] = 183;
|
||||
literals["inet6"] = 116;
|
||||
literals["from"] = 134;
|
||||
literals["tcp.finwait"] = 44;
|
||||
literals["hostid"] = 39;
|
||||
literals["proto"] = 117;
|
||||
literals["vrrp"] = 131;
|
||||
literals["drop"] = 24;
|
||||
literals["l2tp"] = 132;
|
||||
literals["max-mss"] = 145;
|
||||
literals["isolate"] = 182;
|
||||
literals["timereq"] = 160;
|
||||
literals["aggressive"] = 16;
|
||||
literals["icmp6"] = 215;
|
||||
literals["echoreq"] = 155;
|
||||
literals["tcp.established"] = 42;
|
||||
literals["decrypt-fail"] = 203;
|
||||
literals["mobredir"] = 168;
|
||||
literals["other.first"] = 51;
|
||||
literals["ipsec"] = 217;
|
||||
literals["no-route"] = 137;
|
||||
literals["random"] = 96;
|
||||
literals["binat"] = 102;
|
||||
literals["srcfail"] = 179;
|
||||
literals["self"] = 80;
|
||||
literals["timerep"] = 161;
|
||||
literals["crop"] = 141;
|
||||
literals["host-preced"] = 188;
|
||||
literals["host"] = 224;
|
||||
literals["echorep"] = 150;
|
||||
literals["other.multiple"] = 53;
|
||||
literals["althost"] = 154;
|
||||
literals["udp.multiple"] = 48;
|
||||
literals["cutoff-preced"] = 189;
|
||||
literals["redir-host"] = 191;
|
||||
literals["rdr"] = 89;
|
||||
literals["tagged"] = 205;
|
||||
literals["on"] = 33;
|
||||
literals["round-robin"] = 100;
|
||||
literals["pcp"] = 219;
|
||||
literals["block-policy"] = 23;
|
||||
literals["persist"] = 70;
|
||||
literals["unknown-ind"] = 201;
|
||||
literals["redir-net"] = 190;
|
||||
literals["filter-prohib"] = 187;
|
||||
literals["nat"] = 85;
|
||||
literals["satellite"] = 20;
|
||||
literals["informational"] = 231;
|
||||
literals["needfrag"] = 178;
|
||||
literals["tcp.opening"] = 41;
|
||||
literals["igrp"] = 216;
|
||||
literals["quick"] = 114;
|
||||
literals["timex"] = 158;
|
||||
literals["host-unk"] = 181;
|
||||
literals["route-to"] = 138;
|
||||
literals["dataconv"] = 167;
|
||||
literals["rdp"] = 123;
|
||||
literals["net-unr"] = 174;
|
||||
literals["queue"] = 11;
|
||||
literals["isis"] = 133;
|
||||
literals["reassemb"] = 197;
|
||||
literals["inactive"] = 235;
|
||||
literals["out"] = 109;
|
||||
literals["min-ttl"] = 144;
|
||||
literals["auth-fail"] = 202;
|
||||
literals["exit"] = 212;
|
||||
literals["host-prohib"] = 184;
|
||||
}
|
||||
|
||||
ANTLR_USE_NAMESPACE(antlr)RefToken PFCfgLexer::nextToken()
|
||||
@@ -559,11 +560,11 @@ void PFCfgLexer::mLINE_COMMENT(bool _createToken) {
|
||||
}
|
||||
}
|
||||
else {
|
||||
goto _loop255;
|
||||
goto _loop256;
|
||||
}
|
||||
|
||||
}
|
||||
_loop255:;
|
||||
_loop256:;
|
||||
} // ( ... )*
|
||||
mNEWLINE(false);
|
||||
if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
|
||||
@@ -595,9 +596,9 @@ void PFCfgLexer::mNEWLINE(bool _createToken) {
|
||||
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1918 "pf.g"
|
||||
#line 1933 "pf.g"
|
||||
newline();
|
||||
#line 601 "PFCfgLexer.cpp"
|
||||
#line 602 "PFCfgLexer.cpp"
|
||||
}
|
||||
if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
|
||||
_token = makeToken(_ttype);
|
||||
@@ -676,9 +677,9 @@ void PFCfgLexer::mWhitespace(bool _createToken) {
|
||||
}
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1913 "pf.g"
|
||||
#line 1928 "pf.g"
|
||||
_ttype = ANTLR_USE_NAMESPACE(antlr)Token::SKIP;
|
||||
#line 682 "PFCfgLexer.cpp"
|
||||
#line 683 "PFCfgLexer.cpp"
|
||||
}
|
||||
if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
|
||||
_token = makeToken(_ttype);
|
||||
@@ -903,10 +904,10 @@ void PFCfgLexer::mNUMBER_ADDRESS_OR_WORD(bool _createToken) {
|
||||
_ttype = NUMBER_ADDRESS_OR_WORD;
|
||||
ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
|
||||
|
||||
bool synPredMatched308 = false;
|
||||
bool synPredMatched309 = false;
|
||||
if ((((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (_tokenSet_3.member(LA(2))) && (_tokenSet_3.member(LA(3))))) {
|
||||
int _m308 = mark();
|
||||
synPredMatched308 = true;
|
||||
int _m309 = mark();
|
||||
synPredMatched309 = true;
|
||||
inputState->guessing++;
|
||||
try {
|
||||
{
|
||||
@@ -917,12 +918,12 @@ void PFCfgLexer::mNUMBER_ADDRESS_OR_WORD(bool _createToken) {
|
||||
}
|
||||
}
|
||||
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
|
||||
synPredMatched308 = false;
|
||||
synPredMatched309 = false;
|
||||
}
|
||||
rewind(_m308);
|
||||
rewind(_m309);
|
||||
inputState->guessing--;
|
||||
}
|
||||
if ( synPredMatched308 ) {
|
||||
if ( synPredMatched309 ) {
|
||||
{
|
||||
mNUM_3DIGIT(false);
|
||||
match('.' /* charlit */ );
|
||||
@@ -933,144 +934,144 @@ void PFCfgLexer::mNUMBER_ADDRESS_OR_WORD(bool _createToken) {
|
||||
mNUM_3DIGIT(false);
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1973 "pf.g"
|
||||
#line 1988 "pf.g"
|
||||
_ttype = IPV4;
|
||||
#line 939 "PFCfgLexer.cpp"
|
||||
#line 940 "PFCfgLexer.cpp"
|
||||
}
|
||||
}
|
||||
else {
|
||||
bool synPredMatched315 = false;
|
||||
bool synPredMatched316 = false;
|
||||
if ((((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (_tokenSet_3.member(LA(2))) && (_tokenSet_3.member(LA(3))))) {
|
||||
int _m315 = mark();
|
||||
synPredMatched315 = true;
|
||||
int _m316 = mark();
|
||||
synPredMatched316 = true;
|
||||
inputState->guessing++;
|
||||
try {
|
||||
{
|
||||
{ // ( ... )+
|
||||
int _cnt312=0;
|
||||
int _cnt313=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt312>=1 ) { goto _loop312; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt313>=1 ) { goto _loop313; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt312++;
|
||||
_cnt313++;
|
||||
}
|
||||
_loop312:;
|
||||
_loop313:;
|
||||
} // ( ... )+
|
||||
match('.' /* charlit */ );
|
||||
{ // ( ... )+
|
||||
int _cnt314=0;
|
||||
int _cnt315=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt314>=1 ) { goto _loop314; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt315>=1 ) { goto _loop315; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt314++;
|
||||
_cnt315++;
|
||||
}
|
||||
_loop314:;
|
||||
_loop315:;
|
||||
} // ( ... )+
|
||||
}
|
||||
}
|
||||
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
|
||||
synPredMatched315 = false;
|
||||
synPredMatched316 = false;
|
||||
}
|
||||
rewind(_m315);
|
||||
rewind(_m316);
|
||||
inputState->guessing--;
|
||||
}
|
||||
if ( synPredMatched315 ) {
|
||||
if ( synPredMatched316 ) {
|
||||
{
|
||||
{ // ( ... )+
|
||||
int _cnt318=0;
|
||||
int _cnt319=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt318>=1 ) { goto _loop318; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt319>=1 ) { goto _loop319; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt318++;
|
||||
_cnt319++;
|
||||
}
|
||||
_loop318:;
|
||||
_loop319:;
|
||||
} // ( ... )+
|
||||
match('.' /* charlit */ );
|
||||
{ // ( ... )+
|
||||
int _cnt320=0;
|
||||
int _cnt321=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt320>=1 ) { goto _loop320; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt321>=1 ) { goto _loop321; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt320++;
|
||||
_cnt321++;
|
||||
}
|
||||
_loop320:;
|
||||
_loop321:;
|
||||
} // ( ... )+
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1976 "pf.g"
|
||||
#line 1991 "pf.g"
|
||||
_ttype = NUMBER;
|
||||
#line 1022 "PFCfgLexer.cpp"
|
||||
#line 1023 "PFCfgLexer.cpp"
|
||||
}
|
||||
}
|
||||
else {
|
||||
bool synPredMatched283 = false;
|
||||
bool synPredMatched284 = false;
|
||||
if (((_tokenSet_2.member(LA(1))) && (_tokenSet_4.member(LA(2))) && (true))) {
|
||||
int _m283 = mark();
|
||||
synPredMatched283 = true;
|
||||
int _m284 = mark();
|
||||
synPredMatched284 = true;
|
||||
inputState->guessing++;
|
||||
try {
|
||||
{
|
||||
{ // ( ... )+
|
||||
int _cnt282=0;
|
||||
int _cnt283=0;
|
||||
for (;;) {
|
||||
if ((_tokenSet_2.member(LA(1)))) {
|
||||
mHEX_DIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt282>=1 ) { goto _loop282; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt283>=1 ) { goto _loop283; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt282++;
|
||||
_cnt283++;
|
||||
}
|
||||
_loop282:;
|
||||
_loop283:;
|
||||
} // ( ... )+
|
||||
match(':' /* charlit */ );
|
||||
}
|
||||
}
|
||||
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
|
||||
synPredMatched283 = false;
|
||||
synPredMatched284 = false;
|
||||
}
|
||||
rewind(_m283);
|
||||
rewind(_m284);
|
||||
inputState->guessing--;
|
||||
}
|
||||
if ( synPredMatched283 ) {
|
||||
if ( synPredMatched284 ) {
|
||||
{
|
||||
{
|
||||
{ // ( ... )+
|
||||
int _cnt287=0;
|
||||
int _cnt288=0;
|
||||
for (;;) {
|
||||
if ((_tokenSet_2.member(LA(1)))) {
|
||||
mHEX_DIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt287>=1 ) { goto _loop287; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt288>=1 ) { goto _loop288; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt287++;
|
||||
_cnt288++;
|
||||
}
|
||||
_loop287:;
|
||||
_loop288:;
|
||||
} // ( ... )+
|
||||
{ // ( ... )+
|
||||
int _cnt291=0;
|
||||
int _cnt292=0;
|
||||
for (;;) {
|
||||
if ((LA(1) == 0x3a /* ':' */ )) {
|
||||
match(':' /* charlit */ );
|
||||
@@ -1080,34 +1081,34 @@ void PFCfgLexer::mNUMBER_ADDRESS_OR_WORD(bool _createToken) {
|
||||
mHEX_DIGIT(false);
|
||||
}
|
||||
else {
|
||||
goto _loop290;
|
||||
goto _loop291;
|
||||
}
|
||||
|
||||
}
|
||||
_loop290:;
|
||||
_loop291:;
|
||||
} // ( ... )*
|
||||
}
|
||||
else {
|
||||
if ( _cnt291>=1 ) { goto _loop291; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt292>=1 ) { goto _loop292; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt291++;
|
||||
_cnt292++;
|
||||
}
|
||||
_loop291:;
|
||||
_loop292:;
|
||||
} // ( ... )+
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1958 "pf.g"
|
||||
#line 1973 "pf.g"
|
||||
_ttype = IPV6;
|
||||
#line 1103 "PFCfgLexer.cpp"
|
||||
#line 1104 "PFCfgLexer.cpp"
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
bool synPredMatched293 = false;
|
||||
bool synPredMatched294 = false;
|
||||
if (((LA(1) == 0x3a /* ':' */ ))) {
|
||||
int _m293 = mark();
|
||||
synPredMatched293 = true;
|
||||
int _m294 = mark();
|
||||
synPredMatched294 = true;
|
||||
inputState->guessing++;
|
||||
try {
|
||||
{
|
||||
@@ -1115,93 +1116,93 @@ void PFCfgLexer::mNUMBER_ADDRESS_OR_WORD(bool _createToken) {
|
||||
}
|
||||
}
|
||||
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
|
||||
synPredMatched293 = false;
|
||||
synPredMatched294 = false;
|
||||
}
|
||||
rewind(_m293);
|
||||
rewind(_m294);
|
||||
inputState->guessing--;
|
||||
}
|
||||
if ( synPredMatched293 ) {
|
||||
if ( synPredMatched294 ) {
|
||||
{
|
||||
bool synPredMatched298 = false;
|
||||
bool synPredMatched299 = false;
|
||||
if (((LA(1) == 0x3a /* ':' */ ) && (LA(2) == 0x3a /* ':' */ ) && (_tokenSet_2.member(LA(3))))) {
|
||||
int _m298 = mark();
|
||||
synPredMatched298 = true;
|
||||
int _m299 = mark();
|
||||
synPredMatched299 = true;
|
||||
inputState->guessing++;
|
||||
try {
|
||||
{
|
||||
match(':' /* charlit */ );
|
||||
match(':' /* charlit */ );
|
||||
{ // ( ... )+
|
||||
int _cnt297=0;
|
||||
int _cnt298=0;
|
||||
for (;;) {
|
||||
if ((_tokenSet_2.member(LA(1)))) {
|
||||
mHEX_DIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt297>=1 ) { goto _loop297; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt298>=1 ) { goto _loop298; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt297++;
|
||||
_cnt298++;
|
||||
}
|
||||
_loop297:;
|
||||
_loop298:;
|
||||
} // ( ... )+
|
||||
}
|
||||
}
|
||||
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
|
||||
synPredMatched298 = false;
|
||||
synPredMatched299 = false;
|
||||
}
|
||||
rewind(_m298);
|
||||
rewind(_m299);
|
||||
inputState->guessing--;
|
||||
}
|
||||
if ( synPredMatched298 ) {
|
||||
if ( synPredMatched299 ) {
|
||||
{
|
||||
match(':' /* charlit */ );
|
||||
match(':' /* charlit */ );
|
||||
{ // ( ... )+
|
||||
int _cnt301=0;
|
||||
int _cnt302=0;
|
||||
for (;;) {
|
||||
if ((_tokenSet_2.member(LA(1)))) {
|
||||
mHEX_DIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt301>=1 ) { goto _loop301; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt302>=1 ) { goto _loop302; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt301++;
|
||||
_cnt302++;
|
||||
}
|
||||
_loop301:;
|
||||
_loop302:;
|
||||
} // ( ... )+
|
||||
{ // ( ... )*
|
||||
for (;;) {
|
||||
if ((LA(1) == 0x3a /* ':' */ )) {
|
||||
match(':' /* charlit */ );
|
||||
{ // ( ... )+
|
||||
int _cnt304=0;
|
||||
int _cnt305=0;
|
||||
for (;;) {
|
||||
if ((_tokenSet_2.member(LA(1)))) {
|
||||
mHEX_DIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt304>=1 ) { goto _loop304; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt305>=1 ) { goto _loop305; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt304++;
|
||||
_cnt305++;
|
||||
}
|
||||
_loop304:;
|
||||
_loop305:;
|
||||
} // ( ... )+
|
||||
}
|
||||
else {
|
||||
goto _loop305;
|
||||
goto _loop306;
|
||||
}
|
||||
|
||||
}
|
||||
_loop305:;
|
||||
_loop306:;
|
||||
} // ( ... )*
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1964 "pf.g"
|
||||
#line 1979 "pf.g"
|
||||
_ttype = IPV6;
|
||||
#line 1205 "PFCfgLexer.cpp"
|
||||
#line 1206 "PFCfgLexer.cpp"
|
||||
}
|
||||
}
|
||||
else if ((LA(1) == 0x3a /* ':' */ ) && (LA(2) == 0x3a /* ':' */ ) && (true)) {
|
||||
@@ -1210,17 +1211,17 @@ void PFCfgLexer::mNUMBER_ADDRESS_OR_WORD(bool _createToken) {
|
||||
match(':' /* charlit */ );
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1966 "pf.g"
|
||||
#line 1981 "pf.g"
|
||||
_ttype = IPV6;
|
||||
#line 1216 "PFCfgLexer.cpp"
|
||||
#line 1217 "PFCfgLexer.cpp"
|
||||
}
|
||||
}
|
||||
else if ((LA(1) == 0x3a /* ':' */ ) && (true)) {
|
||||
match(':' /* charlit */ );
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1968 "pf.g"
|
||||
#line 1983 "pf.g"
|
||||
_ttype = COLON;
|
||||
#line 1224 "PFCfgLexer.cpp"
|
||||
#line 1225 "PFCfgLexer.cpp"
|
||||
}
|
||||
}
|
||||
else {
|
||||
@@ -1231,23 +1232,23 @@ void PFCfgLexer::mNUMBER_ADDRESS_OR_WORD(bool _createToken) {
|
||||
}
|
||||
else if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (true) && (true)) {
|
||||
{ // ( ... )+
|
||||
int _cnt322=0;
|
||||
int _cnt323=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt322>=1 ) { goto _loop322; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt323>=1 ) { goto _loop323; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt322++;
|
||||
_cnt323++;
|
||||
}
|
||||
_loop322:;
|
||||
_loop323:;
|
||||
} // ( ... )+
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1978 "pf.g"
|
||||
#line 1993 "pf.g"
|
||||
_ttype = INT_CONST;
|
||||
#line 1251 "PFCfgLexer.cpp"
|
||||
#line 1252 "PFCfgLexer.cpp"
|
||||
}
|
||||
}
|
||||
else if ((_tokenSet_5.member(LA(1))) && (true) && (true)) {
|
||||
@@ -1463,16 +1464,16 @@ void PFCfgLexer::mNUMBER_ADDRESS_OR_WORD(bool _createToken) {
|
||||
}
|
||||
default:
|
||||
{
|
||||
goto _loop325;
|
||||
goto _loop326;
|
||||
}
|
||||
}
|
||||
}
|
||||
_loop325:;
|
||||
_loop326:;
|
||||
} // ( ... )*
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1989 "pf.g"
|
||||
#line 2004 "pf.g"
|
||||
_ttype = WORD;
|
||||
#line 1476 "PFCfgLexer.cpp"
|
||||
#line 1477 "PFCfgLexer.cpp"
|
||||
}
|
||||
}
|
||||
else {
|
||||
@@ -1500,11 +1501,11 @@ void PFCfgLexer::mSTRING(bool _createToken) {
|
||||
matchNot('\"' /* charlit */ );
|
||||
}
|
||||
else {
|
||||
goto _loop328;
|
||||
goto _loop329;
|
||||
}
|
||||
|
||||
}
|
||||
_loop328:;
|
||||
_loop329:;
|
||||
} // ( ... )*
|
||||
match('\"' /* charlit */ );
|
||||
if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
|
||||
|
||||
+812
-690
File diff suppressed because it is too large
Load Diff
@@ -91,6 +91,7 @@ public:
|
||||
}
|
||||
public: void cfgfile();
|
||||
public: void comment();
|
||||
public: void include_command();
|
||||
public: void macro_definition();
|
||||
public: void altq_rule();
|
||||
public: void antispoof_rule();
|
||||
@@ -195,10 +196,10 @@ protected:
|
||||
private:
|
||||
static const char* tokenNames[];
|
||||
#ifndef NO_STATIC_CONSTS
|
||||
static const int NUM_TOKENS = 259;
|
||||
static const int NUM_TOKENS = 260;
|
||||
#else
|
||||
enum {
|
||||
NUM_TOKENS = 259
|
||||
NUM_TOKENS = 260
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
@@ -14,259 +14,260 @@ struct CUSTOM_API PFCfgParserTokenTypes {
|
||||
EOF_ = 1,
|
||||
NEWLINE = 4,
|
||||
LINE_COMMENT = 5,
|
||||
WORD = 6,
|
||||
EQUAL = 7,
|
||||
ANTISPOOF = 8,
|
||||
ALTQ = 9,
|
||||
QUEUE = 10,
|
||||
SET = 11,
|
||||
TIMEOUT = 12,
|
||||
// "ruleset-optimization" = 13
|
||||
LITERAL_optimization = 14,
|
||||
LITERAL_aggressive = 15,
|
||||
LITERAL_conservative = 16,
|
||||
// "high-latency" = 17
|
||||
LITERAL_normal = 18,
|
||||
LITERAL_satellite = 19,
|
||||
LITERAL_limit = 20,
|
||||
LITERAL_loginterface = 21,
|
||||
// "block-policy" = 22
|
||||
DROP = 23,
|
||||
RETURN = 24,
|
||||
// "state-policy" = 25
|
||||
// "if-bound" = 26
|
||||
LITERAL_floating = 27,
|
||||
// "state-defaults" = 28
|
||||
// "require-order" = 29
|
||||
LITERAL_fingerprints = 30,
|
||||
LITERAL_skip = 31,
|
||||
ON = 32,
|
||||
OPENING_BRACE = 33,
|
||||
COMMA = 34,
|
||||
CLOSING_BRACE = 35,
|
||||
LITERAL_debug = 36,
|
||||
LITERAL_reassemble = 37,
|
||||
LITERAL_hostid = 38,
|
||||
// "tcp.first" = 39
|
||||
// "tcp.opening" = 40
|
||||
// "tcp.established" = 41
|
||||
// "tcp.closing" = 42
|
||||
// "tcp.finwait" = 43
|
||||
// "tcp.closed" = 44
|
||||
// "udp.first" = 45
|
||||
// "udp.single" = 46
|
||||
// "udp.multiple" = 47
|
||||
// "icmp.first" = 48
|
||||
// "icmp.error" = 49
|
||||
// "other.first" = 50
|
||||
// "other.single" = 51
|
||||
// "other.multiple" = 52
|
||||
LITERAL_frag = 53,
|
||||
LITERAL_interval = 54,
|
||||
// "src.track" = 55
|
||||
// "adaptive.start" = 56
|
||||
// "adaptive.end" = 57
|
||||
INT_CONST = 58,
|
||||
LITERAL_frags = 59,
|
||||
LITERAL_states = 60,
|
||||
// "src-nodes" = 61
|
||||
LITERAL_tables = 62,
|
||||
// "tables-entries" = 63
|
||||
SCRUB = 64,
|
||||
MATCH = 65,
|
||||
TABLE = 66,
|
||||
LESS_THAN = 67,
|
||||
GREATER_THAN = 68,
|
||||
PERSIST = 69,
|
||||
CONST_WORD = 70,
|
||||
COUNTERS = 71,
|
||||
FILE = 72,
|
||||
STRING = 73,
|
||||
EXLAMATION = 74,
|
||||
COLON = 75,
|
||||
NETWORK = 76,
|
||||
BROADCAST = 77,
|
||||
PEER = 78,
|
||||
SELF = 79,
|
||||
IPV4 = 80,
|
||||
NUMBER = 81,
|
||||
SLASH = 82,
|
||||
NO = 83,
|
||||
NAT = 84,
|
||||
PASS = 85,
|
||||
MINUS = 86,
|
||||
STATIC_PORT = 87,
|
||||
RDR = 88,
|
||||
OPENING_PAREN = 89,
|
||||
CLOSING_PAREN = 90,
|
||||
PORT = 91,
|
||||
IPV6 = 92,
|
||||
STAR = 93,
|
||||
BITMASK = 94,
|
||||
RANDOM = 95,
|
||||
SOURCE_HASH = 96,
|
||||
HEX_KEY = 97,
|
||||
STRING_KEY = 98,
|
||||
ROUND_ROBIN = 99,
|
||||
STICKY_ADDRESS = 100,
|
||||
BINAT = 101,
|
||||
BLOCK = 102,
|
||||
RETURN_RST = 103,
|
||||
TTL = 104,
|
||||
RETURN_ICMP = 105,
|
||||
RETURN_ICMP6 = 106,
|
||||
IN_WORD = 107,
|
||||
OUT_WORD = 108,
|
||||
LOG = 109,
|
||||
ALL = 110,
|
||||
USER = 111,
|
||||
TO = 112,
|
||||
QUICK = 113,
|
||||
INET = 114,
|
||||
INET6 = 115,
|
||||
PROTO = 116,
|
||||
IP = 117,
|
||||
ICMP = 118,
|
||||
IGMP = 119,
|
||||
TCP = 120,
|
||||
UDP = 121,
|
||||
RDP = 122,
|
||||
RSVP = 123,
|
||||
GRE = 124,
|
||||
ESP = 125,
|
||||
AH = 126,
|
||||
EIGRP = 127,
|
||||
OSPF = 128,
|
||||
IPIP = 129,
|
||||
VRRP = 130,
|
||||
L2TP = 131,
|
||||
ISIS = 132,
|
||||
FROM = 133,
|
||||
URPF_FAILED = 134,
|
||||
ANY = 135,
|
||||
NO_ROUTE = 136,
|
||||
ROUTE_TO = 137,
|
||||
REPLY_TO = 138,
|
||||
LITERAL_fragment = 139,
|
||||
LITERAL_crop = 140,
|
||||
// "drop-ovl" = 141
|
||||
// "no-df" = 142
|
||||
// "min-ttl" = 143
|
||||
// "max-mss" = 144
|
||||
// "random-id" = 145
|
||||
FLAGS = 146,
|
||||
ICMP_TYPE = 147,
|
||||
ICMP_CODE = 148,
|
||||
LITERAL_echorep = 149,
|
||||
LITERAL_unreach = 150,
|
||||
LITERAL_squench = 151,
|
||||
LITERAL_redir = 152,
|
||||
LITERAL_althost = 153,
|
||||
LITERAL_echoreq = 154,
|
||||
LITERAL_routeradv = 155,
|
||||
LITERAL_routersol = 156,
|
||||
LITERAL_timex = 157,
|
||||
LITERAL_paramprob = 158,
|
||||
LITERAL_timereq = 159,
|
||||
LITERAL_timerep = 160,
|
||||
LITERAL_inforeq = 161,
|
||||
LITERAL_inforep = 162,
|
||||
LITERAL_maskreq = 163,
|
||||
LITERAL_maskrep = 164,
|
||||
LITERAL_trace = 165,
|
||||
LITERAL_dataconv = 166,
|
||||
LITERAL_mobredir = 167,
|
||||
// "ipv6-where" = 168
|
||||
// "ipv6-here" = 169
|
||||
LITERAL_mobregreq = 170,
|
||||
LITERAL_mobregrep = 171,
|
||||
LITERAL_photuris = 172,
|
||||
// "net-unr" = 173
|
||||
// "host-unr" = 174
|
||||
// "proto-unr" = 175
|
||||
// "port-unr" = 176
|
||||
LITERAL_needfrag = 177,
|
||||
LITERAL_srcfail = 178,
|
||||
// "net-unk" = 179
|
||||
// "host-unk" = 180
|
||||
LITERAL_isolate = 181,
|
||||
// "net-prohib" = 182
|
||||
// "host-prohib" = 183
|
||||
// "net-tos" = 184
|
||||
// "host-tos" = 185
|
||||
// "filter-prohib" = 186
|
||||
// "host-preced" = 187
|
||||
// "cutoff-preced" = 188
|
||||
// "redir-net" = 189
|
||||
// "redir-host" = 190
|
||||
// "redir-tos-net" = 191
|
||||
// "redir-tos-host" = 192
|
||||
// "normal-adv" = 193
|
||||
// "common-adv" = 194
|
||||
LITERAL_transit = 195,
|
||||
LITERAL_reassemb = 196,
|
||||
LITERAL_badhead = 197,
|
||||
LITERAL_optmiss = 198,
|
||||
LITERAL_badlen = 199,
|
||||
// "unknown-ind" = 200
|
||||
// "auth-fail" = 201
|
||||
// "decrypt-fail" = 202
|
||||
ICMP6_TYPE = 203,
|
||||
TAGGED = 204,
|
||||
TAG = 205,
|
||||
KEEP = 206,
|
||||
MODULATE = 207,
|
||||
SYNPROXY = 208,
|
||||
STATE = 209,
|
||||
LABEL = 210,
|
||||
EXIT = 211,
|
||||
QUIT = 212,
|
||||
INTRFACE = 213,
|
||||
ICMP6 = 214,
|
||||
IGRP = 215,
|
||||
IPSEC = 216,
|
||||
NOS = 217,
|
||||
PCP = 218,
|
||||
PIM = 219,
|
||||
PPTP = 220,
|
||||
RIP = 221,
|
||||
SNP = 222,
|
||||
HOST = 223,
|
||||
RANGE = 224,
|
||||
LOG_LEVEL_ALERTS = 225,
|
||||
LOG_LEVEL_CRITICAL = 226,
|
||||
LOG_LEVEL_DEBUGGING = 227,
|
||||
LOG_LEVEL_EMERGENCIES = 228,
|
||||
LOG_LEVEL_ERRORS = 229,
|
||||
LOG_LEVEL_INFORMATIONAL = 230,
|
||||
LOG_LEVEL_NOTIFICATIONS = 231,
|
||||
LOG_LEVEL_WARNINGS = 232,
|
||||
LOG_LEVEL_DISABLE = 233,
|
||||
LOG_LEVEL_INACTIVE = 234,
|
||||
Whitespace = 235,
|
||||
HEX_CONST = 236,
|
||||
NEG_INT_CONST = 237,
|
||||
HEX_DIGIT = 238,
|
||||
DIGIT = 239,
|
||||
NUM_3DIGIT = 240,
|
||||
NUM_HEX_4DIGIT = 241,
|
||||
NUMBER_ADDRESS_OR_WORD = 242,
|
||||
PIPE_CHAR = 243,
|
||||
NUMBER_SIGN = 244,
|
||||
PERCENT = 245,
|
||||
AMPERSAND = 246,
|
||||
APOSTROPHE = 247,
|
||||
PLUS = 248,
|
||||
DOT = 249,
|
||||
SEMICOLON = 250,
|
||||
QUESTION = 251,
|
||||
COMMERCIAL_AT = 252,
|
||||
OPENING_SQUARE = 253,
|
||||
CLOSING_SQUARE = 254,
|
||||
CARET = 255,
|
||||
UNDERLINE = 256,
|
||||
TILDE = 257,
|
||||
DOUBLE_QUOTE = 258,
|
||||
INCLUDE_COMMAND = 6,
|
||||
WORD = 7,
|
||||
EQUAL = 8,
|
||||
ANTISPOOF = 9,
|
||||
ALTQ = 10,
|
||||
QUEUE = 11,
|
||||
SET = 12,
|
||||
TIMEOUT = 13,
|
||||
// "ruleset-optimization" = 14
|
||||
LITERAL_optimization = 15,
|
||||
LITERAL_aggressive = 16,
|
||||
LITERAL_conservative = 17,
|
||||
// "high-latency" = 18
|
||||
LITERAL_normal = 19,
|
||||
LITERAL_satellite = 20,
|
||||
LITERAL_limit = 21,
|
||||
LITERAL_loginterface = 22,
|
||||
// "block-policy" = 23
|
||||
DROP = 24,
|
||||
RETURN = 25,
|
||||
// "state-policy" = 26
|
||||
// "if-bound" = 27
|
||||
LITERAL_floating = 28,
|
||||
// "state-defaults" = 29
|
||||
// "require-order" = 30
|
||||
LITERAL_fingerprints = 31,
|
||||
LITERAL_skip = 32,
|
||||
ON = 33,
|
||||
OPENING_BRACE = 34,
|
||||
COMMA = 35,
|
||||
CLOSING_BRACE = 36,
|
||||
LITERAL_debug = 37,
|
||||
LITERAL_reassemble = 38,
|
||||
LITERAL_hostid = 39,
|
||||
// "tcp.first" = 40
|
||||
// "tcp.opening" = 41
|
||||
// "tcp.established" = 42
|
||||
// "tcp.closing" = 43
|
||||
// "tcp.finwait" = 44
|
||||
// "tcp.closed" = 45
|
||||
// "udp.first" = 46
|
||||
// "udp.single" = 47
|
||||
// "udp.multiple" = 48
|
||||
// "icmp.first" = 49
|
||||
// "icmp.error" = 50
|
||||
// "other.first" = 51
|
||||
// "other.single" = 52
|
||||
// "other.multiple" = 53
|
||||
LITERAL_frag = 54,
|
||||
LITERAL_interval = 55,
|
||||
// "src.track" = 56
|
||||
// "adaptive.start" = 57
|
||||
// "adaptive.end" = 58
|
||||
INT_CONST = 59,
|
||||
LITERAL_frags = 60,
|
||||
LITERAL_states = 61,
|
||||
// "src-nodes" = 62
|
||||
LITERAL_tables = 63,
|
||||
// "tables-entries" = 64
|
||||
SCRUB = 65,
|
||||
MATCH = 66,
|
||||
TABLE = 67,
|
||||
LESS_THAN = 68,
|
||||
GREATER_THAN = 69,
|
||||
PERSIST = 70,
|
||||
CONST_WORD = 71,
|
||||
COUNTERS = 72,
|
||||
FILE = 73,
|
||||
STRING = 74,
|
||||
EXLAMATION = 75,
|
||||
COLON = 76,
|
||||
NETWORK = 77,
|
||||
BROADCAST = 78,
|
||||
PEER = 79,
|
||||
SELF = 80,
|
||||
IPV4 = 81,
|
||||
NUMBER = 82,
|
||||
SLASH = 83,
|
||||
NO = 84,
|
||||
NAT = 85,
|
||||
PASS = 86,
|
||||
MINUS = 87,
|
||||
STATIC_PORT = 88,
|
||||
RDR = 89,
|
||||
OPENING_PAREN = 90,
|
||||
CLOSING_PAREN = 91,
|
||||
PORT = 92,
|
||||
IPV6 = 93,
|
||||
STAR = 94,
|
||||
BITMASK = 95,
|
||||
RANDOM = 96,
|
||||
SOURCE_HASH = 97,
|
||||
HEX_KEY = 98,
|
||||
STRING_KEY = 99,
|
||||
ROUND_ROBIN = 100,
|
||||
STICKY_ADDRESS = 101,
|
||||
BINAT = 102,
|
||||
BLOCK = 103,
|
||||
RETURN_RST = 104,
|
||||
TTL = 105,
|
||||
RETURN_ICMP = 106,
|
||||
RETURN_ICMP6 = 107,
|
||||
IN_WORD = 108,
|
||||
OUT_WORD = 109,
|
||||
LOG = 110,
|
||||
ALL = 111,
|
||||
USER = 112,
|
||||
TO = 113,
|
||||
QUICK = 114,
|
||||
INET = 115,
|
||||
INET6 = 116,
|
||||
PROTO = 117,
|
||||
IP = 118,
|
||||
ICMP = 119,
|
||||
IGMP = 120,
|
||||
TCP = 121,
|
||||
UDP = 122,
|
||||
RDP = 123,
|
||||
RSVP = 124,
|
||||
GRE = 125,
|
||||
ESP = 126,
|
||||
AH = 127,
|
||||
EIGRP = 128,
|
||||
OSPF = 129,
|
||||
IPIP = 130,
|
||||
VRRP = 131,
|
||||
L2TP = 132,
|
||||
ISIS = 133,
|
||||
FROM = 134,
|
||||
URPF_FAILED = 135,
|
||||
ANY = 136,
|
||||
NO_ROUTE = 137,
|
||||
ROUTE_TO = 138,
|
||||
REPLY_TO = 139,
|
||||
LITERAL_fragment = 140,
|
||||
LITERAL_crop = 141,
|
||||
// "drop-ovl" = 142
|
||||
// "no-df" = 143
|
||||
// "min-ttl" = 144
|
||||
// "max-mss" = 145
|
||||
// "random-id" = 146
|
||||
FLAGS = 147,
|
||||
ICMP_TYPE = 148,
|
||||
ICMP_CODE = 149,
|
||||
LITERAL_echorep = 150,
|
||||
LITERAL_unreach = 151,
|
||||
LITERAL_squench = 152,
|
||||
LITERAL_redir = 153,
|
||||
LITERAL_althost = 154,
|
||||
LITERAL_echoreq = 155,
|
||||
LITERAL_routeradv = 156,
|
||||
LITERAL_routersol = 157,
|
||||
LITERAL_timex = 158,
|
||||
LITERAL_paramprob = 159,
|
||||
LITERAL_timereq = 160,
|
||||
LITERAL_timerep = 161,
|
||||
LITERAL_inforeq = 162,
|
||||
LITERAL_inforep = 163,
|
||||
LITERAL_maskreq = 164,
|
||||
LITERAL_maskrep = 165,
|
||||
LITERAL_trace = 166,
|
||||
LITERAL_dataconv = 167,
|
||||
LITERAL_mobredir = 168,
|
||||
// "ipv6-where" = 169
|
||||
// "ipv6-here" = 170
|
||||
LITERAL_mobregreq = 171,
|
||||
LITERAL_mobregrep = 172,
|
||||
LITERAL_photuris = 173,
|
||||
// "net-unr" = 174
|
||||
// "host-unr" = 175
|
||||
// "proto-unr" = 176
|
||||
// "port-unr" = 177
|
||||
LITERAL_needfrag = 178,
|
||||
LITERAL_srcfail = 179,
|
||||
// "net-unk" = 180
|
||||
// "host-unk" = 181
|
||||
LITERAL_isolate = 182,
|
||||
// "net-prohib" = 183
|
||||
// "host-prohib" = 184
|
||||
// "net-tos" = 185
|
||||
// "host-tos" = 186
|
||||
// "filter-prohib" = 187
|
||||
// "host-preced" = 188
|
||||
// "cutoff-preced" = 189
|
||||
// "redir-net" = 190
|
||||
// "redir-host" = 191
|
||||
// "redir-tos-net" = 192
|
||||
// "redir-tos-host" = 193
|
||||
// "normal-adv" = 194
|
||||
// "common-adv" = 195
|
||||
LITERAL_transit = 196,
|
||||
LITERAL_reassemb = 197,
|
||||
LITERAL_badhead = 198,
|
||||
LITERAL_optmiss = 199,
|
||||
LITERAL_badlen = 200,
|
||||
// "unknown-ind" = 201
|
||||
// "auth-fail" = 202
|
||||
// "decrypt-fail" = 203
|
||||
ICMP6_TYPE = 204,
|
||||
TAGGED = 205,
|
||||
TAG = 206,
|
||||
KEEP = 207,
|
||||
MODULATE = 208,
|
||||
SYNPROXY = 209,
|
||||
STATE = 210,
|
||||
LABEL = 211,
|
||||
EXIT = 212,
|
||||
QUIT = 213,
|
||||
INTRFACE = 214,
|
||||
ICMP6 = 215,
|
||||
IGRP = 216,
|
||||
IPSEC = 217,
|
||||
NOS = 218,
|
||||
PCP = 219,
|
||||
PIM = 220,
|
||||
PPTP = 221,
|
||||
RIP = 222,
|
||||
SNP = 223,
|
||||
HOST = 224,
|
||||
RANGE = 225,
|
||||
LOG_LEVEL_ALERTS = 226,
|
||||
LOG_LEVEL_CRITICAL = 227,
|
||||
LOG_LEVEL_DEBUGGING = 228,
|
||||
LOG_LEVEL_EMERGENCIES = 229,
|
||||
LOG_LEVEL_ERRORS = 230,
|
||||
LOG_LEVEL_INFORMATIONAL = 231,
|
||||
LOG_LEVEL_NOTIFICATIONS = 232,
|
||||
LOG_LEVEL_WARNINGS = 233,
|
||||
LOG_LEVEL_DISABLE = 234,
|
||||
LOG_LEVEL_INACTIVE = 235,
|
||||
Whitespace = 236,
|
||||
HEX_CONST = 237,
|
||||
NEG_INT_CONST = 238,
|
||||
HEX_DIGIT = 239,
|
||||
DIGIT = 240,
|
||||
NUM_3DIGIT = 241,
|
||||
NUM_HEX_4DIGIT = 242,
|
||||
NUMBER_ADDRESS_OR_WORD = 243,
|
||||
PIPE_CHAR = 244,
|
||||
NUMBER_SIGN = 245,
|
||||
PERCENT = 246,
|
||||
AMPERSAND = 247,
|
||||
APOSTROPHE = 248,
|
||||
PLUS = 249,
|
||||
DOT = 250,
|
||||
SEMICOLON = 251,
|
||||
QUESTION = 252,
|
||||
COMMERCIAL_AT = 253,
|
||||
OPENING_SQUARE = 254,
|
||||
CLOSING_SQUARE = 255,
|
||||
CARET = 256,
|
||||
UNDERLINE = 257,
|
||||
TILDE = 258,
|
||||
DOUBLE_QUOTE = 259,
|
||||
NULL_TREE_LOOKAHEAD = 3
|
||||
};
|
||||
#ifdef __cplusplus
|
||||
|
||||
@@ -2,256 +2,257 @@
|
||||
PFCfgParser // output token vocab name
|
||||
NEWLINE=4
|
||||
LINE_COMMENT=5
|
||||
WORD=6
|
||||
EQUAL=7
|
||||
ANTISPOOF="antispoof"=8
|
||||
ALTQ="altq"=9
|
||||
QUEUE="queue"=10
|
||||
SET="set"=11
|
||||
TIMEOUT="timeout"=12
|
||||
"ruleset-optimization"=13
|
||||
LITERAL_optimization="optimization"=14
|
||||
LITERAL_aggressive="aggressive"=15
|
||||
LITERAL_conservative="conservative"=16
|
||||
"high-latency"=17
|
||||
LITERAL_normal="normal"=18
|
||||
LITERAL_satellite="satellite"=19
|
||||
LITERAL_limit="limit"=20
|
||||
LITERAL_loginterface="loginterface"=21
|
||||
"block-policy"=22
|
||||
DROP="drop"=23
|
||||
RETURN="return"=24
|
||||
"state-policy"=25
|
||||
"if-bound"=26
|
||||
LITERAL_floating="floating"=27
|
||||
"state-defaults"=28
|
||||
"require-order"=29
|
||||
LITERAL_fingerprints="fingerprints"=30
|
||||
LITERAL_skip="skip"=31
|
||||
ON="on"=32
|
||||
OPENING_BRACE=33
|
||||
COMMA=34
|
||||
CLOSING_BRACE=35
|
||||
LITERAL_debug="debug"=36
|
||||
LITERAL_reassemble="reassemble"=37
|
||||
LITERAL_hostid="hostid"=38
|
||||
"tcp.first"=39
|
||||
"tcp.opening"=40
|
||||
"tcp.established"=41
|
||||
"tcp.closing"=42
|
||||
"tcp.finwait"=43
|
||||
"tcp.closed"=44
|
||||
"udp.first"=45
|
||||
"udp.single"=46
|
||||
"udp.multiple"=47
|
||||
"icmp.first"=48
|
||||
"icmp.error"=49
|
||||
"other.first"=50
|
||||
"other.single"=51
|
||||
"other.multiple"=52
|
||||
LITERAL_frag="frag"=53
|
||||
LITERAL_interval="interval"=54
|
||||
"src.track"=55
|
||||
"adaptive.start"=56
|
||||
"adaptive.end"=57
|
||||
INT_CONST=58
|
||||
LITERAL_frags="frags"=59
|
||||
LITERAL_states="states"=60
|
||||
"src-nodes"=61
|
||||
LITERAL_tables="tables"=62
|
||||
"tables-entries"=63
|
||||
SCRUB="scrub"=64
|
||||
MATCH="match"=65
|
||||
TABLE="table"=66
|
||||
LESS_THAN=67
|
||||
GREATER_THAN=68
|
||||
PERSIST="persist"=69
|
||||
CONST_WORD="const"=70
|
||||
COUNTERS="counters"=71
|
||||
FILE="file"=72
|
||||
STRING=73
|
||||
EXLAMATION=74
|
||||
COLON=75
|
||||
NETWORK="network"=76
|
||||
BROADCAST="broadcast"=77
|
||||
PEER="peer"=78
|
||||
SELF="self"=79
|
||||
IPV4=80
|
||||
NUMBER=81
|
||||
SLASH=82
|
||||
NO="no"=83
|
||||
NAT="nat"=84
|
||||
PASS="pass"=85
|
||||
MINUS=86
|
||||
STATIC_PORT="static-port"=87
|
||||
RDR="rdr"=88
|
||||
OPENING_PAREN=89
|
||||
CLOSING_PAREN=90
|
||||
PORT="port"=91
|
||||
IPV6=92
|
||||
STAR=93
|
||||
BITMASK="bitmask"=94
|
||||
RANDOM="random"=95
|
||||
SOURCE_HASH="source-hash"=96
|
||||
HEX_KEY="hex-key"=97
|
||||
STRING_KEY="string-key"=98
|
||||
ROUND_ROBIN="round-robin"=99
|
||||
STICKY_ADDRESS="sticky-address"=100
|
||||
BINAT="binat"=101
|
||||
BLOCK="block"=102
|
||||
RETURN_RST="return-rst"=103
|
||||
TTL=104
|
||||
RETURN_ICMP="return-icmp"=105
|
||||
RETURN_ICMP6=106
|
||||
IN_WORD="in"=107
|
||||
OUT_WORD="out"=108
|
||||
LOG="log"=109
|
||||
ALL="all"=110
|
||||
USER="user"=111
|
||||
TO="to"=112
|
||||
QUICK="quick"=113
|
||||
INET="inet"=114
|
||||
INET6="inet6"=115
|
||||
PROTO="proto"=116
|
||||
IP="ip"=117
|
||||
ICMP="icmp"=118
|
||||
IGMP="igmp"=119
|
||||
TCP="tcp"=120
|
||||
UDP="udp"=121
|
||||
RDP="rdp"=122
|
||||
RSVP="rsvp"=123
|
||||
GRE="gre"=124
|
||||
ESP="esp"=125
|
||||
AH="ah"=126
|
||||
EIGRP="eigrp"=127
|
||||
OSPF="ospf"=128
|
||||
IPIP="ipip"=129
|
||||
VRRP="vrrp"=130
|
||||
L2TP="l2tp"=131
|
||||
ISIS="isis"=132
|
||||
FROM="from"=133
|
||||
URPF_FAILED="urpf-failed"=134
|
||||
ANY="any"=135
|
||||
NO_ROUTE="no-route"=136
|
||||
ROUTE_TO="route-to"=137
|
||||
REPLY_TO="reply-to"=138
|
||||
LITERAL_fragment="fragment"=139
|
||||
LITERAL_crop="crop"=140
|
||||
"drop-ovl"=141
|
||||
"no-df"=142
|
||||
"min-ttl"=143
|
||||
"max-mss"=144
|
||||
"random-id"=145
|
||||
FLAGS="flags"=146
|
||||
ICMP_TYPE="icmp-type"=147
|
||||
ICMP_CODE="code"=148
|
||||
LITERAL_echorep="echorep"=149
|
||||
LITERAL_unreach="unreach"=150
|
||||
LITERAL_squench="squench"=151
|
||||
LITERAL_redir="redir"=152
|
||||
LITERAL_althost="althost"=153
|
||||
LITERAL_echoreq="echoreq"=154
|
||||
LITERAL_routeradv="routeradv"=155
|
||||
LITERAL_routersol="routersol"=156
|
||||
LITERAL_timex="timex"=157
|
||||
LITERAL_paramprob="paramprob"=158
|
||||
LITERAL_timereq="timereq"=159
|
||||
LITERAL_timerep="timerep"=160
|
||||
LITERAL_inforeq="inforeq"=161
|
||||
LITERAL_inforep="inforep"=162
|
||||
LITERAL_maskreq="maskreq"=163
|
||||
LITERAL_maskrep="maskrep"=164
|
||||
LITERAL_trace="trace"=165
|
||||
LITERAL_dataconv="dataconv"=166
|
||||
LITERAL_mobredir="mobredir"=167
|
||||
"ipv6-where"=168
|
||||
"ipv6-here"=169
|
||||
LITERAL_mobregreq="mobregreq"=170
|
||||
LITERAL_mobregrep="mobregrep"=171
|
||||
LITERAL_photuris="photuris"=172
|
||||
"net-unr"=173
|
||||
"host-unr"=174
|
||||
"proto-unr"=175
|
||||
"port-unr"=176
|
||||
LITERAL_needfrag="needfrag"=177
|
||||
LITERAL_srcfail="srcfail"=178
|
||||
"net-unk"=179
|
||||
"host-unk"=180
|
||||
LITERAL_isolate="isolate"=181
|
||||
"net-prohib"=182
|
||||
"host-prohib"=183
|
||||
"net-tos"=184
|
||||
"host-tos"=185
|
||||
"filter-prohib"=186
|
||||
"host-preced"=187
|
||||
"cutoff-preced"=188
|
||||
"redir-net"=189
|
||||
"redir-host"=190
|
||||
"redir-tos-net"=191
|
||||
"redir-tos-host"=192
|
||||
"normal-adv"=193
|
||||
"common-adv"=194
|
||||
LITERAL_transit="transit"=195
|
||||
LITERAL_reassemb="reassemb"=196
|
||||
LITERAL_badhead="badhead"=197
|
||||
LITERAL_optmiss="optmiss"=198
|
||||
LITERAL_badlen="badlen"=199
|
||||
"unknown-ind"=200
|
||||
"auth-fail"=201
|
||||
"decrypt-fail"=202
|
||||
ICMP6_TYPE="icmp6-type"=203
|
||||
TAGGED="tagged"=204
|
||||
TAG="tag"=205
|
||||
KEEP="keep"=206
|
||||
MODULATE="modulate"=207
|
||||
SYNPROXY="synproxy"=208
|
||||
STATE="state"=209
|
||||
LABEL="label"=210
|
||||
EXIT="exit"=211
|
||||
QUIT="quit"=212
|
||||
INTRFACE="interface"=213
|
||||
ICMP6="icmp6"=214
|
||||
IGRP="igrp"=215
|
||||
IPSEC="ipsec"=216
|
||||
NOS="nos"=217
|
||||
PCP="pcp"=218
|
||||
PIM="pim"=219
|
||||
PPTP="pptp"=220
|
||||
RIP="rip"=221
|
||||
SNP="snp"=222
|
||||
HOST="host"=223
|
||||
RANGE="range"=224
|
||||
LOG_LEVEL_ALERTS="alerts"=225
|
||||
LOG_LEVEL_CRITICAL="critical"=226
|
||||
LOG_LEVEL_DEBUGGING="debugging"=227
|
||||
LOG_LEVEL_EMERGENCIES="emergencies"=228
|
||||
LOG_LEVEL_ERRORS="errors"=229
|
||||
LOG_LEVEL_INFORMATIONAL="informational"=230
|
||||
LOG_LEVEL_NOTIFICATIONS="notifications"=231
|
||||
LOG_LEVEL_WARNINGS="warnings"=232
|
||||
LOG_LEVEL_DISABLE="disable"=233
|
||||
LOG_LEVEL_INACTIVE="inactive"=234
|
||||
Whitespace=235
|
||||
HEX_CONST=236
|
||||
NEG_INT_CONST=237
|
||||
HEX_DIGIT=238
|
||||
DIGIT=239
|
||||
NUM_3DIGIT=240
|
||||
NUM_HEX_4DIGIT=241
|
||||
NUMBER_ADDRESS_OR_WORD=242
|
||||
PIPE_CHAR=243
|
||||
NUMBER_SIGN=244
|
||||
PERCENT=245
|
||||
AMPERSAND=246
|
||||
APOSTROPHE=247
|
||||
PLUS=248
|
||||
DOT=249
|
||||
SEMICOLON=250
|
||||
QUESTION=251
|
||||
COMMERCIAL_AT=252
|
||||
OPENING_SQUARE=253
|
||||
CLOSING_SQUARE=254
|
||||
CARET=255
|
||||
UNDERLINE=256
|
||||
TILDE=257
|
||||
DOUBLE_QUOTE=258
|
||||
INCLUDE_COMMAND="include"=6
|
||||
WORD=7
|
||||
EQUAL=8
|
||||
ANTISPOOF="antispoof"=9
|
||||
ALTQ="altq"=10
|
||||
QUEUE="queue"=11
|
||||
SET="set"=12
|
||||
TIMEOUT="timeout"=13
|
||||
"ruleset-optimization"=14
|
||||
LITERAL_optimization="optimization"=15
|
||||
LITERAL_aggressive="aggressive"=16
|
||||
LITERAL_conservative="conservative"=17
|
||||
"high-latency"=18
|
||||
LITERAL_normal="normal"=19
|
||||
LITERAL_satellite="satellite"=20
|
||||
LITERAL_limit="limit"=21
|
||||
LITERAL_loginterface="loginterface"=22
|
||||
"block-policy"=23
|
||||
DROP="drop"=24
|
||||
RETURN="return"=25
|
||||
"state-policy"=26
|
||||
"if-bound"=27
|
||||
LITERAL_floating="floating"=28
|
||||
"state-defaults"=29
|
||||
"require-order"=30
|
||||
LITERAL_fingerprints="fingerprints"=31
|
||||
LITERAL_skip="skip"=32
|
||||
ON="on"=33
|
||||
OPENING_BRACE=34
|
||||
COMMA=35
|
||||
CLOSING_BRACE=36
|
||||
LITERAL_debug="debug"=37
|
||||
LITERAL_reassemble="reassemble"=38
|
||||
LITERAL_hostid="hostid"=39
|
||||
"tcp.first"=40
|
||||
"tcp.opening"=41
|
||||
"tcp.established"=42
|
||||
"tcp.closing"=43
|
||||
"tcp.finwait"=44
|
||||
"tcp.closed"=45
|
||||
"udp.first"=46
|
||||
"udp.single"=47
|
||||
"udp.multiple"=48
|
||||
"icmp.first"=49
|
||||
"icmp.error"=50
|
||||
"other.first"=51
|
||||
"other.single"=52
|
||||
"other.multiple"=53
|
||||
LITERAL_frag="frag"=54
|
||||
LITERAL_interval="interval"=55
|
||||
"src.track"=56
|
||||
"adaptive.start"=57
|
||||
"adaptive.end"=58
|
||||
INT_CONST=59
|
||||
LITERAL_frags="frags"=60
|
||||
LITERAL_states="states"=61
|
||||
"src-nodes"=62
|
||||
LITERAL_tables="tables"=63
|
||||
"tables-entries"=64
|
||||
SCRUB="scrub"=65
|
||||
MATCH="match"=66
|
||||
TABLE="table"=67
|
||||
LESS_THAN=68
|
||||
GREATER_THAN=69
|
||||
PERSIST="persist"=70
|
||||
CONST_WORD="const"=71
|
||||
COUNTERS="counters"=72
|
||||
FILE="file"=73
|
||||
STRING=74
|
||||
EXLAMATION=75
|
||||
COLON=76
|
||||
NETWORK="network"=77
|
||||
BROADCAST="broadcast"=78
|
||||
PEER="peer"=79
|
||||
SELF="self"=80
|
||||
IPV4=81
|
||||
NUMBER=82
|
||||
SLASH=83
|
||||
NO="no"=84
|
||||
NAT="nat"=85
|
||||
PASS="pass"=86
|
||||
MINUS=87
|
||||
STATIC_PORT="static-port"=88
|
||||
RDR="rdr"=89
|
||||
OPENING_PAREN=90
|
||||
CLOSING_PAREN=91
|
||||
PORT="port"=92
|
||||
IPV6=93
|
||||
STAR=94
|
||||
BITMASK="bitmask"=95
|
||||
RANDOM="random"=96
|
||||
SOURCE_HASH="source-hash"=97
|
||||
HEX_KEY="hex-key"=98
|
||||
STRING_KEY="string-key"=99
|
||||
ROUND_ROBIN="round-robin"=100
|
||||
STICKY_ADDRESS="sticky-address"=101
|
||||
BINAT="binat"=102
|
||||
BLOCK="block"=103
|
||||
RETURN_RST="return-rst"=104
|
||||
TTL=105
|
||||
RETURN_ICMP="return-icmp"=106
|
||||
RETURN_ICMP6=107
|
||||
IN_WORD="in"=108
|
||||
OUT_WORD="out"=109
|
||||
LOG="log"=110
|
||||
ALL="all"=111
|
||||
USER="user"=112
|
||||
TO="to"=113
|
||||
QUICK="quick"=114
|
||||
INET="inet"=115
|
||||
INET6="inet6"=116
|
||||
PROTO="proto"=117
|
||||
IP="ip"=118
|
||||
ICMP="icmp"=119
|
||||
IGMP="igmp"=120
|
||||
TCP="tcp"=121
|
||||
UDP="udp"=122
|
||||
RDP="rdp"=123
|
||||
RSVP="rsvp"=124
|
||||
GRE="gre"=125
|
||||
ESP="esp"=126
|
||||
AH="ah"=127
|
||||
EIGRP="eigrp"=128
|
||||
OSPF="ospf"=129
|
||||
IPIP="ipip"=130
|
||||
VRRP="vrrp"=131
|
||||
L2TP="l2tp"=132
|
||||
ISIS="isis"=133
|
||||
FROM="from"=134
|
||||
URPF_FAILED="urpf-failed"=135
|
||||
ANY="any"=136
|
||||
NO_ROUTE="no-route"=137
|
||||
ROUTE_TO="route-to"=138
|
||||
REPLY_TO="reply-to"=139
|
||||
LITERAL_fragment="fragment"=140
|
||||
LITERAL_crop="crop"=141
|
||||
"drop-ovl"=142
|
||||
"no-df"=143
|
||||
"min-ttl"=144
|
||||
"max-mss"=145
|
||||
"random-id"=146
|
||||
FLAGS="flags"=147
|
||||
ICMP_TYPE="icmp-type"=148
|
||||
ICMP_CODE="code"=149
|
||||
LITERAL_echorep="echorep"=150
|
||||
LITERAL_unreach="unreach"=151
|
||||
LITERAL_squench="squench"=152
|
||||
LITERAL_redir="redir"=153
|
||||
LITERAL_althost="althost"=154
|
||||
LITERAL_echoreq="echoreq"=155
|
||||
LITERAL_routeradv="routeradv"=156
|
||||
LITERAL_routersol="routersol"=157
|
||||
LITERAL_timex="timex"=158
|
||||
LITERAL_paramprob="paramprob"=159
|
||||
LITERAL_timereq="timereq"=160
|
||||
LITERAL_timerep="timerep"=161
|
||||
LITERAL_inforeq="inforeq"=162
|
||||
LITERAL_inforep="inforep"=163
|
||||
LITERAL_maskreq="maskreq"=164
|
||||
LITERAL_maskrep="maskrep"=165
|
||||
LITERAL_trace="trace"=166
|
||||
LITERAL_dataconv="dataconv"=167
|
||||
LITERAL_mobredir="mobredir"=168
|
||||
"ipv6-where"=169
|
||||
"ipv6-here"=170
|
||||
LITERAL_mobregreq="mobregreq"=171
|
||||
LITERAL_mobregrep="mobregrep"=172
|
||||
LITERAL_photuris="photuris"=173
|
||||
"net-unr"=174
|
||||
"host-unr"=175
|
||||
"proto-unr"=176
|
||||
"port-unr"=177
|
||||
LITERAL_needfrag="needfrag"=178
|
||||
LITERAL_srcfail="srcfail"=179
|
||||
"net-unk"=180
|
||||
"host-unk"=181
|
||||
LITERAL_isolate="isolate"=182
|
||||
"net-prohib"=183
|
||||
"host-prohib"=184
|
||||
"net-tos"=185
|
||||
"host-tos"=186
|
||||
"filter-prohib"=187
|
||||
"host-preced"=188
|
||||
"cutoff-preced"=189
|
||||
"redir-net"=190
|
||||
"redir-host"=191
|
||||
"redir-tos-net"=192
|
||||
"redir-tos-host"=193
|
||||
"normal-adv"=194
|
||||
"common-adv"=195
|
||||
LITERAL_transit="transit"=196
|
||||
LITERAL_reassemb="reassemb"=197
|
||||
LITERAL_badhead="badhead"=198
|
||||
LITERAL_optmiss="optmiss"=199
|
||||
LITERAL_badlen="badlen"=200
|
||||
"unknown-ind"=201
|
||||
"auth-fail"=202
|
||||
"decrypt-fail"=203
|
||||
ICMP6_TYPE="icmp6-type"=204
|
||||
TAGGED="tagged"=205
|
||||
TAG="tag"=206
|
||||
KEEP="keep"=207
|
||||
MODULATE="modulate"=208
|
||||
SYNPROXY="synproxy"=209
|
||||
STATE="state"=210
|
||||
LABEL="label"=211
|
||||
EXIT="exit"=212
|
||||
QUIT="quit"=213
|
||||
INTRFACE="interface"=214
|
||||
ICMP6="icmp6"=215
|
||||
IGRP="igrp"=216
|
||||
IPSEC="ipsec"=217
|
||||
NOS="nos"=218
|
||||
PCP="pcp"=219
|
||||
PIM="pim"=220
|
||||
PPTP="pptp"=221
|
||||
RIP="rip"=222
|
||||
SNP="snp"=223
|
||||
HOST="host"=224
|
||||
RANGE="range"=225
|
||||
LOG_LEVEL_ALERTS="alerts"=226
|
||||
LOG_LEVEL_CRITICAL="critical"=227
|
||||
LOG_LEVEL_DEBUGGING="debugging"=228
|
||||
LOG_LEVEL_EMERGENCIES="emergencies"=229
|
||||
LOG_LEVEL_ERRORS="errors"=230
|
||||
LOG_LEVEL_INFORMATIONAL="informational"=231
|
||||
LOG_LEVEL_NOTIFICATIONS="notifications"=232
|
||||
LOG_LEVEL_WARNINGS="warnings"=233
|
||||
LOG_LEVEL_DISABLE="disable"=234
|
||||
LOG_LEVEL_INACTIVE="inactive"=235
|
||||
Whitespace=236
|
||||
HEX_CONST=237
|
||||
NEG_INT_CONST=238
|
||||
HEX_DIGIT=239
|
||||
DIGIT=240
|
||||
NUM_3DIGIT=241
|
||||
NUM_HEX_4DIGIT=242
|
||||
NUMBER_ADDRESS_OR_WORD=243
|
||||
PIPE_CHAR=244
|
||||
NUMBER_SIGN=245
|
||||
PERCENT=246
|
||||
AMPERSAND=247
|
||||
APOSTROPHE=248
|
||||
PLUS=249
|
||||
DOT=250
|
||||
SEMICOLON=251
|
||||
QUESTION=252
|
||||
COMMERCIAL_AT=253
|
||||
OPENING_SQUARE=254
|
||||
CLOSING_SQUARE=255
|
||||
CARET=256
|
||||
UNDERLINE=257
|
||||
TILDE=258
|
||||
DOUBLE_QUOTE=259
|
||||
|
||||
@@ -113,6 +113,8 @@ options
|
||||
cfgfile :
|
||||
(
|
||||
comment
|
||||
|
|
||||
include_command
|
||||
|
|
||||
macro_definition
|
||||
|
|
||||
@@ -151,6 +153,17 @@ cfgfile :
|
||||
//****************************************************************
|
||||
comment : LINE_COMMENT ;
|
||||
|
||||
//****************************************************************
|
||||
include_command : INCLUDE_COMMAND
|
||||
{
|
||||
importer->clear();
|
||||
importer->setCurrentLineNumber(LT(0)->getLine());
|
||||
importer->addMessageToLog(
|
||||
QString("Error: import of 'include' commands is not supported."));
|
||||
consumeUntil(NEWLINE);
|
||||
}
|
||||
;
|
||||
|
||||
//****************************************************************
|
||||
macro_definition : WORD EQUAL
|
||||
{
|
||||
@@ -1773,6 +1786,8 @@ options
|
||||
|
||||
tokens
|
||||
{
|
||||
INCLUDE_COMMAND = "include";
|
||||
|
||||
EXIT = "exit";
|
||||
QUIT = "quit";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user