ports/182547: [PATCH] databases/mariadb55-server: Respect hier(7) (also affects databases/mariadb55-client)
Michael Gmelin
freebsd at grem.de
Tue Oct 1 23:10:01 UTC 2013
The following reply was made to PR ports/182547; it has been noted by GNATS.
From: Michael Gmelin <freebsd at grem.de>
To: bug-followup at FreeBSD.org
Cc: Miroslav Lachman <000.fbsd at quip.cz>, Alexandr Kovalenko
<never at nevermind.kiev.ua>
Subject: Re: ports/182547: [PATCH] databases/mariadb55-server: Respect
hier(7) (also affects databases/mariadb55-client)
Date: Wed, 2 Oct 2013 01:06:55 +0200
--MP_/fpnb05V9IXb16lqck/3oAe4
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
The last patch contained a lot of unnecessary garbage
(databases/mariadb55*.orig), please find attached a "clean" version.
Sorry for the noise.
Apply:
cd /usr/ports/databases
patch -p1 </path/to/mariadb55-mycnf-compromise.patch
Cheers,
Michael
--
Michael Gmelin
--MP_/fpnb05V9IXb16lqck/3oAe4
Content-Type: text/x-patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=mariadb55-mycnf-compromise.patch
diff -ruN databases.orig/mariadb55-client/Makefile databases/mariadb55-client/Makefile
--- databases.orig/mariadb55-client/Makefile 2013-10-01 00:36:19.000000000 +0200
+++ databases/mariadb55-client/Makefile 2013-10-01 15:13:15.285388241 +0200
@@ -7,7 +7,7 @@
MASTERDIR= ${.CURDIR}/../mariadb55-server
-PKGMESSAGE= mustnotexist
+FILESDIR= ${.CURDIR}/files
PATCHDIR= ${.CURDIR}/files
PLIST= ${.CURDIR}/pkg-plist
diff -ruN databases.orig/mariadb55-client/files/patch-mysys_default.c databases/mariadb55-client/files/patch-mysys_default.c
--- databases.orig/mariadb55-client/files/patch-mysys_default.c 2013-01-05 12:30:51.000000000 +0100
+++ databases/mariadb55-client/files/patch-mysys_default.c 2013-10-01 23:48:22.726204234 +0200
@@ -1,5 +1,5 @@
---- mysys/default.c.orig 2012-12-17 03:57:40.000000000 +0200
-+++ mysys/default.c 2012-12-17 04:00:28.000000000 +0200
+--- mysys/default.c.orig 2013-10-01 21:15:03.544135869 +0200
++++ mysys/default.c 2013-10-01 21:15:38.871375504 +0200
@@ -89,7 +89,7 @@
/* Which directories are searched for options (and in which order) */
@@ -18,11 +18,31 @@
/*
Ignore world-writable regular files.
This is mainly done to protect us to not read a file created by
-@@ -1229,6 +1229,7 @@
- #if defined(DEFAULT_SYSCONFDIR)
- if (DEFAULT_SYSCONFDIR[0])
- errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
-+ errors += add_directory(alloc, DEFAULT_SYSCONFDIR "/mysql", dirs);
- #endif /* DEFAULT_SYSCONFDIR */
+@@ -803,6 +803,14 @@
+ if (!(fp= mysql_file_fopen(key_file_cnf, name, O_RDONLY, MYF(0))))
+ return 1; /* Ignore wrong files */
+
++ if (strstr(name, "/etc") == name)
++ {
++ fprintf(stderr,
++ "error: Config file %s in invalid location, please move to or merge with %%PREFIX%%%s\n",
++ name,name);
++ goto err;
++ }
++
+ while (mysql_file_fgets(buff, sizeof(buff) - 1, fp))
+ {
+ line++;
+@@ -1226,10 +1226,8 @@
+ 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, "%%PREFIX%%/etc/", dirs);
++ errors += add_directory(alloc, "%%PREFIX%%/etc/mysql/", dirs);
#endif
+
diff -ruN databases.orig/mariadb55-client/files/pkg-message.in databases/mariadb55-client/files/pkg-message.in
--- databases.orig/mariadb55-client/files/pkg-message.in 1970-01-01 01:00:00.000000000 +0100
+++ databases/mariadb55-client/files/pkg-message.in 2013-10-01 23:50:26.235947512 +0200
@@ -0,0 +1,7 @@
+************************************************************************
+
+MariaDB respects hier(7) and doesn't check /etc and /etc/mysql for
+my.cnf. Please move existing my.cnf files from those paths to
+%%PREFIX%%/etc and %%PREFIX%%/etc/mysql.
+
+************************************************************************
diff -ruN databases.orig/mariadb55-server/Makefile databases/mariadb55-server/Makefile
--- databases.orig/mariadb55-server/Makefile 2013-10-01 00:32:28.000000000 +0200
+++ databases/mariadb55-server/Makefile 2013-10-01 15:24:35.085467022 +0200
@@ -2,7 +2,7 @@
PORTNAME?= mariadb
PORTVERSION= 5.5.33a
-PORTREVISION?= 0
+PORTREVISION?= 1
CATEGORIES= databases ipv6
MASTER_SITES= http://ftp.osuosl.org/pub/mariadb/${PORTNAME}-${PORTVERSION}/kvm-tarbake-jaunty-x86/ \
http://mirrors.supportex.net/mariadb/${PORTNAME}-${PORTVERSION}/kvm-tarbake-jaunty-x86/ \
@@ -18,6 +18,9 @@
MAINTAINER= never at nevermind.kiev.ua
COMMENT?= Multithreaded SQL database (server)
+SUB_FILES= pkg-message
+PKGMESSAGE= ${WRKDIR}/pkg-message
+
SLAVEDIRS= databases/mariadb55-client
USES= cmake gmake
NO_OPTIONS_SORT=yes
@@ -136,6 +139,7 @@
post-patch:
@${REINPLACE_CMD} 's/*.1/${MAN1}/' ${WRKSRC}/man/CMakeLists.txt
+ @${REINPLACE_CMD} 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/mysys/default.c
.include <bsd.port.pre.mk>
diff -ruN databases.orig/mariadb55-server/files/patch-mysys_default.c databases/mariadb55-server/files/patch-mysys_default.c
--- databases.orig/mariadb55-server/files/patch-mysys_default.c 2013-01-05 12:30:51.000000000 +0100
+++ databases/mariadb55-server/files/patch-mysys_default.c 2013-10-01 23:53:44.435933823 +0200
@@ -1,6 +1,6 @@
---- mysys/default.c.orig 2010-11-02 23:01:13.000000000 +0100
-+++ mysys/default.c 2010-11-10 16:39:51.000000000 +0100
-@@ -70,7 +70,7 @@
+--- mysys/default.c.orig 2013-10-01 21:15:03.544135869 +0200
++++ mysys/default.c 2013-10-01 21:15:38.871375504 +0200
+@@ -89,7 +89,7 @@
/* Which directories are searched for options (and in which order) */
@@ -9,7 +9,7 @@
#define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1) /* Terminate with NULL */
static const char **default_directories = NULL;
-@@ -711,7 +711,7 @@
+@@ -785,7 +785,7 @@
{
MY_STAT stat_info;
if (!my_stat(name,&stat_info,MYF(0)))
@@ -18,14 +18,31 @@
/*
Ignore world-writable regular files.
This is mainly done to protect us to not read a file created by
-@@ -1153,7 +1153,10 @@
+@@ -803,6 +803,14 @@
+ if (!(fp= mysql_file_fopen(key_file_cnf, name, O_RDONLY, MYF(0))))
+ 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 %%PREFIX%%%s\n",
++ name,name);
++ goto err;
+ }
- #endif /* DEFAULT_SYSCONFDIR */
++
+ while (mysql_file_fgets(buff, sizeof(buff) - 1, fp))
+ {
+ line++;
+@@ -1226,10 +1226,8 @@
+ 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, "%%PREFIX%%/etc/", dirs);
++ errors += add_directory(alloc, "%%PREFIX%%/etc/mysql/", dirs);
#endif
+
diff -ruN databases.orig/mariadb55-server/files/pkg-message.in databases/mariadb55-server/files/pkg-message.in
--- databases.orig/mariadb55-server/files/pkg-message.in 1970-01-01 01:00:00.000000000 +0100
+++ databases/mariadb55-server/files/pkg-message.in 2013-10-01 23:50:41.526232450 +0200
@@ -0,0 +1,11 @@
+************************************************************************
+
+Remember to run mysql_upgrade (with the optional --datadir=<dbdir> flag)
+the first time you start the MySQL server after an upgrade from an
+earlier version.
+
+MariaDB respects hier(7) and doesn't check /etc and /etc/mysql for
+my.cnf. Please move existing my.cnf files from those paths to
+%%PREFIX%%/etc and %%PREFIX%%/etc/mysql.
+
+************************************************************************
diff -ruN databases.orig/mariadb55-server/pkg-message databases/mariadb55-server/pkg-message
--- databases.orig/mariadb55-server/pkg-message 2013-01-05 12:30:51.000000000 +0100
+++ databases/mariadb55-server/pkg-message 1970-01-01 01:00:00.000000000 +0100
@@ -1,7 +0,0 @@
-************************************************************************
-
-Remember to run mysql_upgrade (with the optional --datadir=<dbdir> flag)
-the first time you start the MySQL server after an upgrade from an
-earlier version.
-
-************************************************************************
--MP_/fpnb05V9IXb16lqck/3oAe4--
More information about the freebsd-ports-bugs
mailing list