260607.4 · 45ff5fe77dbd96f7332f31943102291f878f30b8
Make CVE changes
reading declarations
Changes to lib/App/Ack/. All files
@@ -373,8 +373,17 @@ sub get_arg_spec { sub _context_value { my $val = shift; - # Contexts default to 2.- return (!defined($val) || ($val < 0)) ? 2 : $val;+ # Contexts default to 2.+ return 2 if !defined($val) || $val < 0;++ if ( $val > 10_000 ) {+ App::Ack::die(+ "Context value $val exceeds the maximum allowed "+ . "value of 10000."+ );+ }++ return $val; } @@ -427,6 +436,7 @@ sub _process_other { $args_for_source = { %{$args_for_source}, 'pager:s' => $illegal,+ 'follow!' => $illegal, }; }
lib/App/Ack/Filter/Extension.pm
@@ -12,6 +12,8 @@ Implements filters based on extensions. use strict; use warnings;+no re 'eval'; # Enforce default and block -Mre=eval to block RCE security problem.+ use parent 'App::Ack::Filter'; use App::Ack::Filter ();
lib/App/Ack/Filter/FirstLineMatch.pm
@@ -13,6 +13,8 @@ The class that implements filtering files by their first line. use strict; use warnings;+no re 'eval'; # Enforce default and block -Mre=eval to block RCE security problem.+ use parent 'App::Ack::Filter'; sub new {
@@ -2,6 +2,9 @@ package App::Ack::Filter::Match; use strict; use warnings;++no re 'eval'; # Enforce default and block -Mre=eval to block RCE security problem.+ use parent 'App::Ack::Filter'; use App::Ack::Filter::MatchGroup ();
lib/App/Ack/Filter/MatchGroup.pm
@@ -13,6 +13,8 @@ into one container. See App::Ack::Filter::IsGroup for details. use strict; use warnings;+no re 'eval'; # Enforce default and block -Mre=eval to block RCE security problem.+ use parent 'App::Ack::Filter'; sub new {