Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Sep 2016 12:28:53 +0000 (UTC)
From:      Thomas Zander <riggs@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org
Subject:   svn commit: r422430 - in branches/2016Q3/databases: mysql57-client mysql57-client/files mysql57-server mysql57-server/files
Message-ID:  <201609191228.u8JCSrAh049243@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: riggs
Date: Mon Sep 19 12:28:53 2016
New Revision: 422430
URL: https://svnweb.freebsd.org/changeset/ports/422430

Log:
  MFH: r422257
  
  Update to upstream version 5.7.15; fixes zero-day remote vuln CVE-2016-6662
  
  PR:		212690
  Submitted by:	mokhi64@gmail.com (maintainer)
  Security:	CVE 2016-6662
  
  Approved by:	ports-secteam (feld)

Added:
  branches/2016Q3/databases/mysql57-server/files/patch-rapid_plugin_x_mysqlx__configure.cmake
     - copied unchanged from r422257, head/databases/mysql57-server/files/patch-rapid_plugin_x_mysqlx__configure.cmake
Deleted:
  branches/2016Q3/databases/mysql57-server/files/patch-rapid_plugin_x_mysqlx__error.cmake
Modified:
  branches/2016Q3/databases/mysql57-client/Makefile
  branches/2016Q3/databases/mysql57-client/files/patch-cmake_build__configurations_compiler__options.cmake
  branches/2016Q3/databases/mysql57-client/files/patch-mysys__ssl_my__default.cc
  branches/2016Q3/databases/mysql57-server/Makefile
  branches/2016Q3/databases/mysql57-server/distinfo
  branches/2016Q3/databases/mysql57-server/files/mysql-server.in
  branches/2016Q3/databases/mysql57-server/files/patch-mysys__ssl_my__default.cc
  branches/2016Q3/databases/mysql57-server/files/patch-sql_CMakeLists.txt
  branches/2016Q3/databases/mysql57-server/pkg-message
  branches/2016Q3/databases/mysql57-server/pkg-plist
Directory Properties:
  branches/2016Q3/   (props changed)

