From 97cc4930cffbbe77a6dcf0750ea5afc7e68f5595 Mon Sep 17 00:00:00 2001 From: Tom Eastep Date: Fri, 6 Apr 2012 16:26:05 -0700 Subject: [PATCH] Deimplement option leading ? in embedded directives Signed-off-by: Tom Eastep --- Shorewall/Perl/Shorewall/Config.pm | 8 ++++---- docs/configuration_file_basics.xml | 18 +++++++----------- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/Shorewall/Perl/Shorewall/Config.pm b/Shorewall/Perl/Shorewall/Config.pm index 0b5abdf7a..a31affd8b 100644 --- a/Shorewall/Perl/Shorewall/Config.pm +++ b/Shorewall/Perl/Shorewall/Config.pm @@ -1953,7 +1953,7 @@ sub embedded_shell( $ ) { my $last = 0; while ( read_a_line( 0, 0, 1 ) ) { - last if $last = $currentline =~ s/^\s*\??END(\s+SHELL)?\s*;?//; + last if $last = $currentline =~ s/^\s*END(\s+SHELL)?\s*;?//; $command .= $currentline; } @@ -1989,7 +1989,7 @@ sub embedded_perl( $ ) { my $last = 0; while ( read_a_line( 0, 0, 1 ) ) { - last if $last = $currentline =~ s/^\s*\??END(\s+PERL)?\s*;?//; + last if $last = $currentline =~ s/^\s*END(\s+PERL)?\s*;?//; $command .= $currentline; } @@ -2208,12 +2208,12 @@ sub read_a_line(;$$$) { # Must check for shell/perl before doing variable expansion # if ( $embedded_enabled ) { - if ( $currentline =~ s/^\s*\??(BEGIN\s+)?SHELL\s*;?// ) { + if ( $currentline =~ s/^\s*(BEGIN\s+)?SHELL\s*;?// ) { embedded_shell( $1 ); next; } - if ( $currentline =~ s/^\s*\??(BEGIN\s+)?PERL\s*\;?// ) { + if ( $currentline =~ s/^\s*(BEGIN\s+)?PERL\s*\;?// ) { embedded_perl( $1 ); next; } diff --git a/docs/configuration_file_basics.xml b/docs/configuration_file_basics.xml index ec216bb95..eaf8c6731 100644 --- a/docs/configuration_file_basics.xml +++ b/docs/configuration_file_basics.xml @@ -1601,19 +1601,16 @@ SHELL cat /etc/shorewall/rules.d/*.rules 2> /dev/null || true - [?]PERL <perl + PERL <perl script> - [?]SHELL <shell + SHELL <shell script> - The optional '?' is allowed in Shorewall versions 4.5.2 and - later. - Shell scripts run in a child shell process and their output is piped back to the compiler which processes that output as if it were embedded at the point of the script. @@ -1658,14 +1655,13 @@ use Shorewall::Config ( qw/shorewall/ ); Multi-line scripts use one of the following forms:[?]BEGIN SHELL + role="bold">BEGIN SHELL <shell script> -[?]END [ SHELL ][?]BEGIN PERL [;] +END [ SHELL ]BEGIN PERL [;] <perl script> -[?]END [ PERL ] [;]As above, the optional - leading '?' is allowed in Shorewall versions 4.5.2 and later. +END [ PERL ] [;]