testcompat: increased the number of test cases checked
[gnutls:gnutls.git] / tests / suite / testcompat-polarssl
1 #!/bin/sh
2
3 # Copyright (C) 2014 Red Hat, Inc.
4 #
5 # Author: Nikos Mavrogiannopoulos
6 #
7 # This file is part of GnuTLS.
8 #
9 # GnuTLS is free software; you can redistribute it and/or modify it
10 # under the terms of the GNU General Public License as published by the
11 # Free Software Foundation; either version 3 of the License, or (at
12 # your option) any later version.
13 #
14 # GnuTLS is distributed in the hope that it will be useful, but
15 # WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17 # General Public License for more details.
18 #
19 # You should have received a copy of the GNU General Public License
20 # along with GnuTLS; if not, write to the Free Software Foundation,
21 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
22
23 srcdir="${srcdir:-.}"
24 CLI="${CLI:-../../src/gnutls-cli$EXEEXT}"
25 LOGFILE=polarssl.log
26 unset RETCODE
27 if ! test -z "${VALGRIND}";then
28 VALGRIND="${LIBTOOL:-libtool} --mode=execute ${VALGRIND}"
29 fi
30
31 if test "${WINDIR}" != "";then
32   exit 77
33 fi 
34
35 . $srcdir/../scripts/common.sh
36
37 PORT="${PORT:-$RPORT}"
38 POLARSSL_CLI="/usr/libexec/polarssl/ssl_client2"
39
40 TXT=`$CLI --priority NORMAL --list|grep SECP224`
41 if test -z $TEXT;then
42         ALL_CURVES=0
43 else
44         ALL_CURVES=1
45 fi
46
47 VERSION=`grep released /usr/share/doc/polarssl/ChangeLog|head -1|cut -d ' ' -f 3`
48
49 echo "Compatibility checks using polarssl "$VERSION
50 echo $VERSION|grep -e 1\.3\. >/dev/null 2>&1
51 SV=$?
52 if test $SV != 0;then
53   echo "PolarSSL 1.3.x is required for the tests to run"
54   exit 77
55 fi
56
57 if ! test -x $POLARSSL;then
58   echo "PolarSSL is required for this test to run"
59   exit 77
60 fi
61
62 . ./testcompat-common
63
64 echo ""
65 echo "##################################################"
66 echo "# Server mode tests (gnutls server-polarssl cli) #"
67 echo "##################################################"
68 SERV="../../src/gnutls-serv$EXEEXT -q"
69
70 rm -f $LOGFILE
71
72 for ADD in "" ":%COMPAT" ":%NO_ETM" ":%NO_TICKETS" ":%DISABLE_SAFE_RENEGOTIATION"
73 do
74
75 if ! test -z "$ADD";then
76 echo ""
77 echo "** Modifier: $ADD"
78 fi
79
80 echo "Check SSL 3.0 with RSA ciphersuite"
81 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-SSL3.0:+RSA$ADD" --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT --dhparams params.dh  & PID=$!
82 wait_server $PID
83
84 $POLARSSL_CLI server_port=$PORT server_name=localhost max_version=ssl3 crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
85   fail $PID "Failed"
86
87 kill $PID
88 wait
89
90 echo "Check SSL 3.0 with DHE-RSA ciphersuite"
91 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-SSL3.0:+DHE-RSA$ADD" --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT --dhparams params.dh  & PID=$!
92 wait_server $PID
93
94 $POLARSSL_CLI server_name=localhost server_port=$PORT max_version=ssl3 crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
95   fail $PID "Failed"
96
97 kill $PID
98 wait
99
100 # No DSS for polarssl
101 #echo "Check SSL 3.0 with DHE-DSS ciphersuite"
102 #launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-SSL3.0:+DHE-DSS" --x509certfile $SERV_DSA_CERT --x509keyfile $SERV_DSA_KEY --dhparams params.dh  & PID=$!
103 #wait_server $PID
104
105 #$POLARSSL_CLI server_name=localhost server_port=$PORT max_version=ssl3 crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
106 #  fail $PID "Failed"
107 #
108 #kill $PID
109 #wait
110
111 #TLS 1.0
112
113 echo "Check TLS 1.0 with DHE-RSA ciphersuite"
114 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+DHE-RSA$ADD" --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT --dhparams params.dh  & PID=$!
115 wait_server $PID
116
117 $POLARSSL_CLI  server_name=localhost min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
118   fail $PID "Failed"
119
120 kill $PID
121 wait
122
123 #echo "Check TLS 1.0 with DHE-DSS ciphersuite"
124 #launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+DHE-DSS$ADD" --x509certfile $SERV_DSA_CERT --x509keyfile $SERV_DSA_KEY --dhparams params.dh  & PID=$!
125 #wait_server $PID
126
127 #$POLARSSL_CLI  server_name=localhost min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
128 #  fail $PID "Failed"
129
130 #kill $PID
131 #wait
132
133 echo "Check TLS 1.0 with ECDHE-RSA ciphersuite"
134 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+ECDHE-RSA:+CURVE-ALL$ADD" --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT & PID=$!
135 wait_server $PID
136
137 #-cipher ECDHE-RSA-AES128-SHA 
138 $POLARSSL_CLI  server_name=localhost min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
139   fail $PID "Failed"
140
141 kill $PID
142 wait
143
144 echo "Check TLS 1.0 with PSK ciphersuite"
145 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+PSK:+CURVE-ALL$ADD" --pskpasswd $SERV_PSK --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT & PID=$!
146 wait_server $PID
147
148 #-cipher PSK-AES128-SHA 
149 $POLARSSL_CLI  server_name=localhost psk_identity=jas psk=9e32cf7786321a828ef7668f09fb35db min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
150   fail $PID "Failed"
151
152 kill $PID
153 wait
154
155 echo "Check TLS 1.0 with DHE-PSK ciphersuite"
156 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+DHE-PSK:+CURVE-ALL$ADD" --pskpasswd $SERV_PSK --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT & PID=$!
157 wait_server $PID
158
159 #-cipher PSK-AES128-SHA 
160 $POLARSSL_CLI  server_name=localhost psk_identity=jas psk=9e32cf7786321a828ef7668f09fb35db min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
161   fail $PID "Failed"
162
163 kill $PID
164 wait
165
166 echo "Check TLS 1.0 with ECDHE-PSK ciphersuite"
167 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+ECDHE-PSK:+CURVE-ALL$ADD" --pskpasswd $SERV_PSK --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT & PID=$!
168 wait_server $PID
169
170 #-cipher PSK-AES128-SHA 
171 $POLARSSL_CLI  server_name=localhost psk_identity=jas psk=9e32cf7786321a828ef7668f09fb35db min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
172   fail $PID "Failed"
173
174 kill $PID
175 wait
176
177 echo "Check TLS 1.0 with RSA-PSK ciphersuite"
178 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+RSA-PSK:+CURVE-ALL$ADD" --pskpasswd $SERV_PSK --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT & PID=$!
179 wait_server $PID
180
181 #-cipher RSA-PSK-AES128-SHA 
182 $POLARSSL_CLI  server_name=localhost psk_identity=jas psk=9e32cf7786321a828ef7668f09fb35db min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
183   fail $PID "Failed"
184
185 kill $PID
186 wait
187
188 if test $ALL_CURVES = 1;then
189         echo "Check TLS 1.0 with ECDHE-ECDSA ciphersuite (SECP224R1)"
190         launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+ECDHE-ECDSA:+CURVE-ALL$ADD" --x509certfile $ECC224_CERT --x509keyfile $ECC224_KEY --x509cafile $CA_ECC_CERT & PID=$!
191         wait_server $PID
192
193         #-cipher ECDHE-ECDSA-AES128-SHA 
194         $POLARSSL_CLI  server_name=localhost min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$ECC224_CERT key_file=$ECC224_KEY ca_file=$CA_ECC_CERT </dev/null >>$LOGFILE 2>&1 || \
195           fail $PID "Failed"
196
197           kill $PID
198           wait
199 fi
200
201 echo "Check TLS 1.0 with ECDHE-ECDSA ciphersuite (SECP256R1)"
202 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+ECDHE-ECDSA:+CURVE-ALL$ADD" --x509certfile $ECC256_CERT --x509keyfile $ECC256_KEY --x509cafile $CA_ECC_CERT & PID=$!
203 wait_server $PID
204
205 #-cipher ECDHE-ECDSA-AES128-SHA 
206 $POLARSSL_CLI  server_name=localhost min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$ECC256_CERT key_file=$ECC256_KEY ca_file=$CA_ECC_CERT </dev/null >>$LOGFILE 2>&1 || \
207   fail $PID "Failed"
208
209 kill $PID
210 wait
211
212 echo "Check TLS 1.0 with ECDHE-ECDSA ciphersuite (SECP384R1)"
213 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+ECDHE-ECDSA:+CURVE-ALL$ADD" --x509certfile $ECC384_CERT --x509keyfile $ECC384_KEY --x509cafile $CA_ECC_CERT & PID=$!
214 wait_server $PID
215
216 #-cipher ECDHE-ECDSA-AES128-SHA 
217 $POLARSSL_CLI  server_name=localhost min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$ECC384_CERT key_file=$ECC384_KEY ca_file=$CA_ECC_CERT </dev/null >>$LOGFILE 2>&1 || \
218   fail $PID "Failed"
219
220 kill $PID
221 wait
222
223 echo "Check TLS 1.0 with ECDHE-ECDSA ciphersuite (SECP521R1)"
224 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.0:+ECDHE-ECDSA:+CURVE-ALL$ADD" --x509certfile $ECC521_CERT --x509keyfile $ECC521_KEY --x509cafile $CA_ECC_CERT & PID=$!
225 wait_server $PID
226
227 #-cipher ECDHE-ECDSA-AES128-SHA 
228 $POLARSSL_CLI  server_name=localhost min_version=tls1 max_version=tls1 server_port=$PORT crt_file=$ECC521_CERT key_file=$ECC521_KEY ca_file=$CA_ECC_CERT </dev/null >>$LOGFILE 2>&1 || \
229   fail $PID "Failed"
230
231 kill $PID
232 wait
233
234 echo "Check TLS 1.2 with DHE-RSA ciphersuite"
235 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+DHE-RSA$ADD" --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT --dhparams params.dh  & PID=$!
236 wait_server $PID
237
238 $POLARSSL_CLI  server_name=localhost min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
239   fail $PID "Failed"
240
241 kill $PID
242 wait
243
244 #echo "Check TLS 1.2 with DHE-DSS ciphersuite"
245 #launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+DHE-DSS$ADD" --x509certfile $SERV_DSA_CERT --x509keyfile $SERV_DSA_KEY --dhparams params.dh  & PID=$!
246 #wait_server $PID
247 #
248 #$POLARSSL_CLI  server_name=localhost min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
249 #  fail $PID "Failed"
250 #
251 #kill $PID
252 #wait
253
254 echo "Check TLS 1.2 with ECDHE-RSA ciphersuite"
255 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+ECDHE-RSA:+CURVE-ALL$ADD" --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT & PID=$!
256 wait_server $PID
257
258 #-cipher ECDHE-RSA-AES128-SHA 
259 $POLARSSL_CLI  server_name=localhost min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
260   fail $PID "Failed"
261
262 kill $PID
263 wait
264
265 if test $ALL_CURVES = 1;then
266         echo "Check TLS 1.2 with ECDHE-ECDSA ciphersuite (SECP224R1)"
267         launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+ECDHE-ECDSA:+CURVE-ALL$ADD" --x509certfile $ECC224_CERT --x509keyfile $ECC224_KEY --x509cafile $CA_ECC_CERT & PID=$!
268         wait_server $PID
269
270         #-cipher ECDHE-ECDSA-AES128-SHA 
271         $POLARSSL_CLI  server_name=localhost min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$ECC224_CERT key_file=$ECC224_KEY ca_file=$CA_ECC_CERT </dev/null >>$LOGFILE 2>&1 || \
272           fail $PID "Failed"
273
274           kill $PID
275           wait
276 fi
277
278 echo "Check TLS 1.2 with ECDHE-ECDSA ciphersuite (SECP256R1)"
279 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+ECDHE-ECDSA:+CURVE-ALL$ADD" --x509certfile $ECC256_CERT --x509keyfile $ECC256_KEY --x509cafile $CA_ECC_CERT & PID=$!
280 wait_server $PID
281
282 #-cipher ECDHE-ECDSA-AES128-SHA 
283 $POLARSSL_CLI  server_name=localhost min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$ECC256_CERT key_file=$ECC256_KEY ca_file=$CA_ECC_CERT </dev/null >>$LOGFILE 2>&1 || \
284   fail $PID "Failed"
285
286 kill $PID
287 wait
288
289 echo "Check TLS 1.2 with ECDHE-ECDSA ciphersuite (SECP384R1)"
290 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+ECDHE-ECDSA:+CURVE-ALL$ADD" --x509certfile $ECC384_CERT --x509keyfile $ECC384_KEY --x509cafile $CA_ECC_CERT & PID=$!
291 wait_server $PID
292
293 #-cipher ECDHE-ECDSA-AES128-SHA 
294 $POLARSSL_CLI  server_name=localhost min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$ECC384_CERT key_file=$ECC384_KEY ca_file=$CA_ECC_CERT </dev/null >>$LOGFILE 2>&1 || \
295   fail $PID "Failed"
296
297 kill $PID
298 wait
299
300 echo "Check TLS 1.2 with ECDHE-ECDSA ciphersuite (SECP521R1)"
301 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+ECDHE-ECDSA:+CURVE-ALL$ADD" --x509certfile $ECC521_CERT --x509keyfile $ECC521_KEY --x509cafile $CA_ECC_CERT & PID=$!
302 wait_server $PID
303
304 #-cipher ECDHE-ECDSA-AES128-SHA 
305 $POLARSSL_CLI  server_name=localhost min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$ECC521_CERT key_file=$ECC521_KEY ca_file=$CA_ECC_CERT </dev/null >>$LOGFILE 2>&1 || \
306   fail $PID "Failed"
307
308 kill $PID
309 wait
310
311 echo "Check TLS 1.2 with PSK ciphersuite"
312 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+PSK:+CURVE-ALL$ADD" --pskpasswd $SERV_PSK --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT & PID=$!
313 wait_server $PID
314
315 #-cipher PSK-AES128-SHA 
316 $POLARSSL_CLI  server_name=localhost psk_identity=jas psk=9e32cf7786321a828ef7668f09fb35db min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
317   fail $PID "Failed"
318
319 kill $PID
320 wait
321
322 echo "Check TLS 1.2 with DHE-PSK ciphersuite"
323 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+DHE-PSK:+CURVE-ALL$ADD" --pskpasswd $SERV_PSK --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT & PID=$!
324 wait_server $PID
325
326 #-cipher PSK-AES128-SHA 
327 $POLARSSL_CLI  server_name=localhost psk_identity=jas psk=9e32cf7786321a828ef7668f09fb35db min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
328   fail $PID "Failed"
329
330 kill $PID
331 wait
332
333 echo "Check TLS 1.2 with ECDHE-PSK ciphersuite"
334 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+ECDHE-PSK:+CURVE-ALL$ADD" --pskpasswd $SERV_PSK --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT & PID=$!
335 wait_server $PID
336
337 #-cipher PSK-AES128-SHA 
338 $POLARSSL_CLI  server_name=localhost psk_identity=jas psk=9e32cf7786321a828ef7668f09fb35db min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
339   fail $PID "Failed"
340
341 kill $PID
342 wait
343
344 echo "Check TLS 1.2 with RSA-PSK ciphersuite"
345 launch_server $$  --priority "NONE:+CIPHER-ALL:+SIGN-ALL:+COMP-NULL:+MAC-ALL:+VERS-TLS1.2:+RSA-PSK:+CURVE-ALL$ADD" --pskpasswd $SERV_PSK --x509certfile $SERV_CERT --x509keyfile $SERV_KEY --x509cafile $CA_CERT & PID=$!
346 wait_server $PID
347
348 #-cipher RSA-PSK-AES128-SHA 
349 $POLARSSL_CLI  server_name=localhost psk_identity=jas psk=9e32cf7786321a828ef7668f09fb35db min_version=tls1_2 max_version=tls1_2 server_port=$PORT crt_file=$CLI_CERT key_file=$CLI_KEY ca_file=$CA_CERT </dev/null >>$LOGFILE 2>&1 || \
350   fail $PID "Failed"
351
352 kill $PID
353 wait
354
355 done
356
357 rm -f $LOGFILE
358
359 exit 0