RC2 is available -- hopefully I got it right this time. http://shorewall.net/pub/shorewall/Beta ftp://shorewall.net/pub/shorewall/Beta -Tom -- Tom Eastep \ Nothing is foolproof to a sufficiently talented fool Shoreline, \ http://shorewall.net Washington USA \ teastep@shorewall.net
Tom;
When using the ash shell, a "shorewall restart" fails with the
following error:
Loading /usr/share/shorewall/functions...
/usr/share/shorewall/functions: 537: Syntax error: Bad substitution
The problem doesn''t occur with the bash shell.
I have attached the output of a shorewall debug restart.
Steven Jan Springl wrote:> Tom; > When using the ash shell, a "shorewall restart" fails with the > following error: > > Loading /usr/share/shorewall/functions... > /usr/share/shorewall/functions: 537: Syntax error: Bad substitutionGrrrr! The if_match function can be modified as follows to correct this problem: if_match() # $1 = Name in interfaces file - may end in "+" # $2 = Full interface name - may also end in "+" { local pattern=${1%+} local interface=${2%+} # test "x${interface:0:${#pattern}}" = "x${pattern}" test "x$(echo ${interface} | cut -b -${#pattern} )" = "x${pattern}" } -Tom -- Tom Eastep \ Nothing is foolproof to a sufficiently talented fool Shoreline, \ http://shorewall.net Washington USA \ teastep@shorewall.net
Tom;
The patch works. Thanks.
Steven.
> Grrrr!
>
> The if_match function can be modified as follows to correct this problem:
>
> if_match() # $1 = Name in interfaces file - may end in "+"
> # $2 = Full interface name - may also end in "+"
> {
> local pattern=${1%+}
> local interface=${2%+}
>
> # test "x${interface:0:${#pattern}}" = "x${pattern}"
> test "x$(echo ${interface} | cut -b -${#pattern} )" =
"x${pattern}"
> }
>
> -Tom