]> git.sur5r.net Git - openldap/blob - tests/scripts/test010-passwd
Save a malloc
[openldap] / tests / scripts / test010-passwd
1 #! /bin/sh
2 # $OpenLDAP$
3
4 SRCDIR="."
5 if test $# -ge 1 ; then
6         SRCDIR=$1; shift
7 fi
8 BACKEND=bdb
9 if test $# -ge 1 ; then
10         BACKEND=$1; shift
11 fi
12 MONITORDB=no
13 if test $# -ge 1 ; then
14         MONITORDB=$1; shift
15 fi
16 WAIT=0
17 if test $# -ge 1 ; then
18         WAIT=1; shift
19 fi
20
21 echo "running defines.sh"
22 . $SRCDIR/scripts/defines.sh
23
24 echo "Cleaning up in $DBDIR..."
25
26 rm -f $DBDIR/[!C]*
27
28 echo "Starting slapd on TCP/IP port $PORT..."
29 . $CONFFILTER $BACKEND $MONITORDB < $PWCONF > $DBCONF
30 $SLAPD -f $DBCONF -h $MASTERURI -d $LVL $TIMING > $MASTERLOG 2>&1 &
31 PID=$!
32 if test $WAIT != 0 ; then
33     echo PID $PID
34     read foo
35 fi
36
37 echo "Using ldapsearch to check that slapd is running..."
38 for i in 0 1 2 3 4 5; do
39         $LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT \
40                 'objectclass=*' > /dev/null 2>&1
41         RC=$?
42         if test $RC = 1 ; then
43                 echo "Waiting 5 seconds for slapd to start..."
44                 sleep 5
45         fi
46 done
47
48 echo "Using ldapadd to populate the database..."
49 $LDAPADD -D "$MANAGERDN" -h $LOCALHOST -p $PORT -w $PASSWD < \
50         $LDIFPASSWD > $TESTOUT 2>&1
51 RC=$?
52 if test $RC != 0 ; then
53         echo "ldapadd failed ($RC)!"
54         kill -HUP $PID
55         exit $RC
56 fi
57
58 echo > $SEARCHOUT
59 echo > $TESTOUT
60
61 echo "Using ldapsearch to verify population ..."
62 echo "++ Initial search" >> $SEARCHOUT
63 $LDAPSEARCH -h $LOCALHOST -p $PORT \
64         -D "$MANAGERDN" -w $PASSWD \
65         -b "$BASEDN" \
66         'objectclass=*' >> $SEARCHOUT 2>&1
67
68 echo "Using ldappasswd (PASS 1)  ..."
69 echo "Pass 1" >> $TESTOUT
70 $LDAPPASSWD -h $LOCALHOST -p $PORT \
71         -w secret -s newsecret \
72         -D "cn=md5, $BASEDN" >> $TESTOUT 2>&1
73 RC=$?
74 if test $RC != 0 ; then
75         echo "ldappasswd failed ($RC)!"
76         kill -HUP $PID
77         exit $RC
78 fi
79 $LDAPPASSWD -h $LOCALHOST -p $PORT \
80         -w $PASSWD -s newsecret \
81         -D "$MANAGERDN" "cn=smd5, $BASEDN" >> $TESTOUT 2>&1
82 RC=$?
83 if test $RC != 0 ; then
84         echo "ldappasswd failed ($RC)!"
85         kill -HUP $PID
86         exit $RC
87 fi
88 $LDAPPASSWD -h $LOCALHOST -p $PORT \
89         -w secret -s newsecret \
90         -D "cn=sha, $BASEDN" >> $TESTOUT 2>&1
91 RC=$?
92 if test $RC != 0 ; then
93         echo "ldappasswd failed ($RC)!"
94         kill -HUP $PID
95         exit $RC
96 fi
97 $LDAPPASSWD -h $LOCALHOST -p $PORT \
98         -w secret -s newsecret \
99         -D "cn=ssha, $BASEDN" >> $TESTOUT 2>&1
100 RC=$?
101 if test $RC != 0 ; then
102         echo "ldappasswd failed ($RC)!"
103         kill -HUP $PID
104         exit $RC
105 fi
106
107 echo "" >> $TESTOUT
108 echo "Pass 2" >> $TESTOUT
109 echo "Using ldappasswd (PASS 2)  ..."
110 $LDAPPASSWD -h $LOCALHOST -p $PORT \
111         -w newsecret \
112         -D "cn=md5, $BASEDN" >> $TESTOUT 2>&1
113 RC=$?
114 if test $RC != 0 ; then
115         echo "ldappasswd failed ($RC)!"
116         kill -HUP $PID
117         exit $RC
118 fi
119 $LDAPPASSWD -h $LOCALHOST -p $PORT \
120         -w newsecret \
121         -D "cn=smd5, $BASEDN" >> $TESTOUT 2>&1
122 RC=$?
123 if test $RC != 0 ; then
124         echo "ldappasswd failed ($RC)!"
125         kill -HUP $PID
126         exit $RC
127 fi
128 $LDAPPASSWD -h $LOCALHOST -p $PORT \
129         -w newsecret \
130         -D "cn=sha, $BASEDN" >> $TESTOUT 2>&1
131 RC=$?
132 if test $RC != 0 ; then
133         echo "ldappasswd failed ($RC)!"
134         kill -HUP $PID
135         exit $RC
136 fi
137 $LDAPPASSWD -h $LOCALHOST -p $PORT \
138         -w newsecret \
139         -D "cn=ssha, $BASEDN" >> $TESTOUT 2>&1
140 RC=$?
141 if test $RC != 0 ; then
142         echo "ldappasswd failed ($RC)!"
143         kill -HUP $PID
144         exit $RC
145 fi
146
147 kill -HUP $PID
148
149 echo ">>>>> Test succeeded"
150
151 exit 0