[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Approval for upload of new Shorewall upstream 4.0.15



This time with promised attachments.

On Mon, Dec 08, 2008 at 07:49:06PM -0500, Roberto C. Sánchez wrote:
> I am preparing a new upstream release (4.0.15) of Shorewall (affected Debian
> packages: shorewall-{perl,shell,common,lite,doc}).  Nearly all of the changes
> have already been approved, uploaded and migrated to Lenny in the form of
> patches to the 4.0.14 packages.  Only the latest fix (I just committed it
> upstream tonight), has not been incorporated.  I would like to receive approval
> for upload of the new 4.0.15 (still to be released) packages.  This will help
> to avoid user confusion and 4.0.15 is currently planned to be the very last
> release in the 4.0 series of Shorewall releases.
> 
> The only substantial change between the current Debian packages in Lenny
> and the 4.0.15 is represented by the attached ipp2p.diff:
> 
>  Shorewall-common/changelog.txt     |    2 ++
>  Shorewall-common/lib.base          |    2 +-
>  Shorewall-common/releasenotes.txt  |    8 ++++++++
>  Shorewall-perl/Shorewall/Config.pm |    2 +-
>  4 files changed, 12 insertions(+), 2 deletions(-)
> 
> The affected packages are shorewall-{perl,common,lite}.  You can
> reproduce the diff yourself with this command:
> 
> svn diff -r8952:8953 http://shorewall.svn.sourceforge.net/svnroot/shorewall/branches/4.0
> 
> The complete upstream changeset between 4.0.14 and 4.0.15 is represented
> by the attached shorewall_4.0.14_to_4.0.15_upstream.diff:
> 
>  Shorewall-common/changelog.txt         |   17 +
>  Shorewall-common/fallback.sh           |    2
>  Shorewall-common/install.sh            |    2
>  Shorewall-common/lib.base              |   10
>  Shorewall-common/releasenotes.txt      |  497 +++++++++++++++++----------------
>  Shorewall-common/shorewall-common.spec |    4
>  Shorewall-common/started               |    2
>  Shorewall-common/uninstall.sh          |    2
>  Shorewall-lite/fallback.sh             |    2
>  Shorewall-lite/init.debian.sh          |    2
>  Shorewall-lite/install.sh              |    2
>  Shorewall-lite/shorewall-lite.spec     |    4
>  Shorewall-lite/uninstall.sh            |    2
>  Shorewall-perl/Shorewall/Chains.pm     |   15
>  Shorewall-perl/Shorewall/Config.pm     |   27 +
>  Shorewall-perl/Shorewall/Rules.pm      |    7
>  Shorewall-perl/Shorewall/Tc.pm         |    2
>  Shorewall-perl/install.sh              |    2
>  Shorewall-perl/shorewall-perl.spec     |    4
>  Shorewall-shell/compiler               |   54 +++
>  Shorewall-shell/install.sh             |    2
>  Shorewall-shell/shorewall-shell.spec   |    4
>  known_problems.txt                     |   10
>  manpages/shorewall-interfaces.xml      |    4
>  manpages/shorewall.conf.xml            |   21 +
>  manpages/shorewall.xml                 |   22 +
>  26 files changed, 449 insertions(+), 273 deletions(-)
> 
> The large change in the release notes is a result of a formatting
> cleanup.  The manpage changes are typo fixes and addition of missing
> documentation.  All of the rest of the changes are already patched
> individually into the affected Debian packages.o
> 
> You can reproduce the diff yourself with this command:
> 
> svn diff http://shorewall.svn.sourceforge.net/svnroot/shorewall/tags/4.0.14 http://shorewall.svn.sourceforge.net/svnroot/shorewall/branches/4.0
> 
> I think that overall it would be far better to have the 4.0.15 packages
> in Debian, rather than patching yet again.  However, if needed, I will
> patch in the changes from the attached ipp2p.diff.
> 
> Regards,
> 
> -Roberto
> 
> -- 
> Roberto C. Sánchez
> http://people.connexer.com/~roberto
> http://www.connexer.com



-- 
Roberto C. Sánchez
http://people.connexer.com/~roberto
http://www.connexer.com
Index: known_problems.txt
===================================================================
--- known_problems.txt	(.../tags/4.0.14)	(revision 8953)
+++ known_problems.txt	(.../branches/4.0)	(revision 8953)
@@ -1,10 +0,0 @@
-Problems corrected in Shorewall 4.0.14.2
-
-1)  With Shorewall-perl, if a destination port list had exactly 16
-    ports, where a port-range counts as two ports, then Shorewall-perl
-    would fail to split the rule into multiple rules and an
-    iptables-restore error would result.
-
-2)  The change to Shorewall in 4.0.14.1 that promised iptables 1.4.1
-    compatibility contained a typo that prevented it from working
-    correctly.
Index: Shorewall-perl/install.sh
===================================================================
--- Shorewall-perl/install.sh	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-perl/install.sh	(.../branches/4.0)	(revision 8953)
@@ -22,7 +22,7 @@
 #       Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 #
 