Modified: branches/2016Q3/databases/mysql57-client/Makefile
==============================================================================
--- branches/2016Q3/databases/mysql57-client/Makefile	Mon Sep 19 11:38:49 2016	(r422429)
+++ branches/2016Q3/databases/mysql57-client/Makefile	Mon Sep 19 12:28:53 2016	(r422430)
@@ -10,6 +10,7 @@ COMMENT=	Multithreaded SQL database (cli
 LICENSE+=	LGPL21
 
 BROKEN_powerpc64=	Does not build
+BROKEN_powerpc64=	Does not build: reports unsupported compiler
 
 MASTERDIR=	${.CURDIR}/../mysql57-server
 

Modified: branches/2016Q3/databases/mysql57-client/files/patch-cmake_build__configurations_compiler__options.cmake
==============================================================================
--- branches/2016Q3/databases/mysql57-client/files/patch-cmake_build__configurations_compiler__options.cmake	Mon Sep 19 11:38:49 2016	(r422429)
+++ branches/2016Q3/databases/mysql57-client/files/patch-cmake_build__configurations_compiler__options.cmake	Mon Sep 19 12:28:53 2016	(r422430)
@@ -1,6 +1,6 @@
---- cmake/build_configurations/compiler_options.cmake.orig	2016-03-28 18:06:12 UTC
+--- cmake/build_configurations/compiler_options.cmake.orig	2016-08-25 11:52:06 UTC
 +++ cmake/build_configurations/compiler_options.cmake
-@@ -28,7 +28,7 @@ IF(UNIX)  
+@@ -29,7 +29,7 @@ IF(UNIX)  
  
    # Default GCC flags
    IF(CMAKE_COMPILER_IS_GNUCC)
@@ -9,12 +9,12 @@
      # Disable inline optimizations for valgrind testing to avoid false positives
      IF(WITH_VALGRIND)
        SET(COMMON_C_FLAGS             "-fno-inline ${COMMON_C_FLAGS}")
-@@ -37,7 +37,7 @@ IF(UNIX)  
+@@ -42,7 +42,7 @@ IF(UNIX)  
      SET(CMAKE_C_FLAGS_RELWITHDEBINFO "-O3 ${COMMON_C_FLAGS}")
    ENDIF()
    IF(CMAKE_COMPILER_IS_GNUCXX)
 -    SET(COMMON_CXX_FLAGS               "-g -fabi-version=2 -fno-omit-frame-pointer -fno-strict-aliasing")
 +    SET(COMMON_CXX_FLAGS               "-g -fno-omit-frame-pointer -fno-strict-aliasing")
-     # Disable inline optimizations for valgrind testing to avoid false positives
-     IF(WITH_VALGRIND)
-       SET(COMMON_CXX_FLAGS             "-fno-inline ${COMMON_CXX_FLAGS}")
+     # GCC 6 has C++14 as default, set it explicitly to the old default.
+     EXECUTE_PROCESS(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion
+                     OUTPUT_VARIABLE GXX_VERSION)

Modified: branches/2016Q3/databases/mysql57-client/files/patch-mysys__ssl_my__default.cc
==============================================================================
--- branches/2016Q3/databases/mysql57-client/files/patch-mysys__ssl_my__default.cc	Mon Sep 19 11:38:49 2016	(r422429)
+++ branches/2016Q3/databases/mysql57-client/files/patch-mysys__ssl_my__default.cc	Mon Sep 19 12:28:53 2016	(r422430)
@@ -1,6 +1,6 @@
---- mysys_ssl/my_default.cc.orig	2016-03-28 18:06:12 UTC
+--- mysys_ssl/my_default.cc.orig	2016-08-25 11:52:06 UTC
 +++ mysys_ssl/my_default.cc
-@@ -122,7 +122,7 @@ static my_bool is_login_file= FALSE;
+@@ -114,7 +114,7 @@ static my_bool defaults_already_read= FA
  
  /* Which directories are searched for options (and in which order) */
  
@@ -9,18 +9,48 @@
  #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1)  /* Terminate with NULL */
  static const char **default_directories = NULL;
  
-@@ -1409,7 +1409,10 @@ static const char **init_default_directo
+@@ -914,6 +914,14 @@ static int search_default_file_with_ext(
+       return 1;                                 /* Ignore wrong files */
+   }
  
- #if defined(DEFAULT_SYSCONFDIR)
-   if (DEFAULT_SYSCONFDIR[0])
++  if (strstr(name, "/etc") == name)
 +  {
-     errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
-+    errors += add_directory(alloc, DEFAULT_SYSCONFDIR "/mysql", dirs);
++    fprintf(stderr,
++             "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n",
++             name,name);
++      goto err;
 +  }
- #endif /* DEFAULT_SYSCONFDIR */
++
+   while (mysql_file_getline(buff, sizeof(buff) - 1, fp, is_login_file))
+   {
+     line++;
+@@ -1252,7 +1260,8 @@ void my_print_default_files(const char *
+             end[(strlen(end)-1)] = ' ';
+           else
+             strxmov(end, conf_file, *ext , " ",  NullS);
+-          fputs(name, stdout);
++          if (strstr(name, "/etc") != name)
++            fputs(name, stdout);
+         }
+       }
+     }
+@@ -1411,13 +1420,8 @@ static const char **init_default_directo
+ 
+ #else
+ 
+-  errors += add_directory(alloc, "/etc/", dirs);
+-  errors += add_directory(alloc, "/etc/mysql/", dirs);
+-
+-#if defined(DEFAULT_SYSCONFDIR)
+-  if (DEFAULT_SYSCONFDIR[0])
+-    errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
+-#endif /* DEFAULT_SYSCONFDIR */
++  errors += add_directory(alloc, "/usr/local/etc/", dirs);
++  errors += add_directory(alloc, "/usr/local/etc/mysql/", dirs);
  
  #endif
