1 #!/bin/sh 2 # Id 3 4 srcdir=@srcdir@ 5 6 rm -rf db schema 7 mkdir db 8 9 # kill of old slapd if running 10 sh "${srcdir}/slapd-stop" > /dev/null 11 12 SCHEMA_NEEDED="hdb core nis cosine inetorgperson openldap samba" 13 14 SCHEMA_PATHS="${srcdir}/../../lib/hdb ${srcdir} /etc/ldap/schema /etc/openldap/schema /private/etc/openldap/schema /usr/share/openldap/schema" 15 16 test -d schema || mkdir schema 17 18 # setup needed schema files 19 for f in $SCHEMA_NEEDED; do 20 if [ ! -r schema/$f.schema ]; then 21 for d in $SCHEMA_PATHS ; do 22 if [ -r $d/$f.schema ] ; then 23 cp $d/$f.schema schema/$f.schema 24 continue 2 25 fi 26 done 27 echo "SKIPPING TESTS: you need the following schema file: $f.schema" 28 exit 1 29 fi 30 done 31 32 touch modules.conf || exit 1 33 34 if ! slapadd -d 0 -f "${srcdir}/slapd.conf" < "${srcdir}/init.ldif"; then 35 echo "moduleload back_bdb.la" >> modules.conf 36 if ! slapadd -d 0 -f "${srcdir}/slapd.conf" < "${srcdir}/init.ldif"; then 37 echo "modulepath /usr/lib/ldap" > modules.conf 38 echo "moduleload back_bdb.la" >> modules.conf 39 slapadd -d 0 -f "${srcdir}/slapd.conf" < "${srcdir}/init.ldif" || exit 1 40 fi 41 fi 42 43 cp "`which slapd`" . || true # fails if running 44 45 echo "starting slapd" 46 ./slapd -d0 -f "${srcdir}/slapd.conf" -h ldapi://.%2Fldap-socket & 47 48 sleep 4 49