-VERSION=4.0.14
+VERSION=4.0.15
 
 usage() # $1 = exit status
 {
Index: Shorewall-perl/Shorewall/Chains.pm
===================================================================
--- Shorewall-perl/Shorewall/Chains.pm	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-perl/Shorewall/Chains.pm	(.../branches/4.0)	(revision 8953)
@@ -110,6 +110,7 @@
 				       do_test
 				       do_ratelimit
 				       do_user
+				       do_length
 				       do_tos
 				       match_source_dev
 				       match_dest_dev
@@ -421,7 +422,7 @@
     if ( $expandports && $rule =~  '^(.* --dports\s+)([^ ]+)(.*)$' ) {
 	my ($first, $ports, $rest) = ( $1, $2, $3 );
 
-	if ( ( $ports =~ tr/:,/:,/ ) > 15 ) {
+	if ( ( $ports =~ tr/:,/:,/ ) > 14 ) {
 	    my @ports = split '([,:])', $ports;
 
 	    while ( @ports ) {
@@ -1212,6 +1213,16 @@
 }
 
 #
+# Create a "-m length" match for the passed TOS
+#
+sub do_length( $ ) {
+    my $length = $_[0];
+
+    require_capability( 'LENGTH_MATCH' , 'A non-empty LENGTH' , 's' );
+    $length ne '-' ? "-m length --length $length " : '';
+}
+
+#
 # Match Source Interface
 #
 sub match_source_dev( $ ) {
@@ -1345,7 +1356,7 @@
     if ( $net =~ /^!/ ) {
 	$net =~ s/!//;
 	validate_net $net, 1;
-	"-m conntrack --ctorigdst ! $net ";
+	$capabilities{NEW_CONNTRACK_MATCH} ? "-m conntrack ! --ctorigdst $net " : "-m conntrack --ctorigdst ! $net ";
     } else {
 	validate_net $net, 1;
 	$net eq ALLIPv4 ? '' : "-m conntrack --ctorigdst $net ";
Index: Shorewall-perl/Shorewall/Config.pm
===================================================================
--- Shorewall-perl/Shorewall/Config.pm	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-perl/Shorewall/Config.pm	(.../branches/4.0)	(revision 8953)
@@ -162,6 +162,8 @@
 		 MULTIPORT       => 'Multi-port Match' ,
 		 XMULTIPORT      => 'Extended Multi-port Match',
 		 CONNTRACK_MATCH => 'Connection Tracking Match',
+		 NEW_CONNTRACK_MATCH => 
+		                    'New Connection Tracking Match syntax',
 		 USEPKTTYPE      => 'Packet Type Match',
 		 POLICY_MATCH    => 'Policy Match',
 		 PHYSDEV_MATCH   => 'Physdev Match',
@@ -244,8 +246,8 @@
 		    ORIGINAL_POLICY_MATCH => '',
 		    LOGPARMS => '',
 		    TC_SCRIPT => '',
-		    VERSION => "4.0.14",
-		    CAPVERSION => 40006 ,
+		    VERSION => "4.0.15",
+		    CAPVERSION => 40015 ,
 		  );
     #
     # From shorewall.conf file
@@ -357,6 +359,7 @@
 	       MULTIPORT => undef,
 	       XMULTIPORT => undef,
 	       CONNTRACK_MATCH => undef,
+	       NEW_CONNTRACK_MATCH => undef,
 	       USEPKTTYPE => undef,
 	       POLICY_MATCH => undef,
 	       PHYSDEV_MATCH => undef,
@@ -1368,6 +1371,10 @@
     qt1( "$iptables -N $sillyname" );
 
     $capabilities{CONNTRACK_MATCH} = qt1( "$iptables -A $sillyname -m conntrack --ctorigdst 192.168.1.1 -j ACCEPT" );
+
+    if ( $capabilities{CONNTRACK_MATCH} ) {
+	$capabilities{NEW_CONNTRACK_MATCH} = qt1( "$iptables -A $sillyname -m conntrack ! --ctorigdst 192.168.1.1 -j ACCEPT" );
+    }
     
     if ( qt1( "$iptables -A $sillyname -p tcp -m multiport --dports 21,22 -j ACCEPT" ) ) {
 	$capabilities{MULTIPORT}  = 1;
@@ -1400,7 +1407,7 @@
 	$capabilities{XCONNMARK_MATCH} = qt1( "$iptables -A $sillyname -m connmark --mark 2/0xFF -j ACCEPT" );
     }
 
-    $capabilities{IPP2P_MATCH}     = qt1( "$iptables -A $sillyname -p tcp -m ipp2p --ipp2p -j ACCEPT" );
+    $capabilities{IPP2P_MATCH}     = qt1( "$iptables -A $sillyname -p tcp -m ipp2p --edk -j ACCEPT" );
     $capabilities{LENGTH_MATCH}    = qt1( "$iptables -A $sillyname -m length --length 10:20 -j ACCEPT" );
     $capabilities{ENHANCED_REJECT} = qt1( "$iptables -A $sillyname -j REJECT --reject-with icmp-host-prohibited" );
     $capabilities{COMMENTS}        = qt1( qq($iptables -A $sillyname -j ACCEPT -m comment --comment "This is a comment" ) );
@@ -1636,9 +1643,17 @@
     $globals{ORIGINAL_POLICY_MATCH} = $capabilities{POLICY_MATCH};
 
     if ( $config{LOGRATE} || $config{LOGBURST} ) {
-	 $globals{LOGLIMIT}  = '-m limit ';
-	 $globals{LOGLIMIT} .= "--limit $config{LOGRATE} "        if $config{LOGRATE};
-	 $globals{LOGLIMIT} .= "--limit-burst $config{LOGBURST} " if $config{LOGBURST};
+	if ( defined $config{LOGRATE} ) {
+	    fatal_error"Invalid LOGRATE ($config{LOGRATE})" unless $config{LOGRATE}  =~ /^\d+\/(second|minute)$/;
+	}
+	
+	if ( defined $config{LOGBURST} ) {
+	    fatal_error"Invalid LOGBURST ($config{LOGBURST})" unless $config{LOGBURST} =~ /^\d+$/;
+	}
+
+	$globals{LOGLIMIT}  = '-m limit ';
+	$globals{LOGLIMIT} .= "--limit $config{LOGRATE} "        if defined $config{LOGRATE};
+	$globals{LOGLIMIT} .= "--limit-burst $config{LOGBURST} " if defined $config{LOGBURST};
     } else {
 	$globals{LOGLIMIT} = '';
     }
Index: Shorewall-perl/Shorewall/Tc.pm
===================================================================
--- Shorewall-perl/Shorewall/Tc.pm	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-perl/Shorewall/Tc.pm	(.../branches/4.0)	(revision 8953)
@@ -271,7 +271,7 @@
 
     if ( ( my $result = expand_rule( ensure_chain( 'mangle' , $chain ) ,
 				     $restrictions{$chain} ,
-				     do_proto( $proto, $ports, $sports) . do_user( $user ) . do_test( $testval, $mask ) . do_tos( $tos ) ,
+				     do_proto( $proto, $ports, $sports) . do_user( $user ) . do_test( $testval, $mask ) . do_length( $length ) . do_tos( $tos ) ,
 				     $source ,
 				     $dest ,
 				     '' ,
Index: Shorewall-perl/Shorewall/Rules.pm
===================================================================
--- Shorewall-perl/Shorewall/Rules.pm	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-perl/Shorewall/Rules.pm	(.../branches/4.0)	(revision 8953)
@@ -1002,6 +1002,11 @@
 	fatal_error "Missing DEST Qualifier ($dest)" if $2 eq '';
 	$destzone = $1;
 	$dest = $2;
+    } elsif ( $dest =~ /.*\..*\./ ) {
+	#
+	# Appears to be an address
+	#
+	$destzone = '-';
     } else {
 	$destzone = $dest;
 	$dest = ALLIPv4;
@@ -1602,6 +1607,8 @@
 				if $hostref->{options}{broadcast};
 			}
 
+			clearrule;
+
 			next if $hostref->{options}{destonly}; 
 
 			my $source = match_source_net $net;
Index: Shorewall-perl/shorewall-perl.spec
===================================================================
--- Shorewall-perl/shorewall-perl.spec	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-perl/shorewall-perl.spec	(.../branches/4.0)	(revision 8953)
@@ -1,5 +1,5 @@
 %define name shorewall-perl
-%define version 4.0.14
+%define version 4.0.15
 %define release 0base
 
 Summary: Shoreline Firewall Perl-based compiler.
@@ -64,6 +64,8 @@
 %doc COPYING releasenotes.txt
 
 %changelog
+* Sat Oct 11 2008 Roberto C. Sanchez roberto@connexer.com
+- Updated to 4.0.15-0base
 * Mon Sep 22 2008 Tom Eastep tom@shorewall.net
 - Updated to 4.0.14-0base
 * Sat Jul 26 2008 Tom Eastep tom@shorewall.net

Property changes on: Shorewall-perl
___________________________________________________________________
Name: svn:mergeinfo
   - 


Property changes on: Samples
___________________________________________________________________
Name: svn:mergeinfo
   - 

Index: Shorewall-shell/install.sh
===================================================================
--- Shorewall-shell/install.sh	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-shell/install.sh	(.../branches/4.0)	(revision 8953)
@@ -22,7 +22,7 @@
 #       Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 #
 
-VERSION=4.0.14
+VERSION=4.0.15
 
 usage() # $1 = exit status
 {
Index: Shorewall-shell/shorewall-shell.spec
===================================================================
--- Shorewall-shell/shorewall-shell.spec	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-shell/shorewall-shell.spec	(.../branches/4.0)	(revision 8953)
@@ -1,5 +1,5 @@
 %define name shorewall-shell
-%define version 4.0.14
+%define version 4.0.15
 %define release 0base
 
 Summary: Shoreline Firewall is an iptables-based firewall for Linux systems.
@@ -81,6 +81,8 @@
 %doc COPYING INSTALL 
 
 %changelog
+* Sat Oct 11 2008 Roberto C. Sanchez roberto@connexer.com
+- Updated to 4.0.15-0base
 * Mon Sep 22 2008 Tom Eastep tom@shorewall.net
 - Updated to 4.0.14-0base
 * Sat Jul 26 2008 Tom Eastep tom@shorewall.net
Index: Shorewall-shell/compiler
===================================================================
--- Shorewall-shell/compiler	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-shell/compiler	(.../branches/4.0)	(revision 8953)
@@ -1674,8 +1674,18 @@
 	build_exclusion_chain chain filter "$excludesource" "$excludedest"
 
 	if [ -n "$addr" -a -n "$CONNTRACK_MATCH" ]; then
+	    match='--ctorigdst'
+	    if [ -n "$NEW_CONNTRACK_MATCH" ]; then
+		case $adr in
+		    !*)
+			match='!--ctorigdst'
+			adr=${adr#!}
+			;;
+		esac
+	    fi
+
 	    for adr in $(separate_list $addr); do
-		run_iptables -A $logchain $state $(fix_bang $proto $multiport $sports $dports) $user -m conntrack --ctorigdst $adr -j $chain
+		run_iptables -A $logchain $state $(fix_bang $proto $multiport $sports $dports) $user -m conntrack $match $adr -j $chain
 	    done
 	    addr=
 	else
@@ -1891,14 +1901,24 @@
 __EOF__
 			    else
 				for adr in $(separate_list $addr); do
+				    match='--ctorigdst'
+				    if [ -n "$NEW_CONNTRACK_MATCH" ]; then
+					case $adr in
+					    !*)
+						match='!--ctorigdst'
+						adr=${adr#!}
+						;;
+					esac
+				    fi
+
 				    if [ -n "$loglevel" -a -z "$natrule" ]; then
-					log_rule_limit $loglevel $chain $logchain $logtarget "$ratelimit" "$logtag" -A -m conntrack --ctorigdst $adr \
+					log_rule_limit $loglevel $chain $logchain $logtarget "$ratelimit" "$logtag" -A -m conntrack $match $adr \
 					    $user $mrk $(fix_bang $proto $multiport $sports $cli $srv $dports) $state
 				    fi
 
 				    if [ "$logtarget" != LOG ]; then
 					run_iptables2 -A $chain $state $proto $ratelimit $multiport $cli $sports \
-					    $srv $dports -m conntrack --ctorigdst $adr $user $mrk -j $target
+					    $srv $dports -m conntrack $match $adr $user $mrk -j $target
 				    fi
 				done
 			    fi
@@ -1958,20 +1978,30 @@
 
 	if [ -n "$addr" ]; then
 	    for adr in $(separate_list $addr); do
+		match='--ctorigdst'
+		if [ -n "$NEW_CONNTRACK_MATCH" ]; then
+		    case $adr in
+			!*)
+			    match='!--ctorigdst'
+			    adr=${adr#!}
+			    ;;
+		    esac
+		fi
+
 		if [ -n "$loglevel" ]; then
 		    log_rule_limit $loglevel $chain $logchain $logtarget "$ratelimit" "$logtag" -A $user $mrk \
-			$state $(fix_bang $proto $multiport $cli $dest_interface $sports $dports -m conntrack --ctorigdst $adr)
+			$state $(fix_bang $proto $multiport $cli $dest_interface $sports $dports -m conntrack $match $adr)
 		fi
 
 		if [ "$logtarget" != LOG ]; then
 		    if [ -n "$nonat" ]; then
 			addnatrule $(dnat_chain $source) $proto $multiport \
-			    $cli $sports $dports $ratelimit $user $mrk  -m conntrack --ctorigdst $adr -j RETURN
+			    $cli $sports $dports $ratelimit $user $mrk  -m conntrack $match $adr -j RETURN
 		    fi
 
 		    if [ "$logtarget" != NONAT ]; then
 			run_iptables2 -A $chain $state $proto $multiport $cli $dest_interface \
-			    $sports $dports $ratelimit $user $mrk  -m conntrack --ctorigdst $adr -j $target
+			    $sports $dports $ratelimit $user $mrk  -m conntrack $match $adr -j $target
 		    fi
 		fi
 	    done
@@ -3670,7 +3700,17 @@
 		    #
 		    # We have connection tracking match -- match on the original destination
 		    #
-		    run_iptables2 -A $chain -m conntrack --ctorigdst $network -j $target
+		    match='--ctorigdst'
+		    if [ -n "$NEW_CONNTRACK_MATCH" ]; then
+			case $network in
+			    !*)
+				match='!--ctorigdst'
+				network=${network#!}
+				;;
+			esac
+		    fi
+
+		    run_iptables2 -A $chain -m conntrack $match $network -j $target
 		elif [ -n "$MANGLE_ENABLED" ]; then
 		    #
 		    # No connection tracking match but we have mangling -- add a rule to

Property changes on: Shorewall-shell
___________________________________________________________________
Name: svn:mergeinfo
   - 

Index: Shorewall-common/uninstall.sh
===================================================================
--- Shorewall-common/uninstall.sh	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-common/uninstall.sh	(.../branches/4.0)	(revision 8953)
@@ -26,7 +26,7 @@
 #       You may only use this script to uninstall the version
 #       shown below. Simply run this script to remove Shorewall Firewall
 
-VERSION=4.0.14
+VERSION=4.0.15
 
 usage() # $1 = exit status
 {
Index: Shorewall-common/changelog.txt
===================================================================
--- Shorewall-common/changelog.txt	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-common/changelog.txt	(.../branches/4.0)	(revision 8953)
@@ -1,3 +1,18 @@
+Changes in 4.0.15
+
+1)  Fix iptables conntrack syntax when using newer versions of
+iptables.
+
+2)  Apply Lennart Sorensen's patch to finish LENGTH matching.
+
+3)  Prevent invalid rules when KLUDGEFREE is not set.
+
+4)  Document DISABLE_IPV6 in shorewall.conf man page.
+
+5)  Fix nonat rules with destination IP address.
+
+6) Change ipp2p detection to support latest version.
+
 Changes in 4.0.14
 
 1)  Fix handling of 'all-' in shorewall-shell.
@@ -2,2 +17,4 @@
 
+2)  Fix bashism in handling of options in Debian init script.
+
 Changes in 4.0.13
Index: Shorewall-common/started
===================================================================
--- Shorewall-common/started	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-common/started	(.../branches/4.0)	(revision 8953)
@@ -8,7 +8,7 @@
 #	extension script and /etc/shorewall/start is that this one is invoked
 #	after delayed loading of the blacklist (DELAYBLACKLISTLOAD=Yes) and
 #	after the 'shorewall' chain has been created (thus signaling that the
-#	firewall is completely up.
+#	firewall is completely up).
 #
 #	This script should not change the firewall configuration directly but
 #	may do so indirectly by running /sbin/shorewall with the 'nolock'
Index: Shorewall-common/install.sh
===================================================================
--- Shorewall-common/install.sh	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-common/install.sh	(.../branches/4.0)	(revision 8953)
@@ -22,7 +22,7 @@
 #       Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 #
 
-VERSION=4.0.14
+VERSION=4.0.15
 
 usage() # $1 = exit status
 {
Index: Shorewall-common/releasenotes.txt
===================================================================
--- Shorewall-common/releasenotes.txt	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-common/releasenotes.txt	(.../branches/4.0)	(revision 8953)
@@ -1,4 +1,4 @@
-Shorewall 4.0 Patch release 14.
+Shorewall 4.0 Patch release 15.
 
 ----------------------------------------------------------------------------
                R E L E A S E  4 . 0  H I G H L I G H T S
@@ -26,27 +26,49 @@
    Shorewall-perl compiler. This support utilizes the reduced-function
    physdev match support available in Linux kernel 2.6.20 and later.
 
-Problems Corrected in Shorewall-shell 4.0.14.
-1)  If 'all-' appears in the DEST column of /etc/shorewall/rules and
-    the SOURCE column is not some form of 'all', then $FW was
-    incorrectly included in the DEST. 
+Problems Corrected in Shorewall 4.0.15.
 
+1)  Beginning with iptables version 1.4.1, the syntax for commands using the
+    conntrack module has changed.  Shorewall now detects if the installed
+    version of iptables requires the new syntax.
+
+2)  Support for the LENGTH column in /etc/shorewall/tcrules was
+    incomplete in Shorewall-perl with the result that the LENGTH column
+    was ignored. Thanks go to Lennart Sorensen for the patch.
+
+3)  When ipranges were used to define zones, Shorewall-perl could
+    generate invalid iptables-restore input if 'Repeat Match' was not
+    available. Repeat Match is not a true match -- it rather is a
+    feature of recent iptables releases that allows a match to be
+    repeated within a rule.
+
+4)  The DISABLE_IPV6 option has been documented in the shorewall.conf
+    man page.  The option has been there all along, but it was not
+    previously documented in the man page.
+
+5)  If a no-NAT rule (DNAT-, ACCEPT+, NONAT) included a destination IP
+    address and no zone name in the DEST column, Shorewall-perl would
+    reject the rule. If a zone name was specified, Shorewall-perl
+    would issue a Warning message.
+
+3)  Following the Netfilter tradition, the IPP2P maintainer has made an
+    incompatible syntax change (the --ipp2p option has been
+    removed). Shorewall has always used "-m ipp2p --ipp2p" when
+    detecting the presence of IPP2P support.
+
+    Shorewall-common and Shorewall-perl have been modified to use
+    "-m ipp2p --edk" instead.
+
 Known Problems Remaining.
 
 1)  The 'refresh' command doesn't refresh the mangle table. So changes
     made to /etc/shorewall/providers and/or /etc/shorewall/tcrules may
     not be reflected in the running ruleset.
 
