Commit 1f2af64c authored by lpsolit%gmail.com's avatar lpsolit%gmail.com

Bug 416382: Adding an attachment with Perl 5.10 and CGI.pm < 3.33 throws a taint…

Bug 416382: Adding an attachment with Perl 5.10 and CGI.pm < 3.33 throws a taint error - Patch by Fré©ric Buclin <LpSolit@gmail.com> r/a=mkanat
parent d7b151f2
...@@ -54,11 +54,14 @@ use Bugzilla::Constants; ...@@ -54,11 +54,14 @@ use Bugzilla::Constants;
# are 'blacklisted'--that is, even if the version is high enough, Bugzilla # are 'blacklisted'--that is, even if the version is high enough, Bugzilla
# will refuse to say that it's OK to run with that version. # will refuse to say that it's OK to run with that version.
sub REQUIRED_MODULES { sub REQUIRED_MODULES {
my $perl_ver = sprintf('%vd', $^V);
my @modules = ( my @modules = (
{ {
package => 'CGI', package => 'CGI',
module => 'CGI', module => 'CGI',
version => '2.93' # Perl 5.10 requires CGI 3.33 due to a taint issue when
# uploading attachments, see bug 416382.
version => (vers_cmp($perl_ver, '5.10') > -1) ? '3.33' : '2.93'
}, },
{ {
package => 'TimeDate', package => 'TimeDate',
...@@ -222,16 +225,20 @@ sub OPTIONAL_MODULES { ...@@ -222,16 +225,20 @@ sub OPTIONAL_MODULES {
version => '1.999022', version => '1.999022',
feature => 'mod_perl' feature => 'mod_perl'
}, },
);
# Even very new releases of perl (5.8.5) don't come with this version, # Even very new releases of perl (5.8.5) don't come with this version,
# so I didn't want to make it a general requirement just for # so I didn't want to make it a general requirement just for
# running under mod_cgi. # running under mod_cgi.
{ # If Perl 5.10 is installed, then CGI 3.33 is already required. So this
package => 'CGI', # check is only relevant with Perl 5.8.x.
module => 'CGI', my $perl_ver = sprintf('%vd', $^V);
version => '3.11', if (vers_cmp($perl_ver, '5.10') < 0) {
feature => 'mod_perl' push(@modules, { package => 'CGI',
}, module => 'CGI',
); version => '3.11',
feature => 'mod_perl' });
}
my $all_modules = _get_extension_requirements( my $all_modules = _get_extension_requirements(
'OPTIONAL_MODULES', \@modules); 'OPTIONAL_MODULES', \@modules);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment