Fix another bug

This commit is contained in:
Tom Eastep 2010-12-21 17:50:35 -08:00
parent f3abf56cac
commit e52feb7da7

View File

@ -305,6 +305,8 @@ sub process_actions1() {
push_open( $actionfile );
my $actiontype = 0;
while ( read_a_line ) {
my ($wholetarget, @rest ) = split_line1 1, 13, 'action file' , $rule_commands;
@ -313,7 +315,7 @@ sub process_actions1() {
# deals with the target and the parameter. We pass undef for the rest so we'll
# know if we try to use one of them.
#
process_rule_common( $action ,
$actiontype |= process_rule_common( $action ,
$wholetarget ,
'' , # Current Param
undef, # source
@ -334,7 +336,7 @@ sub process_actions1() {
pop_open;
$targets{$action} |= ACTION;
$targets{$action} = ACTION | $actiontype;
}
}
}
@ -830,16 +832,11 @@ sub process_rule_common ( $$$$$$$$$$$$$$$$ ) {
}
}
if ( $inaction1 ) {
#
# We need to transfer the NAT-oriented flags to the action itself
# Return the NAT-oriented flags to the caller who will eventually add them
# to $targets{$inaction1}
#
$targets{$inaction1} |= ( $actiontype & ( NATRULE | NONAT | NATONLY ) );
#
# That's all for the first pass
#
return 1;
}
return ( $actiontype & ( NATRULE | NONAT | NATONLY ) ) if $inaction1;
#
# Take care of irregular syntax and targets