From 3c8c320b3fe37ca4f2d5a48ade8052eda79d6944 Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Tue, 13 Nov 2018 21:39:24 +0100 Subject: [PATCH] mariadb: security bump to 10.2.19 Many, many bug fixes, see release notes for details: https://mariadb.com/kb/en/library/mariadb-10219-release-notes/ Fixed CVEs: CVE-2018-3282 CVE-2016-9843 CVE-2018-3174 CVE-2018-3143 CVE-2018-3156 CVE-2018-3251 CVE-2018-3185 CVE-2018-3277 CVE-2018-3162 CVE-2018-3173 CVE-2018-3200 CVE-2018-3284 OpenWrt package changes: - include sha256_password in libmariadb package - upstream provided new pkgconfig file libmariadb.pc - refreshed one patch, dropped two others (included in upstream source now) Signed-off-by: Sebastian Kemper --- utils/mariadb/Makefile | 9 +++-- .../patches/120-fix-ucontext-check.patch | 18 --------- utils/mariadb/patches/130-c11_atomics.patch | 2 +- .../patches/180-fix-pthread-detach.patch | 39 ------------------- 4 files changed, 6 insertions(+), 62 deletions(-) delete mode 100644 utils/mariadb/patches/120-fix-ucontext-check.patch delete mode 100644 utils/mariadb/patches/180-fix-pthread-detach.patch diff --git a/utils/mariadb/Makefile b/utils/mariadb/Makefile index 8307bcbfb..18a2ac5bc 100644 --- a/utils/mariadb/Makefile +++ b/utils/mariadb/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mariadb -PKG_VERSION:=10.2.17 -PKG_RELEASE:=2 +PKG_VERSION:=10.2.19 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL := \ @@ -18,7 +18,7 @@ PKG_SOURCE_URL := \ https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/$(PKG_NAME)-$(PKG_VERSION)/source \ https://downloads.mariadb.org/interstitial/$(PKG_NAME)-$(PKG_VERSION)/source -PKG_HASH:=e7b3078f8de874a4d451242a8a3eed49bf6f916dcd52fc3efa55886f5f35be27 +PKG_HASH:=c0e103cfd73ee96d58402073e9513f0f7b5c0bd216641faecc8d763fb6529727 PKG_MAINTAINER:=Sebastian Kemper PKG_LICENSE:=GPL-2.0 LGPL-2.1 PKG_LICENSE_FILES:=COPYING libmariadb/COPYING.LIB @@ -456,7 +456,7 @@ define Build/InstallDev $(CP) $(PKG_INSTALL_DIR)/usr/include/mysql $(1)/usr/include $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{mariadb,mysqlclient}*.so* $(1)/usr/lib cd $(1)/usr/lib/mysql; $(LN) ../lib{mariadb,mysqlclient}*.so* . - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/pkgconfig/mariadb.pc $(1)/usr/lib/pkgconfig + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libmariadb.pc $(1)/usr/lib/pkgconfig $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/aclocal/mysql.m4 $(1)/usr/share/aclocal endef @@ -465,6 +465,7 @@ define Package/libmariadb/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{mariadb,mysqlclient}*.so* $(1)/usr/lib $(INSTALL_BIN) $(PKG_INSTALL_DIR)$(PLUGIN_DIR)/dialog.so $(1)$(PLUGIN_DIR) $(INSTALL_BIN) $(PKG_INSTALL_DIR)$(PLUGIN_DIR)/mysql_clear_password.so $(1)$(PLUGIN_DIR) + $(INSTALL_BIN) $(PKG_INSTALL_DIR)$(PLUGIN_DIR)/sha256_password.so $(1)$(PLUGIN_DIR) endef define Package/mariadb-client/install diff --git a/utils/mariadb/patches/120-fix-ucontext-check.patch b/utils/mariadb/patches/120-fix-ucontext-check.patch deleted file mode 100644 index 00d674ce9..000000000 --- a/utils/mariadb/patches/120-fix-ucontext-check.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- a/configure.cmake -+++ b/configure.cmake -@@ -1018,9 +1018,12 @@ CHECK_STRUCT_HAS_MEMBER("struct sockaddr - - SET(CMAKE_EXTRA_INCLUDE_FILES) - --CHECK_INCLUDE_FILE(ucontext.h HAVE_UCONTEXT_H) --IF(NOT HAVE_UCONTEXT_H) -- CHECK_INCLUDE_FILE(sys/ucontext.h HAVE_UCONTEXT_H) -+CHECK_INCLUDE_FILE(ucontext.h HAVE_UCONTEXT_HEADER) -+IF(NOT HAVE_UCONTEXT_HEADER) -+ CHECK_INCLUDE_FILE(sys/ucontext.h HAVE_UCONTEXT_HEADER) -+ENDIF() -+IF(HAVE_UCONTEXT_HEADER) -+ CHECK_FUNCTION_EXISTS(makecontext HAVE_UCONTEXT_H) - ENDIF() - IF(HAVE_UCONTEXT_H) - CHECK_FUNCTION_EXISTS(makecontext HAVE_UCONTEXT_H) diff --git a/utils/mariadb/patches/130-c11_atomics.patch b/utils/mariadb/patches/130-c11_atomics.patch index e4a04eea7..e7dad179e 100644 --- a/utils/mariadb/patches/130-c11_atomics.patch +++ b/utils/mariadb/patches/130-c11_atomics.patch @@ -75,7 +75,7 @@ Author: Vicențiu Ciorbaru #define make_atomic_store_body(S) *a= v --- a/mysys/CMakeLists.txt +++ b/mysys/CMakeLists.txt -@@ -80,6 +80,10 @@ IF(HAVE_BFD_H) +@@ -81,6 +81,10 @@ IF(HAVE_BFD_H) TARGET_LINK_LIBRARIES(mysys bfd) ENDIF(HAVE_BFD_H) diff --git a/utils/mariadb/patches/180-fix-pthread-detach.patch b/utils/mariadb/patches/180-fix-pthread-detach.patch deleted file mode 100644 index 6729d096a..000000000 --- a/utils/mariadb/patches/180-fix-pthread-detach.patch +++ /dev/null @@ -1,39 +0,0 @@ -From c45b4a774b6d1404a080a1c1759f780fa78f223b Mon Sep 17 00:00:00 2001 -From: Sergey Vojtovich -Date: Fri, 21 Sep 2018 16:04:16 +0400 -Subject: [PATCH] MDEV-17200 - pthread_detach called for already detached - threads - -pthread_detach_this_thread() was intended to be defined to something -meaningful only on some ancient unixes, which don't have -pthread_attr_setdetachstate() defined. Otherwise, on normal unixes, -threads are created detached in the first place. - -This was broken in 0f01bf267680244ec488adaf65a42838756ed48e so that -we started calling pthread_detach() for already detached threads. -Intention was to detach aria checkpoint thread. - -However in 87007dc2f71634cc460271eb277ad851ec69c04b aria service threads -were made joinable with appropriate handling, which makes breaking -revision unneccessary. - -Revert remnants of 0f01bf267680244ec488adaf65a42838756ed48e, so that -pthread_detach_this_thread() is meaningful only on some ancient unixes -again. ---- - include/my_pthread.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/my_pthread.h b/include/my_pthread.h -index 6b830ca36d24..ae2f912f979b 100644 ---- a/include/my_pthread.h -+++ b/include/my_pthread.h -@@ -184,7 +184,7 @@ int pthread_cancel(pthread_t thread); - #define pthread_key(T,V) pthread_key_t V - #define my_pthread_getspecific_ptr(T,V) my_pthread_getspecific(T,(V)) - #define my_pthread_setspecific_ptr(T,V) pthread_setspecific(T,(void*) (V)) --#define pthread_detach_this_thread() { pthread_t tmp=pthread_self() ; pthread_detach(tmp); } -+#define pthread_detach_this_thread() - #define pthread_handler_t EXTERNC void * - typedef void *(* pthread_handler)(void *); -