4 if test $# -eq 0 ; then
9 if test $# -eq 1 ; then
13 echo "running defines.sh $SRCDIR $BACKEND"
14 . $SRCDIR/scripts/defines.sh
16 echo "Cleaning up in $DBDIR..."
20 echo "Running slapadd to build slapd database..."
21 $LDIF2LDBM -f $CONF -l $LDIF
23 if test $RC != 0 ; then
24 echo "slapadd failed ($RC)!"
28 echo "Starting slapd on TCP/IP port $PORT..."
29 $SLAPD -f $CONF -h $MASTERURI -d $LVL $TIMING > $MASTERLOG 2>&1 &
32 echo "Testing slapd modify operations..."
33 for i in 0 1 2 3 4 5; do
34 $LDAPSEARCH -s base -b "$MONITOR" -h localhost -p $PORT \
35 'objectclass=*' > /dev/null 2>&1
37 if test $RC = 1 ; then
38 echo "Waiting 5 seconds for slapd to start..."
43 if test $RC != 0 ; then
44 echo "ldapsearch failed ($RC)!"
49 echo "Testing modify, add, and delete..."
50 $LDAPMODIFY -v -D "$MANAGERDN" -h localhost -p $PORT -w $PASSWD > \
51 $TESTOUT 2>&1 << EOMODS
54 # LEADING COMMENT AND WHITE SPACE
56 dn: cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US
62 dn: cn=Bjorn Jensen, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
67 description: The replaced multiLineDescription $ Blah Woof.
73 dn: cn=ITD Staff,ou=Groups,o=University of Michigan,c=US
75 member: cn=James A Jones 2, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
76 member: cn=Bjorn Jensen, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
79 member: cn=Dorothy Stevens, ou=Alumni Association, ou=People, o=University of Michigan, c=US
80 member: cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US
82 dn: cn=All Staff,ou=Groups,o=University of Michigan,c=US
87 member: cn=Dorothy Stevens, ou=Alumni Association, ou=People, o=University of Michigan, c=US
89 dn: cn=Gern Jensen, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
93 objectclass: organizationalPerson
94 objectclass: newPilotPerson
97 title: Chief Investigator, ITD
98 postaladdress: ITD $ 535 W. William St $ Ann Arbor, MI 48103
99 seealso: cn=All Staff, ou=Groups, o=University of Michigan, c=US
101 homepostaladdress: 844 Brown St. Apt. 4 $ Ann Arbor, MI 48104
102 description: Very odd
103 facsimiletelephonenumber: +1 313 555 7557
104 telephonenumber: +1 313 555 8343
105 mail: gjensen@mailgw.umich.edu
106 homephone: +1 313 555 8844
108 dn: cn=James A Jones 2, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
110 # TRAILING COMMENT AND WHITE SPACE
115 if test $RC != 0 ; then
116 echo "ldapmodify failed ($RC)!"
121 echo "Using ldapsearch to retrieve all the entries..."
122 $LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
123 'objectClass=*' > $SEARCHOUT 2>&1
126 if test $RC != 0 ; then
127 echo "ldapsearch failed ($RC)!"
131 LDIF=$MODIFYOUTMASTER
133 echo "Filtering ldapsearch results..."
134 . $SRCDIR/scripts/acfilter.sh < $SEARCHOUT > $SEARCHFLT
135 echo "Filtering original ldif used to create database..."
136 . $SRCDIR/scripts/acfilter.sh < $LDIF > $LDIFFLT
137 echo "Comparing filter output..."
138 $CMP $SEARCHFLT $LDIFFLT > $CMPOUT
140 if test $? != 0 ; then
141 echo "comparison failed - modify operations did not complete correctly"
145 echo ">>>>> Test succeeded"