]> TLD Linux GIT Repositories - packages/shorewall.git/commitdiff
- perl >= 5.28 fixes
authorMarcin Krol <hawk@tld-linux.org>
Thu, 6 Sep 2018 15:17:16 +0000 (15:17 +0000)
committerMarcin Krol <hawk@tld-linux.org>
Thu, 6 Sep 2018 15:17:16 +0000 (15:17 +0000)
perl.patch [new file with mode: 0644]
shorewall.spec

diff --git a/perl.patch b/perl.patch
new file mode 100644 (file)
index 0000000..a285d57
--- /dev/null
@@ -0,0 +1,69 @@
+diff -ur shorewall-5.2.0.5.orig/shorewall-5.2.0.5/Perl/Shorewall/Chains.pm shorewall-5.2.0.5/shorewall-5.2.0.5/Perl/Shorewall/Chains.pm
+--- shorewall-5.2.0.5.orig/shorewall-5.2.0.5/Perl/Shorewall/Chains.pm  2018-08-05 17:31:09.000000000 +0000
++++ shorewall-5.2.0.5/shorewall-5.2.0.5/Perl/Shorewall/Chains.pm       2018-09-06 15:14:31.187972699 +0000
+@@ -5819,7 +5819,7 @@
+     $chain =~ s/[^\w-]//g;
+     #                          $1    $2      -     $3
+-    while ( $condition =~ m( ^(.*?) @({)?(?:0|chain)(?(2)}) (.*)$ )x ) {
++    while ( $condition =~ m( ^(.*?) @(\{)?(?:0|chain)(?(2)}) (.*)$ )x ) {
+       $condition = join( '', $1, $chain, $3 );
+     }
+diff -ur shorewall-5.2.0.5.orig/shorewall-5.2.0.5/Perl/Shorewall/Config.pm shorewall-5.2.0.5/shorewall-5.2.0.5/Perl/Shorewall/Config.pm
+--- shorewall-5.2.0.5.orig/shorewall-5.2.0.5/Perl/Shorewall/Config.pm  2018-08-05 17:31:09.000000000 +0000
++++ shorewall-5.2.0.5/shorewall-5.2.0.5/Perl/Shorewall/Config.pm       2018-09-06 15:14:25.806972759 +0000
+@@ -2833,7 +2833,7 @@
+     }
+     #                         $1      $2   $3                     -     $4
+-    while ( $expression =~ m( ^(.*?) \$({)? (\d+|[a-zA-Z_]\w*) (?(2)}) (.*)$ )x ) {
++    while ( $expression =~ m( ^(.*?) \$(\{)? (\d+|[a-zA-Z_]\w*) (?(2)}) (.*)$ )x ) {
+       my ( $first, $var, $rest ) = ( $1, $3, $4);
+       if ( $var =~ /^\d+$/ ) {
+@@ -2850,7 +2850,7 @@
+     if ( $chain ) {
+       #                         $1      $2   $3                     -     $4
+-      while ( $expression =~ m( ^(.*?) \@({)? (\d+|[a-zA-Z]\w*) (?(2)}) (.*)$ )x ) {
++      while ( $expression =~ m( ^(.*?) \@(\{)? (\d+|[a-zA-Z]\w*) (?(2)}) (.*)$ )x ) {
+           my ( $first, $var, $rest ) = ( $1, $3, $4);
+           $var = numeric_value( $var ) if $var =~ /^\d/;
+           $val = $var ? $actparams{$var} : $chain;
+@@ -2861,7 +2861,7 @@
+     }
+     #                         $1      $2   $3      -     $4
+-    while ( $expression =~ m( ^(.*?) __({)? (\w+) (?(2)}) (.*)$ )x ) {
++    while ( $expression =~ m( ^(.*?) __(\{)? (\w+) (?(2)}) (.*)$ )x ) {
+       my ( $first, $cap, $rest ) = ( $1, $3, $4);
+       if ( exists $capdesc{$cap} ) {
+@@ -3791,7 +3791,7 @@
+     my ( $lineref, $count ) = ( $_[0], 0 );
+     my $chain = $actparams{chain};
+     #                         $1      $2   $3                   -     $4
+-    while ( $$lineref =~ m( ^(.*?) \$({)? (\d+|[a-zA-Z_]\w*) (?(2)}) (.*)$ )x ) {
++    while ( $$lineref =~ m( ^(.*?) \$(\{)? (\d+|[a-zA-Z_]\w*) (?(2)}) (.*)$ )x ) {
+       my ( $first, $var, $rest ) = ( $1, $3, $4);
+@@ -3830,7 +3830,7 @@
+       #
+       $$lineref =~ s/\\@/??/g;
+       #                         $1      $2   $3                     -     $4
+-      while ( $$lineref =~ m( ^(.*?) \@({)? (\d+|[a-zA-Z_]\w*) (?(2)}) (.*)$ )x ) {
++      while ( $$lineref =~ m( ^(.*?) \@(\{)? (\d+|[a-zA-Z_]\w*) (?(2)}) (.*)$ )x ) {
+           my ( $first, $var, $rest ) = ( $1, $3, $4);
+           my $val = $var ? $actparams{$var} : $actparams{chain};
+           $usedcaller = USEDCALLER if $var eq 'caller';
+@@ -3846,7 +3846,7 @@
+ sub expand_shorewallrc_variables( \$ ) {
+     my ( $lineref, $count ) = ( $_[0], 0 );
+     #                         $1      $2   $3                  -     $4
+-    while ( $$lineref =~ m( ^(.*?) \$({)? (\d+|[a-zA-Z]\w*) (?(2)}) (.*)$ )x ) {
++    while ( $$lineref =~ m( ^(.*?) \$(\{)? (\d+|[a-zA-Z]\w*) (?(2)}) (.*)$ )x ) {
+       my ( $first, $var, $rest ) = ( $1, $3, $4);
index 0f383e94b90c188bf40c1b6128b7f17ed3703090..9dec2f2cf00851d22b176afa382fc1e462e46c6f 100644 (file)
@@ -1,13 +1,12 @@
 # NOTE:
 # A very helpful document for packaging Shorewall is "Anatomy of Shorewall 4.0"
 # which is found at http://www.shorewall.net/Anatomy.html
-# TODO
-# - rc-script inits
+#
 Summary:       Shoreline Firewall - an iptables-based firewall for Linux systems
 Summary(pl.UTF-8):     Shoreline Firewall - zapora sieciowa oparta na iptables
 Name:          shorewall
 Version:       5.2.0.5
-Release:       1
+Release:       2
 License:       GPL
 Group:         Networking/Utilities
 Source0:       http://www.shorewall.net/pub/shorewall/5.2/shorewall-5.2.0/%{name}-%{version}.tar.bz2
@@ -30,6 +29,7 @@ Patch2:               tld.patch
 Patch3:                man.patch
 Patch4:                init.patch
 Patch5:                shell-fix.patch
+Patch6:                perl.patch
 URL:           http://www.shorewall.net/
 BuildRequires: perl
 BuildRequires: perl(Digest::SHA)
@@ -147,6 +147,7 @@ done
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p1
 
 # Remove hash-bang from files which are not directly executed as shell
 # scripts. This silences some rpmlint errors.