Generate better code during providers file processing -- Take 2

git-svn-id: https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk@3848 fbd18981-670d-0410-9b5c-8dc0c1a9a2bb
This commit is contained in:
teastep 2006-05-03 16:50:48 +00:00
parent 654c3b9fa8
commit dd20b68169

View File

@ -1123,7 +1123,7 @@ verify_mark() # $1 = value to test
#
setup_providers()
{
local table number mark duplicate interface gateway options provider address copy route loose addresses rulenum base pref echobin=$(mywhich echo) balance save_indent="$INDENT" mask= first=Yes
local table number mark duplicate interface gateway options provider address copy route loose addresses rulenum rulebase echobin=$(mywhich echo) balance save_indent="$INDENT" mask= first=Yes
copy_table() {
indent >&3 << __EOF__
@ -1280,16 +1280,15 @@ __EOF__
rulenum=0
if [ -z "$loose" ]; then
base=$(( 20000 + ( 256 * ($number-1) ) ))
rulebase=$(( 20000 + ( 256 * ($number-1) ) ))
indent >&3 << __EOF__
rulenum=0
find_interface_addresses $interface | while read address; do
qt ip rule del from \$address
pref=\$(( $base + \$rulenum ))
run_ip rule add from \$address pref \$(( $rulebase + \$rulenum )) table $number
rulenum=\$((\$rulenum + 1))
run_ip rule add from \$address pref \$pref table $number
done
__EOF__