#231 #235 bug fix regarding way CVE are selected.

This commit is contained in:
root 2016-08-29 17:10:26 +02:00
parent 736fc24c47
commit dbbe785e01

View file

@ -1,5 +1,5 @@
#!/usr/bin/env perl #!/usr/bin/env perl
# mysqltuner.pl - Version 1.6.16 # mysqltuner.pl - Version 1.6.17
# High Performance MySQL Tuning Script # High Performance MySQL Tuning Script
# Copyright (C) 2006-2016 Major Hayden - major@mhtx.net # Copyright (C) 2006-2016 Major Hayden - major@mhtx.net
# #
@ -54,7 +54,7 @@ $Data::Dumper::Pair = " : ";
#use Env; #use Env;
# Set up a few variables for use in the script # Set up a few variables for use in the script
my $tunerversion = "1.6.16"; my $tunerversion = "1.6.17";
my ( @adjvars, @generalrec ); my ( @adjvars, @generalrec );
# Set defaults # Set defaults
@ -1056,20 +1056,13 @@ sub cve_recommendations {
my @cve = split( ';', $cveline ); my @cve = split( ';', $cveline );
debugprint "Comparing $mysqlvermajor\.$mysqlverminor\.$mysqlvermicro with $cve[1]\.$cve[2]\.$cve[3] : ".(mysql_version_le( $cve[1], $cve[2], $cve[3] )?'<=':'>'); debugprint "Comparing $mysqlvermajor\.$mysqlverminor\.$mysqlvermicro with $cve[1]\.$cve[2]\.$cve[3] : ".(mysql_version_le( $cve[1], $cve[2], $cve[3] )?'<=':'>');
# Fix some false positive in CVS parsing # Avoid not major/minor version corresponding CVEs
next if (int($cve[1]) > 10 or int($cve[1]) == 6 or int($cve[1]) < 3); next unless (int($cve[1])==$mysqlvermajor && int($cve[2])==$mysqlverminor);
if ( int($cve[3]) >= $mysqlvermicro ) {
# Removing 10.X.X CVE when version is a 3, 4 or 5 MySQL badprint "$cve[4](<= $cve[1]\.$cve[2]\.$cve[3]) : $cve[6]";
next if ( ( int($mysqlvermajor) == 3 || $result{'CVE'}{'List'}{$cvefound}="$cve[4](<= $cve[1]\.$cve[2]\.$cve[3]) : $cve[6]";
int($mysqlvermajor) == 4 ||
int($mysqlvermajor) == 5 ) && int($cve[1]) == 10);
if ( mysql_version_le( $cve[1], $cve[2], $cve[3] ) ) {
badprint "$cve[4] : $cve[6]";
$result{'CVE'}{'List'}{$cvefound}="$cve[4] : $cve[6]";
$cvefound++; $cvefound++;
} }
} }
close FH or die "Cannot close $opt{cvefile}: $!"; close FH or die "Cannot close $opt{cvefile}: $!";
$result{'CVE'}{'nb'}=$cvefound; $result{'CVE'}{'nb'}=$cvefound;
@ -4132,7 +4125,7 @@ __END__
=head1 NAME =head1 NAME
MySQLTuner 1.6.16 - MySQL High Performance Tuning Script MySQLTuner 1.6.17 - MySQL High Performance Tuning Script
=head1 IMPORTANT USAGE GUIDELINES =head1 IMPORTANT USAGE GUIDELINES