-Other changes in Shorewall 4.0.13.
+Other changes in Shorewall 4.0.15.
 
-1)  Beginning with Shorewall 4.0.0, the -f option was no longer the
-    default for '/etc/init.d/shorewall start'. Beginning with 4.0.13,
-    this is also true for Shoreawall-lite.
+None.
 
-2)  A macro supporting RNDC (BIND remote management protocol) traffic
-    has been added.  It can be used as any other macro (e.g., RNDC/ACCEPT)
-    in the rules file.
-
 Migration Considerations:
 
 1)  Beginning with Shorewall 4.0.0, there is no single 'shorewall'
@@ -915,226 +937,27 @@
     (compiler, shorewall-common and shorewall-lite) must be version
     4.0.0-RC2 or later.
 
-Problems corrected in Shorewall-perl 4.0.6.
+Problems Corrected in Shorewall 4.0.14.
 
-1)  In a DNAT or REDIRECT rule, if no serverport was given and the DEST
-    PORT(S) list contained a service name containing a hyphen ("-") then
-    an ERROR was generated.
+1)  If 'all-' appears in the DEST column of /etc/shorewall/rules and
+    the SOURCE column is not some form of 'all', then $FW was
+    incorrectly included in the DEST. 
 
-    Example -- Rules file:
+2)  A bashism has been corrected in the init script shipped for Debian
+    and Debian-like distributions which prevented the proper options
+    from being passed to /sbin/shorewall or /sbin/shorewall-lite in
+    some cases.
 
