Package: slapd Version: 2.2.27-0pm3 Severity: important Tags: patch Hi,
when TRY_DBD_RECOVERY=yes and SLAPD_USER and this user has no "sensible" shell, then /etc/init.d/slapd reports that db4.2_recover failed on the first DBD database. The culprit is the command line wiwhich is used to start db4.2_recover. It assumes that $SLAPD_USER has a sensible shell, which is not guaranteed. The attached patch fixes it by calling su with the additional option -s /bin/sh CU Peter -- System Information: Debian Release: testing/unstable APT prefers testing APT policy: (990, 'testing'), (500, 'unstable') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.11-1-k7 Locale: [EMAIL PROTECTED], [EMAIL PROTECTED] (charmap=ISO-8859-15) Versions of packages slapd depends on: ii coreutils [fileutils] 5.2.1-2 The GNU core utilities ii debconf 1.4.51 Debian configuration management sy ii fileutils 5.2.1-2 The GNU file management utilities ii libc6 2.3.2.ds1-22 GNU C Library: Shared libraries an ii libdb4.2 4.2.52-19pm1 Berkeley v4.2 Database Libraries [ ii libiodbc2 3.52.2-3 iODBC Driver Manager ii libldap-2.2-7 2.2.27-0pm3 OpenLDAP libraries ii libltdl3 1.5.6-6 A system independent dlopen wrappe ii libperl5.8 5.8.7-3 Shared Perl library ii libsasl2 2.1.19-1.5 Authentication abstraction library ii libslp1 1.2.1-2 OpenSLP libraries ii libssl0.9.7 0.9.7e-3 SSL shared libraries ii libwrap0 7.6.dbs-8 Wietse Venema's TCP wrappers libra ii perl [libmime-base64-perl] 5.8.7-3 Larry Wall's Practical Extraction ii psmisc 21.6-1 Utilities that use the proc filesy -- debconf information excluded
--- debian/slapd.init +++ debian/slapd.init 2005-06-30 12:44:23.000000000 +0200 @@ -147,7 +147,7 @@ local dbdir dbdir="$1" if [ "$SLAPD_USER" ]; then - reason=`su "$SLAPD_USER" -c \ + reason=`su "$SLAPD_USER" -s /bin/sh -c \ "$DB_RECOVER_CMD -eh $dbdir" 2>&1` || \ db_recover_failed $dbdir else