12de962bdSlukem#! /bin/sh 2d11b170bStron# $OpenLDAP$ 32de962bdSlukem## This work is part of OpenLDAP Software <http://www.openldap.org/>. 42de962bdSlukem## 5*e670fd5cSchristos## Copyright 1998-2021 The OpenLDAP Foundation. 62de962bdSlukem## All rights reserved. 72de962bdSlukem## 82de962bdSlukem## Redistribution and use in source and binary forms, with or without 92de962bdSlukem## modification, are permitted only as authorized by the OpenLDAP 102de962bdSlukem## Public License. 112de962bdSlukem## 122de962bdSlukem## A copy of this license is available in the file LICENSE in the 132de962bdSlukem## top-level directory of the distribution or, alternatively, at 142de962bdSlukem## <http://www.OpenLDAP.org/license.html>. 152de962bdSlukem 162de962bdSlukemif test $# -eq 0 ; then 172de962bdSlukem test -z "$SRCDIR" && SRCDIR="." 182de962bdSlukemelse 192de962bdSlukem SRCDIR=$1; shift 202de962bdSlukemfi 212de962bdSlukemif test $# -eq 1 ; then 222de962bdSlukem BACKEND=$1; shift 232de962bdSlukemfi 242de962bdSlukem 252de962bdSlukemecho "running defines.sh $SRCDIR $BACKEND" 262de962bdSlukem. $SRCDIR/scripts/defines.sh 272de962bdSlukem 282de962bdSlukemif test -d "$TESTDIR"; then 292de962bdSlukem echo "Cleaning up in $TESTDIR..." 302de962bdSlukem /bin/rm -rf $TESTDIR/db.* 312de962bdSlukemfi 322de962bdSlukemmkdir -p $TESTDIR 332de962bdSlukem 342de962bdSlukemecho "Starting slapd on TCP/IP port $PORT1..." 35*e670fd5cSchristos. $CONFFILTER $BACKEND < $PASSWDCONF > $CONF1 36*e670fd5cSchristos$SLAPD -f $CONF1 -h $URI1 -d $LVL > $LOG1 2>&1 & 372de962bdSlukemPID=$! 382de962bdSlukemif test ${WAIT-0} != 0 ; then 392de962bdSlukem echo PID $PID 402de962bdSlukem read foo 412de962bdSlukemfi 422de962bdSlukemKILLPIDS="$PID" 432de962bdSlukem 442de962bdSlukemecho "Testing slapd searching..." 452de962bdSlukemfor i in 0 1 2 3 4 5; do 46*e670fd5cSchristos $LDAPSEARCH -L -b "$BASEDN" -H $URI1 \ 472de962bdSlukem 'objectclass=*' > /dev/null 2>&1 482de962bdSlukem RC=$? 492de962bdSlukem if test $RC = 1 ; then 502de962bdSlukem echo "Waiting 5 seconds for slapd to start..." 512de962bdSlukem sleep 5 522de962bdSlukem fi 532de962bdSlukemdone 542de962bdSlukem 552de962bdSlukemif test $RC != 0 ; then 562de962bdSlukem echo "ldapsearch failed!" 572de962bdSlukem test "$KILLSERVERS" != no && kill -HUP $KILLPIDS 582de962bdSlukem exit $RC 592de962bdSlukemfi 602de962bdSlukem 612de962bdSlukemcat /dev/null > $TESTOUT 622de962bdSlukem 632de962bdSlukemecho "Testing base suffix searching..." 64*e670fd5cSchristos$LDAPSEARCH -L -S "" -b "$BASEDN" -s base -H $URI1 \ 652de962bdSlukem '(objectclass=*)' >> $TESTOUT 2>&1 662de962bdSlukemRC=$? 672de962bdSlukemif test $RC != 0 ; then 682de962bdSlukem echo "ldapsearch failed!" 692de962bdSlukem test "$KILLSERVERS" != no && kill -HUP $KILLPIDS 702de962bdSlukem exit $RC 712de962bdSlukemfi 722de962bdSlukem 732de962bdSlukemecho " ------------ " >> $TESTOUT 742de962bdSlukem 752de962bdSlukemecho "Testing user searching..." 76*e670fd5cSchristos$LDAPSEARCH -L -S "" -b "uid=root,$BASEDN" -s base -H $URI1 \ 772de962bdSlukem '(objectclass=*)' >> $TESTOUT 2>&1 782de962bdSlukemRC=$? 792de962bdSlukemif test $RC != 0 ; then 802de962bdSlukem echo "ldapsearch failed!" 812de962bdSlukem test "$KILLSERVERS" != no && kill -HUP $KILLPIDS 822de962bdSlukem exit $RC 832de962bdSlukemfi 842de962bdSlukem 852de962bdSlukemecho " ------------ " >> $TESTOUT 862de962bdSlukem 872de962bdSlukemecho "Testing exact searching..." 88*e670fd5cSchristos$LDAPSEARCH -L -S "" -b "$BASEDN" -H $URI1 \ 892de962bdSlukem '(uid=root)' >> $TESTOUT 2>&1 902de962bdSlukemRC=$? 912de962bdSlukemif test $RC != 0 ; then 922de962bdSlukem echo "ldapsearch failed!" 932de962bdSlukem test "$KILLSERVERS" != no && kill -HUP $KILLPIDS 942de962bdSlukem exit $RC 952de962bdSlukemfi 962de962bdSlukem 972de962bdSlukemecho " ------------ " >> $TESTOUT 982de962bdSlukem 992de962bdSlukemecho "Testing OR searching..." 100*e670fd5cSchristos$LDAPSEARCH -L -S "" -b "$BASEDN" -H $URI1 \ 1012de962bdSlukem '(|(objectclass=person)(cn=root))' >> $TESTOUT 2>&1 1022de962bdSlukemRC=$? 1032de962bdSlukemif test $RC != 0 ; then 1042de962bdSlukem echo "ldapsearch failed!" 1052de962bdSlukem test "$KILLSERVERS" != no && kill -HUP $KILLPIDS 1062de962bdSlukem exit $RC 1072de962bdSlukemfi 1082de962bdSlukem 1092de962bdSlukemecho " ------------ " >> $TESTOUT 1102de962bdSlukem 1112de962bdSlukemecho "Testing AND searching..." 112*e670fd5cSchristos$LDAPSEARCH -L -S "" -b "$BASEDN" -H $URI1 \ 1132de962bdSlukem '(&(objectclass=person)(cn=root))' >> $TESTOUT 2>&1 1142de962bdSlukemRC=$? 1152de962bdSlukemif test $RC != 0 ; then 1162de962bdSlukem echo "ldapsearch failed!" 1172de962bdSlukem test "$KILLSERVERS" != no && kill -HUP $KILLPIDS 1182de962bdSlukem exit $RC 1192de962bdSlukemfi 1202de962bdSlukem 1212de962bdSlukemtest "$KILLSERVERS" != no && kill -HUP $KILLPIDS 1222de962bdSlukem 1232de962bdSlukemecho "Assuming everything is fine." 1242de962bdSlukem#echo "Comparing results" 125*e670fd5cSchristos#$CMP $TESTOUT $SEARCHOUTPROVIDER 1262de962bdSlukem#if test $? != 0 ; then 1272de962bdSlukem# echo "Comparison failed" 1282de962bdSlukem# exit 1 1292de962bdSlukem#fi 1302de962bdSlukem 1312de962bdSlukemecho ">>>>> Test succeeded" 1322de962bdSlukem 1332de962bdSlukemexit 0 134