forked from extern/shorewall_code
Allow setting action parameters
Signed-off-by: Tom Eastep <teastep@shorewall.net>
This commit is contained in:
parent
95aab78c0d
commit
1307770178
@ -2272,11 +2272,20 @@ sub process_compiler_directive( $$$$ ) {
|
|||||||
unless ( $omitting ) {
|
unless ( $omitting ) {
|
||||||
directive_error( "Missing SET variable", $filename, $linenumber ) unless supplied $expression;
|
directive_error( "Missing SET variable", $filename, $linenumber ) unless supplied $expression;
|
||||||
( my $var , $expression ) = split ' ', $expression, 2;
|
( my $var , $expression ) = split ' ', $expression, 2;
|
||||||
directive_error( "Invalid SET variable ($var)", $filename, $linenumber) unless $var =~ /^\$?([a-zA-Z]\w*)$/;
|
directive_error( "Invalid SET variable ($var)", $filename, $linenumber) unless $var =~ /^([$@])?([a-zA-Z]\w*)$/;
|
||||||
directive_error( "Missing SET expression" , $filename, $linenumber) unless supplied $expression;
|
directive_error( "Missing SET expression" , $filename, $linenumber) unless supplied $expression;
|
||||||
$variables{$1} = evaluate_expression( $expression,
|
|
||||||
$filename,
|
if ( ( $1 || '' ) eq '@' ) {
|
||||||
$linenumber );
|
directive_error( "Invalid SET variable", $filename, $linenumber ) unless exists $actparms{$2};
|
||||||
|
$actparms{$2} = evaluate_expression ( $expression,
|
||||||
|
$filename,
|
||||||
|
$linenumber );
|
||||||
|
$paramsmodified = 1;
|
||||||
|
} else {
|
||||||
|
$variables{$1} = evaluate_expression( $expression,
|
||||||
|
$filename,
|
||||||
|
$linenumber );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} ,
|
} ,
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user