public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Brian Evans" <grknight@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/mysql:master commit in: eclass/
Date: Wed, 15 Nov 2017 14:28:04 +0000 (UTC)	[thread overview]
Message-ID: <1510756019.3007cfdf814727b90978e91991c0ad26f2ad4a74.grknight@gentoo> (raw)

commit:     3007cfdf814727b90978e91991c0ad26f2ad4a74
Author:     Brian Evans <grknight <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 15 14:26:59 2017 +0000
Commit:     Brian Evans <grknight <AT> gentoo <DOT> org>
CommitDate: Wed Nov 15 14:26:59 2017 +0000
URL:        https://gitweb.gentoo.org/proj/mysql.git/commit/?id=3007cfdf

mysql-multilib.eclass: Update security changes from Gentoo repo

Before removing from the Gentoo repo, update this overlay copy in case
we need it again.

 eclass/mysql-multilib.eclass | 35 ++++++++++++++---------------------
 1 file changed, 14 insertions(+), 21 deletions(-)

diff --git a/eclass/mysql-multilib.eclass b/eclass/mysql-multilib.eclass
index 14e1913..3cfdb81 100644
--- a/eclass/mysql-multilib.eclass
+++ b/eclass/mysql-multilib.eclass
@@ -843,14 +843,9 @@ mysql-multilib_pkg_postinst() {
 	# Make sure the vars are correctly initialized
 	mysql_init_vars
 
-	# Check FEATURES="collision-protect" before removing this
+	# Create log directory securely if it does not exist
 	[[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}"
 
-	# Secure the logfiles
-	touch "${ROOT}${MY_LOGDIR}"/mysql.{log,err}
-	chown mysql:mysql "${ROOT}${MY_LOGDIR}"/mysql*
-	chmod 0660 "${ROOT}${MY_LOGDIR}"/mysql*
-
 	# Minimal builds don't have the MySQL server
 	if use_if_iuse minimal ; then
 		:
@@ -1049,7 +1044,7 @@ mysql-multilib_pkg_config() {
 	${EROOT}/usr/sbin/mysqld --verbose --help >"${helpfile}" 2>/dev/null
 	for opt in grant-tables host-cache name-resolve networking slave-start \
 		federated ssl log-bin relay-log slow-query-log external-locking \
-		ndbcluster log-slave-updates \
+		ndbcluster log-slave-updates wsrep-on \
 		; do
 		optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}"
 		egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}"
@@ -1058,8 +1053,6 @@ mysql-multilib_pkg_config() {
 	egrep -sq external-locking "${helpfile}" && \
 	options="${options/skip-locking/skip-external-locking}"
 
-	use prefix || options="${options} --user=mysql"
-
 	# MySQL 5.6+ needs InnoDB
 	if [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] ; then
 		mysql_version_is_at_least "5.6" || options="${options} --loose-skip-innodb"
@@ -1068,18 +1061,16 @@ mysql-multilib_pkg_config() {
 	einfo "Creating the mysql database and setting proper permissions on it ..."
 
 	# Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it
-	PID_DIR="${EROOT}/var/run/mysqld"
+	local PID_DIR="${EROOT}/var/run/mysqld"
 	if [[ ! -d "${PID_DIR}" ]]; then
-		mkdir -p "${PID_DIR}" || die "Could not create pid directory"
-		chown mysql:mysql "${PID_DIR}" || die "Could not set ownership on pid directory"
-		chmod 755 "${PID_DIR}" || die "Could not set permissions on pid directory"
+		install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory"
 	fi
 
-	pushd "${TMPDIR}" &>/dev/null
+	if [[ ! -d "${MY_DATADIR}" ]]; then
+		install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory"
+	fi
 
-	# Filling timezones, see
-	# http://dev.mysql.com/doc/mysql/en/time-zone-support.html
-	"${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null
+	pushd "${TMPDIR}" &>/dev/null || die
 
 	local cmd
 	local initialize_options
@@ -1098,17 +1089,19 @@ mysql-multilib_pkg_config() {
 	fi
 	cmd="'$cmd' '--basedir=${EPREFIX}/usr' ${options} '--datadir=${ROOT}/${MY_DATADIR}' '--tmpdir=${ROOT}/${MYSQL_TMPDIR}' ${initialize_options}"
 	einfo "Command: $cmd"
-	eval $cmd \
+	su -s /bin/sh -c "${cmd}" mysql \
 		>"${TMPDIR}"/mysql_install_db.log 2>&1
 	if [ $? -ne 0 ]; then
 		grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2
 		die "Failed to initialize mysqld. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log"
 	fi
-	popd &>/dev/null
+	popd &>/dev/null || die
 	[[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \
 	|| die "MySQL databases not installed"
-	chown -R mysql:mysql "${ROOT}/${MY_DATADIR}" 2>/dev/null
-	chmod 0750 "${ROOT}/${MY_DATADIR}" 2>/dev/null
+
+	# Filling timezones, see
+	# http://dev.mysql.com/doc/mysql/en/time-zone-support.html
+	"${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null
 
 	local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock"
 	local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid"


             reply	other threads:[~2017-11-15 14:28 UTC|newest]

Thread overview: 252+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-15 14:28 Brian Evans [this message]
  -- strict thread matches above, loose matches on Subject: below --
2018-06-22 13:22 [gentoo-commits] proj/mysql:master commit in: eclass/ Thomas Deutschmann
2017-07-17 19:24 Brian Evans
2017-07-09  2:42 Brian Evans
2017-05-19 12:51 Brian Evans
2017-05-02 17:16 Brian Evans
2017-03-28 14:44 Brian Evans
2017-03-28 14:36 Brian Evans
2017-03-17 17:53 Brian Evans
2017-02-01 18:37 Brian Evans
2016-09-27 16:44 Brian Evans
2016-09-27 16:44 Brian Evans
2016-09-27 16:44 Brian Evans
2016-05-11 18:55 Brian Evans
2016-03-24 14:32 Brian Evans
2016-03-10  1:26 Brian Evans
2016-03-09 20:22 Brian Evans
2016-02-27  3:28 Brian Evans
2016-02-17  3:30 Brian Evans
2016-02-10  2:59 Brian Evans
2016-02-07 20:41 Brian Evans
2016-02-07 20:29 Brian Evans
2015-12-31 18:34 Brian Evans
2015-12-23 15:09 Brian Evans
2015-11-18 14:31 Brian Evans
2015-11-02 21:51 Brian Evans
2015-10-30 18:33 Brian Evans
2015-10-30 18:33 Brian Evans
2015-10-26 16:54 Brian Evans
2015-10-26 16:54 Brian Evans
2015-10-26 16:54 Brian Evans
2015-10-21 19:12 Brian Evans
2015-10-19 18:48 Brian Evans
2015-09-23  2:51 Brian Evans
2015-09-18 18:45 Brian Evans
2015-09-18 17:33 Brian Evans
2015-09-18 15:06 Brian Evans
2015-09-18 15:01 Brian Evans
2015-09-17  1:41 Brian Evans
2015-09-15 12:56 Brian Evans
2015-09-14 19:14 Brian Evans
2015-08-27 13:28 Brian Evans
2015-08-13 13:50 Brian Evans
2015-07-31  2:49 Brian Evans
2015-07-29 15:02 Brian Evans
2015-07-28 22:27 Brian Evans
2015-07-27 20:28 Brian Evans
2015-06-12 20:11 Brian Evans
2015-06-10 18:09 Brian Evans
2015-05-01 18:49 Brian Evans
2015-05-01 12:40 Brian Evans
2015-05-01 12:28 Brian Evans
2015-03-17 19:45 Brian Evans
2015-03-17 19:45 Brian Evans
2015-03-08 23:48 Brian Evans
2015-02-10 18:36 Brian Evans
2015-01-30 19:37 Brian Evans
2015-01-28 15:51 Brian Evans
2015-01-27  3:41 Brian Evans
2014-12-30 15:30 Brian Evans
2014-11-26  0:35 Brian Evans
2014-11-23 20:12 Brian Evans
2014-11-23 19:59 Brian Evans
2014-11-23  2:32 Brian Evans
2014-11-23  1:53 Brian Evans
2014-11-18 19:35 Brian Evans
2014-10-25  3:09 Brian Evans
2014-10-25  2:53 Brian Evans
2014-10-22 19:35 Brian Evans
2014-10-21 16:38 Brian Evans
2014-10-20 20:52 Brian Evans
2014-10-08 17:28 Brian Evans
2014-09-26 20:32 Brian Evans
2014-09-17 20:24 Brian Evans
2014-09-13 14:57 Brian Evans
2014-09-03 18:10 Brian Evans
2014-08-29 20:34 Brian Evans
2014-08-29 20:34 Brian Evans
2014-08-22 18:15 Brian Evans
2014-08-21 18:25 Brian Evans
2014-08-21 17:53 Brian Evans
2014-08-19 18:41 Brian Evans
2014-08-19 18:41 Brian Evans
2014-08-10  5:48 Robin H. Johnson
2014-07-31 20:24 Brian Evans
2014-07-31  2:33 Brian Evans
2014-07-29 20:24 Robin H. Johnson
2014-07-29 17:59 Robin H. Johnson
2014-07-29 17:59 Robin H. Johnson
2014-07-02  1:02 Brian Evans
2014-06-19 17:33 Brian Evans
2014-06-19  1:35 Brian Evans
2014-06-18 19:46 Brian Evans
2014-06-04  0:51 Brian Evans
2014-05-19 17:02 Brian Evans
2014-05-16  0:25 Brian Evans
2014-05-15 18:07 Brian Evans
2014-05-15  3:11 Brian Evans
2014-05-14 14:50 Brian Evans
2014-05-14 13:37 Brian Evans
2014-05-14  2:31 Brian Evans
2014-05-13 19:19 Brian Evans
2014-05-13  3:14 Brian Evans
2014-05-08 17:20 Brian Evans
2014-05-08 17:09 Brian Evans
2014-04-30 20:39 Brian Evans
2014-04-28 18:10 Brian Evans
2014-04-28 18:10 Brian Evans
2014-04-23 13:18 Brian Evans
2014-04-22 13:58 Brian Evans
2014-04-22  1:49 Jorge Manuel B. S. Vicetto
2014-04-22  1:49 Jorge Manuel B. S. Vicetto
2014-04-22  1:49 Jorge Manuel B. S. Vicetto
2014-04-14 18:55 Brian Evans
2014-04-08  2:17 Brian Evans
2014-04-02 17:38 Brian Evans
2014-03-26 23:12 Brian Evans
2014-03-26 23:12 Brian Evans
2014-03-19 16:47 Brian Evans
2014-03-11 23:12 Brian Evans
2014-03-11 23:12 Brian Evans
2014-03-11 20:07 Brian Evans
2014-03-07 20:30 Brian Evans
2014-03-06 18:15 Brian Evans
2014-03-06 18:12 Brian Evans
2014-03-05 16:00 Brian Evans
2014-03-04 21:54 Brian Evans
2014-02-04 21:13 Brian Evans
2014-01-24 18:54 Brian Evans
2014-01-20 14:04 Brian Evans
2014-01-19 15:34 Brian Evans
2014-01-06 20:21 Brian Evans
2013-11-22 17:52 Brian Evans
2013-11-19 15:19 Brian Evans
2013-11-12 16:29 Brian Evans
2013-11-07 19:44 Brian Evans
2013-11-07 19:44 Brian Evans
2013-11-06 23:53 Jorge Manuel B. S. Vicetto
2013-11-01 14:00 Brian Evans
2013-09-24 19:16 Brian Evans
2013-09-20 22:29 Brian Evans
2013-09-20 22:29 Brian Evans
2013-09-20 15:13 Brian Evans
2013-09-18 20:32 Brian Evans
2013-08-10 15:15 Brian Evans
2013-07-18 12:44 Brian Evans
2013-07-16  2:48 Brian Evans
2013-06-27 14:20 Brian Evans
2013-06-26 19:19 Jorge Manuel B. S. Vicetto
2013-06-12 18:21 Robin H. Johnson
2013-05-01  2:04 Jorge Manuel B. S. Vicetto
2013-05-01  1:09 Jorge Manuel B. S. Vicetto
2013-04-30 10:17 Jorge Manuel B. S. Vicetto
2013-04-29 23:57 Jorge Manuel B. S. Vicetto
2013-04-28 16:20 Jorge Manuel B. S. Vicetto
2013-04-28 16:20 Jorge Manuel B. S. Vicetto
2013-04-28 16:20 Jorge Manuel B. S. Vicetto
2013-04-28 16:20 Jorge Manuel B. S. Vicetto
2013-04-28 16:20 Jorge Manuel B. S. Vicetto
2013-04-25 17:38 Robin H. Johnson
2013-04-25  0:43 Jorge Manuel B. S. Vicetto
2013-03-21 19:43 Robin H. Johnson
2013-03-16 19:35 Robin H. Johnson
2013-03-16 19:20 Robin H. Johnson
2013-03-16 19:19 Robin H. Johnson
2013-03-16 19:19 Robin H. Johnson
2013-03-04 20:24 Robin H. Johnson
2013-02-12 22:47 Robin H. Johnson
2013-02-12 22:47 Robin H. Johnson
2013-02-12 22:47 Robin H. Johnson
2013-01-28  2:20 Robin H. Johnson
2013-01-28  2:13 Robin H. Johnson
2013-01-28  2:13 Robin H. Johnson
2013-01-28  2:13 Robin H. Johnson
2013-01-28  2:13 Robin H. Johnson
2013-01-28  2:13 Robin H. Johnson
2013-01-20 23:02 Robin H. Johnson
2013-01-20 23:02 Robin H. Johnson
2013-01-20  2:15 Robin H. Johnson
2013-01-20  2:15 Robin H. Johnson
2013-01-20  2:15 Robin H. Johnson
2012-11-24 19:41 Robin H. Johnson
2012-11-02  0:05 Robin H. Johnson
2012-11-01 20:20 Robin H. Johnson
2012-11-01 20:20 Robin H. Johnson
2012-11-01 20:20 Robin H. Johnson
2012-08-03 17:38 Robin H. Johnson
2012-07-31 17:01 Robin H. Johnson
2012-07-27 16:09 Robin H. Johnson
2012-07-27 16:09 Robin H. Johnson
2012-07-27 16:09 Robin H. Johnson
2012-07-27 16:09 Robin H. Johnson
2012-07-27 16:09 Robin H. Johnson
2012-07-27 16:09 Robin H. Johnson
2012-07-26  4:51 Robin H. Johnson
2012-07-26  4:51 Robin H. Johnson
2012-07-23 10:13 Jorge Manuel B. S. Vicetto
2012-07-23 10:12 Jorge Manuel B. S. Vicetto
2012-05-22 12:09 Jorge Manuel B. S. Vicetto
2012-05-15 22:50 Robin H. Johnson
2012-04-18  2:14 Robin H. Johnson
2012-04-18  2:14 Robin H. Johnson
2012-04-05 20:41 Robin H. Johnson
2012-04-02  0:21 Robin H. Johnson
2012-02-15 19:21 Jorge Manuel B. S. Vicetto
2012-02-15  4:27 Jorge Manuel B. S. Vicetto
2012-02-15  4:27 Jorge Manuel B. S. Vicetto
2012-02-15  2:45 Jorge Manuel B. S. Vicetto
2012-02-02  2:50 Robin H. Johnson
2012-01-12 19:17 Jorge Manuel B. S. Vicetto
2012-01-06 19:50 Robin H. Johnson
2012-01-06 19:50 Robin H. Johnson
2012-01-06 15:26 Jorge Manuel B. S. Vicetto
2011-12-20  9:05 Jorge Manuel B. S. Vicetto
2011-12-20  8:42 Jorge Manuel B. S. Vicetto
2011-12-20  8:42 Jorge Manuel B. S. Vicetto
2011-12-20  8:42 Jorge Manuel B. S. Vicetto
2011-12-20  8:42 Jorge Manuel B. S. Vicetto
2011-12-20  8:42 Jorge Manuel B. S. Vicetto
2011-12-20  8:42 Jorge Manuel B. S. Vicetto
2011-11-17 21:43 Robin H. Johnson
2011-10-26 19:45 Jorge Manuel B. S. Vicetto
2011-10-07  4:31 Jorge Manuel B. S. Vicetto
2011-09-30  2:53 Jorge Manuel B. S. Vicetto
2011-09-30  2:51 Jorge Manuel B. S. Vicetto
2011-09-30  2:08 Jorge Manuel B. S. Vicetto
2011-09-22  9:45 Jorge Manuel B. S. Vicetto
2011-09-22  2:08 Jorge Manuel B. S. Vicetto
2011-08-21 16:13 Jorge Manuel B. S. Vicetto
2011-08-19 20:02 Jorge Manuel B. S. Vicetto
2011-07-29  2:25 Jorge Manuel B. S. Vicetto
2011-07-21  5:56 Jorge Manuel B. S. Vicetto
2011-07-20 17:05 Jorge Manuel B. S. Vicetto
2011-07-17 12:46 Jorge Manuel B. S. Vicetto
2011-07-14  2:07 Jorge Manuel B. S. Vicetto
2011-07-13 16:06 Jorge Manuel B. S. Vicetto
2011-07-13  6:59 Robin H. Johnson
2011-07-13  6:59 Robin H. Johnson
2011-06-14  2:59 Jorge Manuel B. S. Vicetto
2011-06-12 18:22 Jorge Manuel B. S. Vicetto
2011-05-19  4:13 Jorge Manuel B. S. Vicetto
2011-05-07 19:19 Robin H. Johnson
2011-04-21 12:16 Robin H. Johnson
2011-04-21 12:14 Robin H. Johnson
2011-04-20 10:50 Jorge Manuel B. S. Vicetto
2011-04-17 17:33 Robin H. Johnson
2011-04-17  5:29 Robin H. Johnson
2011-04-17  3:56 Jorge Manuel B. S. Vicetto
2011-03-28 22:35 Jorge Manuel B. S. Vicetto
2011-03-26 22:53 Jorge Manuel B. S. Vicetto
2011-03-26 22:08 Jorge Manuel B. S. Vicetto
2011-03-03  1:08 Jorge Manuel B. S. Vicetto

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1510756019.3007cfdf814727b90978e91991c0ad26f2ad4a74.grknight@gentoo \
    --to=grknight@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox