diff --git a/Shorewall/Perl/Shorewall/Config.pm b/Shorewall/Perl/Shorewall/Config.pm index 41ae8cc54..ef410c109 100644 --- a/Shorewall/Perl/Shorewall/Config.pm +++ b/Shorewall/Perl/Shorewall/Config.pm @@ -2905,12 +2905,14 @@ sub get_params() { fatal_error "Processing of $fn failed" if $?; + my $variable; + for ( @params ) { - if ( /^(.*?)=(.*)$/ ) { - $params{$1} = $2 unless $1 eq '_'; - } else { - warning_message "Unrecognized output from 'env' ($_) ignored"; - } + if ( /^export (.*?)='(.*)'$/ ) { + $params{$variable = $1} = $2 unless $1 eq '_'; + } elsif ( /^export (.*?)='/ ) { + warning_message "Exported symbol '$1' ignored"; + } } } } diff --git a/Shorewall/Perl/getparams b/Shorewall/Perl/getparams index 65b8ac69c..605f2132b 100755 --- a/Shorewall/Perl/getparams +++ b/Shorewall/Perl/getparams @@ -32,4 +32,4 @@ set -a set +a -env +export -p