@ 11d698f · fetching

260607.4 · 45ff5fe77dbd96f7332f31943102291f878f30b8

Make CVE changes

reading declarations

Changes to lib/App/Ack/. All files

lib/App/Ack/ConfigLoader.pm

@@ -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 {

lib/App/Ack/Filter/Match.pm

@@ -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 {