diff --git a/mariadb-admincrash.patch b/mariadb-admincrash.patch deleted file mode 100644 index 31cbe39..0000000 --- a/mariadb-admincrash.patch +++ /dev/null @@ -1,24 +0,0 @@ -mysqladmin crash on execution of below command: - - #> mysqladmin -u root -p - ... - Segmentation fault (core dumped) - -This is probably caused by memory corruption based on working with temp_argv[-1]. - -RHBZ: #1207041 -Upstream report: https://mariadb.atlassian.net/browse/MDEV-7883 - -diff -up mariadb-5.5.41/client/mysqladmin.cc.bz1207041 mariadb-5.5.41/client/mysqladmin.cc ---- mariadb-5.5.41/client/mysqladmin.cc.bz1207041 2015-03-30 12:37:31.078880914 +0200 -+++ mariadb-5.5.41/client/mysqladmin.cc 2015-03-30 13:03:32.442152833 +0200 -@@ -1215,7 +1215,8 @@ static char **mask_password(int argc, ch - } - argc--; - } -- temp_argv[argc]= my_strdup((*argv)[argc], MYF(MY_FAE)); -+ if (argc >= 0) -+ temp_argv[argc]= my_strdup((*argv)[argc], MYF(MY_FAE)); - return(temp_argv); - } - diff --git a/mariadb-errno.patch b/mariadb-errno.patch deleted file mode 100644 index 9caec8b..0000000 --- a/mariadb-errno.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -rup mariadb-10.1.8.orig/include/my_sys.h mariadb-10.1.8/include/my_sys.h ---- mariadb-10.1.8.orig/include/my_sys.h 2015-10-15 17:43:37.000000000 +0200 -+++ mariadb-10.1.8/include/my_sys.h 2015-10-21 15:48:00.948590204 +0200 -@@ -218,13 +218,7 @@ extern void my_large_free(uchar *ptr); - #define my_safe_afree(ptr, size) my_afree(ptr) - #endif /* HAVE_ALLOCA */ - --#ifndef errno /* did we already get it? */ --#ifdef HAVE_ERRNO_AS_DEFINE --#include /* errno is a define */ --#else --extern int errno; /* declare errno */ --#endif --#endif /* #ifndef errno */ -+#include /* errno is a define */ - extern char *home_dir; /* Home directory for user */ - extern MYSQL_PLUGIN_IMPORT char *mysql_data_home; - extern const char *my_progname; /* program-name (printed in errors) */ diff --git a/mariadb.spec b/mariadb.spec index e8de582..27eff88 100644 --- a/mariadb.spec +++ b/mariadb.spec @@ -120,18 +120,17 @@ # Make long macros shorter %global sameevr %{epoch}:%{version}-%{release} %global compatver 10.1 -%global bugfixver 20 +%global bugfixver 21 Name: mariadb Version: %{compatver}.%{bugfixver} -Release: 3%{?with_debug:.debug}%{?dist} +Release: 1%{?with_debug:.debug}%{?dist} Epoch: 3 Summary: A community developed branch of MySQL Group: Applications/Databases URL: http://mariadb.org -# Exceptions allow client libraries to be linked with most open source SW, -# not only GPL code. See README.mysql-license +# Exceptions allow client libraries to be linked with most open source SW, not only GPL code. See README.mysql-license License: GPLv2 with exceptions and LGPLv2 and BSD Source0: http://mirrors.syringanetworks.net/mariadb/mariadb-%{version}/source/mariadb-%{version}.tar.gz @@ -140,7 +139,6 @@ Source3: my.cnf.in Source5: README.mysql-cnf Source6: README.mysql-docs Source7: README.mysql-license -Source9: mysql-embedded-check.c Source10: mysql.tmpfiles.d.in Source11: mysql.service.in Source12: mysql-prepare-db-dir.sh @@ -168,12 +166,10 @@ Patch5: %{pkgnamepatch}-file-contents.patch Patch7: %{pkgnamepatch}-scripts.patch Patch8: %{pkgnamepatch}-install-db-sharedir.patch Patch9: %{pkgnamepatch}-ownsetup.patch -Patch12: %{pkgnamepatch}-admincrash.patch Patch13: %{pkgnamepatch}-ssl-cypher.patch Patch14: %{pkgnamepatch}-example-config-files.patch # Patches specific for this mysql package -Patch30: %{pkgnamepatch}-errno.patch Patch31: %{pkgnamepatch}-string-overflow.patch Patch32: %{pkgnamepatch}-basedir.patch Patch34: %{pkgnamepatch}-covscan-stroverflow.patch @@ -187,18 +183,24 @@ BuildRequires: cmake BuildRequires: libaio-devel BuildRequires: libedit-devel BuildRequires: ncurses-devel -BuildRequires: perl -%if 0%{?fedora} >= 22 || 0%{?rhel} > 7 -BuildRequires: perl-generators -%endif BuildRequires: systemtap-sdt-devel BuildRequires: zlib-devel BuildRequires: multilib-rpm-config +BuildRequires: krb5-devel +BuildRequires: selinux-policy-devel +#CRACKLIB +#BuildRequires: cracklib-devel +%{?with_init_systemd:BuildRequires: systemd systemd-devel} # auth_pam.so plugin will be build if pam-devel is installed BuildRequires: pam-devel # use either new enough version of pcre or provide bundles(pcre) %{?with_pcre:BuildRequires: pcre-devel >= 8.35} %{!?with_pcre:Provides: bundled(pcre) = %{pcre_version}} +# Few utilities needs Perl +BuildRequires: perl +%if 0%{?fedora} >= 22 || 0%{?rhel} > 7 +BuildRequires: perl-generators +%endif # Tests requires time and ps and some perl modules BuildRequires: procps BuildRequires: time @@ -215,7 +217,6 @@ BuildRequires: perl(Sys::Hostname) BuildRequires: perl(Test::More) BuildRequires: perl(Time::HiRes) BuildRequires: perl(Symbol) - # Temporary workaound to build with OpenSSL 1.0 on Fedora >=26 (wich requires OpenSSL 1.1) %if 0%{?fedora} >= 26 BuildRequires: compat-openssl10-devel @@ -226,20 +227,13 @@ BuildRequires: openssl BuildRequires: openssl-devel %endif -BuildRequires: krb5-devel -BuildRequires: selinux-policy-devel -%{?with_init_systemd:BuildRequires: systemd systemd-devel} - -BuildRequires: krb5-devel Requires: bash Requires: fileutils Requires: grep Requires: %{name}-common%{?_isa} = %{sameevr} - -# Explicit EVR requirement for -libs is needed for -# https://bugzilla.redhat.com/show_bug.cgi?id=1406320 +# Explicit EVR requirement for -libs is needed for RHBZ#1406320 Requires: %{name}-libs%{?_isa} = %{sameevr} %if %{with mysql_names} @@ -249,7 +243,7 @@ Provides: mysql-compat-client = %{sameevr} Provides: mysql-compat-client%{?_isa} = %{sameevr} %endif - +Suggests: %{name}-server%{?_isa} = %{sameevr} # MySQL (with caps) is upstream's spelling of their own RPMs for mysql %{?obsoleted_mysql_case_evr:Obsoletes: MySQL < %{obsoleted_mysql_case_evr}} @@ -378,9 +372,10 @@ Requires: mysql%{?_isa} Requires: %{name}%{?_isa} %endif Requires: %{name}-common%{?_isa} = %{sameevr} +Requires: %{name}-errmsg%{?_isa} = %{sameevr} +Recommends: %{name}-server-utils%{?_isa} = %{sameevr} Requires: %{_sysconfdir}/my.cnf Requires: %{_sysconfdir}/my.cnf.d -Requires: %{name}-errmsg%{?_isa} = %{sameevr} Requires: sh-utils Requires(pre): /usr/sbin/useradd %if %{with init_systemd} @@ -391,9 +386,6 @@ Requires(pre): systemd Requires(posttrans): systemd %{?systemd_requires: %systemd_requires} %endif -# mysqlhotcopy needs DBI/DBD support -Requires: perl(DBI) -Requires: perl(DBD::mysql) # wsrep requirements Requires: lsof Requires: net-tools @@ -451,6 +443,28 @@ or products (such as Excel), or data retrieved from the environment %endif + +%package server-utils +Summary: Non-essential server utilities for MariaDB/MySQL applications +Group: Applications/Databases +Suggests: %{name}-server%{?_isa} = %{sameevr} +%if %{with mysql_names} +Provides: mysql-perl = %{sameevr} +%endif +# mysqlhotcopy needs DBI/DBD support +Requires: perl(DBI) +Requires: perl(DBD::mysql) +%{?obsoleted_mysql_case_evr:Obsoletes: MySQL-devel < %{obsoleted_mysql_case_evr}} +%{?obsoleted_mysql_evr:Obsoletes: mysql-devel < %{obsoleted_mysql_evr}} +%{?with_conflicts:Conflicts: community-mysql-devel} + +%description server-utils +This package contains all non-essential server utilities and scripts for managing +databases. It also contains all utilities requiring Perl and it is the only MariaDB +subpackage, except test subpackage, that depends on Perl. + + + %if %{with devel} %package devel Summary: Files for development of MariaDB/MySQL applications @@ -581,10 +595,8 @@ MariaDB is a community developed branch of MySQL. %patch7 -p1 %patch8 -p1 %patch9 -p1 -%patch12 -p1 %patch13 -p1 %patch14 -p1 -%patch30 -p1 %patch31 -p1 %patch32 -p1 %patch34 -p1 @@ -970,6 +982,10 @@ export MTR_BUILD_THREAD=%{__isa_bits} # skip tests that are listed in rh-skipped-tests.list # avoid redundant test runs with --binlog-format=mixed # increase timeouts to prevent unwanted failures during mass rebuilds + +#CRACKLIB +# --do-test=cracklib \ + ( set -e cd mysql-test @@ -1055,34 +1071,14 @@ fi %if %{with client} %files -%{_bindir}/msql2mysql %{_bindir}/mysql -%{_bindir}/mysql_find_rows -%{_bindir}/mysql_plugin %{_bindir}/mysql_waitpid -%{_bindir}/mysqlaccess %{_bindir}/mysqladmin -%{_bindir}/mysqlbinlog -%{_bindir}/mysqlcheck -%{_bindir}/mysqldump -%{_bindir}/mysqlimport -%{_bindir}/mysqlshow -%{_bindir}/mysqlslap %{_bindir}/my_print_defaults -%{_mandir}/man1/msql2mysql.1* %{_mandir}/man1/mysql.1* -%{_mandir}/man1/mysql_find_rows.1* -%{_mandir}/man1/mysql_plugin.1* %{_mandir}/man1/mysql_waitpid.1* -%{_mandir}/man1/mysqlaccess.1* %{_mandir}/man1/mysqladmin.1* -%{_mandir}/man1/mysqlbinlog.1* -%{_mandir}/man1/mysqlcheck.1* -%{_mandir}/man1/mysqldump.1* -%{_mandir}/man1/mysqlimport.1* -%{_mandir}/man1/mysqlshow.1* -%{_mandir}/man1/mysqlslap.1* %{_mandir}/man1/my_print_defaults.1* %endif @@ -1172,22 +1168,12 @@ fi %{_bindir}/myisam_ftdump %{_bindir}/myisamlog %{_bindir}/myisampack -%{_bindir}/mysql_convert_table_format -%{_bindir}/mysql_fix_extensions %{_bindir}/mysql_install_db %{_bindir}/mysql_secure_installation -%{_bindir}/mysql_setpermission %{_bindir}/mysql_tzinfo_to_sql -%{_bindir}/mysql_upgrade -%{_bindir}/mysql_zap %{_bindir}/mysqlbug -%{_bindir}/mysqldumpslow -%{_bindir}/mysqld_multi %{_bindir}/mysqld_safe -%{_bindir}/mysqlhotcopy -%{_bindir}/mysqltest %{_bindir}/innochecksum -%{_bindir}/perror %{_bindir}/replace %{_bindir}/resolve_stack_dump %{_bindir}/resolveip @@ -1203,6 +1189,9 @@ fi %config(noreplace) %{_sysconfdir}/my.cnf.d/auth_gssapi.cnf %{?with_tokudb:%config(noreplace) %{_sysconfdir}/my.cnf.d/tokudb.cnf} +#CRACKLIB +#%{_sysconfdir}/my.cnf.d/cracklib_password_check.cnf + %{_libexecdir}/mysqld %{_libdir}/mysql/INFO_SRC @@ -1225,23 +1214,13 @@ fi %{_mandir}/man1/myisamchk.1* %{_mandir}/man1/myisamlog.1* %{_mandir}/man1/myisampack.1* -%{_mandir}/man1/mysql_convert_table_format.1* %{_mandir}/man1/myisam_ftdump.1* %{_mandir}/man1/mysql.server.1* -%{_mandir}/man1/mysql_fix_extensions.1* %{_mandir}/man1/mysql_install_db.1* %{_mandir}/man1/mysql_secure_installation.1* -%{_mandir}/man1/mysql_upgrade.1* -%{_mandir}/man1/mysql_zap.1* %{_mandir}/man1/mysqlbug.1* -%{_mandir}/man1/mysqldumpslow.1* -%{_mandir}/man1/mysqld_multi.1* %{_mandir}/man1/mysqld_safe.1* -%{_mandir}/man1/mysqlhotcopy.1* -%{_mandir}/man1/mysql_setpermission.1* -%{_mandir}/man1/mysqltest.1* %{_mandir}/man1/innochecksum.1* -%{_mandir}/man1/perror.1* %{_mandir}/man1/replace.1* %{_mandir}/man1/resolve_stack_dump.1* %{_mandir}/man1/resolveip.1* @@ -1269,6 +1248,7 @@ fi %{_datadir}/%{pkg_name}/policy/apparmor/usr.sbin.mysqld* %{_datadir}/%{pkg_name}/policy/selinux/README %{_datadir}/%{pkg_name}/policy/selinux/mariadb-server.* +%{_datadir}/%{pkg_name}/policy/selinux/mariadb.* %{_datadir}/%{pkg_name}/systemd/mariadb.service # mariadb@ is installed only when we have cmake newer than 3.3 %if 0%{?fedora} > 22 || 0%{?rhel} > 7 @@ -1302,6 +1282,57 @@ fi %{_libdir}/mysql/plugin/ha_connect.so %endif +%files server-utils +%if %{with client} +%{_bindir}/mysql_find_rows +%{_bindir}/mysqlaccess +%{_mandir}/man1/mysqlaccess.1* +%{_mandir}/man1/mysql_find_rows.1* +%endif +#Perl utilities +%{_bindir}/mysql_convert_table_format +%{_bindir}/mysql_fix_extensions +%{_bindir}/mysql_setpermission +%{_bindir}/mysql_zap +%{_bindir}/mysqldumpslow +%{_bindir}/mysqld_multi +%{_bindir}/mysqlhotcopy +%{_mandir}/man1/mysql_convert_table_format.1* +%{_mandir}/man1/mysql_fix_extensions.1* +%{_mandir}/man1/mysql_zap.1* +%{_mandir}/man1/mysqldumpslow.1* +%{_mandir}/man1/mysqld_multi.1* +%{_mandir}/man1/mysqlhotcopy.1* +%{_mandir}/man1/mysql_setpermission.1* +#Utilities that can be used remotely +%{_bindir}/mysql_upgrade +%{_bindir}/mysqltest +%{_bindir}/perror +%{_mandir}/man1/mysql_upgrade.1* +%{_mandir}/man1/mysqltest.1* +%{_mandir}/man1/perror.1* +#Utilites that are not necessary, but should not be used remotely (because of huge data flow) +%{_bindir}/mysqlcheck +%{_bindir}/mysqldump +%{_bindir}/mysqlimport +%{_bindir}/mysqlslap +%{_mandir}/man1/mysqlcheck.1* +%{_mandir}/man1/mysqldump.1* +%{_mandir}/man1/mysqlimport.1* +%{_mandir}/man1/mysqlslap.1* +#Other utilities +%{_bindir}/mysqld_safe_helper +%{_bindir}/msql2mysql +%{_bindir}/mysql_plugin +%{_bindir}/mysqlbinlog +%{_bindir}/mysqlshow +%{_mandir}/man1/msql2mysql.1* +%{_mandir}/man1/mysql_plugin.1* +%{_mandir}/man1/mysqlbinlog.1* +%{_mandir}/man1/mysqlshow.1* + + + %if %{with devel} %files devel %{_bindir}/mysql_config* @@ -1341,6 +1372,16 @@ fi %endif %changelog +* Tue Jan 24 2017 Michal Schorm - 3:10.1.21-1 +- Rebase to version 10.1.21 +- Most of the non-essential utilites has been moved to the new sub-package mariadb-server-utils +- Patches "admincrash" and "errno" removed, they are no longer relevant + "mysql-embedded-check.c" removed, no longer relevant +- Buildrequires krb5-devel duplicity removed +- Manpage for mysql_secure_installation extended +- Preparation for the CrackLib plugin to be added (waiting for correct SELinux rules to be relased) + Related: #1260821, #1205082, #1414387 + * Tue Jan 03 2017 Honza Horak - 3:10.1.20-3 - Add explicit EVR requirement in main package for -libs Related: #1406320 diff --git a/mysql-embedded-check.c b/mysql-embedded-check.c deleted file mode 100644 index 8bf8ca5..0000000 --- a/mysql-embedded-check.c +++ /dev/null @@ -1,26 +0,0 @@ -/* simple test program to see if we can link the embedded server library */ - -#include -#include -#include - -#include "mysql.h" - -MYSQL *mysql; - -static char *server_options[] = \ - { "mysql_test", "--defaults-file=my.cnf", NULL }; -int num_elements = (sizeof(server_options) / sizeof(char *)) - 1; - -static char *server_groups[] = { "libmysqld_server", - "libmysqld_client", NULL }; - -int main(int argc, char **argv) -{ - mysql_library_init(num_elements, server_options, server_groups); - mysql = mysql_init(NULL); - mysql_close(mysql); - mysql_library_end(); - - return 0; -} diff --git a/rh-skipped-tests-base.list b/rh-skipped-tests-base.list index 2992d7e..4b1a1ba 100644 --- a/rh-skipped-tests-base.list +++ b/rh-skipped-tests-base.list @@ -1,9 +1,13 @@ -main.userstat : #1399847 -main.multi_update : #1399847 -main.set_statement_notembedded_binlog : #1399847 +# The SSL test are failing correctly. Fro more explanation, see: +# https://jira.mariadb.org/browse/MDEV-8404?focusedCommentId=84275&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-84275 main.ssl_7937 : #1399847 main.ssl_crl_clients : #1399847 main.ssl_cert_verify : #1399847 + +# +main.userstat : #1399847 +main.multi_update : #1399847 +main.set_statement_notembedded_binlog : #1399847 perfschema.nesting : #1399847 perfschema.socket_summary_by_event_name_func : #1399847 perfschema.socket_summary_by_instance_func : #1399847