Shorewall 4.4.16-RC1 is now available for download. There is one known problem:
1) If the parameters to an action contain ":", then the @params array
visible to an extension script for the action is truncated at the
":".
That problem is corrected by the attached patch.
patch /usr/share/shorewall/Shorewall/Rules < COLON-RC1.patch
Thank you for testing,
-Tom
--
Tom Eastep \ When I die, I want to go like my Grandfather who
Shoreline, \ died peacefully in his sleep. Not screaming like
Washington, USA \ all of the passengers in his car
http://shorewall.net \________________________________________________
diff --git a/Shorewall/Perl/Shorewall/Rules.pm
b/Shorewall/Perl/Shorewall/Rules.pm
index 840a5ff..a2ca7a7 100644
--- a/Shorewall/Perl/Shorewall/Rules.pm
+++ b/Shorewall/Perl/Shorewall/Rules.pm
@@ -177,7 +177,7 @@ sub normalize_action_name( $ ) {
# Produce a recognizable target from a normalized action
#
sub externalize( $ ) {
- my ( $target, $level, $tag, $params ) = split /:/, shift;
+ my ( $target, $level, $tag, $params ) = split /:/, shift, 4;
$target = join( '', $target, '(', $params , ')' ) if $params;
$target .= ":$level" if $level && $level ne 'none';
@@ -297,7 +297,7 @@ sub createsimpleactionchain( $ ) {
sub createactionchain( $ ) {
my $normalized = shift;
- my ( $target, $level, $tag, $param ) = split /:/, $normalized;
+ my ( $target, $level, $tag, $param ) = split /:/, $normalized, 4;
assert( defined $param );
@@ -684,7 +684,7 @@ sub process_rule1 ( $$$$$$$$$$$$$$$$ );
sub process_action( $) {
my $chainref = shift;
my $wholeaction = $chainref->{action};
- my ( $action, $level, $tag, $param ) = split /:/, $wholeaction;
+ my ( $action, $level, $tag, $param ) = split /:/, $wholeaction, 4;
if ( $targets{$action} & BUILTIN ) {
$level = '' if $level =~ /none!?/;
@@ -915,7 +915,7 @@ sub process_rule1 ( $$$$$$$$$$$$$$$$ ) {
my $normalized_target;
my $normalized_action;
- ( $inaction, undef, undef, undef ) = split /:/, $normalized_action =
$chainref->{action} if defined $chainref;
+ ( $inaction, undef, undef, undef ) = split /:/, $normalized_action =
$chainref->{action}, 4 if defined $chainref;
$param = '' unless defined $param;
signature.asc
Description: OpenPGP digital signature
------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________ Shorewall-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/shorewall-devel
