OpenCoverage

ocsp_ht.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ocsp/ocsp_ht.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7struct ocsp_req_ctx_st {-
8 int state;-
9 unsigned char *iobuf;-
10 int iobuflen;-
11 BIO *io;-
12 BIO *mem;-
13 unsigned long asn1_len;-
14};-
15static int parse_http_line1(char *line);-
16-
17void-
18OCSP_REQ_CTX_free(OCSP_REQ_CTX *rctx)-
19{-
20 if (rctx ==
rctx == ((void *)0)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • freenull
FALSEnever evaluated
0-1
21 ((void *)0)
rctx == ((void *)0)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • freenull
FALSEnever evaluated
0-1
22 )-
23 return;
executed 1 time by 1 test: return;
Executed by:
  • freenull
1
24-
25 BIO_free(rctx->mem);-
26 free(rctx->iobuf);-
27 free(rctx);-
28}
never executed: end of block
0
29-
30int-
31OCSP_REQ_CTX_set1_req(OCSP_REQ_CTX *rctx, OCSP_REQUEST *req)-
32{-
33 if (BIO_printf(rctx->mem, "Content-Type: application/ocsp-request\r\n"
BIO_printf(rct...d *)0) )) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
0
34 "Content-Length: %d\r\n\r\n", i2d_OCSP_REQUEST(req,
BIO_printf(rct...d *)0) )) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
0
35 ((void *)0)
BIO_printf(rct...d *)0) )) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
0
36 )) <= 0
BIO_printf(rct...d *)0) )) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
37 return
never executed: return 0;
0;
never executed: return 0;
0
38 if (i2d_OCSP_REQUEST_bio(rctx->mem, req) <= 0
i2d_OCSP_REQUE...mem, req) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
39 return
never executed: return 0;
0;
never executed: return 0;
0
40 rctx->state = (6 | 0x1000);-
41 rctx->asn1_len = BIO_ctrl(rctx->mem,3,0,(char *)-
42 ((void *)0)-
43 );-
44 return
never executed: return 1;
1;
never executed: return 1;
0
45}-
46-
47int-
48OCSP_REQ_CTX_add1_header(OCSP_REQ_CTX *rctx, const char *name,-
49 const char *value)-
50{-
51 if (!name
!nameDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
52 return
never executed: return 0;
0;
never executed: return 0;
0
53 if (BIO_puts(rctx->mem, name) <= 0
BIO_puts(rctx->mem, name) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
54 return
never executed: return 0;
0;
never executed: return 0;
0
55 if (value
valueDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
56 if (BIO_write(rctx->mem, ": ", 2) != 2
BIO_write(rctx... ": ", 2) != 2Description
TRUEnever evaluated
FALSEnever evaluated
)
0
57 return
never executed: return 0;
0;
never executed: return 0;
0
58 if (BIO_puts(rctx->mem, value) <= 0
BIO_puts(rctx-...m, value) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
59 return
never executed: return 0;
0;
never executed: return 0;
0
60 }
never executed: end of block
0
61 if (BIO_write(rctx->mem, "\r\n", 2) != 2
BIO_write(rctx...\r\n", 2) != 2Description
TRUEnever evaluated
FALSEnever evaluated
)
0
62 return
never executed: return 0;
0;
never executed: return 0;
0
63 return
never executed: return 1;
1;
never executed: return 1;
0
64}-
65-
66OCSP_REQ_CTX *-
67OCSP_sendreq_new(BIO *io, const char *path, OCSP_REQUEST *req, int maxline)-
68{-
69 OCSP_REQ_CTX *rctx;-
70-
71 rctx = malloc(sizeof(OCSP_REQ_CTX));-
72 if (rctx ==
rctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
73 ((void *)0)
rctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
74 )-
75 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
76 ((void *)0)
never executed: return ((void *)0) ;
0
77 ;
never executed: return ((void *)0) ;
0
78 rctx->state = (0 | 0x1000);-
79 if ((
(rctx->mem = B...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
rctx->mem = BIO_new(BIO_s_mem())) ==
(rctx->mem = B...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
80 ((void *)0)
(rctx->mem = B...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
81 ) {-
82 free(rctx);-
83 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
84 ((void *)0)
never executed: return ((void *)0) ;
0
85 ;
never executed: return ((void *)0) ;
0
86 }-
87 rctx->io = io;-
88 rctx->asn1_len = 0;-
89 if (maxline > 0
maxline > 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
90 rctx->iobuflen = maxline;
never executed: rctx->iobuflen = maxline;
0
91 else-
92 rctx->iobuflen = 4096;
never executed: rctx->iobuflen = 4096;
;
0
93 rctx->iobuf = malloc(rctx->iobuflen);-
94 if (!rctx->iobuf
!rctx->iobufDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
95 BIO_free(rctx->mem);-
96 free(rctx);-
97 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
98 ((void *)0)
never executed: return ((void *)0) ;
0
99 ;
never executed: return ((void *)0) ;
0
100 }-
101 if (!path
!pathDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
102 path = "/";
never executed: path = "/";
0
103-
104 if (BIO_printf(rctx->mem, "POST %s HTTP/1.0\r\n", path) <= 0
BIO_printf(rct...n", path) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
105 free(rctx->iobuf);-
106 BIO_free(rctx->mem);-
107 free(rctx);-
108 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
109 ((void *)0)
never executed: return ((void *)0) ;
0
110 ;
never executed: return ((void *)0) ;
0
111 }-
112-
113 if (req
reqDescription
TRUEnever evaluated
FALSEnever evaluated
&& !OCSP_REQ_CTX_set1_req(rctx, req)
!OCSP_REQ_CTX_...req(rctx, req)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
114 free(rctx->iobuf);-
115 BIO_free(rctx->mem);-
116 free(rctx);-
117 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
118 ((void *)0)
never executed: return ((void *)0) ;
0
119 ;
never executed: return ((void *)0) ;
0
120 }-
121-
122 return
never executed: return rctx;
rctx;
never executed: return rctx;
0
123}-
124-
125-
126-
127-
128-
129static int-
130parse_http_line1(char *line)-
131{-
132 int retcode;-
133 char *p, *q, *r;-
134-
135-
136 for (p = line; *
*pDescription
TRUEnever evaluated
FALSEnever evaluated
p
*pDescription
TRUEnever evaluated
FALSEnever evaluated
&& !
! ((*__ctype_b...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
137 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
138 (unsigned char)*p
! ((*__ctype_b...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
139 ))] & (unsigned short int) _ISspace)
! ((*__ctype_b...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
140 ; p++)-
141 continue;
never executed: continue;
0
142 if (!*p
!*pDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
143 ERR_put_error(39,(0xfff),(115),__FILE__,210);-
144 return
never executed: return 0;
0;
never executed: return 0;
0
145 }-
146-
147-
148 while (*
*pDescription
TRUEnever evaluated
FALSEnever evaluated
p
*pDescription
TRUEnever evaluated
FALSEnever evaluated
&&
0
149 ((*
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
__ctype_b_loc ())[(int) ((
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
150 (unsigned char)*p
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
151 ))] & (unsigned short int) _ISspace)
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
152 )-
153 p++;
never executed: p++;
0
154 if (!*p
!*pDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
155 ERR_put_error(39,(0xfff),(115),__FILE__,218);-
156 return
never executed: return 0;
0;
never executed: return 0;
0
157 }-
158-
159-
160 for (q = p; *
*qDescription
TRUEnever evaluated
FALSEnever evaluated
q
*qDescription
TRUEnever evaluated
FALSEnever evaluated
&& !
! ((*__ctype_b...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
161 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
162 (unsigned char)*q
! ((*__ctype_b...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
163 ))] & (unsigned short int) _ISspace)
! ((*__ctype_b...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
164 ; q++)-
165 continue;
never executed: continue;
0
166 if (!*q
!*qDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
167 ERR_put_error(39,(0xfff),(115),__FILE__,226);-
168 return
never executed: return 0;
0;
never executed: return 0;
0
169 }-
170-
171-
172 *q++ = 0;-
173-
174-
175 retcode = strtoul(p, &r, 10);-
176-
177 if (*
*rDescription
TRUEnever evaluated
FALSEnever evaluated
r
*rDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
178 return
never executed: return 0;
0;
never executed: return 0;
0
179-
180-
181 while (*
*qDescription
TRUEnever evaluated
FALSEnever evaluated
q
*qDescription
TRUEnever evaluated
FALSEnever evaluated
&&
0
182 ((*
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
__ctype_b_loc ())[(int) ((
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
183 (unsigned char)*q
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
184 ))] & (unsigned short int) _ISspace)
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
185 )-
186 q++;
never executed: q++;
0
187 if (*
*qDescription
TRUEnever evaluated
FALSEnever evaluated
q
*qDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
188-
189-
190-
191-
192 for (r = q + strlen(q) - 1; -
193 ((*
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
__ctype_b_loc ())[(int) ((
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
194 (unsigned char)*r
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
195 ))] & (unsigned short int) _ISspace)
((*__ctype_b_l...int) _ISspace)Description
TRUEnever evaluated
FALSEnever evaluated
0
196 ; r--)-
197 *
never executed: *r = 0;
r = 0;
never executed: *r = 0;
0
198 }
never executed: end of block
0
199 if (retcode != 200
retcode != 200Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
200 ERR_put_error(39,(0xfff),(114),__FILE__,251);-
201 if (!*q
!*qDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
202 ERR_asprintf_error_data("Code=%s", p);
never executed: ERR_asprintf_error_data("Code=%s", p);
0
203 else-
204 ERR_asprintf_error_data("Code=%s,Reason=%s", p, q);
never executed: ERR_asprintf_error_data("Code=%s,Reason=%s", p, q);
0
205 return
never executed: return 0;
0;
never executed: return 0;
0
206 }-
207-
208 return
never executed: return 1;
1;
never executed: return 1;
0
209}-
210-
211int-
212OCSP_sendreq_nbio(OCSP_RESPONSE **presp, OCSP_REQ_CTX *rctx)-
213{-
214 int i, n;-
215 const unsigned char *p;-
216-
217next_io:
code before this statement never executed: next_io:
0
218 if (!(rctx->state & 0x1000)
!(rctx->state & 0x1000)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
219 n = BIO_read(rctx->io, rctx->iobuf, rctx->iobuflen);-
220-
221 if (n <= 0
n <= 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
222 if (BIO_test_flags(rctx->io, 0x08)
BIO_test_flags(rctx->io, 0x08)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
223 return
never executed: return -1;
-1;
never executed: return -1;
0
224 return
never executed: return 0;
0;
never executed: return 0;
0
225 }-
226-
227-
228 if (BIO_write(rctx->mem, rctx->iobuf, n) != n
BIO_write(rctx...iobuf, n) != nDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
229 return
never executed: return 0;
0;
never executed: return 0;
0
230 }
never executed: end of block
0
231-
232 switch (rctx->state) {-
233 case
never executed: case (6 | 0x1000):
(6 | 0x1000):
never executed: case (6 | 0x1000):
0
234 n = BIO_ctrl(rctx->mem,3,0,(char *)&p);-
235 i = BIO_write(rctx->io,-
236 p + (n - rctx->asn1_len), rctx->asn1_len);-
237 if (i <= 0
i <= 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
238 if (BIO_test_flags(rctx->io, 0x08)
BIO_test_flags(rctx->io, 0x08)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
239 return
never executed: return -1;
-1;
never executed: return -1;
0
240 rctx->state = (0 | 0x1000);-
241 return
never executed: return 0;
0;
never executed: return 0;
0
242 }-
243-
244 rctx->asn1_len -= i;-
245 if (rctx->asn1_len > 0
rctx->asn1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
246 goto
never executed: goto next_io;
next_io;
never executed: goto next_io;
0
247-
248 rctx->state = (7 | 0x1000);-
249-
250 (void)(int)BIO_ctrl(rctx->mem,1,0,-
251 ((void *)0)-
252 );-
253-
254-
255 case
never executed: case (7 | 0x1000):
(7 | 0x1000):
never executed: case (7 | 0x1000):
code before this statement never executed: case (7 | 0x1000):
0
256 i = (int)BIO_ctrl(rctx->io,11,0,-
257 ((void *)0)-
258 );-
259 if (i > 0
i > 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
260 rctx->state = 1;-
261 goto
never executed: goto next_io;
next_io;
never executed: goto next_io;
0
262 }-
263-
264 if (BIO_test_flags(rctx->io, 0x08)
BIO_test_flags(rctx->io, 0x08)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
265 return
never executed: return -1;
-1;
never executed: return -1;
0
266-
267 rctx->state = (0 | 0x1000);-
268 return
never executed: return 0;
0;
never executed: return 0;
0
269-
270 case
never executed: case (0 | 0x1000):
(0 | 0x1000):
never executed: case (0 | 0x1000):
0
271 return
never executed: return 0;
0;
never executed: return 0;
0
272-
273 case
never executed: case 1:
1:
never executed: case 1:
0
274 case
never executed: case 2:
2:
never executed: case 2:
0
275-
276next_line:-
277-
278-
279-
280-
281 n = BIO_ctrl(rctx->mem,3,0,(char *)&p);-
282 if ((
(n <= 0)Description
TRUEnever evaluated
FALSEnever evaluated
n <= 0)
(n <= 0)Description
TRUEnever evaluated
FALSEnever evaluated
|| !memchr(p, '\n', n)
!memchr(p, '\n', n)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
283 if (n >= rctx->iobuflen
n >= rctx->iobuflenDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
284 rctx->state = (0 | 0x1000);-
285 return
never executed: return 0;
0;
never executed: return 0;
0
286 }-
287 goto
never executed: goto next_io;
next_io;
never executed: goto next_io;
0
288 }-
289 n = BIO_gets(rctx->mem, (char *)rctx->iobuf, rctx->iobuflen);-
290 if (n <= 0
n <= 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
291 if (BIO_test_flags(rctx->mem, 0x08)
BIO_test_flags...tx->mem, 0x08)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
292 goto
never executed: goto next_io;
next_io;
never executed: goto next_io;
0
293 rctx->state = (0 | 0x1000);-
294 return
never executed: return 0;
0;
never executed: return 0;
0
295 }-
296-
297-
298 if (n == rctx->iobuflen
n == rctx->iobuflenDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
299 rctx->state = (0 | 0x1000);-
300 return
never executed: return 0;
0;
never executed: return 0;
0
301 }-
302-
303-
304 if (rctx->state == 1
rctx->state == 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
305 if (parse_http_line1((char *)rctx->iobuf)
parse_http_lin...*)rctx->iobuf)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
306 rctx->state = 2;-
307 goto
never executed: goto next_line;
next_line;
never executed: goto next_line;
0
308 } else {-
309 rctx->state = (0 | 0x1000);-
310 return
never executed: return 0;
0;
never executed: return 0;
0
311 }-
312 } else {-
313-
314 for (p = rctx->iobuf; *
*pDescription
TRUEnever evaluated
FALSEnever evaluated
p
*pDescription
TRUEnever evaluated
FALSEnever evaluated
; p++) {
0
315 if ((*
(*p != '\r')Description
TRUEnever evaluated
FALSEnever evaluated
p != '\r')
(*p != '\r')Description
TRUEnever evaluated
FALSEnever evaluated
&& (*
(*p != '\n')Description
TRUEnever evaluated
FALSEnever evaluated
p != '\n')
(*p != '\n')Description
TRUEnever evaluated
FALSEnever evaluated
)
0
316 break;
never executed: break;
0
317 }
never executed: end of block
0
318 if (*
*pDescription
TRUEnever evaluated
FALSEnever evaluated
p
*pDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
319 goto
never executed: goto next_line;
next_line;
never executed: goto next_line;
0
320-
321 rctx->state = 3;-
322 }
never executed: end of block
0
323-
324-
325 case
never executed: case 3:
3:
never executed: case 3:
code before this statement never executed: case 3:
0
326-
327-
328-
329-
330 n = BIO_ctrl(rctx->mem,3,0,(char *)&p);-
331 if (n < 2
n < 2Description
TRUEnever evaluated
FALSEnever evaluated
)
0
332 goto
never executed: goto next_io;
next_io;
never executed: goto next_io;
0
333-
334-
335 if (*
*p++ != (16|0x20)Description
TRUEnever evaluated
FALSEnever evaluated
p++ != (16|0x20)
*p++ != (16|0x20)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
336 rctx->state = (0 | 0x1000);-
337 return
never executed: return 0;
0;
never executed: return 0;
0
338 }-
339-
340-
341 if (*
*p & 0x80Description
TRUEnever evaluated
FALSEnever evaluated
p & 0x80
*p & 0x80Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
342-
343-
344-
345 if (n < 6
n < 6Description
TRUEnever evaluated
FALSEnever evaluated
)
0
346 goto
never executed: goto next_io;
next_io;
never executed: goto next_io;
0
347 n = *p & 0x7F;-
348-
349 if (!n
!nDescription
TRUEnever evaluated
FALSEnever evaluated
|| (
(n > 4)Description
TRUEnever evaluated
FALSEnever evaluated
n > 4)
(n > 4)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
350 rctx->state = (0 | 0x1000);-
351 return
never executed: return 0;
0;
never executed: return 0;
0
352 }-
353 p++;-
354 rctx->asn1_len = 0;-
355 for (i = 0; i < n
i < nDescription
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
356 rctx->asn1_len <<= 8;-
357 rctx->asn1_len |= *p++;-
358 }
never executed: end of block
0
359-
360 if (rctx->asn1_len > (100 * 1024)
rctx->asn1_len > (100 * 1024)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
361 rctx->state = (0 | 0x1000);-
362 return
never executed: return 0;
0;
never executed: return 0;
0
363 }-
364-
365 rctx->asn1_len += n + 2;-
366 }
never executed: end of block
else
0
367 rctx->asn1_len = *p + 2;
never executed: rctx->asn1_len = *p + 2;
0
368-
369 rctx->state = 4;-
370-
371-
372-
373 case
never executed: case 4:
4:
never executed: case 4:
code before this statement never executed: case 4:
0
374 n = BIO_ctrl(rctx->mem,3,0,(char *)&p);-
375 if (n < (int)rctx->asn1_len
n < (int)rctx->asn1_lenDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
376 goto
never executed: goto next_io;
next_io;
never executed: goto next_io;
0
377-
378 *presp = d2i_OCSP_RESPONSE(-
379 ((void *)0)-
380 , &p, rctx->asn1_len);-
381 if (*
*prespDescription
TRUEnever evaluated
FALSEnever evaluated
presp
*prespDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
382 rctx->state = (8 | 0x1000);-
383 return
never executed: return 1;
1;
never executed: return 1;
0
384 }-
385-
386 rctx->state = (0 | 0x1000);-
387 return
never executed: return 0;
0;
never executed: return 0;
0
388-
389 case
never executed: case (8 | 0x1000):
(8 | 0x1000):
never executed: case (8 | 0x1000):
0
390 return
never executed: return 1;
1;
never executed: return 1;
0
391 }-
392-
393 return
never executed: return 0;
0;
never executed: return 0;
0
394}-
395-
396-
397OCSP_RESPONSE *-
398OCSP_sendreq_bio(BIO *b, const char *path, OCSP_REQUEST *req)-
399{-
400 OCSP_RESPONSE *resp = -
401 ((void *)0)-
402 ;-
403 OCSP_REQ_CTX *ctx;-
404 int rv;-
405-
406 ctx = OCSP_sendreq_new(b, path, req, -1);-
407 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
408 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
409 )-
410 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
411 ((void *)0)
never executed: return ((void *)0) ;
0
412 ;
never executed: return ((void *)0) ;
0
413-
414 do {-
415 rv = OCSP_sendreq_nbio(&resp, ctx);-
416 }
never executed: end of block
while ((
(rv == -1)Description
TRUEnever evaluated
FALSEnever evaluated
rv == -1)
(rv == -1)Description
TRUEnever evaluated
FALSEnever evaluated
&& BIO_test_flags(b, 0x08)
BIO_test_flags(b, 0x08)Description
TRUEnever evaluated
FALSEnever evaluated
);
0
417-
418 OCSP_REQ_CTX_free(ctx);-
419-
420 if (rv
rvDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
421 return
never executed: return resp;
resp;
never executed: return resp;
0
422-
423 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
424 ((void *)0)
never executed: return ((void *)0) ;
0
425 ;
never executed: return ((void *)0) ;
0
426}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2