forked from extern/shorewall_code
Allow entries in shorewall.conf to be optional
git-svn-id: https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk@6089 fbd18981-670d-0410-9b5c-8dc0c1a9a2bb
This commit is contained in:
parent
f10c7242f1
commit
e722b6f581
@ -489,7 +489,7 @@ sub check_trivalue( $$ ) {
|
|||||||
} elsif ( $val eq 'keep' ) {
|
} elsif ( $val eq 'keep' ) {
|
||||||
$config{$var} = '';
|
$config{$var} = '';
|
||||||
} elsif ( $val eq '' ) {
|
} elsif ( $val eq '' ) {
|
||||||
$config{var} = $default
|
$config{$var} = $default
|
||||||
} else {
|
} else {
|
||||||
fatal_error "Invalid value ( $val ) for $var";
|
fatal_error "Invalid value ( $val ) for $var";
|
||||||
}
|
}
|
||||||
@ -818,7 +818,11 @@ sub get_configuration( $ ) {
|
|||||||
default_yes_no 'DETECT_DNAT_IPADDRS' , '';
|
default_yes_no 'DETECT_DNAT_IPADDRS' , '';
|
||||||
default_yes_no 'DETECT_DNAT_IPADDRS' , '';
|
default_yes_no 'DETECT_DNAT_IPADDRS' , '';
|
||||||
default_yes_no 'CLEAR_TC' , 'Yes';
|
default_yes_no 'CLEAR_TC' , 'Yes';
|
||||||
|
if ( defined $config{CLAMPMSS} ) {
|
||||||
default_yes_no 'CLAMPMSS' , '' unless $config{CLAMPMSS} =~ /^\d+$/;
|
default_yes_no 'CLAMPMSS' , '' unless $config{CLAMPMSS} =~ /^\d+$/;
|
||||||
|
} else {
|
||||||
|
$config{CLAMPMSS} = '';
|
||||||
|
}
|
||||||
|
|
||||||
unless ( $config{ADD_IP_ALIASES} || $config{ADD_SNAT_ALIASES} ) {
|
unless ( $config{ADD_IP_ALIASES} || $config{ADD_SNAT_ALIASES} ) {
|
||||||
$config{RETAIN_ALIASES} = '';
|
$config{RETAIN_ALIASES} = '';
|
||||||
@ -906,10 +910,13 @@ sub get_configuration( $ ) {
|
|||||||
|
|
||||||
$globals{TC_SCRIPT} = '';
|
$globals{TC_SCRIPT} = '';
|
||||||
|
|
||||||
|
default 'TC_ENABLED' , 'Internal';
|
||||||
|
|
||||||
if ( $val = "\L$config{TC_ENABLED}" ) {
|
if ( $val = "\L$config{TC_ENABLED}" ) {
|
||||||
if ( $val eq 'yes' ) {
|
if ( $val eq 'yes' ) {
|
||||||
$file = find_file 'tcstart';
|
$file = find_file 'tcstart';
|
||||||
fatal_error "Unable to find tcstart file" unless -f $file;
|
fatal_error "Unable to find tcstart file" unless -f $file;
|
||||||
|
$globals{TC_SCRIPT} = $file;
|
||||||
} elsif ( $val ne 'internal' ) {
|
} elsif ( $val ne 'internal' ) {
|
||||||
fatal_error "Invalid value ($config{TC_ENABLED}) for TC_ENABLED" unless $val eq 'no';
|
fatal_error "Invalid value ($config{TC_ENABLED}) for TC_ENABLED" unless $val eq 'no';
|
||||||
$config{TC_ENABLED} = '';
|
$config{TC_ENABLED} = '';
|
||||||
@ -922,7 +929,7 @@ sub get_configuration( $ ) {
|
|||||||
default 'QUEUE_DEFAULT' , 'none';
|
default 'QUEUE_DEFAULT' , 'none';
|
||||||
default 'ACCEPT_DEFAULT' , 'none';
|
default 'ACCEPT_DEFAULT' , 'none';
|
||||||
default 'OPTIMIZE' , 0;
|
default 'OPTIMIZE' , 0;
|
||||||
default 'IPSECFILE' , 'ipsec';
|
default 'IPSECFILE' , 'zones';
|
||||||
|
|
||||||
fatal_error 'IPSECFILE=ipsec is not supported by Shorewall-perl ' . $globals{VERSION} unless $config{IPSECFILE} eq 'zones';
|
fatal_error 'IPSECFILE=ipsec is not supported by Shorewall-perl ' . $globals{VERSION} unless $config{IPSECFILE} eq 'zones';
|
||||||
|
|
||||||
@ -956,7 +963,7 @@ sub get_configuration( $ ) {
|
|||||||
|
|
||||||
$globals{MAXZONENAMELENGTH} = int ( 5 + ( ( 29 - (length $result ) ) / 2) );
|
$globals{MAXZONENAMELENGTH} = int ( 5 + ( ( 29 - (length $result ) ) / 2) );
|
||||||
} else {
|
} else {
|
||||||
$globals{LOGFORMAT}='Shorewall:%s:%s:';
|
$config{LOGFORMAT}='Shorewall:%s:%s:';
|
||||||
$globals{MAXZONENAMELENGTH} = 5;
|
$globals{MAXZONENAMELENGTH} = 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -571,9 +571,9 @@ sub setup_tc() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $config{TC_SCRIPT} ) {
|
if ( $globals{TC_SCRIPT} ) {
|
||||||
save_progress_message 'Setting up Traffic Control...';
|
save_progress_message 'Setting up Traffic Control...';
|
||||||
append_file $config{TC_SCRIPT};
|
append_file $globals{TC_SCRIPT};
|
||||||
} elsif ( $config{TC_ENABLED} eq 'Internal' ) {
|
} elsif ( $config{TC_ENABLED} eq 'Internal' ) {
|
||||||
setup_traffic_shaping;
|
setup_traffic_shaping;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user