Don't emit 'enable' code for required providers

Signed-off-by: Tom Eastep <teastep@shorewall.net>
This commit is contained in:
Tom Eastep 2011-09-14 08:25:47 -07:00
parent e1afc645ba
commit fcb8fa79c0

View File

@ -615,14 +615,15 @@ sub add_a_provider( $$ ) {
emit $_ for @{$providers{$table}->{routes}};
}
emit( '',
'if [ $COMMAND = enable ]; then'
);
push_indent;
emit( '' );
my ( $tbl, $weight );
if ( $optional ) {
emit( 'if [ $COMMAND = enable ]; then' );
push_indent;
if ( $balance || $default ) {
$tbl = $default || $config{USE_DEFAULT_RT} ? DEFAULT_TABLE : MAIN_TABLE;
$weight = $balance ? $balance : $default;
@ -643,17 +644,14 @@ sub add_a_provider( $$ ) {
pop_indent;
emit( 'else' );
if ( $optional ) {
emit " echo $weight > \${VARDIR}/${physical}_weight";
} else {
emit " rm -f \${VARDIR}/${physical}_weight";
}
emit( " progress_message " Provider $table ($number) Started"",
"fi\n"
emit( 'else' ,
qq( echo $weight > \${VARDIR}/${physical}_weight) ,
qq( progress_message " Provider $table ($number) Started"),
qq(fi\n)
);
} else {
emit( qq(progress_message "Provider $table ($number) Started") );
}
pop_indent;