-@@ -1480,7 +1483,7 @@ int check_file_permissions(const char *f
+ 
+@@ -1488,7 +1492,7 @@ int check_file_permissions(const char *f
    MY_STAT stat_info;
  
    if (!my_stat(file_name,&stat_info,MYF(0)))

Modified: branches/2016Q3/databases/mysql57-server/Makefile
==============================================================================
--- branches/2016Q3/databases/mysql57-server/Makefile	Mon Sep 19 11:38:49 2016	(r422429)
+++ branches/2016Q3/databases/mysql57-server/Makefile	Mon Sep 19 12:28:53 2016	(r422430)
@@ -2,7 +2,7 @@
 # $FreeBSD$
 
 PORTNAME?=	mysql
-PORTVERSION=	5.7.13
+PORTVERSION=	5.7.15
 PORTREVISION?=	0
 CATEGORIES=	databases ipv6
 MASTER_SITES=	MYSQL/MySQL-5.7
@@ -51,12 +51,12 @@ CMAKE_ARGS+=	-DINSTALL_LAYOUT=FREEBSD \
 		-DINSTALL_SHAREDIR="share" \
 		-DINSTALL_SUPPORTFILESDIR="share/mysql" \
 		-DMYSQL_KEYRINGDIR="${ETCDIR}/keyring" \
-		-DSYSCONFDIR="${ETCDIR}" \
 		-DWITH_BOOST="${WRKSRC}/boost" \
 		-DWITH_EDITLINE=system \
 		-DWITH_LIBEVENT=system \
 		-DWITH_LZ4=system \
-		-DWITH_ZLIB=system
+		-DWITH_ZLIB=system \
+		-DINSTALL_MYSQLTESTDIR=0
 
 SHEBANG_FILES=	scripts/*.pl* scripts/*.sh
 
@@ -133,23 +133,21 @@ PERFSCHM_SUB_LIST_OFF+=	PERFSCHEMRC="--s
 
 ### Just for the sake of FreeBSD 9.X ###
 .if ${OPSYS} == FreeBSD && ${OSVERSION} < 1000000
-.if !defined(CLIENT_ONLY)
+.  if !defined(CLIENT_ONLY)
 EXTRA_PATCHES+=		${PATCHDIR}/rapid_plugin-patch-_x_mysqlxtest__src_mysqlxtest.cc
-.endif
-WITH_OPENSSL_PORT=	yes
-CMAKE_ARGS+=		-DWITH_SSL=${OPENSSLBASE}
+.  endif
+### Just like deperecated `WITH_OPENSSL_PORT=yes` a workaround for building on 9.X ###
+DEFAULT_VERSIONS+=ssl=openssl
 .endif
 
 .include <bsd.port.pre.mk>
 
-### FreeBSD Version > 9.X ###
-.if ${OPSYS} == FreeBSD && ${OSVERSION} > 1000000
 .if ${SSL_DEFAULT} == base
+BROKEN_FreeBSD_9=	FreeBSD 9.x requires SSL from ports
 CMAKE_ARGS+=		-DWITH_SSL=system
 .else
 CMAKE_ARGS+=		-DWITH_SSL=${OPENSSLBASE}
 .endif
-.endif
 
 post-extract:
 	@${RM} -rvf ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h

Modified: branches/2016Q3/databases/mysql57-server/distinfo
==============================================================================
--- branches/2016Q3/databases/mysql57-server/distinfo	Mon Sep 19 11:38:49 2016	(r422429)
+++ branches/2016Q3/databases/mysql57-server/distinfo	Mon Sep 19 12:28:53 2016	(r422430)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1465065317
-SHA256 (mysql-boost-5.7.13.tar.gz) = 2a768682c37dfbca286912bd137f1a526075ac1f00a6a46da8b6fe63f6fcfa37
-SIZE (mysql-boost-5.7.13.tar.gz) = 60561931
+TIMESTAMP = 1473858917
+SHA256 (mysql-boost-5.7.15.tar.gz) = 7342a3a3e40878378dfaee252d42a3a5b06c58237f49c2544424d27316738945
+SIZE (mysql-boost-5.7.15.tar.gz) = 60583907

Modified: branches/2016Q3/databases/mysql57-server/files/mysql-server.in
==============================================================================
--- branches/2016Q3/databases/mysql57-server/files/mysql-server.in	Mon Sep 19 11:38:49 2016	(r422429)
+++ branches/2016Q3/databases/mysql57-server/files/mysql-server.in	Mon Sep 19 12:28:53 2016	(r422430)
@@ -64,9 +64,11 @@ mysql_prestart()
 {
 	if [ -f "${mysql_dbdir}/my.cnf" ]; then
 		echo ""
-		echo "Please keep in mind that the default location for my.cnf will be changed"
-		echo "from \"%%MY_DBDIR%%/my.cnf\" to \"%%ETCDIR%%/my.cnf\" in the near"
-		echo "future.  If you do not want to move your my.cnf to the new location then"
+		echo "Please keep in mind that the default location for my.cnf has changed"
+		echo "from \"%%MY_DBDIR%%/my.cnf\" to \"%%ETCDIR%%/my.cnf\". "
+		echo "Please merge your existing my.cnf with the new default and move"
+		echo "it to \"%%ETCDIR%%/my.cnf\"."
+		echo "If you do not want to move your my.cnf to the new location then"
 		echo "you must set \"mysql_optfile\" in /etc/rc.conf to \"/var/db/mysql/my.cnf\"."
 		echo ""
 	fi

Modified: branches/2016Q3/databases/mysql57-server/files/patch-mysys__ssl_my__default.cc
==============================================================================
--- branches/2016Q3/databases/mysql57-server/files/patch-mysys__ssl_my__default.cc	Mon Sep 19 11:38:49 2016	(r422429)
+++ branches/2016Q3/databases/mysql57-server/files/patch-mysys__ssl_my__default.cc	Mon Sep 19 12:28:53 2016	(r422430)
@@ -1,6 +1,6 @@
---- mysys_ssl/my_default.cc.orig	2016-03-28 18:06:12 UTC
+--- mysys_ssl/my_default.cc.orig	2016-08-25 11:52:06 UTC
 +++ mysys_ssl/my_default.cc
-@@ -122,7 +122,7 @@ static my_bool is_login_file= FALSE;
+@@ -114,7 +114,7 @@ static my_bool defaults_already_read= FA
  
  /* Which directories are searched for options (and in which order) */
  
@@ -9,18 +9,48 @@
  #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1)  /* Terminate with NULL */
  static const char **default_directories = NULL;
  
-@@ -1409,7 +1409,10 @@ static const char **init_default_directo
+@@ -914,6 +914,14 @@ static int search_default_file_with_ext(
+       return 1;                                 /* Ignore wrong files */
+   }
  
- #if defined(DEFAULT_SYSCONFDIR)
-   if (DEFAULT_SYSCONFDIR[0])
++  if (strstr(name, "/etc") == name)
 +  {
-     errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
-+    errors += add_directory(alloc, DEFAULT_SYSCONFDIR "/mysql", dirs);
++    fprintf(stderr,
++             "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n",
++             name,name);
++      goto err;
 +  }
- #endif /* DEFAULT_SYSCONFDIR */
++
+   while (mysql_file_getline(buff, sizeof(buff) - 1, fp, is_login_file))
+   {
+     line++;
+@@ -1252,7 +1260,8 @@ void my_print_default_files(const char *
+             end[(strlen(end)-1)] = ' ';
+           else
+             strxmov(end, conf_file, *ext , " ",  NullS);
+-          fputs(name, stdout);
++          if (strstr(name, "/etc") != name)
++            fputs(name, stdout);
+         }
+       }
+     }
+@@ -1411,13 +1420,8 @@ static const char **init_default_directo
+ 
+ #else
+ 
+-  errors += add_directory(alloc, "/etc/", dirs);
+-  errors += add_directory(alloc, "/etc/mysql/", dirs);
+-
+-#if defined(DEFAULT_SYSCONFDIR)
+-  if (DEFAULT_SYSCONFDIR[0])
+-    errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
+-#endif /* DEFAULT_SYSCONFDIR */
++  errors += add_directory(alloc, "/usr/local/etc/", dirs);
++  errors += add_directory(alloc, "/usr/local/etc/mysql/", dirs);
  
  #endif
-@@ -1480,7 +1483,7 @@ int check_file_permissions(const char *f
+ 
+@@ -1488,7 +1492,7 @@ int check_file_permissions(const char *f
    MY_STAT stat_info;
  
    if (!my_stat(file_name,&stat_info,MYF(0)))

Copied: branches/2016Q3/databases/mysql57-server/files/patch-rapid_plugin_x_mysqlx__configure.cmake (from r422257, head/databases/mysql57-server/files/patch-rapid_plugin_x_mysqlx__configure.cmake)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/2016Q3/databases/mysql57-server/files/patch-rapid_plugin_x_mysqlx__configure.cmake	Mon Sep 19 12:28:53 2016	(r422430, copy of r422257, head/databases/mysql57-server/files/patch-rapid_plugin_x_mysqlx__configure.cmake)
@@ -0,0 +1,15 @@
+--- rapid/plugin/x/mysqlx_configure.cmake.orig	2016-09-14 15:25:26 UTC
++++ rapid/plugin/x/mysqlx_configure.cmake
+@@ -29,6 +29,7 @@ CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src
+ CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src/mysqlx_version.h.in
+                ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_version.h )
+ 
++IF(FALSE)
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_error.h
+         DESTINATION ${INSTALL_INCLUDEDIR}
+         COMPONENT Developement)
+@@ -36,3 +37,4 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_version.h
+         DESTINATION ${INSTALL_INCLUDEDIR}
+         COMPONENT Developement)
++ENDIF()