-	DNAT    net     loc:$WINDOWS_IP tcp     https,pptp,ms-wbt-server,4125
+Other changes in Shorewall 4.0.14.
 
-    Results in:
+1)  Beginning with Shorewall 4.0.0, the -f option was no longer the
+    default for '/etc/init.d/shorewall start'. Beginning with 4.0.13,
+    this is also true for Shoreawall-lite.
 
-        ERROR: Invalid port range (ms:wbt:server) : rules (line 49)
+2)  A macro supporting RNDC (BIND remote management protocol) traffic
+    has been added.  It can be used as any other macro (e.g., RNDC/ACCEPT)
+    in the rules file.
 
-    Problem was introduced in Shorewall 4.0.5 and does not occur in
-    earlier releases.
-
-2)  If a long destination port list needed to be broken at a port pair,
-    the generated rule contained an extra comma which resulted in an
-    iptables-restore failure.
-
-3)  Several problems involving port ranges and port lists in REDIRECT
-    rules have been corrected.
-
-4)  Shorewall-perl no longer requires an address in the GATEWAY column
-    of /etc/shorewall/tunnels. If the column is left empty (or contains
-    '-') then 0.0.0.0/0 is assumed.
-
-5)  Previously with Shorewall-perl, redirecting both STDOUT and STDERR
-    to the same file descriptor resulted in scrambled output between
-    the two. The error messages were often in the middle of the
-    regular output far ahead of the point where the error occurred.
-
-    This problem was possible in the Debian Shorewall init script
-    (/etc/init.d/shorewall) which redirects output to the
-    Debian-specific /var/log/shorewall-init.log file in this way:
-
-        $SRWL $SRWL_OPTS start >> $INITLOG 2>&1 && ...
-
-6)  With both compilers, when HIGH_ROUTE_MARKS=Yes, unpredictable
-    results could occur when marking in the PREROUTING or OUTPUT
-    chains. When a rule specified a mark value > 255, the compilers
-    were using the '--or-mark' operator rather than the '--set-mark'
-    operator. Consequently, when a packet matched more than one
-    rule, the resulting routing mark was the logical product of the
-    mark values in the matching rules rather than the mark value from
-    the last matching rule.
-
-    Example:
-
-        0x100        192.168.1.44        0.0.0.0/0
-        0x200        0.0.0.0/0        0.0.0.0/0        tcp        25
-
-    A TCP packet from 192.168.1.44 with destination port 25 would have
-    a  mark value of 0x300 rather than the expected value of 0x200.
-
-7)  Previously, a 'start -f' on Shorewall Lite would produce the
-    following distressing output before starting the firewall:
-
-    make: *** No rule to make target `/firewall', needed by
-    `/var/lib/shorewall-lite/restore'.  Stop.
-
-    Furthermore, the Makefile for both Shorewall and Shorewall Lite
-    failed to take into account the /etc/shorewall/vardir file.
-
-    This has been corrected. As part of the fix, both /sbin/shorewall
-    and /sbin/shorewall-lite support a "show vardir" command that
-    displays the VARDIR setting.
-
-8)  Shorewall-perl was previously ignoring the USER/GROUP column of the
-    tcrules file.
-
-9)  Supplying the name of a built-in chain in the 'refresh' command
-    caused entries in the chain to be duplicated. Since this is a
-    feature of iptables-restore with the '-n' option, built-in chains
-    in the 'refresh' list will now be rejected.
-
-Other changes in Shorewall 4.0.6.
-
-1)  Shorewall-perl now uses the '--physdev-is-bridged' option when it
-    is available. This option will suppress messages like the following:
-
-    kernel: physdev match: using --physdev-out in the OUTPUT, FORWARD and
-    POSTROUTING chains for non-bridged traffic is not supported
-    anymore.
-
-    This change only affects users who use bport/bport4 zones in a
-    briged configuration and requires that capabilities files be
-    regenerated using Shorewall-common or Shorewall-lite 4.0.6.
-
-2)  Shorewall-perl now allows you to embed Shell or Perl scripts in
-    all configuration files except /etc/shorewall/params and
-    /etc/shorewall/shorewall.conf (As always, you can continue to
-    include arbitrary shell code in /etc/shorewall/params).
-
-    To embed a one-line script, use one of the following:
-
-        SHELL <shell script>
-        PERL <perl script>
-
-    For multi-line scripts, use:
-
-        BEGIN SHELL
-        <shell script>
-        END SHELL
-
-        BEGIN PERL
-        <perl script>
-        END PERL
-
-    For SHELL scripts, the output from the script is processed as if it
-    were part of the file.
-
-    Example 1 (Shell): To generate SMTP/ACCEPT rules from zones a b c d
-    and e to the firewall:
-
-        Either:
-
-            BEGIN SHELL 
-            for z in a b c d e; do
-                echo SMTP/ACCEPT $z fw tcp 25
-            done
-            END SHELL
-
-        or
-
-            SHELL for z in a b c d e; do echo SMTP/ACCEPT $z fw tcp 25; done
-
-    Either is equivalent to:
-
-        SMTP/ACCEPT a fw tcp 25
-        SMTP/ACCEPT b fw tcp 25
-        SMTP/ACCEPT c fw tcp 25
-        SMTP/ACCEPT d fw tcp 25
-        SMTP/ACCEPT e fw tcp 25
-
-    With a Perl script, if you want to output text to be processed as
-    if it were part of the file, then pass the text to the shorewall()
-    function.
-
-    Example 2 (Perl): To generate SMTP/ACCEPT rules from zones a b c d
-    and e to the firewall:
-
-          BEGIN PERL 
-          for ( qw/a b c d e/ ) { 
-              shorewall "SMTP/ACCEPT $_ fw tcp 25";
-          }
-          END PERL
-
-    PERL scripts have access to any context accumulated in earlier PERL
-    scripts. All such embedded Perl, as well as conventional Perl
-    extension scripts are placed in the Shorewall::User package. That
-    way, your global variables and functions won't conflict with any of
-    Shorewall's.
-
-    To allow you to load Perl modules and initialize any global state,
-    a new 'compile' compile-time extension script has been added. It is
-    called early in the compilation process.
-
-    For additional information, see
-
-    - http://www.shorewall.net/configuration_file_basics.html#Embedded
-
-3)  To complement Embedded Perl scripts, Shorewall 4.0.6 allows Perl
-    scripts to create filter chains using
-    Shorewall::Chains::new_manual_chain() and then use the chain as a
-    target in subsequent entries in /etc/shorewall/rules.
-
-    See http://www.shorewall.net/ManualChains.html for information.
-
-4)  The 'hits' command now accepts a -t option which limits the report
-    to those log records generated today.
-
-5)  A DONT_LOAD option has been added to shorewall.conf. If there are
-    kernel modules that you don't wish to have loaded, you can list
-    them in this entry as a comma-separated list.
-
-    Example:
-
-        DONT_LOAD=nf_conntrack_sip,nf_nat_sip
-
-6)  Shorewall-perl now supports the --random option of the iptables
-    SNAT, MASQUERADE, DNAT and REDIRECT targets. Please note that
-    iptables support for this option is currently broken for the DNAT
-    and REDIRECT targets; I've sent a patch to the Netfilter team.
-
-    For MASQUERADE, simply place the word 'random' in the ADDRESS
-    column. This causes Netfilter to randomize the source port seen by
-    the remote host.
-
-     Example:
-
-        #INTERFACE        SOURCE        ADDRESS
-        eth0                eth1        random    
-
-    For SNAT, follow the port list by ":random".
-
-    Example:
-
-        #INTERFACE        SOURCE        ADDRESS
-        eth0                eth1        206.124.146.179:10000-10999:random
-
-    For DNAT, follow the port list by ":random".
-
-    Example:
-
-        #ACTION SOURCE  DEST                            PROTO   DEST
-        #                                               PORT(S)
-        DNAT    net     loc:192.168.1.4:40-50:random    tcp     22
-
-    For REDIRECT, you must use the fully-qualified form of the DEST:
-
-        #ACTION         SOURCE  DEST                    PROTO   DEST
-        #                                               PORT(S)
-        REDIRECT        net     $FW::40-50:random       tcp     22
-
-    Note that ':random' is only effective with SNAT, DNAT and REDIRECT
-    when a port range is specified in the ADDRESS/DEST column. It is
-    ignored by iptables/iptables-restore otherwise.
-
 Problems corrected in Shorewall 4.0.13.
 
 1) When DYNAMIC_ZONES=Yes, certain configurations would produce an
@@ -1457,6 +1280,226 @@
 
     xxxx        eth0:~00-02-02-02-02-02 ...
 
+Problems corrected in Shorewall-perl 4.0.6.
+
+1)  In a DNAT or REDIRECT rule, if no serverport was given and the DEST
+    PORT(S) list contained a service name containing a hyphen ("-") then
+    an ERROR was generated.
+
+    Example -- Rules file:
+
+	DNAT    net     loc:$WINDOWS_IP tcp     https,pptp,ms-wbt-server,4125
+
+    Results in:
+
+        ERROR: Invalid port range (ms:wbt:server) : rules (line 49)
+
+    Problem was introduced in Shorewall 4.0.5 and does not occur in
+    earlier releases.
+
+2)  If a long destination port list needed to be broken at a port pair,
+    the generated rule contained an extra comma which resulted in an
+    iptables-restore failure.
+
+3)  Several problems involving port ranges and port lists in REDIRECT
+    rules have been corrected.
+
+4)  Shorewall-perl no longer requires an address in the GATEWAY column
+    of /etc/shorewall/tunnels. If the column is left empty (or contains
+    '-') then 0.0.0.0/0 is assumed.
+
+5)  Previously with Shorewall-perl, redirecting both STDOUT and STDERR
+    to the same file descriptor resulted in scrambled output between
+    the two. The error messages were often in the middle of the
+    regular output far ahead of the point where the error occurred.
+
+    This problem was possible in the Debian Shorewall init script
+    (/etc/init.d/shorewall) which redirects output to the
+    Debian-specific /var/log/shorewall-init.log file in this way:
+
+        $SRWL $SRWL_OPTS start >> $INITLOG 2>&1 && ...
+
+6)  With both compilers, when HIGH_ROUTE_MARKS=Yes, unpredictable
+    results could occur when marking in the PREROUTING or OUTPUT
+    chains. When a rule specified a mark value > 255, the compilers
+    were using the '--or-mark' operator rather than the '--set-mark'
+    operator. Consequently, when a packet matched more than one
+    rule, the resulting routing mark was the logical product of the
+    mark values in the matching rules rather than the mark value from
+    the last matching rule.
+
+    Example:
+
+        0x100        192.168.1.44        0.0.0.0/0
+        0x200        0.0.0.0/0        0.0.0.0/0        tcp        25
+
+    A TCP packet from 192.168.1.44 with destination port 25 would have
+    a  mark value of 0x300 rather than the expected value of 0x200.
+
+7)  Previously, a 'start -f' on Shorewall Lite would produce the
+    following distressing output before starting the firewall:
+
+    make: *** No rule to make target `/firewall', needed by
+    `/var/lib/shorewall-lite/restore'.  Stop.
+
+    Furthermore, the Makefile for both Shorewall and Shorewall Lite
+    failed to take into account the /etc/shorewall/vardir file.
+
+    This has been corrected. As part of the fix, both /sbin/shorewall
+    and /sbin/shorewall-lite support a "show vardir" command that
+    displays the VARDIR setting.
+
+8)  Shorewall-perl was previously ignoring the USER/GROUP column of the
+    tcrules file.
+
+9)  Supplying the name of a built-in chain in the 'refresh' command
+    caused entries in the chain to be duplicated. Since this is a
+    feature of iptables-restore with the '-n' option, built-in chains
+    in the 'refresh' list will now be rejected.
+
+Other changes in Shorewall 4.0.6.
+
+1)  Shorewall-perl now uses the '--physdev-is-bridged' option when it
+    is available. This option will suppress messages like the following:
+
+    kernel: physdev match: using --physdev-out in the OUTPUT, FORWARD and
+    POSTROUTING chains for non-bridged traffic is not supported
+    anymore.
+
+    This change only affects users who use bport/bport4 zones in a
+    briged configuration and requires that capabilities files be
+    regenerated using Shorewall-common or Shorewall-lite 4.0.6.
+
+2)  Shorewall-perl now allows you to embed Shell or Perl scripts in
+    all configuration files except /etc/shorewall/params and
+    /etc/shorewall/shorewall.conf (As always, you can continue to
+    include arbitrary shell code in /etc/shorewall/params).
+
+    To embed a one-line script, use one of the following:
+
+        SHELL <shell script>
+        PERL <perl script>
+
+    For multi-line scripts, use:
+
+        BEGIN SHELL
+        <shell script>
+        END SHELL
+
+        BEGIN PERL
+        <perl script>
+        END PERL
+
+    For SHELL scripts, the output from the script is processed as if it
+    were part of the file.
+
+    Example 1 (Shell): To generate SMTP/ACCEPT rules from zones a b c d
+    and e to the firewall:
+
+        Either:
+
+            BEGIN SHELL 
+            for z in a b c d e; do
+                echo SMTP/ACCEPT $z fw tcp 25
+            done
+            END SHELL
+
+        or
+
+            SHELL for z in a b c d e; do echo SMTP/ACCEPT $z fw tcp 25; done
+
+    Either is equivalent to:
+
+        SMTP/ACCEPT a fw tcp 25
+        SMTP/ACCEPT b fw tcp 25
+        SMTP/ACCEPT c fw tcp 25
+        SMTP/ACCEPT d fw tcp 25
+        SMTP/ACCEPT e fw tcp 25
+
+    With a Perl script, if you want to output text to be processed as
+    if it were part of the file, then pass the text to the shorewall()
+    function.
+
+    Example 2 (Perl): To generate SMTP/ACCEPT rules from zones a b c d
+    and e to the firewall:
+
+          BEGIN PERL 
+          for ( qw/a b c d e/ ) { 
+              shorewall "SMTP/ACCEPT $_ fw tcp 25";
+          }
+          END PERL
+
+    PERL scripts have access to any context accumulated in earlier PERL
+    scripts. All such embedded Perl, as well as conventional Perl
+    extension scripts are placed in the Shorewall::User package. That
+    way, your global variables and functions won't conflict with any of
+    Shorewall's.
+
+    To allow you to load Perl modules and initialize any global state,
+    a new 'compile' compile-time extension script has been added. It is
+    called early in the compilation process.
+
+    For additional information, see
+
+    - http://www.shorewall.net/configuration_file_basics.html#Embedded
+
+3)  To complement Embedded Perl scripts, Shorewall 4.0.6 allows Perl
+    scripts to create filter chains using
+    Shorewall::Chains::new_manual_chain() and then use the chain as a
+    target in subsequent entries in /etc/shorewall/rules.
+
+    See http://www.shorewall.net/ManualChains.html for information.
+
+4)  The 'hits' command now accepts a -t option which limits the report
+    to those log records generated today.
+
+5)  A DONT_LOAD option has been added to shorewall.conf. If there are
+    kernel modules that you don't wish to have loaded, you can list
+    them in this entry as a comma-separated list.
+
+    Example:
+
+        DONT_LOAD=nf_conntrack_sip,nf_nat_sip
+
+6)  Shorewall-perl now supports the --random option of the iptables
+    SNAT, MASQUERADE, DNAT and REDIRECT targets. Please note that
+    iptables support for this option is currently broken for the DNAT
+    and REDIRECT targets; I've sent a patch to the Netfilter team.
+
+    For MASQUERADE, simply place the word 'random' in the ADDRESS
+    column. This causes Netfilter to randomize the source port seen by
+    the remote host.
+
+     Example:
+
+        #INTERFACE        SOURCE        ADDRESS
+        eth0                eth1        random    
+
+    For SNAT, follow the port list by ":random".
+
+    Example:
+
+        #INTERFACE        SOURCE        ADDRESS
+        eth0                eth1        206.124.146.179:10000-10999:random
+
+    For DNAT, follow the port list by ":random".
+
+    Example:
+
+        #ACTION SOURCE  DEST                            PROTO   DEST
+        #                                               PORT(S)
+        DNAT    net     loc:192.168.1.4:40-50:random    tcp     22
+
+    For REDIRECT, you must use the fully-qualified form of the DEST:
+
+        #ACTION         SOURCE  DEST                    PROTO   DEST
+        #                                               PORT(S)
+        REDIRECT        net     $FW::40-50:random       tcp     22
+
+    Note that ':random' is only effective with SNAT, DNAT and REDIRECT
+    when a port range is specified in the ADDRESS/DEST column. It is
+    ignored by iptables/iptables-restore otherwise.
+
 Problems corrected in Shorewall 4.0.5.
 
 1)  Previously, Shorewall-perl misprocessed $FW::<port> in the DEST
