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 162de962bdSlukemecho "running defines.sh" 172de962bdSlukem. $SRCDIR/scripts/defines.sh 182de962bdSlukem 194e6df137Slukemif test x$TESTLOOPS = x ; then 204e6df137Slukem TESTLOOPS=50 214e6df137Slukemfi 224e6df137Slukem 232de962bdSlukemmkdir -p $TESTDIR $DBDIR1 242de962bdSlukem 252de962bdSlukemecho "Running slapadd to build slapd database..." 26*e670fd5cSchristos. $CONFFILTER $BACKEND < $CONF > $CONF1 272de962bdSlukem$SLAPADD -f $CONF1 -l $LDIFORDERED -d -1 2> $SLAPADDLOG1 282de962bdSlukemRC=$? 292de962bdSlukemif test $RC != 0 ; then 302de962bdSlukem echo "slapadd failed ($RC)!" 312de962bdSlukem exit $RC 322de962bdSlukemfi 332de962bdSlukem 342de962bdSlukemecho "Starting slapd on TCP/IP port $PORT1..." 35*e670fd5cSchristos$SLAPD -f $CONF1 -h $URI1 -d $LVL > $LOG1 2>&1 & 362de962bdSlukemPID=$! 372de962bdSlukemif test $WAIT != 0 ; then 382de962bdSlukem echo PID $PID 392de962bdSlukem read foo 402de962bdSlukemfi 412de962bdSlukemKILLPIDS="$PID" 422de962bdSlukem 432de962bdSlukemsleep 1 442de962bdSlukem 452de962bdSlukemecho "Using ldapsearch to check that slapd is running..." 462de962bdSlukemfor i in 0 1 2 3 4 5; do 47*e670fd5cSchristos $LDAPSEARCH -s base -b "$MONITOR" -H $URI1 \ 482de962bdSlukem 'objectclass=*' > /dev/null 2>&1 492de962bdSlukem RC=$? 502de962bdSlukem if test $RC = 0 ; then 512de962bdSlukem break 522de962bdSlukem fi 532de962bdSlukem echo "Waiting 5 seconds for slapd to start..." 542de962bdSlukem sleep 5 552de962bdSlukemdone 562de962bdSlukem 574e6df137Slukem# fix test data to include back-monitor, if available 584e6df137Slukem# NOTE: copies do_* files from $DATADIR to $TESTDIR 59*e670fd5cSchristos$MONITORDATA "$DATADIR" "$TESTDIR" 604e6df137Slukem 612de962bdSlukemecho "Using tester for concurrent server access..." 62*e670fd5cSchristos$SLAPDTESTER -P "$PROGDIR" -d "$TESTDIR" -H $URI1 -D "$MANAGERDN" -w $PASSWD -l $TESTLOOPS 632de962bdSlukemRC=$? 642de962bdSlukem 652de962bdSlukemif test $RC != 0 ; then 662de962bdSlukem echo "slapd-tester failed ($RC)!" 672de962bdSlukem test $KILLSERVERS != no && kill -HUP $KILLPIDS 682de962bdSlukem exit $RC 692de962bdSlukemfi 702de962bdSlukem 712de962bdSlukemecho "Using ldapsearch to retrieve all the entries..." 72*e670fd5cSchristos$LDAPSEARCH -S "" -b "$BASEDN" -H $URI1 \ 732de962bdSlukem 'objectClass=*' > $SEARCHOUT 2>&1 742de962bdSlukemRC=$? 752de962bdSlukem 762de962bdSlukemtest $KILLSERVERS != no && kill -HUP $KILLPIDS 772de962bdSlukem 782de962bdSlukemif test $RC != 0 ; then 792de962bdSlukem echo "ldapsearch failed ($RC)!" 802de962bdSlukem exit $RC 812de962bdSlukemfi 822de962bdSlukem 832de962bdSlukemecho "Filtering ldapsearch results..." 84ef2f90d3Sadam$LDIFFILTER < $SEARCHOUT > $SEARCHFLT 852de962bdSlukemecho "Filtering original ldif used to create database..." 86ef2f90d3Sadam$LDIFFILTER < $LDIF > $LDIFFLT 872de962bdSlukemecho "Comparing filter output..." 882de962bdSlukem$CMP $SEARCHFLT $LDIFFLT > $CMPOUT 892de962bdSlukem 902de962bdSlukemif test $? != 0 ; then 912de962bdSlukem echo "comparison failed - database was not created correctly" 922de962bdSlukem exit 1 932de962bdSlukemfi 942de962bdSlukem 952de962bdSlukemecho ">>>>> Test succeeded" 962de962bdSlukem 972de962bdSlukemtest $KILLSERVERS != no && wait 982de962bdSlukem 992de962bdSlukemexit 0 100