diff options
-rw-r--r-- | lib/Vyatta/DstNatRule.pm | 6 | ||||
-rw-r--r-- | lib/Vyatta/SrcNatRule.pm | 8 |
2 files changed, 9 insertions, 5 deletions
diff --git a/lib/Vyatta/DstNatRule.pm b/lib/Vyatta/DstNatRule.pm index e2aa483..bd54306 100644 --- a/lib/Vyatta/DstNatRule.pm +++ b/lib/Vyatta/DstNatRule.pm @@ -158,8 +158,10 @@ sub rule_str { if (defined($self->{_proto})) { my $str = $self->{_proto}; my $negate =""; - $negate = "!" if (m/^\!(.*)$/); - $str =~ s/^\!(.*)$/ $1/; + if ($str =~ /^\!(.*)$/) { + $str = $1; + $negate = "!"; + } if ($str eq 'tcp_udp') { $tcp_and_udp = 1; $rule_str .= " -p tcp "; # we'll add the '-p udp' to 2nd rule later diff --git a/lib/Vyatta/SrcNatRule.pm b/lib/Vyatta/SrcNatRule.pm index 89623a4..52227a5 100644 --- a/lib/Vyatta/SrcNatRule.pm +++ b/lib/Vyatta/SrcNatRule.pm @@ -176,9 +176,11 @@ sub rule_str { if (defined($self->{_proto})) { my $str = $self->{_proto}; - my $negate =""; - $negate = "!" if (m/^\!(.*)$/); - $str =~ s/^\!(.*)$/ $1/; + my $negate = ""; + if ($str =~ /^\!(.*)$/) { + $str = $1; + $negate = "!"; + } if ($str eq 'tcp_udp') { $tcp_and_udp = 1; $rule_str .= " -p tcp "; # we'll add the '-p udp' to 2nd rule later |