Index: Shorewall-common/lib.base
===================================================================
--- Shorewall-common/lib.base	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-common/lib.base	(.../branches/4.0)	(revision 8953)
@@ -35,7 +35,7 @@
 #
 
 SHOREWALL_LIBVERSION=40000
-SHOREWALL_CAPVERSION=40006
+SHOREWALL_CAPVERSION=40015
 
 [ -n "${VARDIR:=/var/lib/shorewall}" ]
 [ -n "${SHAREDIR:=/usr/share/shorewall}" ]
@@ -979,6 +979,7 @@
     qt $IPTABLES -t mangle -L -n && MANGLE_ENABLED=Yes || MANGLE_ENABLED=
 
     CONNTRACK_MATCH=
+    NEW_CONNTRACK_MATCH=
     MULTIPORT=
     XMULTIPORT=
     POLICY_MATCH=
@@ -1026,6 +1027,10 @@
 
     qt $IPTABLES -A $chain -m conntrack --ctorigdst 192.168.1.1 -j ACCEPT && CONNTRACK_MATCH=Yes
 
+    if [ -n "$CONNTRACK_MATCH" ]; then
+	qt $IPTABLES -A $chain -m conntrack ! --ctorigdst 192.168.1.1 -j ACCEPT && NEW_CONNTRACK_MATCH=Yes
+    fi
+
     if qt $IPTABLES -A $chain -p tcp -m multiport --dports 21,22 -j ACCEPT; then
 	MULTIPORT=Yes
 	qt $IPTABLES -A $chain -p tcp -m multiport --sports 60 -m multiport --dports 99 -j ACCEPT && KLUDEFREE=Yes
