More rational zone type enumeration

git-svn-id: https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk@7314 fbd18981-670d-0410-9b5c-8dc0c1a9a2bb
This commit is contained in:
teastep 2007-09-10 22:47:55 +00:00
parent 5819589cb0
commit a2c145418c

View File

@ -129,23 +129,24 @@ our %reservedName = ( all => 1,
# Zone Types # Zone Types
# #
use constant { ZT_IPV4 => 1, use constant { ZT_IPV4 => 1,
ZT_IPSEC => 2, ZT_IPV6 => 2
ZT_BPORT => 4, ZT_FIREWALL => 3, #ZT_IPV4 + ZT_IPV6
ZT_IPV6 => 8, ZT_IPSEC => 4,
ZT_FIREWALL => 16, ZT_IPSEC4 => 5, #ZT_IPV4 + ZT_IPSEC
ZT_IPSEC4 => 3, ZT_IPSEC6 => 6, #ZT_IPV6 + ZT_IPSEC
ZT_IPSEC6 => 10, ZT_BPORT => 8,
ZT_BPORT4 => 5, ZT_BPORT4 => 9, #ZT_IPV4 + ZT_BPORT
ZT_BPORT6 => 13, ZT_BPORT6 => 10, #ZT_IPV6 + ZT_BPORT
}; };
our %zonetypes = ( 1 => 'ipv4' , our %zonetypes = ( 1 => 'ipv4' ,
3 => 'ipsec4' , 2 => 'ipv6' ,
5 => 'bport4' , 3 => 'firewall' ,
8 => 'ipv6' , 5 => 'ipsec4' ,
10 => 'ipsec6' , 6 => 'ipsec6' ,
13 => 'bport6' , 9 => 'bport4' ,
16 => 'firewall' ); 10 => 'bport6' ,
);
# #
# Interface Table. # Interface Table.
# #
@ -1001,7 +1002,7 @@ sub validate_hosts_file()
for my $option ( @options ) for my $option ( @options )
{ {
if ( $option eq 'ipsec' ) { if ( $option eq 'ipsec' ) {
$type = ZT_IPSEC4; $type |= ZT_IPSEC;
$zoneref->{options}{complex} = 1; $zoneref->{options}{complex} = 1;
$ipsec = 1; $ipsec = 1;
} elsif ( $validoptions{$option}) { } elsif ( $validoptions{$option}) {