mirror of
https://git.openldap.org/openldap/openldap.git
synced 2024-12-21 03:10:25 +08:00
6585d34a0f
'make bdb2' tests only BDB2 'make ldbm' tests only LDBM Fix up scripts (previous changes broke BDB2 testing)
101 lines
2.1 KiB
Bash
Executable File
101 lines
2.1 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
if [ $# -eq 0 ]; then
|
|
SRCDIR="."
|
|
else
|
|
SRCDIR=$1; shift
|
|
fi
|
|
if [ $# -eq 1 ]; then
|
|
BACKEND=$1; shift
|
|
fi
|
|
|
|
echo "running defines.sh $SRCDIR $BACKEND"
|
|
. $SRCDIR/scripts/defines.sh
|
|
|
|
echo "Cleaning up in $DBDIR..."
|
|
|
|
rm -f $DBDIR/[!C]*
|
|
|
|
echo "Running ldif2ldbm to build slapd database..."
|
|
$LDIF2LDBM -f $CONF -i $LDIF -e ../servers/slapd/tools
|
|
RC=$?
|
|
if [ $RC != 0 ]; then
|
|
echo "ldif2ldbm failed!"
|
|
exit $RC
|
|
fi
|
|
|
|
echo "Starting slapd on TCP/IP port $PORT..."
|
|
$SLAPD -f $CONF -p $PORT -d $LVL $TIMING > $MASTERLOG 2>&1 &
|
|
PID=$!
|
|
echo "Testing slapd modrdn operations..."
|
|
|
|
# Make sure we can search the database
|
|
for i in 0 1 2 3 4 5; do
|
|
$LDAPSEARCH -L -S "" -b "$BASEDN" -h localhost -p $PORT \
|
|
'cn=Manager' > /dev/null 2>&1
|
|
RC=$?
|
|
if [ $RC = 1 ]; then
|
|
echo "Waiting 5 seconds for slapd to start..."
|
|
sleep 5
|
|
fi
|
|
done
|
|
|
|
if [ $RC != 0 ]; then
|
|
echo "ldapsearch failed!"
|
|
kill -HUP $PID
|
|
exit $RC
|
|
fi
|
|
|
|
cat /dev/null > $TESTOUT
|
|
|
|
|
|
# -r used to do remove of old rdn
|
|
|
|
echo "Testing modrdn(deleteoldrdn=0)..."
|
|
$LDAPMODRDN -v -D "$MANAGERDN" -h localhost -p $PORT -w $PASSWD > \
|
|
/dev/null 2>&1 'cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US' 'cn=James A Jones III'
|
|
|
|
RC=$?
|
|
if [ $RC != 0 ]; then
|
|
echo "ldapmodrdn failed!"
|
|
kill -HUP $PID
|
|
exit $RC
|
|
fi
|
|
|
|
echo "Testing modrdn(deleteoldrdn=1)..."
|
|
$LDAPMODRDN -v -D "$MANAGERDN" -r -h localhost -p $PORT -w $PASSWD > \
|
|
/dev/null 2>&1 'cn=James A Jones 2, ou=Information Technology Division, ou=People, o=University of Michigan, c=US' 'cn=James A Jones II'
|
|
|
|
RC=$?
|
|
if [ $RC != 0 ]; then
|
|
echo "ldapmodrdn failed!"
|
|
kill -HUP $PID
|
|
exit $RC
|
|
fi
|
|
|
|
echo "Using ldapsearch to retrieve all the entries..."
|
|
$LDAPSEARCH -L -S "" -b "$BASEDN" -h localhost -p $PORT \
|
|
'objectClass=*' | egrep -iv '^createtimestamp:|^modifytimestamp:' \
|
|
> $SEARCHOUT 2>&1
|
|
RC=$?
|
|
kill -HUP $PID
|
|
if [ $RC != 0 ]; then
|
|
echo "ldapsearch failed!"
|
|
exit $RC
|
|
fi
|
|
|
|
echo "Comparing database to reference file"
|
|
cmp $SEARCHOUT $MODRDNOUTMASTER
|
|
if [ $? != 0 ]; then
|
|
echo "comparison failed - modrdn operations did not complete correctly"
|
|
exit 1
|
|
fi
|
|
|
|
echo ">>>>> Test succeeded"
|
|
|
|
|
|
|
|
# echo "modrdn test not yet written"
|
|
|
|
exit 0
|