@@ -1057,7 +1062,7 @@
 	qt $IPTABLES -A $chain -m connmark --mark 2/0xFF -j ACCEPT && XCONNMARK_MATCH=Yes
     fi
 
-    qt $IPTABLES -A $chain -p tcp -m ipp2p --ipp2p -j ACCEPT            && IPP2P_MATCH=Yes
+    qt $IPTABLES -A $chain -p tcp -m ipp2p --edk -j ACCEPT              && IPP2P_MATCH=Yes
     qt $IPTABLES -A $chain -m length --length 10:20 -j ACCEPT           && LENGTH_MATCH=Yes
     qt $IPTABLES -A $chain -j REJECT --reject-with icmp-host-prohibited && ENHANCED_REJECT=Yes
 
@@ -1126,6 +1131,7 @@
 	report_capability "Multi-port Match" $MULTIPORT
 	[ -n "$MULTIPORT" ] && report_capability "Extended Multi-port Match" $XMULTIPORT
 	report_capability "Connection Tracking Match" $CONNTRACK_MATCH
+	report_capability "New Connection Tracking Match Syntax" $NEW_CONNTRACK_MATCH
 	report_capability "Packet Type Match" $USEPKTTYPE
 	report_capability "Policy Match" $POLICY_MATCH
 	report_capability "Physdev Match" $PHYSDEV_MATCH
Index: Shorewall-common/shorewall-common.spec
===================================================================
--- Shorewall-common/shorewall-common.spec	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-common/shorewall-common.spec	(.../branches/4.0)	(revision 8953)
@@ -1,5 +1,5 @@
 %define name shorewall-common
-%define version 4.0.14
+%define version 4.0.15
 %define release 0base
 
 Summary: Shoreline Firewall is an iptables-based firewall for Linux systems.
@@ -244,6 +244,8 @@
 %doc COPYING INSTALL changelog.txt releasenotes.txt tunnel ipsecvpn Samples
 
 %changelog
+* Sat Oct 11 2008 Roberto C. Sanchez roberto@connexer.com
+- Updated to 4.0.15-0base
 * Mon Sep 22 2008 Tom Eastep tom@shorewall.net
 - Updated to 4.0.14-0base
 * Sat Jul 26 2008 Tom Eastep tom@shorewall.net
Index: Shorewall-common/fallback.sh
===================================================================
--- Shorewall-common/fallback.sh	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-common/fallback.sh	(.../branches/4.0)	(revision 8953)
@@ -28,7 +28,7 @@
 #       shown below. Simply run this script to revert to your prior version of
 #       Shoreline Firewall.
 
