Bug fixes from STABLE2

git-svn-id: https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk@1375 fbd18981-670d-0410-9b5c-8dc0c1a9a2bb
This commit is contained in:
teastep 2004-05-29 00:40:33 +00:00
parent 03153243eb
commit 0881af787a

View File

@ -1418,9 +1418,20 @@ setup_tunnels() # $1 = name of tunnels file
setup_one_ipsec() # $1 = gateway $2 = Tunnel Kind $3 = gateway zones setup_one_ipsec() # $1 = gateway $2 = Tunnel Kind $3 = gateway zones
{ {
local kind=$2 noah= local kind=$2 noah= markval=
case $kind in
*:*:*)
markval=${kind#*}
kind=${kind%%:*}
;;
esac
case $kind in case $kind in
*:[1-9]*)
markval=${kind#*}
kind=${kind%:*}
;;
*:*) *:*)
noah=${kind#*:} noah=${kind#*:}
[ $noah = noah -o $noah = NOAH ] || fatal_error "Invalid IPSEC modifier $noah in tunnel \"$tunnel\"" [ $noah = noah -o $noah = NOAH ] || fatal_error "Invalid IPSEC modifier $noah in tunnel \"$tunnel\""
@ -2118,9 +2129,9 @@ setup_tc1() {
# Link to the TC mangle chains from the main chains # Link to the TC mangle chains from the main chains
# #
run_iptables -t mangle -A FORWARD -j tcfor run_iptables -t mangle -A FORWARD -m mark --mark 0 -j tcfor
run_iptables -t mangle -A PREROUTING -j tcpre run_iptables -t mangle -A PREROUTING -j tcpre
run_iptables -t mangle -A OUTPUT -j tcout run_iptables -t mangle -A OUTPUT -j tcout
run_user_exit tcstart run_user_exit tcstart
@ -2331,8 +2342,6 @@ check_config() {
verify_os_version verify_os_version
load_kernel_modules check
echo "Determining Zones..." echo "Determining Zones..."
determine_zones determine_zones
@ -4623,8 +4632,9 @@ add_ip_aliases()
# #
# Load kernel modules required for Shorewall # Load kernel modules required for Shorewall
# #
load_kernel_modules() #1 = command load_kernel_modules()
{ {
save_modules_dir=$MODULESDIR
[ -z "$MODULESDIR" ] && \ [ -z "$MODULESDIR" ] && \
MODULESDIR=/lib/modules/$(uname -r)/kernel/net/ipv4/netfilter MODULESDIR=/lib/modules/$(uname -r)/kernel/net/ipv4/netfilter
@ -4632,26 +4642,31 @@ load_kernel_modules() #1 = command
modules=$(find_file modules) modules=$(find_file modules)
if [ -f $modules -a -d $MODULESDIR ]; then if [ -f $modules -a -d $MODULESDIR ]; then
[ "$1" = silent ] || echo "Loading Modules..." progress_message "Loading Modules..."
. $modules . $modules
fi
case $1 in MODULESDIR=$save_modules_dir
start|restart) }
save_progress_message "Loading kernel modules..."
save_command "reload_kernel_modules <<__EOF__"
while read command; do save_load_kernel_modules()
case "$command" in {
loadmodule*)
save_command $command modules=$(find_file modules)
;;
esac save_progress_message "Loading kernel modules..."
done < $modules save_command "reload_kernel_modules <<__EOF__"
save_command __EOF__ while read command; do
case "$command" in
loadmodule*)
save_command $command
;; ;;
esac esac
fi done < $modules
save_command __EOF__
} }
# Verify that the 'ip' program is installed # Verify that the 'ip' program is installed
@ -5519,7 +5534,7 @@ define_firewall() # $1 = Command (Start or Restart)
save_command "MODULESDIR=\"$MODULESDIR\"" save_command "MODULESDIR=\"$MODULESDIR\""
save_command "MODULE_SUFFIX=\"$MODULE_SUFFIX\"" save_command "MODULE_SUFFIX=\"$MODULE_SUFFIX\""
load_kernel_modules $command save_load_kernel_modules
echo "Initializing..."; initialize_netfilter echo "Initializing..."; initialize_netfilter
echo "Configuring Proxy ARP"; setup_proxy_arp echo "Configuring Proxy ARP"; setup_proxy_arp
@ -6045,9 +6060,10 @@ do_initialize() {
ensure_config_path ensure_config_path
# #
# Determine the capabilities of the installed iptables/netfilter # Determine the capabilities of the installed iptables/netfilter
# We silently load the modules # We load the kernel modules here to acurately determine
# capabilities when module autoloading isn't enabled.
# #
qt load_kernel_modules silent load_kernel_modules
determine_capabilities determine_capabilities
[ -z "${STATEDIR}" ] && STATEDIR=/var/state/shorewall [ -z "${STATEDIR}" ] && STATEDIR=/var/state/shorewall