From 4899633c9dffdfcce2733c2d2aa0a8cd8d471f69 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Sep 21 2017 07:19:15 +0000 Subject: import rh-mysql56-mysql-5.6.37-5.el7 --- diff --git a/.gitignore b/.gitignore index 2042478..ba1b522 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/mysql-5.6.34.tar.gz +SOURCES/mysql-5.6.37.tar.gz diff --git a/.rh-mysql56-mysql.metadata b/.rh-mysql56-mysql.metadata index 4cef1e5..dec0e41 100644 --- a/.rh-mysql56-mysql.metadata +++ b/.rh-mysql56-mysql.metadata @@ -1 +1 @@ -b352b44385668f0d327d3f275f33f660d85497b3 SOURCES/mysql-5.6.34.tar.gz +052d315488831cd1dfd150e938f8d6812ef28b7b SOURCES/mysql-5.6.37.tar.gz diff --git a/SOURCES/mysql-default-logdir.patch b/SOURCES/mysql-default-logdir.patch new file mode 100644 index 0000000..26a1fb5 --- /dev/null +++ b/SOURCES/mysql-default-logdir.patch @@ -0,0 +1,21 @@ +When log file is removed, mysqld_safe only starts when it is sure the mysqld +can create the log file, so we need to add the default log dir into set of +known directories. + +rhbz#1482122 + +diff -up mysql-5.6.37/scripts/mysqld_safe.sh.logdir mysql-5.6.37/scripts/mysqld_safe.sh +--- mysql-5.6.37/scripts/mysqld_safe.sh.logdir 2017-06-02 19:42:10.000000000 +0200 ++++ mysql-5.6.37/scripts/mysqld_safe.sh 2017-08-16 21:21:59.687608613 +0200 +@@ -644,9 +644,10 @@ if [ $logging = "file" -o $logging = "bo + elif [ "x$user" = "xroot" ]; then # running as root, mysqld can create log file; continue + echo "Logging to '$err_log'." >&2 + else ++ default_log_dir=`dirname "@LOG_LOCATION@"` + case $logdir in + # We can't create $err_log, however mysqld can; continue +- /tmp|/var/tmp|/var/log/mysql|$DATADIR) ++ /tmp|/var/tmp|$default_log_dir|$DATADIR) + echo "Logging to '$err_log'." >&2 + ;; + # We can't create $err_log and don't know if mysqld can; error out diff --git a/SOURCES/mysql-md5_fips.patch b/SOURCES/mysql-md5_fips.patch new file mode 100644 index 0000000..4c2ad54 --- /dev/null +++ b/SOURCES/mysql-md5_fips.patch @@ -0,0 +1,50 @@ +Added to address RHBZ#1449689 + +Original patch notes from follows: + +... + +In FIPS mode there is no md5 by default, unless declared it is specifically +allowed. MD5 is used for non-crypto related things in MySQL (digests related +to performance schema and table list), so it is ok to use MD5 there. + +However, there is also MD5() SQL function, that should still keep working, +but users should know they should avoid using it in FIPS mode. + +RHBZ: #1351791 + +Upstream bug reports: +http://bugs.mysql.com/bug.php?id=83696 +https://jira.mariadb.org/browse/MDEV-7788 + + +diff -Naurp mysql-5.7.18_original/mysys_ssl/my_md5.cc mysql-5.7.18_patched/mysys_ssl/my_md5.cc +--- mysql-5.7.18_original/mysys_ssl/my_md5.cc 2017-03-18 08:45:14.000000000 +0100 ++++ mysql-5.7.18_patched/mysys_ssl/my_md5.cc 2017-05-12 12:19:38.584814619 +0200 +@@ -38,13 +38,22 @@ static void my_md5_hash(char *digest, co + + #elif defined(HAVE_OPENSSL) + #include ++#include + + static void my_md5_hash(unsigned char* digest, unsigned const char *buf, int len) + { +- MD5_CTX ctx; +- MD5_Init (&ctx); +- MD5_Update (&ctx, buf, len); +- MD5_Final (digest, &ctx); ++ EVP_MD_CTX *ctx; ++ ctx = EVP_MD_CTX_create(); ++ ++ #ifdef EVP_MD_CTX_FLAG_NON_FIPS_ALLOW ++ /* we will be using MD5, which is not allowed under FIPS */ ++ EVP_MD_CTX_set_flags(ctx, EVP_MD_CTX_FLAG_NON_FIPS_ALLOW); ++ #endif ++ ++ EVP_DigestInit_ex(ctx, EVP_md5(), NULL); ++ EVP_DigestUpdate(ctx, buf, len); ++ EVP_DigestFinal_ex(ctx, digest, NULL); ++ EVP_MD_CTX_destroy(ctx); + } + + #endif /* HAVE_YASSL */ diff --git a/SOURCES/mysql-paths.patch b/SOURCES/mysql-paths.patch index d406b96..740026c 100644 --- a/SOURCES/mysql-paths.patch +++ b/SOURCES/mysql-paths.patch @@ -4,9 +4,9 @@ Software Collections. Removing these hard-coded paths should fix it. Upstream report: https://mariadb.atlassian.net/browse/MDEV-6485 -diff -up mysql-5.6.23/client/mysql_plugin.c.hardpaths mysql-5.6.23/client/mysql_plugin.c ---- mysql-5.6.23/client/mysql_plugin.c.hardpaths 2015-01-19 14:48:30.000000000 +0100 -+++ mysql-5.6.23/client/mysql_plugin.c 2015-02-23 13:34:21.328484658 +0100 +diff -up mysql-5.6.37/client/mysql_plugin.c.p10 mysql-5.6.37/client/mysql_plugin.c +--- mysql-5.6.37/client/mysql_plugin.c.p10 2017-06-02 19:42:10.000000000 +0200 ++++ mysql-5.6.37/client/mysql_plugin.c 2017-07-20 16:21:30.654348408 +0200 @@ -90,6 +90,7 @@ static int find_plugin(char *tp_path); static int build_bootstrap_file(char *operation, char *bootstrap); static int dump_bootstrap_file(char *bootstrap_file); @@ -33,7 +33,7 @@ diff -up mysql-5.6.23/client/mysql_plugin.c.hardpaths mysql-5.6.23/client/mysql_ goto exit; else { -@@ -989,6 +990,55 @@ exit: +@@ -995,6 +996,55 @@ exit: } @@ -89,10 +89,10 @@ diff -up mysql-5.6.23/client/mysql_plugin.c.hardpaths mysql-5.6.23/client/mysql_ /** Locate the tool and form tool path. -diff -up mysql-5.6.23/cmake/install_layout.cmake.hardpaths mysql-5.6.23/cmake/install_layout.cmake ---- mysql-5.6.23/cmake/install_layout.cmake.hardpaths 2015-01-19 14:48:32.000000000 +0100 -+++ mysql-5.6.23/cmake/install_layout.cmake 2015-02-23 13:34:21.330484657 +0100 -@@ -94,7 +94,7 @@ IF(UNIX) +diff -up mysql-5.6.37/cmake/install_layout.cmake.p10 mysql-5.6.37/cmake/install_layout.cmake +--- mysql-5.6.37/cmake/install_layout.cmake.p10 2017-06-02 19:42:10.000000000 +0200 ++++ mysql-5.6.37/cmake/install_layout.cmake 2017-07-20 16:21:30.654348408 +0200 +@@ -108,7 +108,7 @@ IF(UNIX) " Choose between ${VALID_INSTALL_LAYOUTS}" ) ENDIF() @@ -101,7 +101,7 @@ diff -up mysql-5.6.23/cmake/install_layout.cmake.hardpaths mysql-5.6.23/cmake/in CACHE PATH "config directory (for my.cnf)") MARK_AS_ADVANCED(SYSCONFDIR) ENDIF() -@@ -145,6 +145,7 @@ SET(INSTALL_PLUGINTESTDIR_STANDALONE +@@ -326,6 +326,7 @@ SET(INSTALL_SECURE_FILE_PRIV_EMBEDDEDDIR SET(INSTALL_BINDIR_RPM "bin") SET(INSTALL_SBINDIR_RPM "sbin") SET(INSTALL_SCRIPTDIR_RPM "bin") @@ -109,10 +109,10 @@ diff -up mysql-5.6.23/cmake/install_layout.cmake.hardpaths mysql-5.6.23/cmake/in # IF(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64") SET(INSTALL_LIBDIR_RPM "lib64") -diff -up mysql-5.6.23/mysys_ssl/my_default.cc.hardpaths mysql-5.6.23/mysys_ssl/my_default.cc ---- mysql-5.6.23/mysys_ssl/my_default.cc.hardpaths 2015-01-19 14:48:32.000000000 +0100 -+++ mysql-5.6.23/mysys_ssl/my_default.cc 2015-02-23 13:34:21.329484658 +0100 -@@ -1389,12 +1389,12 @@ static const char **init_default_directo +diff -up mysql-5.6.37/mysys_ssl/my_default.cc.p10 mysql-5.6.37/mysys_ssl/my_default.cc +--- mysql-5.6.37/mysys_ssl/my_default.cc.p10 2017-06-02 19:42:10.000000000 +0200 ++++ mysql-5.6.37/mysys_ssl/my_default.cc 2017-07-20 16:21:30.655348411 +0200 +@@ -1400,12 +1400,12 @@ static const char **init_default_directo #else @@ -128,10 +128,10 @@ diff -up mysql-5.6.23/mysys_ssl/my_default.cc.hardpaths mysql-5.6.23/mysys_ssl/m #endif /* DEFAULT_SYSCONFDIR */ #endif -diff -up mysql-5.6.23/scripts/CMakeLists.txt.hardpaths mysql-5.6.23/scripts/CMakeLists.txt ---- mysql-5.6.23/scripts/CMakeLists.txt.hardpaths 2015-02-23 13:34:21.325484657 +0100 -+++ mysql-5.6.23/scripts/CMakeLists.txt 2015-02-23 13:34:21.330484657 +0100 -@@ -219,7 +219,7 @@ INSTALL_SCRIPT( +diff -up mysql-5.6.37/scripts/CMakeLists.txt.p10 mysql-5.6.37/scripts/CMakeLists.txt +--- mysql-5.6.37/scripts/CMakeLists.txt.p10 2017-07-20 16:21:30.648348391 +0200 ++++ mysql-5.6.37/scripts/CMakeLists.txt 2017-07-20 16:21:30.655348411 +0200 +@@ -250,7 +250,7 @@ INSTALL_SCRIPT( ) SET(prefix "${CMAKE_INSTALL_PREFIX}") @@ -140,20 +140,21 @@ diff -up mysql-5.6.23/scripts/CMakeLists.txt.hardpaths mysql-5.6.23/scripts/CMak SET(bindir ${prefix}/${INSTALL_BINDIR}) SET(libexecdir ${prefix}/${INSTALL_SBINDIR}) SET(scriptdir ${prefix}/${INSTALL_BINDIR}) -diff -up mysql-5.6.23/scripts/mysqlaccess.sh.hardpaths mysql-5.6.23/scripts/mysqlaccess.sh ---- mysql-5.6.23/scripts/mysqlaccess.sh.hardpaths 2015-01-19 14:48:32.000000000 +0100 -+++ mysql-5.6.23/scripts/mysqlaccess.sh 2015-02-23 13:34:21.329484658 +0100 -@@ -483,9 +483,6 @@ MySQLaccess::Report::Print_Header(); - elsif (-f "@sysconfdir@/$script_conf") { +diff -up mysql-5.6.37/scripts/mysqlaccess.sh.p10 mysql-5.6.37/scripts/mysqlaccess.sh +--- mysql-5.6.37/scripts/mysqlaccess.sh.p10 2017-06-02 19:42:10.000000000 +0200 ++++ mysql-5.6.37/scripts/mysqlaccess.sh 2017-07-20 16:21:49.109399123 +0200 +@@ -481,10 +481,6 @@ MySQLaccess::Report::Print_Header(); + print "Configuration file '$script_conf' is found in '@sysconfdir@/'\n"; require "@sysconfdir@/$script_conf"; } - elsif (-f "/etc/$script_conf") { +- print "Configuration file '$script_conf' is found in '/etc/'\n"; - require "/etc/$script_conf"; - } - - # **************************** - # Read in all parameters -@@ -951,7 +948,6 @@ sub MergeConfigFile { + elsif (-f "./$script_conf") { + print "\nERROR! Configuration file '$script_conf' is found in the current "; + print "directory.\nThe permissible locations for this file are either "; +@@ -958,7 +954,6 @@ sub MergeConfigFile { sub MergeConfigFiles { my ($name,$pass,$uid,$gid,$quota,$comment,$gcos,$dir,$shell) = getpwuid $<; MergeConfigFile("@sysconfdir@/my.cnf"); @@ -161,9 +162,9 @@ diff -up mysql-5.6.23/scripts/mysqlaccess.sh.hardpaths mysql-5.6.23/scripts/mysq MergeConfigFile("$dir/.my.cnf"); } -diff -up mysql-5.6.23/scripts/mysqld_multi.sh.hardpaths mysql-5.6.23/scripts/mysqld_multi.sh ---- mysql-5.6.23/scripts/mysqld_multi.sh.hardpaths 2015-01-19 14:48:32.000000000 +0100 -+++ mysql-5.6.23/scripts/mysqld_multi.sh 2015-02-23 13:34:21.329484658 +0100 +diff -up mysql-5.6.37/scripts/mysqld_multi.sh.p10 mysql-5.6.37/scripts/mysqld_multi.sh +--- mysql-5.6.37/scripts/mysqld_multi.sh.p10 2017-06-02 19:42:10.000000000 +0200 ++++ mysql-5.6.37/scripts/mysqld_multi.sh 2017-07-20 16:21:30.656348413 +0200 @@ -573,9 +573,7 @@ sub list_defaults_files my %seen; # Don't list the same file more than once @@ -175,9 +176,9 @@ diff -up mysql-5.6.23/scripts/mysqld_multi.sh.hardpaths mysql-5.6.23/scripts/mys ($ENV{MYSQL_HOME} ? "$ENV{MYSQL_HOME}/my.cnf" : undef), $opt{'extra-file'}, ($ENV{HOME} ? "$ENV{HOME}/.my.cnf" : undef)); -diff -up mysql-5.6.23/scripts/mysql_install_db.pl.in.hardpaths mysql-5.6.23/scripts/mysql_install_db.pl.in ---- mysql-5.6.23/scripts/mysql_install_db.pl.in.hardpaths 2015-02-23 13:34:37.995485386 +0100 -+++ mysql-5.6.23/scripts/mysql_install_db.pl.in 2015-02-23 13:35:15.505487028 +0100 +diff -up mysql-5.6.37/scripts/mysql_install_db.pl.in.p10 mysql-5.6.37/scripts/mysql_install_db.pl.in +--- mysql-5.6.37/scripts/mysql_install_db.pl.in.p10 2017-07-20 16:21:30.650348397 +0200 ++++ mysql-5.6.37/scripts/mysql_install_db.pl.in 2017-07-20 16:21:30.656348413 +0200 @@ -922,7 +922,7 @@ if ( open(PIPE, "| $mysqld_install_cmd_l "The new default config file was created as $copy_cfg_file,", "please compare it with your file and take the changes you need."); diff --git a/SOURCES/mysql-prepare-db-dir.sh b/SOURCES/mysql-prepare-db-dir.sh index 1c84f18..86bd6fa 100644 --- a/SOURCES/mysql-prepare-db-dir.sh +++ b/SOURCES/mysql-prepare-db-dir.sh @@ -36,37 +36,52 @@ else fi # Set up the errlogfile with appropriate permissions -if [ ! -e "$errlogfile" -a ! -L "$errlogfile" ]; then - touch "$errlogfile" - chown "$myuser:$mygroup" "$errlogfile" - chmod 0640 "$errlogfile" -fi -su - $myuser -s /bin/bash -c "touch '$errlogfile'" -ret=$? -# Provide some advice if the log file cannot be touched -if [ $ret -ne 0 ] ; then - errlogdir=$(dirname $errlogfile) +if [ ! -e "$errlogfile" -a ! -h "$errlogfile" -a x$(dirname "$errlogfile") = "x/var/log" ]; then + case $(basename "$errlogfile") in + mysql*.log|mariadb*.log) install /dev/null -m0640 -o$myuser -g$mygroup "$errlogfile" ;; + *) ;; + esac +else + # Provide some advice if the log file cannot be created by this script + errlogdir=$(dirname "$errlogfile") if ! [ -d "$errlogdir" ] ; then echo "The directory $errlogdir does not exist." - elif [ -f "$errlogfile" ] ; then - echo "The log file $errlogfile cannot be touched, please, fix its permissions." - else - echo "The log file $errlogfile could not be created." + exit 1 + elif [ -e "$errlogfile" -a ! -w "$errlogfile" ] ; then + echo "The log file $errlogfile cannot be written, please, fix its permissions." + echo "The daemon will be run under $myuser:$mygroup" + exit 1 fi - echo "The daemon will be run under $myuser:$mygroup" - exit 1 fi -[ -x /sbin/restorecon ] && /sbin/restorecon "$errlogfile" -# Make sure $datadir is there with correct permissions -if [ ! -e "$datadir" -a ! -L "$datadir" ]; then - mkdir -p "$datadir" || exit 1 - chown "$myuser:$mygroup" "$datadir" - chmod 0755 "$datadir" -fi -[ -x /sbin/restorecon ] && /sbin/restorecon "$datadir" -if [ ! -d "$datadir/mysql" ] ; then + +export LC_ALL=C + +# Returns content of the specified directory +# If listing files fails, fake-file is returned so which means +# we'll behave like there was some data initialized +# Some files or directories are fine to be there, so those are +# explicitly removed from the listing +# @param datadir +list_datadir () +{ + ( ls -1A "$1" 2>/dev/null || echo "fake-file" ) | grep -v \ + -e '^lost+found$' \ + -e '\.err$' \ + -e '^\.bash_history$' +} + +# Checks whether datadir should be initialized +# @param datadir +should_initialize () +{ + test -z "$(list_datadir "$1")" +} + +# Make the data directory if doesn't exist or empty +if should_initialize "$datadir" ; then + # Now create the database echo "Initializing @NICE_PROJECT_NAME@ database" su - $myuser -s /bin/bash -c "@bindir@/mysql_install_db --rpm --datadir='$datadir' --user='$myuser'" @@ -77,6 +92,9 @@ if [ ! -d "$datadir/mysql" ] ; then echo "Note, that you may need to clean up any partially-created database files in $datadir" >&2 exit $ret fi + # mysql_install_db writes to log file but runs as unconfined process, + # so we need to fix log file context here + [ -x /sbin/restorecon -a -f "$errlogfile" ] && /sbin/restorecon "$errlogfile" # upgrade does not need to be run on a fresh datadir su - $myuser -s /bin/bash -c "echo '@VERSION@' > '$datadir/mysql_upgrade_info'" fi diff --git a/SPECS/mysql.spec b/SPECS/mysql.spec index 7ed2fba..d1ad541 100644 --- a/SPECS/mysql.spec +++ b/SPECS/mysql.spec @@ -27,7 +27,7 @@ # Turn that off to ensure such files don't get included in RPMs (cf bz#884755). %global _default_patch_flags --no-backup-if-mismatch -%global skiplist platform-specific-tests.list +%global skiplist platform-specific-tests.list # For some use cases we do not need some parts of the package %bcond_without devel @@ -110,8 +110,8 @@ %endif Name: %{?scl_prefix}mysql -Version: 5.6.34 -Release: 2%{?with_debug:.debug}%{?dist} +Version: 5.6.37 +Release: 5%{?with_debug:.debug}%{?dist} Summary: MySQL client programs and shared libraries Group: Applications/Databases URL: http://www.mysql.com @@ -155,6 +155,8 @@ Patch10: %{pkgnamepatch}-paths.patch Patch11: %{pkgnamepatch}-noclientlib.patch Patch12: %{pkgnamepatch}-admincrash.patch Patch13: %{pkgnamepatch}-log-fifo.patch +Patch14: %{pkgnamepatch}-md5_fips.patch +Patch15: %{pkgnamepatch}-default-logdir.patch # Patches specific for this mysql package Patch51: %{pkgnamepatch}-chain-certs.patch @@ -198,6 +200,7 @@ Requires: grep Requires: %{name}-common%{?_isa} = %{sameevr} %{?scl:Requires:%scl_runtime} +Provides: bundled(boost) = 1.59 %if %{with mysql_names} Provides: mysql = %{sameevr} Provides: mysql%{?_isa} = %{sameevr} @@ -239,7 +242,7 @@ Provides: mysql-libs%{?_isa} = %{sameevr} %endif %description libs -The mysql-libs package provides the essential shared libraries for any +The mysql-libs package provides the essential shared libraries for any MySQL client program or interface. You will need to install this package to use any other MySQL package or any clients that need to connect to a MySQL server. @@ -450,6 +453,8 @@ the MySQL sources. %patch11 -p1 %patch12 -p1 %patch13 -p1 +%patch14 -p1 +%patch15 -p1 %patch51 -p1 %patch52 -p1 %patch55 -p1 @@ -469,32 +474,8 @@ add_test () { touch %{skiplist} # Workaround for upstream bug #http://bugs.mysql.com/56342 -rm -f t/ssl_8k_key-master.opt +rm t/ssl_8k_key-master.opt -# Archs without hw performance counter, rh 741325 -%ifarch %{arm} aarch64 sparc64 -add_test 'perfschema.func_file_io : rh 741325' -add_test 'perfschema.func_mutex : rh 741325' -add_test 'perfschema.setup_objects : rh 741325' -%endif - -# Archs with collation issues, bugs.mysql.com/46895 -%ifarch %{arm} aarch64 ppc %{power64} s390 s390x -add_test 'innodb.innodb_ctype_ldml : 46895' -add_test 'main.ctype_ldml : 46895' -%endif - -# Archs with ps_ddl issues -%ifarch ppc s390 -add_test 'main.ps_ddl : ps_ddl issue' -add_test 'main.ps_ddl1 : ps_ddl issue' -%endif - -# Arch with other issues -%ifarch ppc -add_test 'main.audit_plugin : unknown' -add_test 'main.upgrade : unknown' -%endif popd cp %{SOURCE2} %{SOURCE3} %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} \ @@ -644,16 +625,16 @@ mv %{buildroot}%{_datadir}/mysql-test/lib/My/SafeProcess/my_safe_process %{build ln -s ../../../../../bin/my_safe_process %{buildroot}%{_datadir}/mysql-test/lib/My/SafeProcess/my_safe_process # not needed in rpm package -rm -f %{buildroot}%{_bindir}/mysqlaccess.conf -rm -f %{buildroot}%{_bindir}/mysql_embedded -rm -f %{buildroot}%{_libdir}/mysql/*.a -rm -f %{buildroot}%{_datadir}/%{pkg_name}/binary-configure -rm -f %{buildroot}%{_datadir}/%{pkg_name}/magic -rm -f %{buildroot}%{_datadir}/%{pkg_name}/mysql.server -rm -f %{buildroot}%{_datadir}/%{pkg_name}/mysqld_multi.server -rm -f %{buildroot}%{_mandir}/man1/comp_err.1* -rm -f %{buildroot}%{_mandir}/man1/mysql-stress-test.pl.1* -rm -f %{buildroot}%{_mandir}/man1/mysql-test-run.pl.1* +rm %{buildroot}%{_bindir}/mysqlaccess.conf +rm %{buildroot}%{_bindir}/mysql_embedded +rm %{buildroot}%{_libdir}/mysql/*.a +rm %{buildroot}%{_datadir}/%{pkg_name}/binary-configure +rm %{buildroot}%{_datadir}/%{pkg_name}/magic +rm %{buildroot}%{_datadir}/%{pkg_name}/mysql.server +rm %{buildroot}%{_datadir}/%{pkg_name}/mysqld_multi.server +rm %{buildroot}%{_mandir}/man1/comp_err.1* +rm %{buildroot}%{_mandir}/man1/mysql-stress-test.pl.1* +rm %{buildroot}%{_mandir}/man1/mysql-test-run.pl.1* # put logrotate script where it needs to be mkdir -p %{buildroot}%{logrotateddir} @@ -687,29 +668,28 @@ cp -p %{buildroot}%{_mandir}/man1/mysql_client_test.1 %{buildroot}%{_mandir}/man %if %{without clibrary} unlink %{buildroot}%{_libdir}/mysql/libmysqlclient.so unlink %{buildroot}%{_libdir}/mysql/libmysqlclient_r.so -rm -rf %{buildroot}%{_libdir}/mysql/libmysqlclient*.so.* -rm -rf %{buildroot}%{_sysconfdir}/ld.so.conf.d +rm -r %{buildroot}%{_libdir}/mysql/libmysqlclient*.so.* %endif %if %{without embedded} -rm -f %{buildroot}%{_libdir}/mysql/libmysqld.so* -rm -f %{buildroot}%{_bindir}/{mysql_client_test_embedded,mysqltest_embedded} -rm -f %{buildroot}%{_mandir}/man1/{mysql_client_test_embedded,mysqltest_embedded}.1* +rm %{buildroot}%{_libdir}/mysql/libmysqld.so* +rm %{buildroot}%{_bindir}/{mysql_client_test_embedded,mysqltest_embedded} +rm %{buildroot}%{_mandir}/man1/{mysql_client_test_embedded,mysqltest_embedded}.1* %endif %if %{without devel} -rm -f %{buildroot}%{_bindir}/mysql_config* -rm -rf %{buildroot}%{_includedir}/mysql -rm -f %{buildroot}%{_datadir}/aclocal/mysql.m4 -rm -f %{buildroot}%{_libdir}/mysql/libmysqlclient*.so -rm -f %{buildroot}%{_mandir}/man1/mysql_config.1* +rm %{buildroot}%{_bindir}/mysql_config* +rm -r %{buildroot}%{_includedir}/mysql +rm %{buildroot}%{_datadir}/aclocal/mysql.m4 +rm %{buildroot}%{_libdir}/mysql/libmysqlclient*.so +rm %{buildroot}%{_mandir}/man1/mysql_config.1* %endif %if %{without client} -rm -f %{buildroot}%{_bindir}/{msql2mysql,mysql,mysql_config_editor,\ +rm %{buildroot}%{_bindir}/{msql2mysql,mysql,mysql_config_editor,\ mysql_find_rows,mysql_plugin,mysql_waitpid,mysqlaccess,mysqladmin,mysqlbinlog,\ mysqlcheck,mysqldump,mysqlimport,mysqlshow,mysqlslap,my_print_defaults} -rm -f %{buildroot}%{_mandir}/man1/{msql2mysql,mysql,mysql_config_editor,\ +rm %{buildroot}%{_mandir}/man1/{msql2mysql,mysql,mysql_config_editor,\ mysql_find_rows,mysql_plugin,mysql_waitpid,mysqlaccess,mysqladmin,mysqlbinlog,\ mysqlcheck,mysqldump,mysqlimport,mysqlshow,mysqlslap,my_print_defaults}.1* %endif @@ -717,28 +697,28 @@ mysqlcheck,mysqldump,mysqlimport,mysqlshow,mysqlslap,my_print_defaults}.1* %if %{with config} mkdir -p %{buildroot}%{_sysconfdir}/my.cnf.d %else -rm -f %{buildroot}%{_sysconfdir}/my.cnf +rm %{buildroot}%{_sysconfdir}/my.cnf %endif %if %{without common} -rm -rf %{buildroot}%{_datadir}/%{pkg_name}/charsets +rm -r %{buildroot}%{_datadir}/%{pkg_name}/charsets %endif %if %{without errmsg} -rm -f %{buildroot}%{_datadir}/%{pkg_name}/errmsg-utf8.txt -rm -rf %{buildroot}%{_datadir}/%{pkg_name}/{english,bulgarian,czech,danish,dutch,estonian,\ +rm %{buildroot}%{_datadir}/%{pkg_name}/errmsg-utf8.txt +rm -r %{buildroot}%{_datadir}/%{pkg_name}/{english,bulgarian,czech,danish,dutch,estonian,\ french,german,greek,hungarian,italian,japanese,korean,norwegian,norwegian-ny,\ polish,portuguese,romanian,russian,serbian,slovak,spanish,swedish,ukrainian} %endif %if %{without bench} -rm -rf %{buildroot}%{_datadir}/sql-bench +rm -r %{buildroot}%{_datadir}/sql-bench %endif %if %{without test} -rm -f %{buildroot}%{_bindir}/{mysql_client_test,my_safe_process} -rm -rf %{buildroot}%{_datadir}/mysql-test -rm -f %{buildroot}%{_mandir}/man1/mysql_client_test.1* +rm %{buildroot}%{_bindir}/{mysql_client_test,my_safe_process} +rm -r %{buildroot}%{_datadir}/mysql-test +rm %{buildroot}%{_mandir}/man1/mysql_client_test.1* %endif %if 0%{?scl:1} @@ -748,7 +728,7 @@ cat << EOF | tee -a %{buildroot}%{?_scl_scripts}/service-environment # environment (like environment variable values). As a consequence, # information of all enabled collections will be lost during service start up. # If user needs to run a service under any software collection enabled, this -# collection has to be written into %{scl_upper}_SCLS_ENABLED variable +# collection has to be written into %{scl_upper}_SCLS_ENABLED variable # in %{?_scl_scripts}/service-environment. %{scl_upper}_SCLS_ENABLED="%{scl}" EOF @@ -767,13 +747,13 @@ export MTR_BUILD_THREAD=%{__isa_bits} --mem --parallel=auto --force --retry=0 \ --mysqld=--binlog-format=mixed --skip-rpl \ --suite-timeout=720 --testcase-timeout=30 \ - --clean-vardir \ + --clean-vardir --big-test \ %if %{check_testsuite} --max-test-fail=0 || : %else --skip-test-list=%{skiplist} %endif - rm -rf var/* $(readlink var) + rm -r var $(readlink var) popd popd %endif @@ -1069,19 +1049,69 @@ fi %endif %changelog +* Mon Aug 28 2017 Honza Horak - 5.6.37-5 +- Remove the attempt to implement mysqld@.service, because mysqld_safe + is not capable of keeping arguments order as mysqld expects + Reverts: #1452518 + +* Wed Aug 16 2017 Honza Horak - 5.6.37-4 +- Fix mysql-default-logdir.patch, default_log_dir must be set outside of case + Related: #1482122 + +* Wed Aug 16 2017 Honza Horak - 5.6.37-3 +- Fix default log dir path + Resolves: #1482122 + +* Thu Aug 03 2017 Honza Horak - 5.6.37-2 +- fix log file context after mysql_install_db creates log file + Resolves: #1477575 + +* Thu Jul 20 2017 Honza Horak - 5.6.37-1 +- Rebase to latest upstream 5.6.37 + Also fixes many tests failures + Related: #1445525 + +* Fri Jun 23 2017 Michal Schorm - 5.6.36-2 +- Previous CVE fix was incomplete, fixed now +- CVEs fixed by this commit, #1445537: + CVE-2017-3265 +- Resolves: #1445537 + +* Mon May 15 2017 Michal Schorm - 5.6.36-1 +- Udate to MySQL 5.6.36, for various fixes described at + https://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-36.html +- CVEs fixed by this commit, #1445525: + CVE-2017-3302 CVE-2017-3305/Riddle CVE-2016-5483/CVE-2017-3600 + CVE-2017-3308 CVE-2017-3309 CVE-2017-3450 CVE-2017-3452 + CVE-2017-3453 CVE-2017-3456 CVE-2017-3461 CVE-2017-3462 + CVE-2017-3463 CVE-2017-3464 CVE-2017-3599 +- CVEs fixed by this commit, #1445533: + CVE-2016-8327 CVE-2017-3238 CVE-2017-3244 CVE-2017-3257 + CVE-2017-3258 CVE-2017-3273 CVE-2017-3313 CVE-2017-3317 + CVE-2017-3318 CVE-2017-3291 +- CVEs fixed by this commit, #1445537: + CVE-2017-3312 CVE-2017-3265 +- 'force' option for 'rm' removed in specfile +- Testsuite extended by '--big-test' option +- Following tests were disabled, for they started to fail or are unstable: + main.events_2 +- Resolves: #1452469; MD5 in FIPS mode + #1452515; bundled() provides + #1452518; rh-mysql56-mysqld@ wasn't made for scl + * Thu Nov 03 2016 Honza Horak - 5.6.34-2 - Use correct dir for mysql-files - Related: #1384962 + Related: #1384963 * Tue Oct 25 2016 Honza Horak - 5.6.34-1 - Update to MySQL 5.6.34, which contains various security fixes (https://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-34.html) - Related: #1384962 + Related: #1384963 * Thu Oct 6 2016 Jakub Dorňák - 5.6.33-1 - Update to MySQL 5.6.33, which contains various security fixes (https://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-33.html) - Resolves: #1384962 + Resolves: #1384963 * Wed Jul 20 2016 Jakub Dorňák - 5.6.32-1 - Update to MySQL 5.6.32, which contains various security fixes