-VERSION=4.0.14
+VERSION=4.0.15
 
 usage() # $1 = exit status
 {

Property changes on: Shorewall-common
___________________________________________________________________
Name: svn:mergeinfo
   - 


Property changes on: manpages-lite
___________________________________________________________________
Name: svn:mergeinfo
   - 

Index: Shorewall-lite/install.sh
===================================================================
--- Shorewall-lite/install.sh	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-lite/install.sh	(.../branches/4.0)	(revision 8953)
@@ -22,7 +22,7 @@
 #       Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 #
 
-VERSION=4.0.14
+VERSION=4.0.15
 
 usage() # $1 = exit status
 {
Index: Shorewall-lite/uninstall.sh
===================================================================
--- Shorewall-lite/uninstall.sh	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-lite/uninstall.sh	(.../branches/4.0)	(revision 8953)
@@ -26,7 +26,7 @@
 #       You may only use this script to uninstall the version
 #       shown below. Simply run this script to remove Shorewall Firewall
 
-VERSION=4.0.14
+VERSION=4.0.15
 
 usage() # $1 = exit status
 {
Index: Shorewall-lite/shorewall-lite.spec
===================================================================
--- Shorewall-lite/shorewall-lite.spec	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-lite/shorewall-lite.spec	(.../branches/4.0)	(revision 8953)
@@ -1,5 +1,5 @@
 %define name shorewall-lite
-%define version 4.0.14
+%define version 4.0.15
 %define release 0base
 
 Summary: Shoreline Firewall Lite is an iptables-based firewall for Linux systems.
@@ -98,6 +98,8 @@
 %doc COPYING changelog.txt releasenotes.txt
 
 %changelog
+* Sat Oct 11 2008 Roberto C. Sanchez roberto@connexer.com
+- Updated to 4.0.15-0base
 * Mon Sep 22 2008 Tom Eastep tom@shorewall.net
 - Updated to 4.0.14-0base
 * Sat Jul 26 2008 Tom Eastep tom@shorewall.net
Index: Shorewall-lite/fallback.sh
===================================================================
--- Shorewall-lite/fallback.sh	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-lite/fallback.sh	(.../branches/4.0)	(revision 8953)
@@ -28,7 +28,7 @@
 #       shown below. Simply run this script to revert to your prior version of
 #       Shoreline Firewall.
 
-VERSION=4.0.14
+VERSION=4.0.15
 
 usage() # $1 = exit status
 {
Index: Shorewall-lite/init.debian.sh
===================================================================
--- Shorewall-lite/init.debian.sh	(.../tags/4.0.14)	(revision 8953)
+++ Shorewall-lite/init.debian.sh	(.../branches/4.0)	(revision 8953)
@@ -66,7 +66,7 @@
 if [ -f "/etc/default/shorewall-lite" ]
 then
 	. /etc/default/shorewall-lite
-	$SRWL_OPTS+="$OPTIONS"
+	SRWL_OPTS="$SRWL_OPTS $OPTIONS"
 	if [ "$startup" != "1" ]
 	then
 		not_configured

Property changes on: Shorewall-lite
___________________________________________________________________
Name: svn:mergeinfo
   - 

Index: manpages/shorewall-interfaces.xml
===================================================================
--- manpages/shorewall-interfaces.xml	(.../tags/4.0.14)	(revision 8953)
+++ manpages/shorewall-interfaces.xml	(.../branches/4.0)	(revision 8953)
@@ -22,7 +22,7 @@
     <title>Description</title>
 
     <para>The interfaces file serves to define the firewall's network
-    interfaces to Shorewall.The order of entries in this file is not
+    interfaces to Shorewall. The order of entries in this file is not
     significant in determining zone composition.</para>
 
     <para>The columns in the file are as follows.</para>
@@ -73,7 +73,7 @@
 
           <para>Care must be exercised when using wildcards where there is
           another zone that uses a matching specific interface. See <ulink
-          url="shorewall-nesting.html">shorewall-nesting</ulink>(8) for a
+          url="shorewall-nesting.html">shorewall-nesting</ulink>(5) for a
           discussion of this problem.</para>
 
           <para>There is no need to define the loopback interface (lo) in this
Index: manpages/shorewall.conf.xml
===================================================================
--- manpages/shorewall.conf.xml	(.../tags/4.0.14)	(revision 8953)
+++ manpages/shorewall.conf.xml	(.../branches/4.0)	(revision 8953)
@@ -1,4 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
+"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd";>
 <refentry>
   <refmeta>
     <refentrytitle>shorewall.conf</refentrytitle>
@@ -452,6 +454,21 @@
       </varlistentry>
 
       <varlistentry>
+        <term><emphasis role="bold">DISABLE_IPV6=</emphasis>[<emphasis
+        role="bold">Yes</emphasis>|<emphasis role="bold">No</emphasis>]</term>
+
+        <listitem>
+          <para>If set to <emphasis role="bold">Yes</emphasis> or <emphasis
+          role="bold">yes</emphasis>, IPv6 traffic to, from and through the
+          firewall system is disabled. If set to <emphasis
+          role="bold">No</emphasis> or <emphasis role="bold">no</emphasis>,
+          Shorewall will take no action with respect to allowing or
+          disallowing IPv6 traffic. If not specified or empty,
+          “DISABLE_IPV6=No” is assumed.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
         <term><emphasis
         role="bold">DONT_LOAD=</emphasis>[<emphasis>module</emphasis>[,<emphasis>module</emphasis>]...]</term>
 
@@ -1469,7 +1486,7 @@
           <para>While Shorewall Actions can be very useful, they also require
           a sizable amount of code to implement. By setting USE_ACTIONS=No,
           embedded Shorewall installations can omit the large library
-          /usr/share/shorewall/lib.actions.</para>
+          /usr/share/shorewall-shell/lib.actions.</para>
 
           <note>
             <para>USE_ACTIONS=No is not supported by Shorewall-perl.</para>
@@ -1522,4 +1539,4 @@
     shorewall-tcclasses(5), shorewall-tcdevices(5), shorewall-tcrules(5),
     shorewall-tos(5), shorewall-tunnels(5), shorewall-zones(5)</para>
   </refsect1>
-</refentry>
\ No newline at end of file
+</refentry>
Index: manpages/shorewall.xml
===================================================================
--- manpages/shorewall.xml	(.../tags/4.0.14)	(revision 8953)
+++ manpages/shorewall.xml	(.../branches/4.0)	(revision 8953)
@@ -1,4 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
+"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd";>
 <refentry>
   <refmeta>
     <refentrytitle>shorewall</refentrytitle>
@@ -1053,6 +1055,16 @@
           SHOREWALL_COMPILER setting in <ulink
           url="shorewall.conf.html">shorewall.conf</ulink>(5) determines the
           compiler to use.</para>
+
+          <warning>
+            <para>If you use Shorewall's multi-ISP feature, you are stronly
+            advised against using the -C option of the
+            <command>safe-restart</command> command when switching between
+            Shorewall-shell and Shorewall-perl. The only supported way to
+            switch compilers is to <command>shorewall stop</command> followed
+            by <command>shorewall safe-start -C</command>
+            <replaceable>compiler</replaceable></para>
+          </warning>
         </listitem>
       </varlistentry>
 
@@ -1091,6 +1103,16 @@
           SHOREWALL_COMPILER setting in <ulink
           url="shorewall.conf.html">shorewall.conf</ulink>(5) determines the
           compiler to use.</para>
+
+          <warning>
+            <para>If you use Shorewall's multi-ISP feature, you are stronly
+            advised against using the -C option of the
+            <command>safe-restart</command> command when switching between
+            Shorewall-shell and Shorewall-perl. The only supported way to
+            switch compilers is to <command>shorewall stop</command> followed
+            by <command>shorewall safe-start -C</command>
+            <replaceable>compiler</replaceable></para>
+          </warning>
         </listitem>
       </varlistentry>
 

Property changes on: manpages
___________________________________________________________________
Name: svn:mergeinfo
   - 

Index: Shorewall-perl/Shorewall/Config.pm
===================================================================
--- Shorewall-perl/Shorewall/Config.pm	(revision 8952)
+++ Shorewall-perl/Shorewall/Config.pm	(revision 8953)
@@ -1407,7 +1407,7 @@
 	$capabilities{XCONNMARK_MATCH} = qt1( "$iptables -A $sillyname -m connmark --mark 2/0xFF -j ACCEPT" );
     }
 
-    $capabilities{IPP2P_MATCH}     = qt1( "$iptables -A $sillyname -p tcp -m ipp2p --ipp2p -j ACCEPT" );
+    $capabilities{IPP2P_MATCH}     = qt1( "$iptables -A $sillyname -p tcp -m ipp2p --edk -j ACCEPT" );
     $capabilities{LENGTH_MATCH}    = qt1( "$iptables -A $sillyname -m length --length 10:20 -j ACCEPT" );
     $capabilities{ENHANCED_REJECT} = qt1( "$iptables -A $sillyname -j REJECT --reject-with icmp-host-prohibited" );
     $capabilities{COMMENTS}        = qt1( qq($iptables -A $sillyname -j ACCEPT -m comment --comment "This is a comment" ) );
Index: Shorewall-common/changelog.txt
===================================================================
--- Shorewall-common/changelog.txt	(revision 8952)
+++ Shorewall-common/changelog.txt	(revision 8953)
@@ -11,6 +11,8 @@
 
 5)  Fix nonat rules with destination IP address.
 
+6) Change ipp2p detection to support latest version.
+
 Changes in 4.0.14
 
 1)  Fix handling of 'all-' in shorewall-shell.
Index: Shorewall-common/releasenotes.txt
===================================================================
--- Shorewall-common/releasenotes.txt	(revision 8952)
+++ Shorewall-common/releasenotes.txt	(revision 8953)
@@ -51,6 +51,14 @@
     reject the rule. If a zone name was specified, Shorewall-perl
     would issue a Warning message.
 
+3)  Following the Netfilter tradition, the IPP2P maintainer has made an
+    incompatible syntax change (the --ipp2p option has been
+    removed). Shorewall has always used "-m ipp2p --ipp2p" when
+    detecting the presence of IPP2P support.
+
+    Shorewall-common and Shorewall-perl have been modified to use
+    "-m ipp2p --edk" instead.
+
 Known Problems Remaining.
 
 1)  The 'refresh' command doesn't refresh the mangle table. So changes
Index: Shorewall-common/lib.base
===================================================================
--- Shorewall-common/lib.base	(revision 8952)
+++ Shorewall-common/lib.base	(revision 8953)
@@ -1062,7 +1062,7 @@
 	qt $IPTABLES -A $chain -m connmark --mark 2/0xFF -j ACCEPT && XCONNMARK_MATCH=Yes
     fi
 
-    qt $IPTABLES -A $chain -p tcp -m ipp2p --ipp2p -j ACCEPT            && IPP2P_MATCH=Yes
+    qt $IPTABLES -A $chain -p tcp -m ipp2p --edk -j ACCEPT              && IPP2P_MATCH=Yes
     qt $IPTABLES -A $chain -m length --length 10:20 -j ACCEPT           && LENGTH_MATCH=Yes
     qt $IPTABLES -A $chain -j REJECT --reject-with icmp-host-prohibited && ENHANCED_REJECT=Yes
 

Attachment: signature.asc
Description: Digital signature


Reply to: