From 04ae55e104aecfcfb0a90fe586021da732fa632c Mon Sep 17 00:00:00 2001
From: garnier-quentin <garnier.quentin@gmail.com>
Date: Fri, 11 Jan 2019 16:15:53 +0100
Subject: [PATCH] Fix issue with some regexp in perl 5.26

---
 apps/protocols/http/mode/jsoncontent.pm     | 4 ++--
 apps/protocols/http/mode/soapcontent.pm     | 4 ++--
 cloud/prometheus/restapi/mode/expression.pm | 2 +-
 snmp_standard/mode/stringvalue.pm           | 8 ++++----
 4 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/apps/protocols/http/mode/jsoncontent.pm b/apps/protocols/http/mode/jsoncontent.pm
index 7f92edeaa..d054e50d8 100644
--- a/apps/protocols/http/mode/jsoncontent.pm
+++ b/apps/protocols/http/mode/jsoncontent.pm
@@ -151,14 +151,14 @@ sub display_output {
     foreach my $severity (('ok', 'warning', 'critical')) {
         next if (scalar(@{$self->{'values_' . $severity}}) == 0 && scalar(@{$self->{'values_string_' . $severity}}) == 0);
         my $format = $self->{option_results}->{'format_' . $severity};
-        while ($format =~ /%{(.*?)}/g) {
+        while ($format =~ /%\{(.*?)\}/g) {
             my $replace = '';
             if (ref($self->{$1}) eq 'ARRAY') {
                 $replace = join($self->{option_results}->{values_separator}, @{$self->{$1}});
             } else {
                 $replace = defined($self->{$1}) ? $self->{$1} : '';
             }
-            $format =~ s/%{$1}/$replace/g;
+            $format =~ s/%\{$1\}/$replace/g;
         }
         $self->{output}->output_add(severity => $severity,
                                     short_msg => $format);
diff --git a/apps/protocols/http/mode/soapcontent.pm b/apps/protocols/http/mode/soapcontent.pm
index b1471426b..43dc8cb8e 100644
--- a/apps/protocols/http/mode/soapcontent.pm
+++ b/apps/protocols/http/mode/soapcontent.pm
@@ -147,14 +147,14 @@ sub display_output {
     foreach my $severity (('ok', 'warning', 'critical')) {
         next if (scalar(@{$self->{'values_' . $severity}}) == 0 && scalar(@{$self->{'values_string_' . $severity}}) == 0);
         my $format = $self->{option_results}->{'format_' . $severity};
-        while ($format =~ /%{(.*?)}/g) {
+        while ($format =~ /%\{(.*?)\}/g) {
             my $replace = '';
             if (ref($self->{$1}) eq 'ARRAY') {
                 $replace = join($self->{option_results}->{values_separator}, @{$self->{$1}});
             } else {
                 $replace = defined($self->{$1}) ? $self->{$1} : '';
             }
-            $format =~ s/%{$1}/$replace/g;
+            $format =~ s/%\{$1\}/$replace/g;
         }
         $self->{output}->output_add(severity => $severity,
                                     short_msg => $format);
diff --git a/cloud/prometheus/restapi/mode/expression.pm b/cloud/prometheus/restapi/mode/expression.pm
index 48e32de9e..d9e540370 100644
--- a/cloud/prometheus/restapi/mode/expression.pm
+++ b/cloud/prometheus/restapi/mode/expression.pm
@@ -72,7 +72,7 @@ sub custom_status_output {
     while ($msg =~ /%\{(.*?)\}/g) {
         my $key = $1;
         if (defined($self->{result_values}->{$key})) {
-            $msg =~ s/%{$key}/$self->{result_values}->{$key}/g;
+            $msg =~ s/%\{$key\}/$self->{result_values}->{$key}/g;
         }
     }
 
diff --git a/snmp_standard/mode/stringvalue.pm b/snmp_standard/mode/stringvalue.pm
index 9f4bd74bd..1e4142b75 100644
--- a/snmp_standard/mode/stringvalue.pm
+++ b/snmp_standard/mode/stringvalue.pm
@@ -247,10 +247,10 @@ sub build_format_details {
         my $append = '';
         foreach my $instance (sort keys %{$self->{instances}->{$severity}}) {
             my $details = $self->{option_results}->{'format_details_' . $severity};
-            $details =~ s/%{rows}/$self->{macros}->{rows}/g;
-            $details =~ s/%{filter_rows}/$self->{macros}->{filter_rows}/g;
-            $details =~ s/%{instance}/$instance/g;
-            $details =~ s/%{value}/$self->{instances}->{$severity}->{$instance}/g;
+            $details =~ s/%\{rows\}/$self->{macros}->{rows}/g;
+            $details =~ s/%\{filter_rows\}/$self->{macros}->{filter_rows}/g;
+            $details =~ s/%\{instance\}/$instance/g;
+            $details =~ s/%\{value\}/$self->{instances}->{$severity}->{$instance}/g;
         
             $self->{macros}->{'details_' . $severity} .= $append . $details;
             $append = $self->{option_results}->{'format_details_separator_' . $severity};