3 if test $# -eq 0 ; then
8 if test $# -eq 1 ; then
12 echo "running defines.sh $SRCDIR $BACKEND"
13 . $SRCDIR/scripts/defines.sh
15 echo "Cleaning up in $DBDIR..."
19 echo "Running ldif2ldbm to build slapd database..."
20 $LDIF2LDBM -f $CONF -i $LDIF -e ../servers/slapd/tools
22 if test $RC != 0 ; then
23 echo "ldif2ldbm failed!"
27 echo "Starting slapd on TCP/IP port $PORT..."
28 $SLAPD -f $CONF -p $PORT -d $LVL $TIMING > $MASTERLOG 2>&1 &
31 echo "Testing slapd modify operations..."
32 for i in 0 1 2 3 4 5; do
33 $LDAPSEARCH -L -S "" -b "$BASEDN" -h localhost -p $PORT \
34 'cn=Manager' > /dev/null 2>&1
36 if test $RC = 1 ; then
37 echo "Waiting 5 seconds for slapd to start..."
42 if test $RC != 0 ; then
43 echo "ldapsearch failed!"
48 cat /dev/null > $TESTOUT
50 echo "Testing modify, add, and delete..."
51 $LDAPMODIFY -v -D "$MANAGERDN" -h localhost -p $PORT -w $PASSWD > \
52 /dev/null 2>&1 << EOMODS
53 dn: cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US
58 dn: cn=Bjorn Jensen, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
60 replace: multilinedescription
61 multilinedescription: The replaced multiLineDescription $ Blah Woof.
67 dn: cn=ITD Staff,ou=Groups,o=University of Michigan,c=US
69 member: cn=James A Jones 2, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
70 member: cn=Bjorn Jensen, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
73 member: cn=Dorothy Stevens, ou=Alumni Association, ou=People, o=University of Michigan, c=US
74 member: cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US
76 dn: cn=All Staff,ou=Groups,o=University of Michigan,c=US
80 dn: cn=Gern Jensen, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
84 objectclass: organizationalPerson
85 objectclass: newPilotPerson
86 objectclass: umichPerson
88 title: Chief Investigator, ITD
89 postaladdress: ITD $ 535 W. William St $ Ann Arbor, MI 48103
90 seealso: cn=All Staff, ou=Groups, o=University of Michigan, c=US
92 krbname: gjensen@umich.edu
96 homepostaladdress: 844 Brown St. Apt. 4 $ Ann Arbor, MI 48104
97 multilinedescription: Very odd
98 facsimiletelephonenumber: +1 313 555 7557
99 telephonenumber: +1 313 555 8343
100 mail: gjensen@mailgw.umich.edu
101 homephone: +1 313 555 8844
103 dn: cn=James A Jones 2, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
109 if test $RC != 0 ; then
110 echo "ldapmodify failed!"
115 echo "Using ldapsearch to retrieve all the entries..."
116 $LDAPSEARCH -L -S "" -b "$BASEDN" -h localhost -p $PORT \
117 'objectClass=*' > $SEARCHOUT 2>&1
120 if test $RC != 0 ; then
121 echo "ldapsearch failed!"
125 LDIF=$MODIFYOUTMASTER
127 echo "Filtering ldapsearch results..."
128 . $SRCDIR/scripts/acfilter.sh < $SEARCHOUT > $SEARCHFLT
129 echo "Filtering original ldif used to create database..."
130 . $SRCDIR/scripts/acfilter.sh < $LDIF > $LDIFFLT
131 echo "Comparing filter output..."
132 cmp $SEARCHFLT $LDIFFLT
134 if test $? != 0 ; then
135 echo "comparison failed - modify operations did not complete correctly"
139 echo ">>>>> Test succeeded"