Bug 15012 - slaptest breaks new db creation
Summary: slaptest breaks new db creation
Status: CLOSED FIXED
Alias: None
Product: Branch 4.0
Classification: Distributions
Component: openldap-servers (show other bugs)
Version: 4.0
Hardware: all Linux
: P2 normal
Assignee: Dmitry Lebkov
QA Contact: Q.A. 4.0
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-03-20 17:45 MSK by Grigory Batalov
Modified: 2008-10-21 17:14 MSD (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Grigory Batalov 2008-03-20 17:45:13 MSK
openldap-servers-2.3.35-alt0

При добавлении новой базы вручную достаточно выполнить
# /etc/chroot.d/ldap.all
# /usr/sbin/slapd -u ldap -r /var/lib/ldap -h ldap://localhost/

После чего необходимые файлы будут созданы:
# ls -la /var/lib/ldap/bases/localhost.localdomain/
/var/lib/ldap/dblogs/localhost.localdomain/
/etc/openldap/slapd-hdb-localhost.localdomain.conf 
-rwxr-xr-x 1 ldap ldap 4037 Mar 20 17:36
/etc/openldap/slapd-hdb-localhost.localdomain.conf

/var/lib/ldap/bases/localhost.localdomain/:
total 128
drwxr-xr-x 2 ldap ldap     4096 Mar 20 17:37 .
drwxrwx--- 3 ldap ldap     4096 Mar 20 17:36 ..
-rw-r--r-- 1 root ldap     1157 Mar 20 17:37 DB_CONFIG
-rw------- 1 ldap ldap    24576 Mar 20 17:37 __db.001
-rw------- 1 ldap ldap 26394624 Mar 20 17:37 __db.002
-rw------- 1 ldap ldap 83894272 Mar 20 17:37 __db.003
-rw------- 1 ldap ldap  1310720 Mar 20 17:37 __db.004
-rw------- 1 ldap ldap   557056 Mar 20 17:37 __db.005
-rw------- 1 ldap ldap    24576 Mar 20 17:37 __db.006
-rw-r--r-- 1 ldap ldap     2048 Mar 20 17:37 alock
-rw------- 1 ldap ldap     8192 Mar 20 17:37 dn2id.bdb
-rw------- 1 ldap ldap    32768 Mar 20 17:37 id2entry.bdb

/var/lib/ldap/dblogs/localhost.localdomain/:
total 68
drwx------ 2 ldap ldap     4096 Mar 20 17:37 .
drwxr-x--- 4 ldap ldap     4096 Mar 20 17:37 ..
-rw------- 1 ldap ldap 10485760 Mar 20 17:37 log.0000000001

Однако, в инит-скрипте /etc/init.d/slapd после запуска /etc/chroot.d/ldap.all и
перед запуском демона стартует ещё некий /usr/sbin/slaptest, который
а) рапортует об отсутствии файлов базы в
/var/lib/ldap/bases/localhost.localdomain/ и завершает инит-скрипт
б) создаёт некоторые из них с правами root, чем препятствует даже последующему
ручному перезапуску демона:

# ls -la /var/lib/ldap/bases/localhost.localdomain/
/var/lib/ldap/dblogs/localhost.localdomain/
/etc/openldap/slapd-hdb-localhost.localdomain.conf 
-rwxr-xr-x 1 ldap ldap 4037 Mar 20 17:42
/etc/openldap/slapd-hdb-localhost.localdomain.conf

/var/lib/ldap/bases/localhost.localdomain/:
total 88
drwxr-xr-x 2 ldap ldap     4096 Mar 20 17:42 .
drwxrwx--- 3 ldap ldap     4096 Mar 20 17:42 ..
-rw-r--r-- 1 root ldap     1157 Mar 20 17:42 DB_CONFIG
-rw------- 1 root root    24576 Mar 20 17:42 __db.001
-rw------- 1 root root 26394624 Mar 20 17:42 __db.002
-rw------- 1 root root 83894272 Mar 20 17:42 __db.003
-rw------- 1 root root  1310720 Mar 20 17:42 __db.004
-rw------- 1 root root   557056 Mar 20 17:42 __db.005
-rw------- 1 root root    24576 Mar 20 17:42 __db.006
-rw-r--r-- 1 root root     2048 Mar 20 17:42 alock

/var/lib/ldap/dblogs/localhost.localdomain/:
total 28
drwx------ 2 ldap ldap     4096 Mar 20 17:42 .
drwxr-x--- 4 ldap ldap     4096 Mar 20 17:42 ..
-rw------- 1 root root 10485760 Mar 20 17:42 log.0000000001
Comment 1 Grigory Batalov 2008-03-20 19:00:57 MSK
Годится решение из 2.3.38-alt1 (добавить -u к slaptest):
@@ -41,7 +41,7 @@ RETVAL=0
 
 do_config_sanity_check()
 {
-	action $"Checking slapd configuration" $DAEMONTEST || exit
+	action $"Checking slapd configuration" $DAEMONTEST -u || exit
 }
 
 adjust()

*** This bug has been marked as a duplicate of 11879 ***
Comment 2 Grigory Batalov 2008-03-20 19:03:01 MSK
Однако, хотелось бы видеть это исправление в бранче. К тому же, в 2.3.41
исправлено  CVE-2008-0658 .
Comment 3 Grigory Batalov 2008-10-21 17:14:10 MSD
Исправлено в 2.3.35-alt0.M40.1