test021-certificate revision 1.1.1.3 1 1.1 lukem #! /bin/sh
2 1.1.1.3 adam # OpenLDAP: pkg/ldap/tests/scripts/test021-certificate,v 1.19.2.6 2010/04/19 19:14:34 quanah Exp
3 1.1 lukem ## This work is part of OpenLDAP Software <http://www.openldap.org/>.
4 1.1 lukem ##
5 1.1.1.3 adam ## Copyright 1998-2010 The OpenLDAP Foundation.
6 1.1 lukem ## All rights reserved.
7 1.1 lukem ##
8 1.1 lukem ## Redistribution and use in source and binary forms, with or without
9 1.1 lukem ## modification, are permitted only as authorized by the OpenLDAP
10 1.1 lukem ## Public License.
11 1.1 lukem ##
12 1.1 lukem ## A copy of this license is available in the file LICENSE in the
13 1.1 lukem ## top-level directory of the distribution or, alternatively, at
14 1.1 lukem ## <http://www.OpenLDAP.org/license.html>.
15 1.1 lukem
16 1.1 lukem echo "running defines.sh"
17 1.1 lukem . $SRCDIR/scripts/defines.sh
18 1.1 lukem
19 1.1 lukem mkdir -p $TESTDIR $DBDIR1
20 1.1 lukem
21 1.1 lukem echo "Running slapadd to build slapd database..."
22 1.1 lukem . $CONFFILTER $BACKEND $MONITORDB < $CONF > $CONF1
23 1.1 lukem #echo $SLAPADD -f $CONF1 -l $LDIFORDERED
24 1.1 lukem $SLAPADD -f $CONF1 -l $LDIFORDERED
25 1.1 lukem RC=$?
26 1.1 lukem if test $RC != 0 ; then
27 1.1 lukem echo "slapadd failed ($RC)!"
28 1.1 lukem exit $RC
29 1.1 lukem fi
30 1.1 lukem
31 1.1 lukem echo "Starting slapd on TCP/IP port $PORT1..."
32 1.1 lukem #valgrind -v --gdb-attach=yes --logfile=info --num-callers=16 --leak-check=yes --leak-resolution=high $SLAPD -f $CONF1 -h $URI1 -d $LVL $TIMING </dev/tty > $LOG1 2>&1 &
33 1.1 lukem $SLAPD -f $CONF1 -h $URI1 -d $LVL $TIMING > $LOG1 2>&1 &
34 1.1 lukem PID=$!
35 1.1 lukem if test $WAIT != 0 ; then
36 1.1 lukem echo PID $PID
37 1.1 lukem read foo
38 1.1 lukem fi
39 1.1 lukem KILLPIDS="$PID"
40 1.1 lukem
41 1.1 lukem echo "Testing certificate handling..."
42 1.1 lukem
43 1.1 lukem sleep 1
44 1.1 lukem
45 1.1 lukem for i in 0 1 2 3 4 5; do
46 1.1 lukem $LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT1 \
47 1.1 lukem 'objectclass=*' > /dev/null 2>&1
48 1.1 lukem RC=$?
49 1.1 lukem if test $RC = 0 ; then
50 1.1 lukem break
51 1.1 lukem fi
52 1.1 lukem echo "Waiting 5 seconds for slapd to start..."
53 1.1 lukem sleep 5
54 1.1 lukem done
55 1.1 lukem
56 1.1 lukem if test $RC != 0 ; then
57 1.1 lukem echo "ldapsearch failed ($RC)!"
58 1.1 lukem test $KILLSERVERS != no && kill -HUP $KILLPIDS
59 1.1 lukem exit $RC
60 1.1 lukem fi
61 1.1 lukem
62 1.1 lukem echo "Add certificates..."
63 1.1 lukem $LDAPMODIFY -v -D "$MANAGERDN" -h $LOCALHOST -p $PORT1 -w $PASSWD > \
64 1.1 lukem $TESTOUT 2>&1 << EOMODS
65 1.1 lukem version: 1
66 1.1 lukem
67 1.1 lukem # LEADING COMMENT AND WHITE SPACE
68 1.1 lukem
69 1.1 lukem # should use certificationAuthority instead of extensibleObject
70 1.1 lukem dn: dc=example,dc=com
71 1.1 lukem changetype: modify
72 1.1 lukem add: objectClass
73 1.1 lukem objectClass: extensibleObject
74 1.1 lukem -
75 1.1 lukem add: cAcertificate;binary
76 1.1 lukem cAcertificate;binary::
77 1.1 lukem MIIDVDCCAr2gAwIBAgIBADANBgkqhkiG9w0BAQQFADB3MQswCQYDVQQGEwJVUzET
78 1.1 lukem MBEGA1UECBMKQ2FsaWZvcm5pYTEfMB0GA1UEChMWT3BlbkxEQVAgRXhhbXBsZSwg
79 1.1 lukem THRkLjETMBEGA1UEAxMKRXhhbXBsZSBDQTEdMBsGCSqGSIb3DQEJARYOY2FAZXhh
80 1.1 lukem bXBsZS5jb20wHhcNMDMxMDE3MTYzMDQxWhcNMDQxMDE2MTYzMDQxWjB3MQswCQYD
81 1.1 lukem VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEfMB0GA1UEChMWT3BlbkxEQVAg
82 1.1 lukem RXhhbXBsZSwgTHRkLjETMBEGA1UEAxMKRXhhbXBsZSBDQTEdMBsGCSqGSIb3DQEJ
83 1.1 lukem ARYOY2FAZXhhbXBsZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANlj
84 1.1 lukem UGxiisAzEiALukzt3Gj/24MRw1J0AZx6GncXLhpNJsAFyA0bYZdAzgvydKeq/uX0
85 1.1 lukem i5o/4Byc3G71XAAcbJZxDPtrLwpDAdMNOBvKV2r67yTgnpatFLfGRt/FWazj5EbF
86 1.1 lukem YkorWWTe+4eEBd9VPzebHdIm+DPHipUfIAzRoNejAgMBAAGjge8wgewwHQYDVR0O
87 1.1 lukem BBYEFEtvIRo2JNKQ+UOwU0ctfeHA5pgjMIGhBgNVHSMEgZkwgZaAFEtvIRo2JNKQ
88 1.1 lukem +UOwU0ctfeHA5pgjoXukeTB3MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZv
89 1.1 lukem cm5pYTEfMB0GA1UEChMWT3BlbkxEQVAgRXhhbXBsZSwgTHRkLjETMBEGA1UEAxMK
90 1.1 lukem RXhhbXBsZSBDQTEdMBsGCSqGSIb3DQEJARYOY2FAZXhhbXBsZS5jb22CAQAwDAYD
91 1.1 lukem VR0TBAUwAwEB/zAZBgNVHREEEjAQgQ5jYUBleGFtcGxlLmNvbTANBgkqhkiG9w0B
92 1.1 lukem AQQFAAOBgQCgXD/+28El3GXi/uxMNEKqtnIhQdTnNU4il0fZ6pcmHPFC+61Bddow
93 1.1 lukem 90ZZZh5Gbg5ZBxFRhDXN8K/fix3ewRSjASt40dGlEODkE+FsLMt04sYl6kX7RGKg
94 1.1 lukem 9a46DkeG+uzZnN/3252uCgh+rjNMFAglueUTERv3EtUB1iXEoU3GyA==
95 1.1 lukem
96 1.1 lukem dn: cn=Ursula Hampster,ou=Alumni Association,ou=People,dc=example,dc=com
97 1.1 lukem changetype: modify
98 1.1 lukem add: objectClass
99 1.1 lukem objectClass: strongAuthenticationUser
100 1.1 lukem -
101 1.1 lukem add: userCertificate;binary
102 1.1 lukem userCertificate;binary::
103 1.1 lukem MIIDazCCAtSgAwIBAgIBAjANBgkqhkiG9w0BAQQFADB3MQswCQYDVQQGEwJVUzET
104 1.1 lukem MBEGA1UECBMKQ2FsaWZvcm5pYTEfMB0GA1UEChMWT3BlbkxEQVAgRXhhbXBsZSwg
105 1.1 lukem THRkLjETMBEGA1UEAxMKRXhhbXBsZSBDQTEdMBsGCSqGSIb3DQEJARYOY2FAZXhh
106 1.1 lukem bXBsZS5jb20wHhcNMDMxMDE3MTYzMzE5WhcNMDQxMDE2MTYzMzE5WjB+MQswCQYD
107 1.1 lukem VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEfMB0GA1UEChMWT3BlbkxEQVAg
108 1.1 lukem RXhhbXBsZSwgTHRkLjEYMBYGA1UEAxMPVXJzdWxhIEhhbXBzdGVyMR8wHQYJKoZI
109 1.1 lukem hvcNAQkBFhB1aGFtQGV4YW1wbGUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCB
110 1.1 lukem iQKBgQDuxgp5ELV9LmhxWMpV7qc4028QQT3+zzFDXhruuXE7ji2n3S3ea8bOwDtJ
111 1.1 lukem h+qnsDe561DhHHHlgIjMKCiDEizYMpxvJPYEXmvp0huRkMgpKZgmel95BSkt6TYm
112 1.1 lukem J0erS3aoimOHLEFimmnTLolNRMiWqNBvqwobx940PGwUWEePKQIDAQABo4H/MIH8
113 1.1 lukem MAkGA1UdEwQCMAAwLAYJYIZIAYb4QgENBB8WHU9wZW5TU0wgR2VuZXJhdGVkIENl
114 1.1 lukem cnRpZmljYXRlMB0GA1UdDgQWBBSjI94TbBmuDEeUUOiC37EK0Uf0XjCBoQYDVR0j
115 1.1 lukem BIGZMIGWgBRLbyEaNiTSkPlDsFNHLX3hwOaYI6F7pHkwdzELMAkGA1UEBhMCVVMx
116 1.1 lukem EzARBgNVBAgTCkNhbGlmb3JuaWExHzAdBgNVBAoTFk9wZW5MREFQIEV4YW1wbGUs
117 1.1 lukem IEx0ZC4xEzARBgNVBAMTCkV4YW1wbGUgQ0ExHTAbBgkqhkiG9w0BCQEWDmNhQGV4
118 1.1 lukem YW1wbGUuY29tggEAMA0GCSqGSIb3DQEBBAUAA4GBAIgUcARb3OlWYNbmr1nmqESu
119 1.1 lukem xLn16uqI1Ot6WkcICvpkdQ+Bo+R9AP05xpoXocZtKdNvBu3FNxB/jFkiOcLU2lX7
120 1.1 lukem Px1Ijnsjh60qVRy9HOsHCungIKlGcnXLKHmKu0y//5jds/HnaJsGcHI5JRG7CBJb
121 1.1 lukem W+wrwge3trJ1xHJI8prN
122 1.1 lukem
123 1.1 lukem dn: cn=Jennifer Smith,ou=Alumni Association,ou=People,dc=example,dc=com
124 1.1 lukem changetype: modify
125 1.1 lukem add: objectClass
126 1.1 lukem objectClass: strongAuthenticationUser
127 1.1 lukem -
128 1.1 lukem add: userCertificate;binary
129 1.1 lukem userCertificate;binary::
130 1.1 lukem MIIDcDCCAtmgAwIBAgIBATANBgkqhkiG9w0BAQQFADB3MQswCQYDVQQGEwJVUzET
131 1.1 lukem MBEGA1UECBMKQ2FsaWZvcm5pYTEfMB0GA1UEChMWT3BlbkxEQVAgRXhhbXBsZSwg
132 1.1 lukem THRkLjETMBEGA1UEAxMKRXhhbXBsZSBDQTEdMBsGCSqGSIb3DQEJARYOY2FAZXhh
133 1.1 lukem bXBsZS5jb20wHhcNMDMxMDE3MTYzMTQwWhcNMDQxMDE2MTYzMTQwWjCBgjELMAkG
134 1.1 lukem A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExHzAdBgNVBAoTFk9wZW5MREFQ
135 1.1 lukem IEV4YW1wbGUsIEx0ZC4xHTAbBgNVBAMUFEplbm5pZmVyICJKZW4iIFNtaXRoMR4w
136 1.1 lukem HAYJKoZIhvcNAQkBFg9qZW5AZXhhbXBsZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQAD
137 1.1 lukem gY0AMIGJAoGBANUgO8cP/SjqgCVxxsRYv36AP0+QL81iEkGvR4gG6jbtDDBdVYDC
138 1.1 lukem YbS2oKKNJ5e99NxGMIjOYfmKcAwmkV46IhdzUtkutgjHEG9vl5ajSwc1KSsbTMTy
139 1.1 lukem NtuG3k5k02JYFbP+FrGyUE8iPqK4+i7mVjW4bh/MBCHW88FptnpDJiuHAgMBAAGj
140 1.1 lukem gf8wgfwwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5lcmF0
141 1.1 lukem ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFEdo4jpxCQXJ1sh/E1O3ZBkLTbHkMIGh
142 1.1 lukem BgNVHSMEgZkwgZaAFEtvIRo2JNKQ+UOwU0ctfeHA5pgjoXukeTB3MQswCQYDVQQG
143 1.1 lukem EwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEfMB0GA1UEChMWT3BlbkxEQVAgRXhh
144 1.1 lukem bXBsZSwgTHRkLjETMBEGA1UEAxMKRXhhbXBsZSBDQTEdMBsGCSqGSIb3DQEJARYO
145 1.1 lukem Y2FAZXhhbXBsZS5jb22CAQAwDQYJKoZIhvcNAQEEBQADgYEAFpHsQUtSZQzmm9k2
146 1.1 lukem Vrfs0h7tdkWF3LcHzHk4a/t3k4EXcqlHBxh4f0tmb4XNP9QupRgm6ggr8t3Rq0Vt
147 1.1 lukem T8k50x4C7oE8HwZuEEB4FM7S1Zig3dfeJ8MJgdaLqt5/U9Ip/hZdzG2dsUsIceH/
148 1.1 lukem 5MCKLu9bGJUjsKnGdm/KpaNwaNo=
149 1.1 lukem
150 1.1 lukem dn: cn=Jennifer Smith,ou=Alumni Association,ou=People,dc=example,dc=com
151 1.1 lukem changetype: modify
152 1.1 lukem add: userCertificate;binary
153 1.1 lukem userCertificate;binary::
154 1.1 lukem MIIDjDCCAvWgAwIBAgIBAzANBgkqhkiG9w0BAQQFADB3MQswCQYDVQQGEwJVUzET
155 1.1 lukem MBEGA1UECBMKQ2FsaWZvcm5pYTEfMB0GA1UEChMWT3BlbkxEQVAgRXhhbXBsZSwg
156 1.1 lukem THRkLjETMBEGA1UEAxMKRXhhbXBsZSBDQTEdMBsGCSqGSIb3DQEJARYOY2FAZXhh
157 1.1 lukem bXBsZS5jb20wHhcNMDMxMDE3MTYzNTM1WhcNMDQxMDE2MTYzNTM1WjCBnjELMAkG
158 1.1 lukem A1UEBhMCVVMxETAPBgNVBAgTCE1pY2hpZ2FuMR8wHQYDVQQKExZPcGVuTERBUCBF
159 1.1 lukem eGFtcGxlLCBMdGQuMRswGQYDVQQLExJBbHVtbmkgQXNzb2ljYXRpb24xEjAQBgNV
160 1.1 lukem BAMTCUplbiBTbWl0aDEqMCgGCSqGSIb3DQEJARYbamVuQG1haWwuYWx1bW5pLmV4
161 1.1 lukem YW1wbGUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDpnXWAL0VkROGO
162 1.1 lukem 1Rg8J3u6F4F7yMqQCbUMsV9rxQisYj45+pmqiHV5urogvT4MGD6eLNFZKBn+0KRn
163 1.1 lukem i++uu7gbartzpmBaHOlzRII9ZdVMFfrT2xYNgAlkne6pb6IZIN9UONuH/httENCD
164 1.1 lukem J5WEpjZ48D1Lrml/HYO/W+SAMkpEqQIDAQABo4H/MIH8MAkGA1UdEwQCMAAwLAYJ
165 1.1 lukem YIZIAYb4QgENBB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRpZmljYXRlMB0GA1Ud
166 1.1 lukem DgQWBBTB2saht/od/nis76b9m+pjxfhSPjCBoQYDVR0jBIGZMIGWgBRLbyEaNiTS
167 1.1 lukem kPlDsFNHLX3hwOaYI6F7pHkwdzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlm
168 1.1 lukem b3JuaWExHzAdBgNVBAoTFk9wZW5MREFQIEV4YW1wbGUsIEx0ZC4xEzARBgNVBAMT
169 1.1 lukem CkV4YW1wbGUgQ0ExHTAbBgkqhkiG9w0BCQEWDmNhQGV4YW1wbGUuY29tggEAMA0G
170 1.1 lukem CSqGSIb3DQEBBAUAA4GBAIoGPc/AS0cNkMRDNoMIzcFdF9lONMduKBiSuFvv+x8n
171 1.1 lukem Cek+LUdXxF59V2NPKh2V5gFh5xbAchyv6FVBnpVtPdB5akCr5tdFQhuBLUXXDk/t
172 1.1 lukem THGpIWt7OAjEmpuMzsz3GUB8Zf9rioHOs1DMw+GpzWdnFITxXhAqEDc3quqPrpxZ
173 1.1 lukem -
174 1.1 lukem delete: userCertificate;binary
175 1.1 lukem userCertificate;binary::
176 1.1 lukem MIIDcDCCAtmgAwIBAgIBATANBgkqhkiG9w0BAQQFADB3MQswCQYDVQQGEwJVUzET
177 1.1 lukem MBEGA1UECBMKQ2FsaWZvcm5pYTEfMB0GA1UEChMWT3BlbkxEQVAgRXhhbXBsZSwg
178 1.1 lukem THRkLjETMBEGA1UEAxMKRXhhbXBsZSBDQTEdMBsGCSqGSIb3DQEJARYOY2FAZXhh
179 1.1 lukem bXBsZS5jb20wHhcNMDMxMDE3MTYzMTQwWhcNMDQxMDE2MTYzMTQwWjCBgjELMAkG
180 1.1 lukem A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExHzAdBgNVBAoTFk9wZW5MREFQ
181 1.1 lukem IEV4YW1wbGUsIEx0ZC4xHTAbBgNVBAMUFEplbm5pZmVyICJKZW4iIFNtaXRoMR4w
182 1.1 lukem HAYJKoZIhvcNAQkBFg9qZW5AZXhhbXBsZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQAD
183 1.1 lukem gY0AMIGJAoGBANUgO8cP/SjqgCVxxsRYv36AP0+QL81iEkGvR4gG6jbtDDBdVYDC
184 1.1 lukem YbS2oKKNJ5e99NxGMIjOYfmKcAwmkV46IhdzUtkutgjHEG9vl5ajSwc1KSsbTMTy
185 1.1 lukem NtuG3k5k02JYFbP+FrGyUE8iPqK4+i7mVjW4bh/MBCHW88FptnpDJiuHAgMBAAGj
186 1.1 lukem gf8wgfwwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5lcmF0
187 1.1 lukem ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFEdo4jpxCQXJ1sh/E1O3ZBkLTbHkMIGh
188 1.1 lukem BgNVHSMEgZkwgZaAFEtvIRo2JNKQ+UOwU0ctfeHA5pgjoXukeTB3MQswCQYDVQQG
189 1.1 lukem EwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEfMB0GA1UEChMWT3BlbkxEQVAgRXhh
190 1.1 lukem bXBsZSwgTHRkLjETMBEGA1UEAxMKRXhhbXBsZSBDQTEdMBsGCSqGSIb3DQEJARYO
191 1.1 lukem Y2FAZXhhbXBsZS5jb22CAQAwDQYJKoZIhvcNAQEEBQADgYEAFpHsQUtSZQzmm9k2
192 1.1 lukem Vrfs0h7tdkWF3LcHzHk4a/t3k4EXcqlHBxh4f0tmb4XNP9QupRgm6ggr8t3Rq0Vt
193 1.1 lukem T8k50x4C7oE8HwZuEEB4FM7S1Zig3dfeJ8MJgdaLqt5/U9Ip/hZdzG2dsUsIceH/
194 1.1 lukem 5MCKLu9bGJUjsKnGdm/KpaNwaNo=
195 1.1 lukem
196 1.1 lukem dn: cn=Mark Elliot,ou=Alumni Association,ou=People,dc=example,dc=com
197 1.1 lukem changetype: modify
198 1.1 lukem replace: userCertificate;binary
199 1.1 lukem userCertificate;binary::
200 1.1 lukem MIIDjDCCAvWgAwIBAgIBAzANBgkqhkiG9w0BAQQFADB3MQswCQYDVQQGEwJVUzET
201 1.1 lukem MBEGA1UECBMKQ2FsaWZvcm5pYTEfMB0GA1UEChMWT3BlbkxEQVAgRXhhbXBsZSwg
202 1.1 lukem THRkLjETMBEGA1UEAxMKRXhhbXBsZSBDQTEdMBsGCSqGSIb3DQEJARYOY2FAZXhh
203 1.1 lukem bXBsZS5jb20wHhcNMDMxMDE3MTYzNTM1WhcNMDQxMDE2MTYzNTM1WjCBnjELMAkG
204 1.1 lukem A1UEBhMCVVMxETAPBgNVBAgTCE1pY2hpZ2FuMR8wHQYDVQQKExZPcGVuTERBUCBF
205 1.1 lukem eGFtcGxlLCBMdGQuMRswGQYDVQQLExJBbHVtbmkgQXNzb2ljYXRpb24xEjAQBgNV
206 1.1 lukem BAMTCUplbiBTbWl0aDEqMCgGCSqGSIb3DQEJARYbamVuQG1haWwuYWx1bW5pLmV4
207 1.1 lukem YW1wbGUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDpnXWAL0VkROGO
208 1.1 lukem 1Rg8J3u6F4F7yMqQCbUMsV9rxQisYj45+pmqiHV5urogvT4MGD6eLNFZKBn+0KRn
209 1.1 lukem i++uu7gbartzpmBaHOlzRII9ZdVMFfrT2xYNgAlkne6pb6IZIN9UONuH/httENCD
210 1.1 lukem J5WEpjZ48D1Lrml/HYO/W+SAMkpEqQIDAQABo4H/MIH8MAkGA1UdEwQCMAAwLAYJ
211 1.1 lukem YIZIAYb4QgENBB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRpZmljYXRlMB0GA1Ud
212 1.1 lukem DgQWBBTB2saht/od/nis76b9m+pjxfhSPjCBoQYDVR0jBIGZMIGWgBRLbyEaNiTS
213 1.1 lukem kPlDsFNHLX3hwOaYI6F7pHkwdzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlm
214 1.1 lukem b3JuaWExHzAdBgNVBAoTFk9wZW5MREFQIEV4YW1wbGUsIEx0ZC4xEzARBgNVBAMT
215 1.1 lukem CkV4YW1wbGUgQ0ExHTAbBgkqhkiG9w0BCQEWDmNhQGV4YW1wbGUuY29tggEAMA0G
216 1.1 lukem CSqGSIb3DQEBBAUAA4GBAIoGPc/AS0cNkMRDNoMIzcFdF9lONMduKBiSuFvv+x8n
217 1.1 lukem Cek+LUdXxF59V2NPKh2V5gFh5xbAchyv6FVBnpVtPdB5akCr5tdFQhuBLUXXDk/t
218 1.1 lukem THGpIWt7OAjEmpuMzsz3GUB8Zf9rioHOs1DMw+GpzWdnFITxXhAqEDc3quqPrpxZ
219 1.1 lukem -
220 1.1 lukem delete: userCertificate;binary
221 1.1 lukem
222 1.1 lukem EOMODS
223 1.1 lukem
224 1.1 lukem RC=$?
225 1.1 lukem if test $RC != 0 ; then
226 1.1 lukem echo "ldapmodify failed ($RC)!"
227 1.1 lukem test $KILLSERVERS != no && kill -HUP $KILLPIDS
228 1.1 lukem exit $RC
229 1.1 lukem fi
230 1.1 lukem
231 1.1 lukem echo 'Using ldapsearch to retrieve (userCertificate;binary=*) ...'
232 1.1 lukem echo "# (userCertificate;binary=*)" > $SEARCHOUT
233 1.1 lukem $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
234 1.1 lukem '(userCertificate;binary=*)' >> $SEARCHOUT 2>&1
235 1.1 lukem RC=$?
236 1.1 lukem if test $RC != 0 ; then
237 1.1 lukem echo "ldapsearch failed ($RC)!"
238 1.1 lukem test $KILLSERVERS != no && kill -HUP $KILLPIDS
239 1.1 lukem exit $RC
240 1.1 lukem fi
241 1.1 lukem
242 1.1 lukem echo 'Using ldapsearch to retrieve (cAcertificate=*) ...'
243 1.1 lukem echo "# (cAcertificate=*)" >> $SEARCHOUT
244 1.1 lukem $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
245 1.1 lukem '(cAcertificate=*)' >> $SEARCHOUT 2>&1
246 1.1 lukem RC=$?
247 1.1 lukem if test $RC != 0 ; then
248 1.1 lukem echo "ldapsearch failed ($RC)!"
249 1.1 lukem test $KILLSERVERS != no && kill -HUP $KILLPIDS
250 1.1 lukem exit $RC
251 1.1 lukem fi
252 1.1 lukem
253 1.1 lukem SNAI='2$EMAIL=ca (at] example.com,CN=Example CA,O=Openldap Example\5C, Ltd.,ST=California,C=US'
254 1.1 lukem
255 1.1 lukem echo 'Using ldapsearch to retrieve (userCertificate=serialNumberAndIssuer) [old format] ...'
256 1.1 lukem echo "# (userCertificate=$SNAI)" >> $SEARCHOUT
257 1.1 lukem $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
258 1.1 lukem "(userCertificate=$SNAI)" >> $SEARCHOUT 2>&1
259 1.1 lukem RC=$?
260 1.1 lukem if test $RC != 0 ; then
261 1.1 lukem echo "ldapsearch failed ($RC)!"
262 1.1 lukem test $KILLSERVERS != no && kill -HUP $KILLPIDS
263 1.1 lukem exit $RC
264 1.1 lukem fi
265 1.1 lukem
266 1.1 lukem SNAI='{ serialNumber 2, issuer "EMAIL=ca (at] example.com,CN=Example CA,O=Openldap Example\5C, Ltd.,ST=California,C=US" }'
267 1.1 lukem
268 1.1 lukem echo 'Using ldapsearch to retrieve (userCertificate=serialNumberAndIssuer) [new format] ...'
269 1.1 lukem echo "# (userCertificate=$SNAI)" >> $SEARCHOUT
270 1.1 lukem $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
271 1.1 lukem "(userCertificate=$SNAI)" >> $SEARCHOUT 2>&1
272 1.1 lukem RC=$?
273 1.1 lukem if test $RC != 0 ; then
274 1.1 lukem echo "ldapsearch failed ($RC)!"
275 1.1 lukem test $KILLSERVERS != no && kill -HUP $KILLPIDS
276 1.1 lukem exit $RC
277 1.1 lukem fi
278 1.1 lukem
279 1.1 lukem SNAI='3$EMAIL=ca (at] example.com,CN=Example CA,O=Openldap Example\5C, Ltd.,ST=California,C=US'
280 1.1 lukem
281 1.1 lukem echo 'Using ldapsearch to retrieve (userCertificate:certificateExactMatch:=serialNumberAndIssuer) [old format] ...'
282 1.1 lukem echo "# (userCertificate:certificateExactMatch:=$SNAI)" >> $SEARCHOUT
283 1.1 lukem $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
284 1.1 lukem "(userCertificate:certificateExactMatch:=$SNAI)" >> $SEARCHOUT 2>&1
285 1.1 lukem RC=$?
286 1.1 lukem if test $RC != 0 ; then
287 1.1 lukem echo "ldapsearch failed ($RC)!"
288 1.1 lukem test $KILLSERVERS != no && kill -HUP $KILLPIDS
289 1.1 lukem exit $RC
290 1.1 lukem fi
291 1.1 lukem
292 1.1 lukem SNAI='{ issuer "EMAIL=ca (at] example.com,CN=Example CA,O=Openldap Example\5C, Ltd.,ST=California,C=US", serialNumber 3 }'
293 1.1 lukem
294 1.1 lukem echo 'Using ldapsearch to retrieve (userCertificate:certificateExactMatch:=serialNumberAndIssuer) [new format]...'
295 1.1 lukem echo "# (userCertificate:certificateExactMatch:=$SNAI)" >> $SEARCHOUT
296 1.1 lukem $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \
297 1.1 lukem "(userCertificate:certificateExactMatch:=$SNAI)" >> $SEARCHOUT 2>&1
298 1.1 lukem RC=$?
299 1.1 lukem if test $RC != 0 ; then
300 1.1 lukem echo "ldapsearch failed ($RC)!"
301 1.1 lukem test $KILLSERVERS != no && kill -HUP $KILLPIDS
302 1.1 lukem exit $RC
303 1.1 lukem fi
304 1.1 lukem
305 1.1 lukem test $KILLSERVERS != no && kill -HUP $KILLPIDS
306 1.1 lukem
307 1.1 lukem LDIF=$CERTIFICATETLS
308 1.1 lukem
309 1.1 lukem echo "Filtering ldapsearch results..."
310 1.1.1.3 adam $LDIFFILTER < $SEARCHOUT > $SEARCHFLT
311 1.1 lukem echo "Filtering original ldif used to create database..."
312 1.1.1.3 adam $LDIFFILTER < $LDIF > $LDIFFLT
313 1.1 lukem echo "Comparing filter output..."
314 1.1 lukem $CMP $SEARCHFLT $LDIFFLT > $CMPOUT
315 1.1 lukem
316 1.1 lukem if test $? != 0 ; then
317 1.1 lukem echo "comparison failed - certificate operations did not complete correctly"
318 1.1 lukem exit 1
319 1.1 lukem fi
320 1.1 lukem
321 1.1 lukem echo ">>>>> Test succeeded"
322 1.1 lukem
323 1.1 lukem test $KILLSERVERS != no && wait
324 1.1 lukem
325 1.1 lukem exit 0
326