mirror of
https://github.com/fwbuilder/fwbuilder
synced 2026-09-13 00:19:55 +02:00
pix parser recognizes "interface <label>" in access lists
This commit is contained in:
@@ -540,6 +540,7 @@ FWObject* Importer::makeSrcObj()
|
||||
(src_a==InetAddr::getAny().toString() &&
|
||||
src_nm==InetAddr::getAny().toString()))
|
||||
return NULL; // this is 'any'
|
||||
|
||||
if (src_nm=="") src_nm = InetAddr::getAllOnes().toString();
|
||||
|
||||
ObjectSignature sig;
|
||||
@@ -556,6 +557,7 @@ FWObject* Importer::makeDstObj()
|
||||
(dst_a==InetAddr::getAny().toString() &&
|
||||
dst_nm==InetAddr::getAny().toString()))
|
||||
return NULL; // this is 'any'
|
||||
|
||||
if (dst_nm=="") dst_nm=InetAddr::getAllOnes().toString();
|
||||
|
||||
ObjectSignature sig;
|
||||
|
||||
@@ -111,6 +111,21 @@ void PIXImporter::clearTempVars()
|
||||
|
||||
FWObject* PIXImporter::makeSrcObj()
|
||||
{
|
||||
if (src_nm == "interface")
|
||||
{
|
||||
map<const string,Interface*>::iterator it;
|
||||
for (it=all_interfaces.begin(); it!=all_interfaces.end(); ++it)
|
||||
{
|
||||
Interface *intf = it->second;
|
||||
if (intf->getLabel() == src_a)
|
||||
{
|
||||
return intf;
|
||||
}
|
||||
}
|
||||
throw ImporterException(
|
||||
QString("Cannot find interface with label '%1'").arg(src_a.c_str()));
|
||||
}
|
||||
|
||||
if (named_objects_registry.count(src_a.c_str()) > 0)
|
||||
{
|
||||
return named_objects_registry[src_a.c_str()];
|
||||
@@ -120,6 +135,21 @@ FWObject* PIXImporter::makeSrcObj()
|
||||
|
||||
FWObject* PIXImporter::makeDstObj()
|
||||
{
|
||||
if (dst_nm == "interface")
|
||||
{
|
||||
map<const string,Interface*>::iterator it;
|
||||
for (it=all_interfaces.begin(); it!=all_interfaces.end(); ++it)
|
||||
{
|
||||
Interface *intf = it->second;
|
||||
if (intf->getLabel() == dst_a)
|
||||
{
|
||||
return intf;
|
||||
}
|
||||
}
|
||||
throw ImporterException(
|
||||
QString("Cannot find interface with label '%1'").arg(dst_a.c_str()));
|
||||
}
|
||||
|
||||
if (named_objects_registry.count(dst_a.c_str()) > 0)
|
||||
{
|
||||
return named_objects_registry[dst_a.c_str()];
|
||||
|
||||
+131
-131
@@ -47,25 +47,25 @@ void PIXCfgLexer::initLiterals()
|
||||
literals["name"] = 9;
|
||||
literals["names"] = 8;
|
||||
literals["ospf"] = 22;
|
||||
literals["established"] = 74;
|
||||
literals["mac-address"] = 89;
|
||||
literals["nameif"] = 93;
|
||||
literals["established"] = 75;
|
||||
literals["mac-address"] = 88;
|
||||
literals["nameif"] = 79;
|
||||
literals["subnet"] = 33;
|
||||
literals["ipsec"] = 20;
|
||||
literals["controller"] = 77;
|
||||
literals["controller"] = 78;
|
||||
literals["object"] = 27;
|
||||
literals["pcp"] = 23;
|
||||
literals["remark"] = 101;
|
||||
literals["remark"] = 99;
|
||||
literals["access-list"] = 61;
|
||||
literals["snp"] = 26;
|
||||
literals["hostname"] = 59;
|
||||
literals["hold-time"] = 87;
|
||||
literals["hold-time"] = 86;
|
||||
literals["tcp-udp"] = 49;
|
||||
literals["community-list"] = 7;
|
||||
literals["permit"] = 63;
|
||||
literals["pptp"] = 25;
|
||||
literals["interval"] = 73;
|
||||
literals["security-level"] = 94;
|
||||
literals["interval"] = 74;
|
||||
literals["security-level"] = 92;
|
||||
literals["no"] = 53;
|
||||
literals["source"] = 40;
|
||||
literals["igrp"] = 18;
|
||||
@@ -79,7 +79,7 @@ void PIXCfgLexer::initLiterals()
|
||||
literals["icmp-type"] = 48;
|
||||
literals["PIX"] = 55;
|
||||
literals["icmp-object"] = 47;
|
||||
literals["exit"] = 80;
|
||||
literals["exit"] = 101;
|
||||
literals["nat"] = 29;
|
||||
literals["object-group"] = 42;
|
||||
literals["range"] = 32;
|
||||
@@ -89,51 +89,51 @@ void PIXCfgLexer::initLiterals()
|
||||
literals["ah"] = 13;
|
||||
literals["host"] = 31;
|
||||
literals["secondary"] = 104;
|
||||
literals["interface"] = 78;
|
||||
literals["rip"] = 92;
|
||||
literals["interface"] = 70;
|
||||
literals["rip"] = 91;
|
||||
literals["protocol-object"] = 46;
|
||||
literals["icmp6"] = 37;
|
||||
literals["standard"] = 65;
|
||||
literals["network"] = 28;
|
||||
literals["service"] = 34;
|
||||
literals["vlan"] = 81;
|
||||
literals["access"] = 100;
|
||||
literals["multicast"] = 90;
|
||||
literals["any"] = 70;
|
||||
literals["dhcp"] = 97;
|
||||
literals["speed"] = 82;
|
||||
literals["vlan"] = 80;
|
||||
literals["access"] = 98;
|
||||
literals["multicast"] = 89;
|
||||
literals["any"] = 71;
|
||||
literals["dhcp"] = 95;
|
||||
literals["speed"] = 81;
|
||||
literals["deny"] = 64;
|
||||
literals["neq"] = 69;
|
||||
literals["esp"] = 15;
|
||||
literals["address"] = 96;
|
||||
literals["address"] = 94;
|
||||
literals["network-object"] = 44;
|
||||
literals["shutdown"] = 95;
|
||||
literals["delay"] = 86;
|
||||
literals["shutdown"] = 93;
|
||||
literals["delay"] = 85;
|
||||
literals["certificate"] = 54;
|
||||
literals["udp"] = 39;
|
||||
literals["fragments"] = 75;
|
||||
literals["fragments"] = 76;
|
||||
literals["eq"] = 66;
|
||||
literals["destination"] = 41;
|
||||
literals["duplex"] = 83;
|
||||
literals["duplex"] = 82;
|
||||
literals["setroute"] = 105;
|
||||
literals["ip"] = 6;
|
||||
literals["eigrp"] = 14;
|
||||
literals["log-input"] = 72;
|
||||
literals["switchport"] = 99;
|
||||
literals["log-input"] = 73;
|
||||
literals["switchport"] = 97;
|
||||
literals["description"] = 30;
|
||||
literals["extended"] = 62;
|
||||
literals["igmp"] = 17;
|
||||
literals["access-group"] = 102;
|
||||
literals["ddns"] = 84;
|
||||
literals["access-group"] = 100;
|
||||
literals["ddns"] = 83;
|
||||
literals["Version"] = 57;
|
||||
literals["log"] = 71;
|
||||
literals["forward"] = 85;
|
||||
literals["log"] = 72;
|
||||
literals["forward"] = 84;
|
||||
literals["ASA"] = 56;
|
||||
literals["lt"] = 68;
|
||||
literals["ipv6"] = 88;
|
||||
literals["ipv6"] = 87;
|
||||
literals["port-object"] = 51;
|
||||
literals["time-range"] = 76;
|
||||
literals["standby"] = 98;
|
||||
literals["time-range"] = 77;
|
||||
literals["standby"] = 96;
|
||||
literals["icmp"] = 35;
|
||||
literals["tcp"] = 38;
|
||||
}
|
||||
@@ -449,11 +449,11 @@ void PIXCfgLexer::mLINE_COMMENT(bool _createToken) {
|
||||
}
|
||||
}
|
||||
else {
|
||||
goto _loop195;
|
||||
goto _loop204;
|
||||
}
|
||||
|
||||
}
|
||||
_loop195:;
|
||||
_loop204:;
|
||||
} // ( ... )*
|
||||
mNEWLINE(false);
|
||||
if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
|
||||
@@ -485,7 +485,7 @@ void PIXCfgLexer::mNEWLINE(bool _createToken) {
|
||||
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1608 "pix.g"
|
||||
#line 1637 "pix.g"
|
||||
newline();
|
||||
#line 491 "PIXCfgLexer.cpp"
|
||||
}
|
||||
@@ -511,11 +511,11 @@ void PIXCfgLexer::mCOLON_COMMENT(bool _createToken) {
|
||||
}
|
||||
}
|
||||
else {
|
||||
goto _loop199;
|
||||
goto _loop208;
|
||||
}
|
||||
|
||||
}
|
||||
_loop199:;
|
||||
_loop208:;
|
||||
} // ( ... )*
|
||||
mNEWLINE(false);
|
||||
if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
|
||||
@@ -609,7 +609,7 @@ void PIXCfgLexer::mWhitespace(bool _createToken) {
|
||||
}
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1603 "pix.g"
|
||||
#line 1632 "pix.g"
|
||||
_ttype = ANTLR_USE_NAMESPACE(antlr)Token::SKIP;
|
||||
#line 615 "PIXCfgLexer.cpp"
|
||||
}
|
||||
@@ -694,15 +694,15 @@ void PIXCfgLexer::mNUMBER(bool _createToken) {
|
||||
ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
|
||||
|
||||
{
|
||||
bool synPredMatched247 = false;
|
||||
bool synPredMatched256 = false;
|
||||
if (((_tokenSet_2.member(LA(1))) && (_tokenSet_3.member(LA(2))) && (true))) {
|
||||
int _m247 = mark();
|
||||
synPredMatched247 = true;
|
||||
int _m256 = mark();
|
||||
synPredMatched256 = true;
|
||||
inputState->guessing++;
|
||||
try {
|
||||
{
|
||||
{ // ( ... )+
|
||||
int _cnt246=0;
|
||||
int _cnt255=0;
|
||||
for (;;) {
|
||||
switch ( LA(1)) {
|
||||
case 0x61 /* 'a' */ :
|
||||
@@ -731,27 +731,27 @@ void PIXCfgLexer::mNUMBER(bool _createToken) {
|
||||
}
|
||||
default:
|
||||
{
|
||||
if ( _cnt246>=1 ) { goto _loop246; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt255>=1 ) { goto _loop255; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
}
|
||||
_cnt246++;
|
||||
_cnt255++;
|
||||
}
|
||||
_loop246:;
|
||||
_loop255:;
|
||||
} // ( ... )+
|
||||
mCOLON(false);
|
||||
}
|
||||
}
|
||||
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
|
||||
synPredMatched247 = false;
|
||||
synPredMatched256 = false;
|
||||
}
|
||||
rewind(_m247);
|
||||
rewind(_m256);
|
||||
inputState->guessing--;
|
||||
}
|
||||
if ( synPredMatched247 ) {
|
||||
if ( synPredMatched256 ) {
|
||||
{
|
||||
{
|
||||
{ // ( ... )+
|
||||
int _cnt251=0;
|
||||
int _cnt260=0;
|
||||
for (;;) {
|
||||
switch ( LA(1)) {
|
||||
case 0x61 /* 'a' */ :
|
||||
@@ -780,15 +780,15 @@ void PIXCfgLexer::mNUMBER(bool _createToken) {
|
||||
}
|
||||
default:
|
||||
{
|
||||
if ( _cnt251>=1 ) { goto _loop251; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt260>=1 ) { goto _loop260; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
}
|
||||
_cnt251++;
|
||||
_cnt260++;
|
||||
}
|
||||
_loop251:;
|
||||
_loop260:;
|
||||
} // ( ... )+
|
||||
{ // ( ... )+
|
||||
int _cnt255=0;
|
||||
int _cnt264=0;
|
||||
for (;;) {
|
||||
if ((LA(1) == 0x3a /* ':' */ )) {
|
||||
mCOLON(false);
|
||||
@@ -821,34 +821,34 @@ void PIXCfgLexer::mNUMBER(bool _createToken) {
|
||||
}
|
||||
default:
|
||||
{
|
||||
goto _loop254;
|
||||
goto _loop263;
|
||||
}
|
||||
}
|
||||
}
|
||||
_loop254:;
|
||||
_loop263:;
|
||||
} // ( ... )*
|
||||
}
|
||||
else {
|
||||
if ( _cnt255>=1 ) { goto _loop255; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt264>=1 ) { goto _loop264; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt255++;
|
||||
_cnt264++;
|
||||
}
|
||||
_loop255:;
|
||||
_loop264:;
|
||||
} // ( ... )+
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1642 "pix.g"
|
||||
#line 1671 "pix.g"
|
||||
_ttype = IPV6;
|
||||
#line 844 "PIXCfgLexer.cpp"
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
bool synPredMatched212 = false;
|
||||
bool synPredMatched221 = false;
|
||||
if ((((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (true) && (true))) {
|
||||
int _m212 = mark();
|
||||
synPredMatched212 = true;
|
||||
int _m221 = mark();
|
||||
synPredMatched221 = true;
|
||||
inputState->guessing++;
|
||||
try {
|
||||
{
|
||||
@@ -856,235 +856,235 @@ void PIXCfgLexer::mNUMBER(bool _createToken) {
|
||||
}
|
||||
}
|
||||
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
|
||||
synPredMatched212 = false;
|
||||
synPredMatched221 = false;
|
||||
}
|
||||
rewind(_m212);
|
||||
rewind(_m221);
|
||||
inputState->guessing--;
|
||||
}
|
||||
if ( synPredMatched212 ) {
|
||||
if ( synPredMatched221 ) {
|
||||
{
|
||||
bool synPredMatched221 = false;
|
||||
bool synPredMatched230 = false;
|
||||
if ((((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (_tokenSet_4.member(LA(2))) && (_tokenSet_4.member(LA(3))))) {
|
||||
int _m221 = mark();
|
||||
synPredMatched221 = true;
|
||||
int _m230 = mark();
|
||||
synPredMatched230 = true;
|
||||
inputState->guessing++;
|
||||
try {
|
||||
{
|
||||
{ // ( ... )+
|
||||
int _cnt216=0;
|
||||
int _cnt225=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt216>=1 ) { goto _loop216; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt225>=1 ) { goto _loop225; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt216++;
|
||||
_cnt225++;
|
||||
}
|
||||
_loop216:;
|
||||
_loop225:;
|
||||
} // ( ... )+
|
||||
mDOT(false);
|
||||
{ // ( ... )+
|
||||
int _cnt218=0;
|
||||
int _cnt227=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt218>=1 ) { goto _loop218; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt227>=1 ) { goto _loop227; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt218++;
|
||||
_cnt227++;
|
||||
}
|
||||
_loop218:;
|
||||
_loop227:;
|
||||
} // ( ... )+
|
||||
mDOT(false);
|
||||
{ // ( ... )+
|
||||
int _cnt220=0;
|
||||
int _cnt229=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt220>=1 ) { goto _loop220; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt229>=1 ) { goto _loop229; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt220++;
|
||||
_cnt229++;
|
||||
}
|
||||
_loop220:;
|
||||
_loop229:;
|
||||
} // ( ... )+
|
||||
}
|
||||
}
|
||||
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
|
||||
synPredMatched221 = false;
|
||||
synPredMatched230 = false;
|
||||
}
|
||||
rewind(_m221);
|
||||
rewind(_m230);
|
||||
inputState->guessing--;
|
||||
}
|
||||
if ( synPredMatched221 ) {
|
||||
if ( synPredMatched230 ) {
|
||||
{
|
||||
{ // ( ... )+
|
||||
int _cnt224=0;
|
||||
int _cnt233=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt224>=1 ) { goto _loop224; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt233>=1 ) { goto _loop233; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt224++;
|
||||
_cnt233++;
|
||||
}
|
||||
_loop224:;
|
||||
_loop233:;
|
||||
} // ( ... )+
|
||||
mDOT(false);
|
||||
{ // ( ... )+
|
||||
int _cnt226=0;
|
||||
int _cnt235=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt226>=1 ) { goto _loop226; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt235>=1 ) { goto _loop235; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt226++;
|
||||
_cnt235++;
|
||||
}
|
||||
_loop226:;
|
||||
_loop235:;
|
||||
} // ( ... )+
|
||||
mDOT(false);
|
||||
{ // ( ... )+
|
||||
int _cnt228=0;
|
||||
int _cnt237=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt228>=1 ) { goto _loop228; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt237>=1 ) { goto _loop237; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt228++;
|
||||
_cnt237++;
|
||||
}
|
||||
_loop228:;
|
||||
_loop237:;
|
||||
} // ( ... )+
|
||||
mDOT(false);
|
||||
{ // ( ... )+
|
||||
int _cnt230=0;
|
||||
int _cnt239=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt230>=1 ) { goto _loop230; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt239>=1 ) { goto _loop239; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt230++;
|
||||
_cnt239++;
|
||||
}
|
||||
_loop230:;
|
||||
_loop239:;
|
||||
} // ( ... )+
|
||||
}
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1631 "pix.g"
|
||||
#line 1660 "pix.g"
|
||||
_ttype = IPV4;
|
||||
#line 991 "PIXCfgLexer.cpp"
|
||||
}
|
||||
}
|
||||
else {
|
||||
bool synPredMatched236 = false;
|
||||
bool synPredMatched245 = false;
|
||||
if ((((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (_tokenSet_4.member(LA(2))) && (_tokenSet_4.member(LA(3))))) {
|
||||
int _m236 = mark();
|
||||
synPredMatched236 = true;
|
||||
int _m245 = mark();
|
||||
synPredMatched245 = true;
|
||||
inputState->guessing++;
|
||||
try {
|
||||
{
|
||||
{ // ( ... )+
|
||||
int _cnt233=0;
|
||||
int _cnt242=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt233>=1 ) { goto _loop233; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt242>=1 ) { goto _loop242; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt233++;
|
||||
_cnt242++;
|
||||
}
|
||||
_loop233:;
|
||||
_loop242:;
|
||||
} // ( ... )+
|
||||
mDOT(false);
|
||||
{ // ( ... )+
|
||||
int _cnt235=0;
|
||||
int _cnt244=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt235>=1 ) { goto _loop235; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt244>=1 ) { goto _loop244; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt235++;
|
||||
_cnt244++;
|
||||
}
|
||||
_loop235:;
|
||||
_loop244:;
|
||||
} // ( ... )+
|
||||
}
|
||||
}
|
||||
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& pe) {
|
||||
synPredMatched236 = false;
|
||||
synPredMatched245 = false;
|
||||
}
|
||||
rewind(_m236);
|
||||
rewind(_m245);
|
||||
inputState->guessing--;
|
||||
}
|
||||
if ( synPredMatched236 ) {
|
||||
if ( synPredMatched245 ) {
|
||||
{
|
||||
{ // ( ... )+
|
||||
int _cnt239=0;
|
||||
int _cnt248=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt239>=1 ) { goto _loop239; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt248>=1 ) { goto _loop248; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt239++;
|
||||
_cnt248++;
|
||||
}
|
||||
_loop239:;
|
||||
_loop248:;
|
||||
} // ( ... )+
|
||||
mDOT(false);
|
||||
{ // ( ... )+
|
||||
int _cnt241=0;
|
||||
int _cnt250=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt241>=1 ) { goto _loop241; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt250>=1 ) { goto _loop250; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt241++;
|
||||
_cnt250++;
|
||||
}
|
||||
_loop241:;
|
||||
_loop250:;
|
||||
} // ( ... )+
|
||||
}
|
||||
}
|
||||
else if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ )) && (true) && (true)) {
|
||||
{ // ( ... )+
|
||||
int _cnt243=0;
|
||||
int _cnt252=0;
|
||||
for (;;) {
|
||||
if (((LA(1) >= 0x30 /* '0' */ && LA(1) <= 0x39 /* '9' */ ))) {
|
||||
mDIGIT(false);
|
||||
}
|
||||
else {
|
||||
if ( _cnt243>=1 ) { goto _loop243; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
if ( _cnt252>=1 ) { goto _loop252; } else {throw ANTLR_USE_NAMESPACE(antlr)NoViableAltForCharException(LA(1), getFilename(), getLine(), getColumn());}
|
||||
}
|
||||
|
||||
_cnt243++;
|
||||
_cnt252++;
|
||||
}
|
||||
_loop243:;
|
||||
_loop252:;
|
||||
} // ( ... )+
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1635 "pix.g"
|
||||
#line 1664 "pix.g"
|
||||
_ttype = INT_CONST;
|
||||
#line 1090 "PIXCfgLexer.cpp"
|
||||
}
|
||||
@@ -1322,14 +1322,14 @@ void PIXCfgLexer::mNUMBER(bool _createToken) {
|
||||
}
|
||||
default:
|
||||
{
|
||||
goto _loop258;
|
||||
goto _loop267;
|
||||
}
|
||||
}
|
||||
}
|
||||
_loop258:;
|
||||
_loop267:;
|
||||
} // ( ... )*
|
||||
if ( inputState->guessing==0 ) {
|
||||
#line 1648 "pix.g"
|
||||
#line 1677 "pix.g"
|
||||
_ttype = WORD;
|
||||
#line 1335 "PIXCfgLexer.cpp"
|
||||
}
|
||||
@@ -1373,11 +1373,11 @@ void PIXCfgLexer::mSTRING(bool _createToken) {
|
||||
matchNot('\"' /* charlit */ );
|
||||
}
|
||||
else {
|
||||
goto _loop261;
|
||||
goto _loop270;
|
||||
}
|
||||
|
||||
}
|
||||
_loop261:;
|
||||
_loop270:;
|
||||
} // ( ... )*
|
||||
match('\"' /* charlit */ );
|
||||
if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
|
||||
|
||||
+586
-389
File diff suppressed because it is too large
Load Diff
@@ -92,6 +92,7 @@ public:
|
||||
public: void community_list_command();
|
||||
public: void unknown_ip_command();
|
||||
public: void intrface();
|
||||
public: void nameif_top_level();
|
||||
public: void controller();
|
||||
public: void access_list_commands();
|
||||
public: void access_group();
|
||||
@@ -157,6 +158,7 @@ public:
|
||||
public: void port_range();
|
||||
public: void port_spec();
|
||||
public: void pair_of_ports_spec();
|
||||
public: void interface_command();
|
||||
public: void interface_parameters();
|
||||
public: void intf_address();
|
||||
public: void vlan_interface();
|
||||
@@ -221,6 +223,18 @@ private:
|
||||
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_13;
|
||||
static const unsigned long _tokenSet_14_data_[];
|
||||
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_14;
|
||||
static const unsigned long _tokenSet_15_data_[];
|
||||
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_15;
|
||||
static const unsigned long _tokenSet_16_data_[];
|
||||
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_16;
|
||||
static const unsigned long _tokenSet_17_data_[];
|
||||
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_17;
|
||||
static const unsigned long _tokenSet_18_data_[];
|
||||
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_18;
|
||||
static const unsigned long _tokenSet_19_data_[];
|
||||
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_19;
|
||||
static const unsigned long _tokenSet_20_data_[];
|
||||
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_20;
|
||||
};
|
||||
|
||||
#endif /*INC_PIXCfgParser_hpp_*/
|
||||
|
||||
@@ -78,39 +78,39 @@ struct CUSTOM_API PIXCfgParserTokenTypes {
|
||||
P_GT = 67,
|
||||
P_LT = 68,
|
||||
P_NEQ = 69,
|
||||
ANY = 70,
|
||||
LOG = 71,
|
||||
LOG_INPUT = 72,
|
||||
INTERVAL = 73,
|
||||
ESTABLISHED = 74,
|
||||
FRAGMENTS = 75,
|
||||
TIME_RANGE = 76,
|
||||
CONTROLLER = 77,
|
||||
INTRFACE = 78,
|
||||
LINE_COMMENT = 79,
|
||||
EXIT = 80,
|
||||
VLAN = 81,
|
||||
SPEED = 82,
|
||||
DUPLEX = 83,
|
||||
DDNS = 84,
|
||||
FORWARD = 85,
|
||||
DELAY = 86,
|
||||
HOLD_TIME = 87,
|
||||
IPV6_C = 88,
|
||||
MAC_ADDRESS = 89,
|
||||
MULTICAST = 90,
|
||||
PPPOE = 91,
|
||||
RIP = 92,
|
||||
NAMEIF = 93,
|
||||
SEC_LEVEL = 94,
|
||||
SHUTDOWN = 95,
|
||||
ADDRESS = 96,
|
||||
DHCP = 97,
|
||||
STANDBY = 98,
|
||||
SWITCHPORT = 99,
|
||||
ACCESS = 100,
|
||||
REMARK = 101,
|
||||
ACCESS_GROUP = 102,
|
||||
INTRFACE = 70,
|
||||
ANY = 71,
|
||||
LOG = 72,
|
||||
LOG_INPUT = 73,
|
||||
INTERVAL = 74,
|
||||
ESTABLISHED = 75,
|
||||
FRAGMENTS = 76,
|
||||
TIME_RANGE = 77,
|
||||
CONTROLLER = 78,
|
||||
NAMEIF = 79,
|
||||
VLAN = 80,
|
||||
SPEED = 81,
|
||||
DUPLEX = 82,
|
||||
DDNS = 83,
|
||||
FORWARD = 84,
|
||||
DELAY = 85,
|
||||
HOLD_TIME = 86,
|
||||
IPV6_C = 87,
|
||||
MAC_ADDRESS = 88,
|
||||
MULTICAST = 89,
|
||||
PPPOE = 90,
|
||||
RIP = 91,
|
||||
SEC_LEVEL = 92,
|
||||
SHUTDOWN = 93,
|
||||
ADDRESS = 94,
|
||||
DHCP = 95,
|
||||
STANDBY = 96,
|
||||
SWITCHPORT = 97,
|
||||
ACCESS = 98,
|
||||
REMARK = 99,
|
||||
ACCESS_GROUP = 100,
|
||||
EXIT = 101,
|
||||
LINE_COMMENT = 102,
|
||||
COLON_COMMENT = 103,
|
||||
SECONDARY = 104,
|
||||
SETROUTE = 105,
|
||||
|
||||
@@ -66,39 +66,39 @@ P_EQ="eq"=66
|
||||
P_GT="gt"=67
|
||||
P_LT="lt"=68
|
||||
P_NEQ="neq"=69
|
||||
ANY="any"=70
|
||||
LOG="log"=71
|
||||
LOG_INPUT="log-input"=72
|
||||
INTERVAL="interval"=73
|
||||
ESTABLISHED="established"=74
|
||||
FRAGMENTS="fragments"=75
|
||||
TIME_RANGE="time-range"=76
|
||||
CONTROLLER="controller"=77
|
||||
INTRFACE="interface"=78
|
||||
LINE_COMMENT=79
|
||||
EXIT="exit"=80
|
||||
VLAN="vlan"=81
|
||||
SPEED="speed"=82
|
||||
DUPLEX="duplex"=83
|
||||
DDNS="ddns"=84
|
||||
FORWARD="forward"=85
|
||||
DELAY="delay"=86
|
||||
HOLD_TIME="hold-time"=87
|
||||
IPV6_C="ipv6"=88
|
||||
MAC_ADDRESS="mac-address"=89
|
||||
MULTICAST="multicast"=90
|
||||
PPPOE=91
|
||||
RIP="rip"=92
|
||||
NAMEIF="nameif"=93
|
||||
SEC_LEVEL="security-level"=94
|
||||
SHUTDOWN="shutdown"=95
|
||||
ADDRESS="address"=96
|
||||
DHCP="dhcp"=97
|
||||
STANDBY="standby"=98
|
||||
SWITCHPORT="switchport"=99
|
||||
ACCESS="access"=100
|
||||
REMARK="remark"=101
|
||||
ACCESS_GROUP="access-group"=102
|
||||
INTRFACE="interface"=70
|
||||
ANY="any"=71
|
||||
LOG="log"=72
|
||||
LOG_INPUT="log-input"=73
|
||||
INTERVAL="interval"=74
|
||||
ESTABLISHED="established"=75
|
||||
FRAGMENTS="fragments"=76
|
||||
TIME_RANGE="time-range"=77
|
||||
CONTROLLER="controller"=78
|
||||
NAMEIF="nameif"=79
|
||||
VLAN="vlan"=80
|
||||
SPEED="speed"=81
|
||||
DUPLEX="duplex"=82
|
||||
DDNS="ddns"=83
|
||||
FORWARD="forward"=84
|
||||
DELAY="delay"=85
|
||||
HOLD_TIME="hold-time"=86
|
||||
IPV6_C="ipv6"=87
|
||||
MAC_ADDRESS="mac-address"=88
|
||||
MULTICAST="multicast"=89
|
||||
PPPOE=90
|
||||
RIP="rip"=91
|
||||
SEC_LEVEL="security-level"=92
|
||||
SHUTDOWN="shutdown"=93
|
||||
ADDRESS="address"=94
|
||||
DHCP="dhcp"=95
|
||||
STANDBY="standby"=96
|
||||
SWITCHPORT="switchport"=97
|
||||
ACCESS="access"=98
|
||||
REMARK="remark"=99
|
||||
ACCESS_GROUP="access-group"=100
|
||||
EXIT="exit"=101
|
||||
LINE_COMMENT=102
|
||||
COLON_COMMENT=103
|
||||
SECONDARY="secondary"=104
|
||||
SETROUTE="setroute"=105
|
||||
|
||||
+45
-16
@@ -119,6 +119,8 @@ cfgfile :
|
||||
unknown_ip_command
|
||||
|
|
||||
intrface
|
||||
|
|
||||
nameif_top_level
|
||||
|
|
||||
controller
|
||||
|
|
||||
@@ -843,7 +845,7 @@ access_list_commands : ACCESS_LIST name:WORD
|
||||
;
|
||||
|
||||
//****************************************************************
|
||||
permit_extended: EXTENDED PERMIT
|
||||
permit_extended: ( EXTENDED )? PERMIT
|
||||
{
|
||||
importer->setCurrentLineNumber(LT(0)->getLine());
|
||||
importer->newPolicyRule();
|
||||
@@ -856,7 +858,7 @@ permit_extended: EXTENDED PERMIT
|
||||
}
|
||||
;
|
||||
|
||||
deny_extended: EXTENDED DENY
|
||||
deny_extended: ( EXTENDED )? DENY
|
||||
{
|
||||
importer->setCurrentLineNumber(LT(0)->getLine());
|
||||
importer->newPolicyRule();
|
||||
@@ -1036,6 +1038,13 @@ pair_of_ports_spec : (s1:WORD|s2:INT_CONST) (e1:WORD|e2:INT_CONST)
|
||||
;
|
||||
|
||||
hostaddr_expr :
|
||||
INTRFACE intf_name:WORD
|
||||
{
|
||||
importer->tmp_a = intf_name->getText();
|
||||
importer->tmp_nm = "interface";
|
||||
*dbg << "object " << intf_name->getText() << " ";
|
||||
}
|
||||
|
|
||||
( ( OBJECT | OBJECT_GROUP ) name:WORD )
|
||||
{
|
||||
importer->tmp_a = name->getText();
|
||||
@@ -1065,7 +1074,7 @@ hostaddr_expr :
|
||||
}
|
||||
;
|
||||
|
||||
log : (LOG | LOG_INPUT) (INT_CONST INTERVAL INT_CONST)?
|
||||
log : (LOG | LOG_INPUT) ( (INT_CONST (INTERVAL INT_CONST)? )? | WORD )
|
||||
{
|
||||
importer->logging = true;
|
||||
*dbg << "logging ";
|
||||
@@ -1142,31 +1151,50 @@ controller : CONTROLLER
|
||||
|
||||
// vlans in pix6 config format are not parsed
|
||||
|
||||
intrface : INTRFACE in:WORD
|
||||
intrface : INTRFACE interface_command
|
||||
;
|
||||
|
||||
interface_command : in:WORD
|
||||
{
|
||||
importer->setCurrentLineNumber(LT(0)->getLine());
|
||||
importer->newInterface( in->getText() );
|
||||
*dbg << in->getLine() << ":"
|
||||
<< " INTRFACE: " << in->getText() << std::endl;
|
||||
consumeUntil(NEWLINE);
|
||||
}
|
||||
(
|
||||
(
|
||||
interface_parameters
|
||||
)+
|
||||
( INT_CONST | WORD )+ // pix 6
|
||||
|
|
||||
( )
|
||||
{
|
||||
importer->ignoreCurrentInterface();
|
||||
*dbg<< LT(1)->getLine() << ":"
|
||||
<< " EMPTY INTERFACE " << std::endl;
|
||||
}
|
||||
( // pix 7
|
||||
NEWLINE
|
||||
(
|
||||
(
|
||||
interface_parameters
|
||||
)+
|
||||
|
|
||||
( )
|
||||
{
|
||||
importer->ignoreCurrentInterface();
|
||||
*dbg<< LT(1)->getLine() << ":"
|
||||
<< " EMPTY INTERFACE " << std::endl;
|
||||
}
|
||||
)
|
||||
)
|
||||
)
|
||||
NEWLINE ( LINE_COMMENT | EXIT )
|
||||
// NEWLINE ( LINE_COMMENT | EXIT )
|
||||
;
|
||||
|
||||
nameif_top_level : NAMEIF p_intf:WORD intf_label:WORD sec_level:WORD
|
||||
{
|
||||
std::string label = (intf_label) ? intf_label->getText() : "";
|
||||
std::string seclevel = (sec_level) ? sec_level->getText() : "";
|
||||
importer->setInterfaceParametes(p_intf->getText(), label, seclevel);
|
||||
*dbg << " NAMEIF: "
|
||||
<< p_intf->getText() << label << seclevel << std::endl;
|
||||
}
|
||||
;
|
||||
|
||||
|
||||
interface_parameters :
|
||||
NEWLINE
|
||||
{
|
||||
importer->setCurrentLineNumber(LT(0)->getLine());
|
||||
}
|
||||
@@ -1189,6 +1217,7 @@ interface_parameters :
|
||||
|
|
||||
unsupported_interface_commands
|
||||
)
|
||||
NEWLINE
|
||||
;
|
||||
|
||||
vlan_interface : VLAN vlan_id:INT_CONST
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:
|
||||
PIX Version 6.3(5)
|
||||
interface ethernet0 auto
|
||||
interface ethernet1 auto
|
||||
interface ethernet1 100baseTX
|
||||
nameif ethernet0 outside security0
|
||||
nameif ethernet1 inside security100
|
||||
enable password XXXXXXXXXXXXXXXX encrypted
|
||||
@@ -53,13 +53,14 @@ access-list outside_acl_in remark 0 (ethernet0)
|
||||
access-list outside_acl_in deny ip host 10.1.1.202 any log 5
|
||||
access-list outside_acl_in deny ip 10.1.1.0 255.255.255.0 any log 5
|
||||
access-list outside_acl_in remark 3 (global)
|
||||
access-list outside_acl_in permit icmp any interface outside object-group outside.id12363X2458.srv.icmp.0
|
||||
access-list outside_acl_in permit icmp any interface outside echo
|
||||
! access-list outside_acl_in permit icmp any interface outside object-group outside.id12363X2458.srv.icmp.0
|
||||
access-list outside_acl_in remark 4 (global)
|
||||
access-list outside_acl_in remark fw uses DHCP
|
||||
access-list outside_acl_in remark plus many DHCP requests
|
||||
access-list outside_acl_in remark from cable modem
|
||||
access-list outside_acl_in permit udp any interface outside object-group outside.id12376X2458.srv.udp.0
|
||||
access-list outside_acl_in permit udp any host 255.255.255.255 object-group outside.id12376X2458.srv.udp.0
|
||||
! access-list outside_acl_in permit udp any interface outside object-group outside.id12376X2458.srv.udp.0
|
||||
! access-list outside_acl_in permit udp any host 255.255.255.255 object-group outside.id12376X2458.srv.udp.0
|
||||
access-list outside_acl_in remark 6 (global)
|
||||
access-list outside_acl_in deny tcp any interface outside eq ident
|
||||
access-list outside_acl_in remark 7 (global)
|
||||
@@ -70,11 +71,11 @@ access-list outside_acl_in remark block probing ssh connections, so no
|
||||
access-list outside_acl_in remark need to limit
|
||||
access-list outside_acl_in permit tcp any interface outside eq ssh
|
||||
access-list outside_acl_in permit tcp any interface outside eq www
|
||||
access-list outside_acl_in permit tcp any host 10.1.1.43 object-group outside.id12438X2458.srv.tcp.0
|
||||
! access-list outside_acl_in permit tcp any host 10.1.1.43 object-group outside.id12438X2458.srv.tcp.0
|
||||
access-list outside_acl_in remark 11 (global)
|
||||
access-list outside_acl_in permit tcp any interface outside eq 8765
|
||||
access-list outside_acl_in permit tcp any interface outside eq 2222
|
||||
access-list outside_acl_in permit tcp any host 10.1.1.46 object-group outside.id12466X2458.srv.tcp.0
|
||||
! access-list outside_acl_in permit tcp any host 10.1.1.46 object-group outside.id12466X2458.srv.tcp.0
|
||||
access-list outside_acl_in remark 17 (global)
|
||||
access-list outside_acl_in permit icmp any interface outside
|
||||
access-list outside_acl_in permit icmp any any
|
||||
@@ -84,24 +85,24 @@ access-list outside_acl_in deny ip any any log 5
|
||||
access-list inside_acl_in remark 1 (global)
|
||||
access-list inside_acl_in permit tcp 10.1.1.0 255.255.255.0 host 10.1.1.202 eq www
|
||||
access-list inside_acl_in permit udp 10.1.1.0 255.255.255.0 host 10.1.1.202 eq snmp
|
||||
access-list inside_acl_in remark 2 (global)
|
||||
access-list inside_acl_in permit icmp host 10.1.1.202 host 10.1.1.202 object-group inside.id12349X2458.srv.icmp.0
|
||||
access-list inside_acl_in permit icmp host 10.1.1.202 any object-group inside.id12349X2458.srv.icmp.0
|
||||
access-list inside_acl_in remark 3 (global)
|
||||
access-list inside_acl_in permit icmp any host 10.1.1.202 object-group outside.id12363X2458.srv.icmp.0
|
||||
! access-list inside_acl_in remark 2 (global)
|
||||
! access-list inside_acl_in permit icmp host 10.1.1.202 host 10.1.1.202 object-group inside.id12349X2458.srv.icmp.0
|
||||
! access-list inside_acl_in permit icmp host 10.1.1.202 any object-group inside.id12349X2458.srv.icmp.0
|
||||
! access-list inside_acl_in remark 3 (global)
|
||||
! access-list inside_acl_in permit icmp any host 10.1.1.202 object-group outside.id12363X2458.srv.icmp.0
|
||||
access-list inside_acl_in remark 5 (global)
|
||||
access-list inside_acl_in permit ip host 10.1.1.202 any
|
||||
access-list inside_acl_in remark 6 (global)
|
||||
access-list inside_acl_in deny tcp any host 10.1.1.202 eq ident
|
||||
access-list inside_acl_in remark 7 (global)
|
||||
access-list inside_acl_in permit tcp any host 10.1.1.10 eq smtp
|
||||
access-list inside_acl_in remark 10 (global)
|
||||
access-list inside_acl_in remark using swatch to automatically
|
||||
access-list inside_acl_in remark block probing ssh connections, so no
|
||||
access-list inside_acl_in remark need to limit
|
||||
access-list inside_acl_in permit tcp any host 10.1.1.43 object-group outside.id12438X2458.srv.tcp.0
|
||||
access-list inside_acl_in remark 11 (global)
|
||||
access-list inside_acl_in permit tcp any host 10.1.1.46 object-group outside.id12466X2458.srv.tcp.0
|
||||
! access-list inside_acl_in remark 10 (global)
|
||||
! access-list inside_acl_in remark using swatch to automatically
|
||||
! access-list inside_acl_in remark block probing ssh connections, so no
|
||||
! access-list inside_acl_in remark need to limit
|
||||
! access-list inside_acl_in permit tcp any host 10.1.1.43 object-group outside.id12438X2458.srv.tcp.0
|
||||
! access-list inside_acl_in remark 11 (global)
|
||||
! access-list inside_acl_in permit tcp any host 10.1.1.46 object-group outside.id12466X2458.srv.tcp.0
|
||||
access-list inside_acl_in remark 17 (global)
|
||||
access-list inside_acl_in permit icmp any host 10.1.1.202
|
||||
access-list inside_acl_in permit icmp any any
|
||||
@@ -122,6 +123,10 @@ access-list id12656X2458.0 permit tcp host 10.1.1.46 eq 8765 any
|
||||
access-list id12670X2458.0 permit tcp host 10.1.1.32 eq 5900 any
|
||||
access-list id12684X2458.0 permit tcp host 10.1.1.102 eq 5901 any
|
||||
access-list id12743X2458.0 permit ip 10.1.1.0 255.255.255.0 any
|
||||
|
||||
access-group outside_acl_in in interface outside
|
||||
access-group inside_acl_in in interface inside
|
||||
|
||||
no pager
|
||||
logging on
|
||||
logging timestamp
|
||||
@@ -165,8 +170,10 @@ static (inside,outside) tcp interface 2222 access-list id12642X2458.0 0 0
|
||||
static (inside,outside) tcp interface 8765 access-list id12656X2458.0 0 0
|
||||
static (inside,outside) tcp interface 5900 access-list id12670X2458.0 0 0
|
||||
static (inside,outside) tcp interface 5901 access-list id12684X2458.0 0 0
|
||||
access-group outside_acl_in in interface outside
|
||||
access-group inside_acl_in in interface inside
|
||||
|
||||
! access-group outside_acl_in in interface outside
|
||||
! access-group inside_acl_in in interface inside
|
||||
|
||||
timeout xlate 3:00:00
|
||||
timeout conn 1:00:00 half-closed 0:00:00 udp 0:02:00 rpc 0:10:00 h225 1:00:00
|
||||
timeout h323 0:05:00 mgcp 0:05:00 sip 0:30:00 sip_media 0:00:00
|
||||
|
||||
@@ -59,6 +59,8 @@ interface Ethernet5
|
||||
no security-level
|
||||
no ip address
|
||||
!
|
||||
interface Ethernet6
|
||||
!
|
||||
passwd MMMMMMMMMMMMMMMM encrypted
|
||||
boot system flash:/pix721.bin
|
||||
ftp mode passive
|
||||
@@ -91,6 +93,10 @@ access-list inside_in extended deny ip any object-group outside.id12051X6282.src
|
||||
access-list inside_in extended permit ip 10.1.1.0 255.255.255.0 any
|
||||
access-list inside_in extended deny ip any any log warnings
|
||||
access-list id12251X6282.0 extended permit ip 10.1.1.0 255.255.255.0 any
|
||||
|
||||
access-group inside_in in interface inside
|
||||
access-group outside_in in interface outside
|
||||
|
||||
pager lines 24
|
||||
logging enable
|
||||
logging emblem
|
||||
|
||||
Reference in New Issue
Block a user