Home | History | Annotate | Line # | Download | only in ldap
      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