summaryrefslogtreecommitdiff
path: root/ldap
diff options
context:
space:
mode:
authorJonas Smedegaard <dr@jones.dk>2008-09-16 01:05:08 +0200
committerJonas Smedegaard <dr@jones.dk>2008-09-16 01:05:08 +0200
commita5a0692af0038463fdf888cc55e1967b966d4b59 (patch)
treeaa3a7f5f68e9bdf9caa80b1b450df715750585f7 /ldap
parent385b3843dcee09441e718318b2d5bcd9b57c67ff (diff)
Create slapd.conf, and drop unused vars.
Diffstat (limited to 'ldap')
-rwxr-xr-xldap/mkldapdb23
1 files changed, 11 insertions, 12 deletions
diff --git a/ldap/mkldapdb b/ldap/mkldapdb
index 604b8ba..833827a 100755
--- a/ldap/mkldapdb
+++ b/ldap/mkldapdb
@@ -8,15 +8,14 @@ umask 066
basedn="`grep '^BASE\b' /etc/ldap/ldap.conf | sed -e 's/^BASE[[:space:]]\+//'`"
dnsdomain="`dnsdomainname`"
orgname=""
-# Grab some defaults from /var/lib/dpkg/info/slapd.postinst
-checkpoint="checkpoint 512 30"
-backend="bdb"
-backendoptions="# For the Debian package we use 2MB as default but be sure to update this\n# value if you have plenty of RAM\ndbconfig set_cachesize 0 2097152 0\n\n# Sven Hartge reported that he had to set this value incredibly high\n# to get slapd running at all. See http:\/\/bugs.debian.org\/303057\n# for more information.\n\n# Number of objects that can be locked at the same time.\ndbconfig set_lk_max_objects 1500\n# Number of locks (both requested and granted)\ndbconfig set_lk_max_locks 1500\n# Number of lockers\ndbconfig set_lk_max_lockers 1500"
-
if [ -r /etc/local-ORG/orgname ]; then
orgname="$(head -n 1 /etc/local-ORG/orgname)"
fi
+# config defaults as of slapd 2.4.10-3
+backend="hdb"
+
+# Ensure all required values are properly resolved
for var in basedn dnsdomain orgname backend; do
if [ -z "`eval echo '$'$var`" ]; then
echo 1>&2 "ERROR: Required variable '$var' missing. Exiting...!"
@@ -24,20 +23,20 @@ for var in basedn dnsdomain orgname backend; do
fi
done
+confskel=/usr/share/slapd/slapd.conf
masterdir=/etc/local-COMMON/ldap/db
tempdir=`mktemp -dt slapd.XXXXXX`
-cfgdir=/etc/ldap
-dbdir=/var/lib/ldap
+
+sed <"$confskel" >"$tempdir/slapd.conf" \
+ -e "s/@BACKEND@/$backend/g" \
+ -e "s/@SUFFIX@/$basedn/g" \
+ -e "s/@ADMIN@/cn=admin,$basedn/g"
for section in core base horde; do
sed <"$masterdir/$section.ldif.in" >"$tempdir/$section.ldif" \
-e "s/@SUFFIX@/$basedn/g" \
-e "s/@DOMAIN@/$dnsdomain/g" \
- -e "s/@ORG@/$orgname/g" \
- -e "s/@ADMIN@/cn=admin,$basedn/g" \
- -e "s/@CHECKPOINT@/$checkpoint/g" \
- -e "s/@BACKEND@/$backend/g" \
- -e "s/@BACKENDOPTIONS@/$backendoptions/g"
+ -e "s/@ORG@/$orgname/g"
done
for db in passwd group; do