diff --git a/Shorewall-common/diff-3.4-shorewall b/Shorewall-common/diff-3.4-shorewall
index 8c20cc9a5..9b45171b7 100644
--- a/Shorewall-common/diff-3.4-shorewall
+++ b/Shorewall-common/diff-3.4-shorewall
@@ -1,5 +1,5 @@
--- /home/teastep/shorewall/branches/3.4/Shorewall/shorewall 2007-06-18 11:32:15.000000000 -0700
-+++ shorewall 2007-06-18 11:31:44.000000000 -0700
++++ shorewall 2007-06-19 06:36:20.000000000 -0700
@@ -1305,7 +1305,7 @@
echo " stop"
echo " status"
@@ -20,3 +20,11 @@
if [ -f /usr/share/shorewall-perl/version ]; then
echo "Shorewall-perl $(cat /usr/share/shorewall-perl/version)"
fi
+@@ -1534,6 +1538,7 @@
+ [ $# -ne 1 ] && usage 1
+ get_config
+ export NOROUTES
++ [ -x ${VARDIR}/.restore ] && FIREWALL=${VARDIR}/.restore
+ exec $SHOREWALL_SHELL $FIREWALL $debugging $nolock $COMMAND
+ ;;
+ compile)
diff --git a/Shorewall-common/shorewall b/Shorewall-common/shorewall
index 5e14f484c..c63e542ed 100755
--- a/Shorewall-common/shorewall
+++ b/Shorewall-common/shorewall
@@ -1538,6 +1538,7 @@ case "$COMMAND" in
[ $# -ne 1 ] && usage 1
get_config
export NOROUTES
+ [ -x ${VARDIR}/.restore ] && FIREWALL=${VARDIR}/.restore
exec $SHOREWALL_SHELL $FIREWALL $debugging $nolock $COMMAND
;;
compile)
diff --git a/Shorewall-perl/Shorewall/Config.pm b/Shorewall-perl/Shorewall/Config.pm
index a7582e906..5ccf4f362 100644
--- a/Shorewall-perl/Shorewall/Config.pm
+++ b/Shorewall-perl/Shorewall/Config.pm
@@ -905,11 +905,11 @@ sub ensure_config_path() {
@config_path = split /:/, $config{CONFIG_PATH};
for ( @config_path ) {
- $_ .= '/' unless m|//$|;
+ $_ .= '/' unless m|/$|;
}
if ( $shorewall_dir ) {
- $shorewall_dir .= '/' unless $shorewall_dir =~ m|//$|;
+ $shorewall_dir .= '/' unless $shorewall_dir =~ m|/$|;
unshift @config_path, $shorewall_dir if $shorewall_dir ne $config_path[0];
}
}
diff --git a/Shorewall-perl/Shorewall/Rules.pm b/Shorewall-perl/Shorewall/Rules.pm
index 8e4825137..a73b7ee65 100644
--- a/Shorewall-perl/Shorewall/Rules.pm
+++ b/Shorewall-perl/Shorewall/Rules.pm
@@ -383,6 +383,8 @@ sub process_criticalhosts() {
my ($interface, $hosts, $options ) = split_line 1, 3, 'routestopped file';
+ fatal_error "Unknown interface ($interface)" unless known_interface $interface;
+
$hosts = ALLIPv4 unless $hosts ne '-';
my @hosts;
@@ -426,6 +428,8 @@ sub process_routestopped() {
my ($interface, $hosts, $options ) = split_line 1, 3, 'routestopped file';
+ fatal_error "Unknown interface ($interface)" unless known_interface $interface;
+
$hosts = ALLIPv4 unless $hosts && $hosts ne '-';
my @hosts;
diff --git a/docs/FAQ.xml b/docs/FAQ.xml
index 2155b4e1d..bc1fbb3e8 100644
--- a/docs/FAQ.xml
+++ b/docs/FAQ.xml
@@ -1789,6 +1789,15 @@ iptables: Invalid argument
June 12, 2007
+
June 17, 2007
2006-06-17 Shorewall 3.4.4
+Problems corrected in 3.4.4: + +1) The commands "shorewall add <interface> <zone>" and "shorewall + delete <interface> <zone>" no longer produce spurious error + messages. + +2) The command "shorewall delete <interface> <zone>" now actually deletes + entries when it successfully completes. Previously, it would appear + to remove an entry, even when removing that entry should fail. + +3) Setting HIGH_ROUTE_MARKS=No no longer causes TC_EXPERT flagging. + +4) When run as root, the 'shorewall load' and 'shorewall reload' + commands would fail if the LOGFILE setting in + /etc/shorewall/shorewall.conf specified a non-existant file. + +5) Entries in /etc/shorewall/tcrules that specify both a source and + destination port fail with the following diagnostic: + + iptables v1.3.3: multiport can only have one option + +6) Previously, Shorewall-lite did not allow DHCP traffic through an + interface when the interface was a bridge with 'dhcp' specified + unless there was a bridge on the administrative system with the + same name. + +7) SOURCE and DEST are now flagged as invalid zone name to avoid + problems with macros that use those names as keywords. + +8) Previously, Shorewall could *increase* the MSS under some + circumstances. This possibility is now eliminated, provided that + the system has TCPMSS match support (be sure to update your + capabilities files!). + +9) Firewall zone names other than 'fw' no longer cause a error when + IPSECFILE is not set or is set to 'ipsec'. + +10) The 'proxyarp' option on an interface was previously ignored when + the /etc/shorewall/proxyarp file was empty. + +11) Previously, if action 'a' was defined then the following + rule generated an error: + + a: z1 z2 ... + + The trailing ":" is now ignored. + +12) Previously, if a RATE/LIMIT was specified on a REJECT rule, the + generated error messages referred to the rule as a DROP rule. + +13) The 'nolock' keyword was previously ignored on several + /sbin/shorewall[-lite] commands. + +Other changes in 3.4.4: + +1) The accounting, masq, rules and tos files now have a 'MARK' column + similar to the column of the same name in the tcrules file. This + column allows filtering by MARK value. + +2) The "shorewall show zones" command now flags zone members that have + been added using "shorewall add" by preceding them with a plus sign + ("+"). + + Example: + + Shorewall 3.9.4 Zones at gateway - Mon May 14 07:48:16 PDT 2007 + + fw (firewall) + net (ipv4) + eth0:0.0.0.0/0 + loc (ipv4) + br0:0.0.0.0/0 + eth4:0.0.0.0/0 + eth5:0.0.0.0/0 + +eth1:0.0.0.0/0 + dmz (ipv4) + eth3:0.0.0.0/0 + vpn (ipv4) + tun+:0.0.0.0/0 + + In the above output, "eth1:0.0.0.0/0" was dynamically added to the + 'loc' zone. As part of this change, "shorewall delete" will only + delete entries that have been added dynamically. In earlier + versions, any entry could be deleted although the ruleset was only + changed by deleting entries that had been added dynamically. + +3) Eariler generations of Shorewall Lite required that remote root + login via ssh be enabled in order to use the 'load' and 'reload' + commands. + + Beginning with this release, you may define an alternative means + for accessing the remote firewall system. + + Two new options have been added to shorewall.conf: + + RSH_COMMAND + RCP_COMMAND + + The default values for these are as follows: + + RSH_COMMAND: ssh ${root}@${system} ${command} + RCP_COMMAND: scp ${files} ${root}@${system}:${destination} + + Shell variables that will be set when the commands are envoked are + as follows: + + root - root user. Normally 'root' but may be overridden using + the '-r' option. + + system - The name/IP address of the remote firewall system. + + command - For RSH_COMMAND, the command to be executed on the + firewall system. + + files - For RCP_COMMAND, a space-separated list of files to + be copied to the remote firewall system. + + destination - The directory on the remote system that the files + are to be copied into. + +4) You may now select the compiler to use on the command line using + the '-C' option. This option is available on the following + commands: + + check + compile + export + load + reload + restart + start + try + safe-start + save-restart + + Example: + + shorewall try -C perl .+
2006-06-12 New Host for www.shorewall.net and ftp.shorewall.net
I'm pleased to announce that Ty Christiansen and the folks at Master Mind diff --git a/web/shorewall_index.htm b/web/shorewall_index.htm index 8e8f8a0a4..12fc93fed 100644 --- a/web/shorewall_index.htm +++ b/web/shorewall_index.htm @@ -21,7 +21,7 @@ Sections, with no Front-Cover, and with no Back-Cover Texts. A copy of the license is included in the section entitled “GNU Free Documentation License”. -2007-06-15
+2007-06-17
Table of Contents
@@ -103,17 +103,17 @@ Features page.
Current Shorewall Releases
The current -Stable Release version is 3.4.3
+Stable Release version is 3.4.4