Modified: branches/2016Q3/databases/mysql57-server/files/patch-sql_CMakeLists.txt
==============================================================================
--- branches/2016Q3/databases/mysql57-server/files/patch-sql_CMakeLists.txt	Mon Sep 19 11:38:49 2016	(r422429)
+++ branches/2016Q3/databases/mysql57-server/files/patch-sql_CMakeLists.txt	Mon Sep 19 12:28:53 2016	(r422430)
@@ -1,4 +1,4 @@
---- sql/CMakeLists.txt.orig	2016-03-28 18:06:12 UTC
+--- sql/CMakeLists.txt.orig	2016-08-25 11:52:06 UTC
 +++ sql/CMakeLists.txt
 @@ -24,6 +24,8 @@ INCLUDE_DIRECTORIES(
    ${ZLIB_INCLUDE_DIR}
@@ -6,6 +6,6 @@
    ${CMAKE_BINARY_DIR}/sql
 +  ${CMAKE_BINARY_DIR}/include
 +  ${CMAKE_BINARY_DIR}
+   ${LZ4_INCLUDE_DIR}
  )
  
- SET(CONF_SOURCES

Modified: branches/2016Q3/databases/mysql57-server/pkg-message
==============================================================================
--- branches/2016Q3/databases/mysql57-server/pkg-message	Mon Sep 19 11:38:49 2016	(r422429)
+++ branches/2016Q3/databases/mysql57-server/pkg-message	Mon Sep 19 12:28:53 2016	(r422430)
@@ -11,9 +11,10 @@ in /root/.mysql_secret
 
 *****************************************************************************
 
-Please keep in mind that the default location for my.cnf will be changed
-from "/var/db/mysql/my.cnf" to "/usr/local/etc/mysql/my.cnf" in the near
-future.  If you do not want to move your my.cnf to the new location then
-you must set "mysql_optfile" in /etc/rc.conf to "/var/db/mysql/my.cnf".
+The default location for my.cnf has changed from "/var/db/mysql/my.cnf" to
+"/usr/local/etc/mysql/my.cnf". Existing my.cnf files must be merged manually
+with the new default and moved to the new location. To continue using the
+my.cnf file at the old location, set "mysql_optfile" in /etc/rc.conf to
+point to the location of the existing my.cnf file.
 
 *****************************************************************************

Modified: branches/2016Q3/databases/mysql57-server/pkg-plist
==============================================================================
--- branches/2016Q3/databases/mysql57-server/pkg-plist	Mon Sep 19 11:38:49 2016	(r422429)
+++ branches/2016Q3/databases/mysql57-server/pkg-plist	Mon Sep 19 12:28:53 2016	(r422430)
@@ -62,6 +62,8 @@ lib/mysql/plugin/rewriter.so
 lib/mysql/plugin/semisync_master.so
 lib/mysql/plugin/semisync_slave.so
 lib/mysql/plugin/test_security_context.so
+lib/mysql/plugin/keyring_udf.so
+lib/mysql/plugin/test_udf_services.so
 lib/mysql/plugin/validate_password.so
 lib/mysql/plugin/version_token.so
 libdata/pkgconfig/LIBMYSQL_OS_OUTPUT_NAME-NOTFOUND.pc



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201609191228.u8JCSrAh049243>