summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Lauer <patrick@gentoo.org>2015-07-13 07:40:28 +0000
committerPatrick Lauer <patrick@gentoo.org>2015-07-13 07:40:28 +0000
commitb4a84140d0501e8d255debf54c2f6fc314df587a (patch)
treedb6889cb6a97c382da195587e1153d4633d69c82 /net-nds
parentClean up style in new ebuild #553754 by Tiger. (diff)
downloadgentoo-2-b4a84140d0501e8d255debf54c2f6fc314df587a.tar.gz
gentoo-2-b4a84140d0501e8d255debf54c2f6fc314df587a.tar.bz2
gentoo-2-b4a84140d0501e8d255debf54c2f6fc314df587a.zip
Fix init script failure #545792
(Portage version: 2.2.20/cvs/Linux x86_64, unsigned Manifest commit)
Diffstat (limited to 'net-nds')
-rw-r--r--net-nds/openldap/ChangeLog8
-rw-r--r--net-nds/openldap/files/slapd-initd-2.4.40-r265
-rw-r--r--net-nds/openldap/openldap-2.4.40-r4.ebuild (renamed from net-nds/openldap/openldap-2.4.40-r3.ebuild)4
3 files changed, 74 insertions, 3 deletions
diff --git a/net-nds/openldap/ChangeLog b/net-nds/openldap/ChangeLog
index 7520a02d561b..230a20c585d6 100644
--- a/net-nds/openldap/ChangeLog
+++ b/net-nds/openldap/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for net-nds/openldap
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-nds/openldap/ChangeLog,v 1.500 2015/05/16 06:37:06 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-nds/openldap/ChangeLog,v 1.501 2015/07/13 07:40:28 patrick Exp $
+
+*openldap-2.4.40-r4 (13 Jul 2015)
+
+ 13 Jul 2015; Patrick Lauer <patrick@gentoo.org> +files/slapd-initd-2.4.40-r2,
+ +openldap-2.4.40-r4.ebuild, -openldap-2.4.40-r3.ebuild:
+ Fix init script failure #545792
16 May 2015; Robin H. Johnson <robbat2@gentoo.org> -openldap-2.4.35-r1.ebuild:
Bug #488322 cleanup.
diff --git a/net-nds/openldap/files/slapd-initd-2.4.40-r2 b/net-nds/openldap/files/slapd-initd-2.4.40-r2
new file mode 100644
index 000000000000..34421d322fc3
--- /dev/null
+++ b/net-nds/openldap/files/slapd-initd-2.4.40-r2
@@ -0,0 +1,65 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-nds/openldap/files/slapd-initd-2.4.40-r2,v 1.1 2015/07/13 07:40:28 patrick Exp $
+
+extra_commands="checkconfig"
+
+[ -z "$INSTANCE" ] && INSTANCE="openldap${SVCNAME#slapd}"
+PIDDIR=/run/openldap
+PIDFILE=$PIDDIR/$SVCNAME.pid
+
+depend() {
+ need net
+ before dbus hald avahi-daemon
+ provide ldap
+}
+
+start() {
+ checkpath -q -d ${PIDDIR} -o ldap:ldap
+ if ! checkconfig -Q ; then
+ eerror "There is a problem with your slapd.conf!"
+ return 1
+ fi
+ ebegin "Starting ldap-server"
+ [ -n "$KRB5_KTNAME" ] && export KRB5_KTNAME
+ eval start-stop-daemon --start --pidfile ${PIDFILE} --exec /usr/lib/openldap/slapd -- -u ldap -g ldap "${OPTS}"
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ldap-server"
+ start-stop-daemon --stop --signal 2 --quiet --pidfile ${PIDFILE}
+ eend $?
+}
+
+checkconfig() {
+ # checks requested by bug #502948
+ # Step 1: extract the last valid config file or config dir
+ set -- $OPTS
+ while [ -n "$*" ]; do
+ opt=$1 ; shift
+ if [ "$opt" = "-f" -o "$opt" = "-F" ] ; then
+ CONF=$1
+ shift
+ fi
+ done
+ set --
+ # Fallback
+ CONF=${CONF-/etc/openldap/slapd.conf}
+ [ -d $CONF ] && CONF=${CONF}/*
+ DBDIRS=`eval awk '"/^(directory|olcDbDirectory:)/{print \\$2}"' $CONF`
+ for d in $DBDIRS; do
+ if [ ! -d $d ]; then
+ eerror "Directory $d in config does not exist!"
+ return 1
+ fi
+ /usr/bin/find $d ! -name DB_CONFIG ! -user ldap -o ! -group ldap |grep -sq .
+ if [ $? -ne 0 ]; then
+ ewarn "You have files in $d not owned by the ldap user, you must ensure they are accessible to the slapd instance!"
+ fi
+ [ ! -e $d/DB_CONFIG ] && ewarn "$d/DB_CONFIG does not exist, slapd performance may be sub-optimal"
+ done
+ # now test the config fully
+ /usr/sbin/slaptest -u "$@" ${OPTS_CONF}
+}
diff --git a/net-nds/openldap/openldap-2.4.40-r3.ebuild b/net-nds/openldap/openldap-2.4.40-r4.ebuild
index 4e2b5f233fd4..ee48e6a28481 100644
--- a/net-nds/openldap/openldap-2.4.40-r3.ebuild
+++ b/net-nds/openldap/openldap-2.4.40-r4.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-nds/openldap/openldap-2.4.40-r3.ebuild,v 1.2 2015/03/03 09:39:25 dlan Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-nds/openldap/openldap-2.4.40-r4.ebuild,v 1.1 2015/07/13 07:40:28 patrick Exp $
EAPI="5"
@@ -676,7 +676,7 @@ multilib_src_install() {
# install our own init scripts and systemd unit files
einfo "Install init scripts"
- newinitd "${FILESDIR}"/slapd-initd-2.4.40-r1 slapd
+ newinitd "${FILESDIR}"/slapd-initd-2.4.40-r2 slapd
newconfd "${FILESDIR}"/slapd-confd-2.4.28-r1 slapd
einfo "Install systemd service"
systemd_dounit "${FILESDIR}"/slapd.service