OpenCoverage

loader_file.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/store/loader_file.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5static char *file_get_pass(const UI_METHOD *ui_method, char *pass,-
6 size_t maxsize, const char *prompt_info, void *data)-
7{-
8 UI *ui = UI_new();-
9 char *prompt = -
10 ((void *)0)-
11 ;-
12-
13 if (ui ==
ui == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
14 ((void *)0)
ui == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
15 ) {-
16 ERR_put_error(44,(118),((1|64)),__FILE__,54);-
17 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
18 ((void *)0)
never executed: return ((void *)0) ;
0
19 ;
never executed: return ((void *)0) ;
0
20 }-
21-
22 if (ui_method !=
ui_method != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
23 ((void *)0)
ui_method != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
24 )-
25 UI_set_method(ui, ui_method);
never executed: UI_set_method(ui, ui_method);
0
26 UI_add_user_data(ui, data);-
27-
28 if ((
(prompt = UI_c...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
prompt = UI_construct_prompt(ui, "pass phrase",
(prompt = UI_c...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
29 prompt_info)) ==
(prompt = UI_c...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
30 ((void *)0)
(prompt = UI_c...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
31 ) {-
32 ERR_put_error(44,(118),((1|64)),__FILE__,64);-
33 pass = -
34 ((void *)0)-
35 ;-
36 }
never executed: end of block
else if (!UI_add_input_string(ui, prompt, 0x02,
!UI_add_input_..., maxsize - 1)Description
TRUEnever evaluated
FALSEnever evaluated
0
37 pass, 0, maxsize - 1)
!UI_add_input_..., maxsize - 1)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
38 ERR_put_error(44,(118),(40),__FILE__,68);-
39 pass = -
40 ((void *)0)-
41 ;-
42 }
never executed: end of block
else {
0
43 switch (UI_process(ui)) {-
44 case
never executed: case -2:
-2:
never executed: case -2:
0
45 ERR_put_error(44,(118),(109),__FILE__,74)-
46 ;-
47 pass = -
48 ((void *)0)-
49 ;-
50 break;
never executed: break;
0
51 case
never executed: case -1:
-1:
never executed: case -1:
0
52 ERR_put_error(44,(118),(40),__FILE__,78);-
53 pass = -
54 ((void *)0)-
55 ;-
56 break;
never executed: break;
0
57 default
never executed: default:
:
never executed: default:
0
58 break;
never executed: break;
0
59 }-
60 }-
61-
62 CRYPTO_free(prompt, __FILE__, 86);-
63 UI_free(ui);-
64 return
never executed: return pass;
pass;
never executed: return pass;
0
65}-
66-
67struct pem_pass_data {-
68 const UI_METHOD *ui_method;-
69 void *data;-
70 const char *prompt_info;-
71};-
72-
73static int file_fill_pem_pass_data(struct pem_pass_data *pass_data,-
74 const char *prompt_info,-
75 const UI_METHOD *ui_method, void *ui_data)-
76{-
77 if (pass_data ==
pass_data == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
78 ((void *)0)
pass_data == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
79 )-
80 return
never executed: return 0;
0;
never executed: return 0;
0
81 pass_data->ui_method = ui_method;-
82 pass_data->data = ui_data;-
83 pass_data->prompt_info = prompt_info;-
84 return
never executed: return 1;
1;
never executed: return 1;
0
85}-
86-
87-
88static int file_get_pem_pass(char *buf, int num, int w, void *data)-
89{-
90 struct pem_pass_data *pass_data = data;-
91 char *pass = file_get_pass(pass_data->ui_method, buf, num,-
92 pass_data->prompt_info, pass_data->data);-
93-
94 return
never executed: return pass == ((void *)0) ? 0 : strlen(pass);
pass ==
pass == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: return pass == ((void *)0) ? 0 : strlen(pass);
0
95 ((void *)0)
pass == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: return pass == ((void *)0) ? 0 : strlen(pass);
0
96 ? 0 : strlen(pass);
never executed: return pass == ((void *)0) ? 0 : strlen(pass);
0
97}-
98typedef OSSL_STORE_INFO *(*file_try_decode_fn)(const char *pem_name,-
99 const char *pem_header,-
100 const unsigned char *blob,-
101 size_t len, void **handler_ctx,-
102 int *matchcount,-
103 const UI_METHOD *ui_method,-
104 void *ui_data);-
105-
106-
107-
108-
109-
110typedef int (*file_eof_fn)(void *handler_ctx);-
111-
112-
113-
114-
115-
116typedef void (*file_destroy_ctx_fn)(void **handler_ctx);-
117-
118typedef struct file_handler_st {-
119 const char *name;-
120 file_try_decode_fn try_decode;-
121 file_eof_fn eof;-
122 file_destroy_ctx_fn destroy_ctx;-
123-
124-
125 int repeatable;-
126} FILE_HANDLER;-
127-
128-
129-
130-
131-
132-
133static OSSL_STORE_INFO *try_decode_PKCS12(const char *pem_name,-
134 const char *pem_header,-
135 const unsigned char *blob,-
136 size_t len, void **pctx,-
137 int *matchcount,-
138 const UI_METHOD *ui_method,-
139 void *ui_data)-
140{-
141 OSSL_STORE_INFO *store_info = -
142 ((void *)0)-
143 ;-
144 struct stack_st_OSSL_STORE_INFO *ctx = *pctx;-
145-
146 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
147 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
148 ) {-
149-
150 PKCS12 *p12;-
151 int ok = 0;-
152-
153 if (pem_name !=
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
154 ((void *)0)
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
155 )-
156-
157 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
158 ((void *)0)
never executed: return ((void *)0) ;
0
159 ;
never executed: return ((void *)0) ;
0
160-
161 if ((
(p12 = d2i_PKC...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
p12 = d2i_PKCS12(
(p12 = d2i_PKC...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
162 ((void *)0)
(p12 = d2i_PKC...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
163 , &blob, len)) !=
(p12 = d2i_PKC...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
164 ((void *)0)
(p12 = d2i_PKC...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
165 ) {-
166 char *pass = -
167 ((void *)0)-
168 ;-
169 char tpass[1024];-
170 EVP_PKEY *pkey = -
171 ((void *)0)-
172 ;-
173 X509 *cert = -
174 ((void *)0)-
175 ;-
176 struct stack_st_X509 *chain = -
177 ((void *)0)-
178 ;-
179-
180 *matchcount = 1;-
181-
182 if (PKCS12_verify_mac(p12, "", 0)
PKCS12_verify_mac(p12, "", 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
183 || PKCS12_verify_mac(p12,
PKCS12_verify_...void *)0) , 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
184 ((void *)0)
PKCS12_verify_...void *)0) , 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
185 , 0)
PKCS12_verify_...void *)0) , 0)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
186 pass = "";-
187 }
never executed: end of block
else {
0
188 if ((
(pass = file_g...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
pass = file_get_pass(ui_method, tpass, 1024,
(pass = file_g...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
189 "PKCS12 import password",
(pass = file_g...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
190 ui_data)) ==
(pass = file_g...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
191 ((void *)0)
(pass = file_g...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
192 ) {-
193 ERR_put_error(44,(122),(114),__FILE__,232)-
194 ;-
195 goto
never executed: goto p12_end;
p12_end;
never executed: goto p12_end;
0
196 }-
197 if (!PKCS12_verify_mac(p12, pass, strlen(pass))
!PKCS12_verify... strlen(pass))Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
198 ERR_put_error(44,(122),(113),__FILE__,237)-
199 ;-
200 goto
never executed: goto p12_end;
p12_end;
never executed: goto p12_end;
0
201 }-
202 }
never executed: end of block
0
203-
204 if (PKCS12_parse(p12, pass, &pkey, &cert, &chain)
PKCS12_parse(p...&cert, &chain)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
205 OSSL_STORE_INFO *osi_pkey = -
206 ((void *)0)-
207 ;-
208 OSSL_STORE_INFO *osi_cert = -
209 ((void *)0)-
210 ;-
211 OSSL_STORE_INFO *osi_ca = -
212 ((void *)0)-
213 ;-
214-
215 if ((
(ctx = sk_OSSL...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ctx = sk_OSSL_STORE_INFO_new_null()) !=
(ctx = sk_OSSL...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
216 ((void *)0)
(ctx = sk_OSSL...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
217 -
218 && (
(osi_pkey = OS...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
osi_pkey = OSSL_STORE_INFO_new_PKEY(pkey)) !=
(osi_pkey = OS...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
219 ((void *)0)
(osi_pkey = OS...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
220 -
221 && sk_OSSL_STORE_INFO_push(ctx, osi_pkey) != 0
sk_OSSL_STORE_...osi_pkey) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
222 && (
(osi_cert = OS...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
osi_cert = OSSL_STORE_INFO_new_CERT(cert)) !=
(osi_cert = OS...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
223 ((void *)0)
(osi_cert = OS...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
224 -
225 && sk_OSSL_STORE_INFO_push(ctx, osi_cert) != 0
sk_OSSL_STORE_...osi_cert) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
226 ok = 1;-
227 osi_pkey = -
228 ((void *)0)-
229 ;-
230 osi_cert = -
231 ((void *)0)-
232 ;-
233-
234 while(sk_X509_num(chain) > 0
sk_X509_num(chain) > 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
235 X509 *ca = sk_X509_value(chain, 0);-
236-
237 if ((
(osi_ca = OSSL...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
osi_ca = OSSL_STORE_INFO_new_CERT(ca)) ==
(osi_ca = OSSL...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
238 ((void *)0)
(osi_ca = OSSL...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
239 -
240 || sk_OSSL_STORE_INFO_push(ctx, osi_ca) == 0
sk_OSSL_STORE_..., osi_ca) == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
241 ok = 0;-
242 break;
never executed: break;
0
243 }-
244 osi_ca = -
245 ((void *)0)-
246 ;-
247 (void)sk_X509_shift(chain);-
248 }
never executed: end of block
0
249 }
never executed: end of block
0
250 if (!ok
!okDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
251 OSSL_STORE_INFO_free(osi_ca);-
252 OSSL_STORE_INFO_free(osi_cert);-
253 OSSL_STORE_INFO_free(osi_pkey);-
254 sk_OSSL_STORE_INFO_pop_free(ctx, OSSL_STORE_INFO_free);-
255 EVP_PKEY_free(pkey);-
256 X509_free(cert);-
257 sk_X509_pop_free(chain, X509_free);-
258 ctx = -
259 ((void *)0)-
260 ;-
261 }
never executed: end of block
0
262 *pctx = ctx;-
263 }
never executed: end of block
0
264 }
never executed: end of block
0
265 p12_end:
code before this statement never executed: p12_end:
0
266 PKCS12_free(p12);-
267 if (!ok
!okDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
268 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
269 ((void *)0)
never executed: return ((void *)0) ;
0
270 ;
never executed: return ((void *)0) ;
0
271 }
never executed: end of block
0
272-
273 if (ctx !=
ctx != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
274 ((void *)0)
ctx != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
275 ) {-
276 *matchcount = 1;-
277 store_info = sk_OSSL_STORE_INFO_shift(ctx);-
278 }
never executed: end of block
0
279-
280 return
never executed: return store_info;
store_info;
never executed: return store_info;
0
281}-
282-
283static int eof_PKCS12(void *ctx_)-
284{-
285 struct stack_st_OSSL_STORE_INFO *ctx = ctx_;-
286-
287 return
never executed: return ctx == ((void *)0) || sk_OSSL_STORE_INFO_num(ctx) == 0;
ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: return ctx == ((void *)0) || sk_OSSL_STORE_INFO_num(ctx) == 0;
0
288 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: return ctx == ((void *)0) || sk_OSSL_STORE_INFO_num(ctx) == 0;
0
289 || sk_OSSL_STORE_INFO_num(ctx) == 0
sk_OSSL_STORE_..._num(ctx) == 0Description
TRUEnever evaluated
FALSEnever evaluated
;
never executed: return ctx == ((void *)0) || sk_OSSL_STORE_INFO_num(ctx) == 0;
0
290}-
291-
292static void destroy_ctx_PKCS12(void **pctx)-
293{-
294 struct stack_st_OSSL_STORE_INFO *ctx = *pctx;-
295-
296 sk_OSSL_STORE_INFO_pop_free(ctx, OSSL_STORE_INFO_free);-
297 *pctx = -
298 ((void *)0)-
299 ;-
300}
never executed: end of block
0
301-
302static FILE_HANDLER PKCS12_handler = {-
303 "PKCS12",-
304 try_decode_PKCS12,-
305 eof_PKCS12,-
306 destroy_ctx_PKCS12,-
307 1-
308};-
309-
310-
311-
312-
313-
314-
315static OSSL_STORE_INFO *try_decode_PKCS8Encrypted(const char *pem_name,-
316 const char *pem_header,-
317 const unsigned char *blob,-
318 size_t len, void **pctx,-
319 int *matchcount,-
320 const UI_METHOD *ui_method,-
321 void *ui_data)-
322{-
323 X509_SIG *p8 = -
324 ((void *)0)-
325 ;-
326 char kbuf[1024];-
327 char *pass = -
328 ((void *)0)-
329 ;-
330 const X509_ALGOR *dalg = -
331 ((void *)0)-
332 ;-
333 const ASN1_OCTET_STRING *doct = -
334 ((void *)0)-
335 ;-
336 OSSL_STORE_INFO *store_info = -
337 ((void *)0)-
338 ;-
339 BUF_MEM *mem = -
340 ((void *)0)-
341 ;-
342 unsigned char *new_data = -
343 ((void *)0)-
344 ;-
345 int new_data_len;-
346-
347 if (pem_name !=
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
348 ((void *)0)
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
349 ) {-
350 if (-
351 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
352 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
353 ) && __builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
354 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
355 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
356 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
357 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
358 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
359 ), (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
360 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
361 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
362 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
363 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
364 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
365 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
366 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
367 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
368 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
369 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
370 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
371 ) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
372 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
373 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
374 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
375 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
376 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
377 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
378 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
379 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
380 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
381 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
382 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
383 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
384 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
385 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
386 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
387 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
388 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
389 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
390 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
391 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
392 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
393 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
394 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
395 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
396 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
397 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
398 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
399 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
400 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
401 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
402 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
403 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
404 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
405 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
406 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
407 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
408 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
409 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
410 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
411 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
412 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
413 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
414 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
415 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
416 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
417 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
418 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
419 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
420 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
421 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
422 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
423 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
424 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
425 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "ENCRYPTED PRIVATE KEY" ))[3] - __s2[3]);
0
426 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "ENCRYPTED PRIVATE KEY" ))[3] - __s2[3]);
0
427 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
428 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
429 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
430 "ENCRYPTED PRIVATE KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
431 )))); })
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
432 != 0
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
433 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
434 ((void *)0)
never executed: return ((void *)0) ;
0
435 ;
never executed: return ((void *)0) ;
0
436 *matchcount = 1;-
437 }
never executed: end of block
0
438-
439 if ((
(p8 = d2i_X509...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
p8 = d2i_X509_SIG(
(p8 = d2i_X509...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
440 ((void *)0)
(p8 = d2i_X509...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
441 , &blob, len)) ==
(p8 = d2i_X509...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
442 ((void *)0)
(p8 = d2i_X509...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
443 )-
444 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
445 ((void *)0)
never executed: return ((void *)0) ;
0
446 ;
never executed: return ((void *)0) ;
0
447-
448 *matchcount = 1;-
449-
450 if ((
(mem = BUF_MEM...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
mem = BUF_MEM_new()) ==
(mem = BUF_MEM...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
451 ((void *)0)
(mem = BUF_MEM...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
452 ) {-
453 ERR_put_error(44,(125),((1|64)),__FILE__,354)-
454 ;-
455 goto
never executed: goto nop8;
nop8;
never executed: goto nop8;
0
456 }-
457-
458 if ((
(pass = file_g...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
pass = file_get_pass(ui_method, kbuf, 1024,
(pass = file_g...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
459 "PKCS8 decrypt password", ui_data)) ==
(pass = file_g...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
460 ((void *)0)
(pass = file_g...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
461 ) {-
462 ERR_put_error(44,(125),(115),__FILE__,361)-
463 ;-
464 goto
never executed: goto nop8;
nop8;
never executed: goto nop8;
0
465 }-
466-
467 X509_SIG_get0(p8, &dalg, &doct);-
468 if (!PKCS12_pbe_crypt(dalg, pass, strlen(pass), doct->data, doct->length,
!PKCS12_pbe_cr...w_data_len, 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
469 &new_data, &new_data_len, 0)
!PKCS12_pbe_cr...w_data_len, 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
470 goto
never executed: goto nop8;
nop8;
never executed: goto nop8;
0
471-
472 mem->data = (char *)new_data;-
473 mem->max = mem->length = (size_t)new_data_len;-
474 X509_SIG_free(p8);-
475-
476 store_info = ossl_store_info_new_EMBEDDED("PRIVATE KEY", mem);-
477 if (store_info ==
store_info == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
478 ((void *)0)
store_info == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
479 ) {-
480 ERR_put_error(44,(125),((1|64)),__FILE__,377)-
481 ;-
482 goto
never executed: goto nop8;
nop8;
never executed: goto nop8;
0
483 }-
484-
485 return
never executed: return store_info;
store_info;
never executed: return store_info;
0
486 nop8:-
487 X509_SIG_free(p8);-
488 BUF_MEM_free(mem);-
489 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
490 ((void *)0)
never executed: return ((void *)0) ;
0
491 ;
never executed: return ((void *)0) ;
0
492}-
493-
494static FILE_HANDLER PKCS8Encrypted_handler = {-
495 "PKCS8Encrypted",-
496 try_decode_PKCS8Encrypted-
497};-
498-
499-
500-
501-
502-
503-
504int pem_check_suffix(const char *pem_str, const char *suffix);-
505static OSSL_STORE_INFO *try_decode_PrivateKey(const char *pem_name,-
506 const char *pem_header,-
507 const unsigned char *blob,-
508 size_t len, void **pctx,-
509 int *matchcount,-
510 const UI_METHOD *ui_method,-
511 void *ui_data)-
512{-
513 OSSL_STORE_INFO *store_info = -
514 ((void *)0)-
515 ;-
516 EVP_PKEY *pkey = -
517 ((void *)0)-
518 ;-
519 const EVP_PKEY_ASN1_METHOD *ameth = -
520 ((void *)0)-
521 ;-
522-
523 if (pem_name !=
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
524 ((void *)0)
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
525 ) {-
526 if (-
527 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
528 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
529 ) && __builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
530 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
531 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
532 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
533 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
534 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
535 ), (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
536 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
537 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
538 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
539 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
540 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
541 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
542 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
543 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
544 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
545 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
546 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
547 ) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
548 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
549 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
550 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
551 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
552 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
553 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
554 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
555 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
556 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
557 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
558 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
559 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
560 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
561 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
562 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
563 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
564 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
565 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
566 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
567 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
568 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
569 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
570 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
571 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
572 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
573 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
574 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
575 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
576 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
577 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
578 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
579 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
580 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
581 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
582 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
583 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
584 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
585 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
586 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
587 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
588 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
589 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
590 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
591 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
592 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
593 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
594 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
595 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
596 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
597 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
598 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
599 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
600 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
601 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "PRIVATE KEY" ))[3] - __s2[3]);
0
602 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "PRIVATE KEY" ))[3] - __s2[3]);
0
603 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
604 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
605 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
606 "PRIVATE KEY"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
607 )))); })
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
608 == 0
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
609 PKCS8_PRIV_KEY_INFO *p8inf =-
610 d2i_PKCS8_PRIV_KEY_INFO(-
611 ((void *)0)-
612 , &blob, len);-
613-
614 *matchcount = 1;-
615 if (p8inf !=
p8inf != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
616 ((void *)0)
p8inf != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
617 )-
618 pkey = EVP_PKCS82PKEY(p8inf);
never executed: pkey = EVP_PKCS82PKEY(p8inf);
0
619 PKCS8_PRIV_KEY_INFO_free(p8inf);-
620 }
never executed: end of block
else {
0
621 int slen;-
622-
623 if ((
(slen = pem_ch...ATE KEY")) > 0Description
TRUEnever evaluated
FALSEnever evaluated
slen = pem_check_suffix(pem_name, "PRIVATE KEY")) > 0
(slen = pem_ch...ATE KEY")) > 0Description
TRUEnever evaluated
FALSEnever evaluated
0
624 && (
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ameth = EVP_PKEY_asn1_find_str(
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
625 ((void *)0)
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
626 , pem_name,
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
627 slen)) !=
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
628 ((void *)0)
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
629 ) {-
630 *matchcount = 1;-
631 pkey = d2i_PrivateKey(ameth->pkey_id, -
632 ((void *)0)-
633 , &blob, len);-
634 }
never executed: end of block
0
635 }
never executed: end of block
0
636 } else {-
637 int i;-
638-
639 for (i = 0; i < EVP_PKEY_asn1_get_count()
i < EVP_PKEY_asn1_get_count()Description
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
640 EVP_PKEY *tmp_pkey = -
641 ((void *)0)-
642 ;-
643 const unsigned char *tmp_blob = blob;-
644-
645 ameth = EVP_PKEY_asn1_get0(i);-
646 if (ameth->pkey_flags & 0x1
ameth->pkey_flags & 0x1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
647 continue;
never executed: continue;
0
648-
649 tmp_pkey = d2i_PrivateKey(ameth->pkey_id, -
650 ((void *)0)-
651 , &tmp_blob, len);-
652 if (tmp_pkey !=
tmp_pkey != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
653 ((void *)0)
tmp_pkey != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
654 ) {-
655 if (pkey !=
pkey != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
656 ((void *)0)
pkey != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
657 )-
658 EVP_PKEY_free(tmp_pkey);
never executed: EVP_PKEY_free(tmp_pkey);
0
659 else-
660 pkey = tmp_pkey;
never executed: pkey = tmp_pkey;
0
661 (*matchcount)++;-
662 }
never executed: end of block
0
663 }
never executed: end of block
0
664-
665 if (*
*matchcount > 1Description
TRUEnever evaluated
FALSEnever evaluated
matchcount > 1
*matchcount > 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
666 EVP_PKEY_free(pkey);-
667 pkey = -
668 ((void *)0)-
669 ;-
670 }
never executed: end of block
0
671 }
never executed: end of block
0
672 if (pkey ==
pkey == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
673 ((void *)0)
pkey == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
674 )-
675-
676 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
677 ((void *)0)
never executed: return ((void *)0) ;
0
678 ;
never executed: return ((void *)0) ;
0
679-
680 store_info = OSSL_STORE_INFO_new_PKEY(pkey);-
681 if (store_info ==
store_info == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
682 ((void *)0)
store_info == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
683 )-
684 EVP_PKEY_free(pkey);
never executed: EVP_PKEY_free(pkey);
0
685-
686 return
never executed: return store_info;
store_info;
never executed: return store_info;
0
687}-
688-
689static FILE_HANDLER PrivateKey_handler = {-
690 "PrivateKey",-
691 try_decode_PrivateKey-
692};-
693-
694-
695-
696-
697static OSSL_STORE_INFO *try_decode_PUBKEY(const char *pem_name,-
698 const char *pem_header,-
699 const unsigned char *blob,-
700 size_t len, void **pctx,-
701 int *matchcount,-
702 const UI_METHOD *ui_method,-
703 void *ui_data)-
704{-
705 OSSL_STORE_INFO *store_info = -
706 ((void *)0)-
707 ;-
708 EVP_PKEY *pkey = -
709 ((void *)0)-
710 ;-
711-
712 if (pem_name !=
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
713 ((void *)0)
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
714 ) {-
715 if (-
716 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
717 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
718 ) && __builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
719 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
720 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
721 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
722 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
723 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
724 ), (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
725 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
726 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
727 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
728 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
729 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
730 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
731 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
732 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
733 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
734 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
735 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
736 ) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
737 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
738 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
739 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
740 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
741 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
742 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
743 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
744 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
745 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
746 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
747 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
748 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
749 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
750 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
751 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
752 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
753 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
754 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
755 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
756 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
757 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
758 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
759 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
760 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
761 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
762 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
763 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
764 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
765 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
766 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
767 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
768 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
769 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
770 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
771 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
772 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
773 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
774 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
775 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
776 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
777 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
778 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
779 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
780 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
781 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
782 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
783 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
784 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
785 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
786 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
787 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
788 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
789 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
790 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "PUBLIC KEY" ))[3] - __s2[3]);
0
791 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "PUBLIC KEY" ))[3] - __s2[3]);
0
792 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
793 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
794 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
795 "PUBLIC KEY"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
796 )))); })
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
797 != 0
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
798-
799 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
800 ((void *)0)
never executed: return ((void *)0) ;
0
801 ;
never executed: return ((void *)0) ;
0
802 *matchcount = 1;-
803 }
never executed: end of block
0
804-
805 if ((
(pkey = d2i_PU...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
pkey = d2i_PUBKEY(
(pkey = d2i_PU...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
806 ((void *)0)
(pkey = d2i_PU...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
807 , &blob, len)) !=
(pkey = d2i_PU...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
808 ((void *)0)
(pkey = d2i_PU...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
809 ) {-
810 *matchcount = 1;-
811 store_info = OSSL_STORE_INFO_new_PKEY(pkey);-
812 }
never executed: end of block
0
813-
814 return
never executed: return store_info;
store_info;
never executed: return store_info;
0
815}-
816-
817static FILE_HANDLER PUBKEY_handler = {-
818 "PUBKEY",-
819 try_decode_PUBKEY-
820};-
821-
822-
823-
824-
825static OSSL_STORE_INFO *try_decode_params(const char *pem_name,-
826 const char *pem_header,-
827 const unsigned char *blob,-
828 size_t len, void **pctx,-
829 int *matchcount,-
830 const UI_METHOD *ui_method,-
831 void *ui_data)-
832{-
833 OSSL_STORE_INFO *store_info = -
834 ((void *)0)-
835 ;-
836 int slen = 0;-
837 EVP_PKEY *pkey = -
838 ((void *)0)-
839 ;-
840 const EVP_PKEY_ASN1_METHOD *ameth = -
841 ((void *)0)-
842 ;-
843 int ok = 0;-
844-
845 if (pem_name !=
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
846 ((void *)0)
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
847 ) {-
848 if ((
(slen = pem_ch...METERS")) == 0Description
TRUEnever evaluated
FALSEnever evaluated
slen = pem_check_suffix(pem_name, "PARAMETERS")) == 0
(slen = pem_ch...METERS")) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
849 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
850 ((void *)0)
never executed: return ((void *)0) ;
0
851 ;
never executed: return ((void *)0) ;
0
852 *matchcount = 1;-
853 }
never executed: end of block
0
854-
855 if (slen > 0
slen > 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
856 if ((
(pkey = EVP_PK...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
pkey = EVP_PKEY_new()) ==
(pkey = EVP_PK...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
857 ((void *)0)
(pkey = EVP_PK...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
858 ) {-
859 ERR_put_error(44,(121),(6),__FILE__,531);-
860 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
861 ((void *)0)
never executed: return ((void *)0) ;
0
862 ;
never executed: return ((void *)0) ;
0
863 }-
864-
865-
866 if (EVP_PKEY_set_type_str(pkey, pem_name, slen)
EVP_PKEY_set_t...em_name, slen)Description
TRUEnever evaluated
FALSEnever evaluated
0
867 && (
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ameth = EVP_PKEY_get0_asn1(pkey)) !=
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
868 ((void *)0)
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
869 -
870 && ameth->param_decode !=
ameth->param_d...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
871 ((void *)0)
ameth->param_d...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
872 -
873 && ameth->param_decode(pkey, &blob, len)
ameth->param_d...y, &blob, len)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
874 ok = 1;
never executed: ok = 1;
0
875 }
never executed: end of block
else {
0
876 int i;-
877 EVP_PKEY *tmp_pkey = -
878 ((void *)0)-
879 ;-
880-
881 for (i = 0; i < EVP_PKEY_asn1_get_count()
i < EVP_PKEY_asn1_get_count()Description
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
882 const unsigned char *tmp_blob = blob;-
883-
884 if (tmp_pkey ==
tmp_pkey == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
885 ((void *)0)
tmp_pkey == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
886 && (
(tmp_pkey = EV...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
tmp_pkey = EVP_PKEY_new()) ==
(tmp_pkey = EV...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
887 ((void *)0)
(tmp_pkey = EV...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
888 ) {-
889 ERR_put_error(44,(121),(6),__FILE__,549);-
890 break;
never executed: break;
0
891 }-
892-
893 ameth = EVP_PKEY_asn1_get0(i);-
894 if (ameth->pkey_flags & 0x1
ameth->pkey_flags & 0x1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
895 continue;
never executed: continue;
0
896-
897 if (EVP_PKEY_set_type(tmp_pkey, ameth->pkey_id)
EVP_PKEY_set_t...meth->pkey_id)Description
TRUEnever evaluated
FALSEnever evaluated
0
898 && (
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ameth = EVP_PKEY_get0_asn1(tmp_pkey)) !=
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
899 ((void *)0)
(ameth = EVP_P...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
900 -
901 && ameth->param_decode !=
ameth->param_d...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
902 ((void *)0)
ameth->param_d...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
903 -
904 && ameth->param_decode(tmp_pkey, &tmp_blob, len)
ameth->param_d...tmp_blob, len)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
905 if (pkey !=
pkey != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
906 ((void *)0)
pkey != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
907 )-
908 EVP_PKEY_free(tmp_pkey);
never executed: EVP_PKEY_free(tmp_pkey);
0
909 else-
910 pkey = tmp_pkey;
never executed: pkey = tmp_pkey;
0
911 tmp_pkey = -
912 ((void *)0)-
913 ;-
914 (*matchcount)++;-
915 }
never executed: end of block
0
916 }
never executed: end of block
0
917-
918 EVP_PKEY_free(tmp_pkey);-
919 if (*
*matchcount == 1Description
TRUEnever evaluated
FALSEnever evaluated
matchcount == 1
*matchcount == 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
920 ok = 1;-
921 }
never executed: end of block
0
922 }
never executed: end of block
0
923-
924 if (ok
okDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
925 store_info = OSSL_STORE_INFO_new_PARAMS(pkey);
never executed: store_info = OSSL_STORE_INFO_new_PARAMS(pkey);
0
926 if (store_info ==
store_info == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
927 ((void *)0)
store_info == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
928 )-
929 EVP_PKEY_free(pkey);
never executed: EVP_PKEY_free(pkey);
0
930-
931 return
never executed: return store_info;
store_info;
never executed: return store_info;
0
932}-
933-
934static FILE_HANDLER params_handler = {-
935 "params",-
936 try_decode_params-
937};-
938-
939-
940-
941-
942static OSSL_STORE_INFO *try_decode_X509Certificate(const char *pem_name,-
943 const char *pem_header,-
944 const unsigned char *blob,-
945 size_t len, void **pctx,-
946 int *matchcount,-
947 const UI_METHOD *ui_method,-
948 void *ui_data)-
949{-
950 OSSL_STORE_INFO *store_info = -
951 ((void *)0)-
952 ;-
953 X509 *cert = -
954 ((void *)0)-
955 ;-
956 int ignore_trusted = 1;-
957-
958 if (pem_name !=
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
959 ((void *)0)
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
960 ) {-
961 if (-
962 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
963 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
964 ) && __builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
965 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
966 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
967 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
968 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
969 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
970 ), (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
971 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
972 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
973 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
974 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
975 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
976 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
977 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
978 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
979 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
980 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
981 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
982 ) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
983 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
984 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
985 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
986 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
987 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
988 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
989 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
990 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
991 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
992 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
993 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
994 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
995 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
996 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
997 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
998 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
999 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1000 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1001 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1002 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1003 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1004 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1005 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1006 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1007 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1008 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
1009 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
1010 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1011 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1012 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1013 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1014 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1015 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1016 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1017 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1018 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1019 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1020 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1021 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1022 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1023 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1024 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1025 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1026 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1027 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1028 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1029 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1030 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1031 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1032 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1033 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1034 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1035 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1036 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "TRUSTED CERTIFICATE" ))[3] - __s2[3]);
0
1037 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "TRUSTED CERTIFICATE" ))[3] - __s2[3]);
0
1038 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1039 pem_name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1040 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1041 "TRUSTED CERTIFICATE"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1042 )))); })
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1043 == 0
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1044 ignore_trusted = 0;
never executed: ignore_trusted = 0;
0
1045 else if (-
1046 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1047 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1048 ) && __builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1049 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1050 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1051 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1052 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1053 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1054 ), (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1055 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1056 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1057 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1058 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1059 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1060 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1061 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1062 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1063 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1064 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1065 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1066 ) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1067 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1068 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1069 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1070 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1071 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1072 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1073 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1074 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1075 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1076 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1077 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1078 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1079 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1080 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1081 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1082 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1083 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1084 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1085 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1086 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1087 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1088 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1089 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1090 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1091 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1092 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
1093 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
1094 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1095 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1096 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1097 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1098 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1099 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1100 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1101 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1102 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1103 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1104 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1105 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1106 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1107 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1108 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1109 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1110 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1111 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1112 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1113 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1114 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1115 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1116 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1117 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1118 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1119 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1120 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "X509 CERTIFICATE" ))[3] - __s2[3]);
0
1121 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "X509 CERTIFICATE" ))[3] - __s2[3]);
0
1122 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1123 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1124 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1125 "X509 CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1126 )))); })
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1127 != 0
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1128 && -
1129 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1130 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1131 ) && __builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1132 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1133 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1134 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1135 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1136 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1137 ), (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1138 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1139 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1140 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1141 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1142 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1143 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1144 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1145 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1146 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1147 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1148 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1149 ) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1150 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1151 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1152 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1153 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1154 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1155 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1156 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1157 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1158 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1159 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1160 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1161 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1162 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1163 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1164 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1165 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1166 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1167 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1168 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1169 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1170 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1171 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1172 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1173 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1174 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1175 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
1176 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
1177 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1178 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1179 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1180 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1181 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1182 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1183 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1184 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1185 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1186 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1187 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1188 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1189 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1190 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1191 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1192 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1193 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1194 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1195 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1196 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1197 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1198 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1199 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1200 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1201 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1202 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1203 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "CERTIFICATE" ))[3] - __s2[3]);
0
1204 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "CERTIFICATE" ))[3] - __s2[3]);
0
1205 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1206 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1207 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1208 "CERTIFICATE"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1209 )))); })
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1210 != 0
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1211-
1212 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
1213 ((void *)0)
never executed: return ((void *)0) ;
0
1214 ;
never executed: return ((void *)0) ;
0
1215 *matchcount = 1;-
1216 }
never executed: end of block
0
1217-
1218 if ((
(cert = d2i_X5...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
cert = d2i_X509_AUX(
(cert = d2i_X5...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1219 ((void *)0)
(cert = d2i_X5...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1220 , &blob, len)) !=
(cert = d2i_X5...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1221 ((void *)0)
(cert = d2i_X5...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1222 -
1223 || (ignore_trusted
ignore_trustedDescription
TRUEnever evaluated
FALSEnever evaluated
&& (
(cert = d2i_X5...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
cert = d2i_X509(
(cert = d2i_X5...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1224 ((void *)0)
(cert = d2i_X5...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1225 , &blob, len)) !=
(cert = d2i_X5...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1226 ((void *)0)
(cert = d2i_X5...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1227 )) {-
1228 *matchcount = 1;-
1229 store_info = OSSL_STORE_INFO_new_CERT(cert);-
1230 }
never executed: end of block
0
1231-
1232 if (store_info ==
store_info == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1233 ((void *)0)
store_info == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1234 )-
1235 X509_free(cert);
never executed: X509_free(cert);
0
1236-
1237 return
never executed: return store_info;
store_info;
never executed: return store_info;
0
1238}-
1239-
1240static FILE_HANDLER X509Certificate_handler = {-
1241 "X509Certificate",-
1242 try_decode_X509Certificate-
1243};-
1244-
1245-
1246-
1247-
1248static OSSL_STORE_INFO *try_decode_X509CRL(const char *pem_name,-
1249 const char *pem_header,-
1250 const unsigned char *blob,-
1251 size_t len, void **pctx,-
1252 int *matchcount,-
1253 const UI_METHOD *ui_method,-
1254 void *ui_data)-
1255{-
1256 OSSL_STORE_INFO *store_info = -
1257 ((void *)0)-
1258 ;-
1259 X509_CRL *crl = -
1260 ((void *)0)-
1261 ;-
1262-
1263 if (pem_name !=
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1264 ((void *)0)
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1265 ) {-
1266 if (-
1267 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1268 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1269 ) && __builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1270 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1271 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1272 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1273 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1274 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1275 ), (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1276 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1277 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1278 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1279 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1280 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1281 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1282 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1283 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1284 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1285 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1286 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1287 ) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1288 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1289 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1290 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1291 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1292 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1293 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1294 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1295 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1296 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1297 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1298 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1299 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1300 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1301 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1302 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1303 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1304 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1305 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1306 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1307 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1308 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1309 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1310 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1311 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1312 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1313 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
1314 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( pem_name ))[3] - __s2[3]);
0
1315 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1316 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1317 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1318 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1319 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1320 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1321 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1322 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1323 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1324 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1325 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1326 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1327 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1328 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1329 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1330 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1331 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1332 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1333 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1334 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1335 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1336 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1337 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1338 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1339 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1340 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1341 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "X509 CRL" ))[3] - __s2[3]);
0
1342 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "X509 CRL" ))[3] - __s2[3]);
0
1343 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1344 pem_name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1345 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1346 "X509 CRL"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1347 )))); })
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1348 != 0
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1349-
1350 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
1351 ((void *)0)
never executed: return ((void *)0) ;
0
1352 ;
never executed: return ((void *)0) ;
0
1353 *matchcount = 1;-
1354 }
never executed: end of block
0
1355-
1356 if ((
(crl = d2i_X50...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
crl = d2i_X509_CRL(
(crl = d2i_X50...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1357 ((void *)0)
(crl = d2i_X50...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1358 , &blob, len)) !=
(crl = d2i_X50...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1359 ((void *)0)
(crl = d2i_X50...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1360 ) {-
1361 *matchcount = 1;-
1362 store_info = OSSL_STORE_INFO_new_CRL(crl);-
1363 }
never executed: end of block
0
1364-
1365 if (store_info ==
store_info == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1366 ((void *)0)
store_info == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1367 )-
1368 X509_CRL_free(crl);
never executed: X509_CRL_free(crl);
0
1369-
1370 return
never executed: return store_info;
store_info;
never executed: return store_info;
0
1371}-
1372-
1373static FILE_HANDLER X509CRL_handler = {-
1374 "X509CRL",-
1375 try_decode_X509CRL-
1376};-
1377-
1378-
1379-
1380-
1381static const FILE_HANDLER *file_handlers[] = {-
1382 &PKCS12_handler,-
1383 &PKCS8Encrypted_handler,-
1384 &X509Certificate_handler,-
1385 &X509CRL_handler,-
1386 &params_handler,-
1387 &PUBKEY_handler,-
1388 &PrivateKey_handler,-
1389};-
1390-
1391-
1392-
1393-
1394-
1395-
1396-
1397struct ossl_store_loader_ctx_st {-
1398 enum {-
1399 is_raw = 0,-
1400 is_pem,-
1401 is_dir-
1402 } type;-
1403 int errcnt;-
1404-
1405 unsigned int flags;-
1406 union {-
1407 struct {-
1408 BIO *file;-
1409-
1410-
1411-
1412-
1413-
1414 const FILE_HANDLER *last_handler;-
1415 void *last_handler_ctx;-
1416 } file;-
1417 struct {-
1418 OPENSSL_DIR_CTX *ctx;-
1419 int end_reached;-
1420 char *uri;-
1421-
1422-
1423-
1424-
1425-
1426-
1427 char search_name[9];-
1428-
1429-
1430-
1431-
1432-
1433-
1434 const char *last_entry;-
1435 int last_errno;-
1436 } dir;-
1437 } _;-
1438-
1439-
1440 int expected_type;-
1441};-
1442-
1443static void OSSL_STORE_LOADER_CTX_free(OSSL_STORE_LOADER_CTX *ctx)-
1444{-
1445 if (ctx->type == is_dir
ctx->type == is_dirDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1446 CRYPTO_free(ctx->_.dir.uri, __FILE__, 744);-
1447 }
never executed: end of block
else {
0
1448 if (ctx->_.file.last_handler !=
ctx->_.file.la...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1449 ((void *)0)
ctx->_.file.la...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1450 ) {-
1451 ctx->_.file.last_handler->destroy_ctx(&ctx->_.file.last_handler_ctx);-
1452 ctx->_.file.last_handler_ctx = -
1453 ((void *)0)-
1454 ;-
1455 ctx->_.file.last_handler = -
1456 ((void *)0)-
1457 ;-
1458 }
never executed: end of block
0
1459 }
never executed: end of block
0
1460 CRYPTO_free(ctx, __FILE__, 752);-
1461}
never executed: end of block
0
1462-
1463static OSSL_STORE_LOADER_CTX *file_open(const OSSL_STORE_LOADER *loader,-
1464 const char *uri,-
1465 const UI_METHOD *ui_method,-
1466 void *ui_data)-
1467{-
1468 OSSL_STORE_LOADER_CTX *ctx = -
1469 ((void *)0)-
1470 ;-
1471 struct stat st;-
1472 struct {-
1473 const char *path;-
1474 unsigned int check_absolute:1;-
1475 } path_data[2];-
1476 size_t path_data_n = 0, i;-
1477 const char *path;-
1478-
1479-
1480-
1481-
1482 path_data[path_data_n].check_absolute = 0;-
1483 path_data[path_data_n++].path = uri;-
1484-
1485-
1486-
1487-
1488-
1489-
1490-
1491 if (strncasecmp(uri, "file:", 5) == 0
strncasecmp(ur...ile:", 5) == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1492 const char *p = &uri[5];-
1493-
1494 if (-
1495 (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
__extension__ (__builtin_constant_p (
__builtin_constant_p ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1496 2
__builtin_constant_p ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1497 )
__builtin_constant_p ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
&& ((__builtin_constant_p (
__builtin_cons..._p ( &uri[5] )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1498 &uri[5]
__builtin_cons..._p ( &uri[5] )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1499 )
__builtin_cons..._p ( &uri[5] )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( &uri[...size_t) ( 2 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1500 &uri[5]
strlen ( &uri[...size_t) ( 2 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1501 ) < ((size_t) (
strlen ( &uri[...size_t) ( 2 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1502 2
strlen ( &uri[...size_t) ( 2 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1503 ))
strlen ( &uri[...size_t) ( 2 ))Description
TRUEnever evaluated
FALSEnever evaluated
) || (__builtin_constant_p (
__builtin_constant_p ( "//" )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1504 "//"
__builtin_constant_p ( "//" )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1505 )
__builtin_constant_p ( "//" )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( "//" ...size_t) ( 2 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1506 "//"
strlen ( "//" ...size_t) ( 2 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1507 ) < ((size_t) (
strlen ( "//" ...size_t) ( 2 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1508 2
strlen ( "//" ...size_t) ( 2 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1509 ))
strlen ( "//" ...size_t) ( 2 ))Description
TRUEnever evaluated
FALSEnever evaluated
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1510 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1511 ) && __builtin_constant_p (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1512 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1513 ) && (__s1_len = __builtin_strlen (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1514 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1515 ), __s2_len = __builtin_strlen (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1516 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1517 ), (!((size_t)(const void *)((
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1518 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1519 ) + 1) - (size_t)(const void *)(
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1520 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1521 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1522 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1523 ) + 1) - (size_t)(const void *)(
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1524 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1525 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1526 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1527 ,
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1528 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1529 ) : (__builtin_constant_p (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1530 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1531 ) && ((size_t)(const void *)((
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1532 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1533 ) + 1) - (size_t)(const void *)(
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1534 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1535 ) == 1) && (__s1_len = __builtin_strlen (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1536 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1537 ), __s1_len < 4) ? (__builtin_constant_p (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1538 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1539 ) && ((size_t)(const void *)((
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1540 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1541 ) + 1) - (size_t)(const void *)(
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1542 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1543 ) == 1) ? __builtin_strcmp (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1544 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1545 ,
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1546 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1547 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1548 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1549 ); int __result = (((const unsigned char *) (const char *) (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1550 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1551 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1552 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1553 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1554 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1555 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( &uri[5] ))[3] - __s2[3]);
0
1556 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( &uri[5] ))[3] - __s2[3]);
0
1557 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1558 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1559 ) && ((size_t)(const void *)((
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1560 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1561 ) + 1) - (size_t)(const void *)(
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1562 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1563 ) == 1) && (__s2_len = __builtin_strlen (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1564 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1565 ), __s2_len < 4) ? (__builtin_constant_p (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1566 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1567 ) && ((size_t)(const void *)((
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1568 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1569 ) + 1) - (size_t)(const void *)(
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1570 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1571 ) == 1) ? __builtin_strcmp (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1572 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1573 ,
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1574 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1575 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1576 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1577 ); int __result = (((const unsigned char *) (const char *) (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1578 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1579 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1580 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1581 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1582 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1583 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "//" ))[3] - __s2[3]);
0
1584 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "//" ))[3] - __s2[3]);
0
1585 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1586 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1587 ,
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1588 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1589 )))); }) : strncmp (
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1590 &uri[5]
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1591 ,
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1592 "//"
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1593 ,
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1594 2
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1595 )))
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1596 == 0
(__extension__..." , 2 ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1597 path_data_n--;-
1598 if (strncasecmp(&uri[7], "localhost/", 10) == 0
strncasecmp(&u...st/", 10) == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1599 p = &uri[16];-
1600 }
never executed: end of block
else if (uri[7] == '/'
uri[7] == '/'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1601 p = &uri[7];-
1602 }
never executed: end of block
else {
0
1603 ERR_put_error(44,(120),(111),__FILE__,792)-
1604 ;-
1605 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
1606 ((void *)0)
never executed: return ((void *)0) ;
0
1607 ;
never executed: return ((void *)0) ;
0
1608 }-
1609 }-
1610-
1611 path_data[path_data_n].check_absolute = 1;-
1612 path_data[path_data_n++].path = p;-
1613 }
never executed: end of block
0
1614-
1615-
1616 for (i = 0, path = -
1617 ((void *)0)-
1618 ; path ==
path == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1619 ((void *)0)
path == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1620 && i < path_data_n
i < path_data_nDescription
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
1621-
1622-
1623-
1624-
1625 if (path_data[i].check_absolute
path_data[i].check_absoluteDescription
TRUEnever evaluated
FALSEnever evaluated
&& path_data[i].path[0] != '/'
path_data[i].path[0] != '/'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1626 ERR_put_error(44,(120),(108),__FILE__,821)-
1627 ;-
1628 ERR_add_error_data(1, path_data[i].path);-
1629 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
1630 ((void *)0)
never executed: return ((void *)0) ;
0
1631 ;
never executed: return ((void *)0) ;
0
1632 }-
1633-
1634 if (stat(path_data[i].path, &st) < 0
stat(path_data...path, &st) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1635 ERR_put_error(2,(22),(-
1636 (*__errno_location ())-
1637 ),__FILE__,827);-
1638 ERR_add_error_data(1, path_data[i].path);-
1639 }
never executed: end of block
else {
0
1640 path = path_data[i].path;-
1641 }
never executed: end of block
0
1642 }-
1643 if (path ==
path == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1644 ((void *)0)
path == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1645 ) {-
1646 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
1647 ((void *)0)
never executed: return ((void *)0) ;
0
1648 ;
never executed: return ((void *)0) ;
0
1649 }-
1650-
1651-
1652 ERR_clear_error();-
1653-
1654 ctx = CRYPTO_zalloc(sizeof(*ctx), __FILE__, 840);-
1655 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1656 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1657 ) {-
1658 ERR_put_error(44,(120),((1|64)),__FILE__,842);-
1659 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
1660 ((void *)0)
never executed: return ((void *)0) ;
0
1661 ;
never executed: return ((void *)0) ;
0
1662 }-
1663-
1664 if (-
1665 ((((
(((( st.st_mod... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1666 st.st_mode
(((( st.st_mod... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1667 )) & 0170000) == (0040000))
(((( st.st_mod... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1668 ) {-
1669-
1670-
1671-
1672-
1673-
1674 ctx->_.dir.uri = CRYPTO_strdup(uri, __FILE__, 852);-
1675 ctx->type = is_dir;-
1676-
1677 if (ctx->_.dir.uri ==
ctx->_.dir.uri == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1678 ((void *)0)
ctx->_.dir.uri == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1679 )-
1680 goto
never executed: goto err;
err;
never executed: goto err;
0
1681-
1682 ctx->_.dir.last_entry = OPENSSL_DIR_read(&ctx->_.dir.ctx, path);-
1683 ctx->_.dir.last_errno = -
1684 (*__errno_location ())-
1685 ;-
1686 if (ctx->_.dir.last_entry ==
ctx->_.dir.las...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1687 ((void *)0)
ctx->_.dir.las...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1688 ) {-
1689 if (ctx->_.dir.last_errno != 0
ctx->_.dir.last_errno != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1690 char errbuf[256];-
1691 -
1692 (*__errno_location ()) -
1693 = ctx->_.dir.last_errno;-
1694 openssl_strerror_r(-
1695 (*__errno_location ())-
1696 , errbuf, sizeof(errbuf));-
1697 ERR_put_error(44,(120),(2),__FILE__,865);-
1698 ERR_add_error_data(1, errbuf);-
1699 goto
never executed: goto err;
err;
never executed: goto err;
0
1700 }-
1701 ctx->_.dir.end_reached = 1;-
1702 }
never executed: end of block
0
1703 }
never executed: end of block
else {
0
1704 BIO *buff = -
1705 ((void *)0)-
1706 ;-
1707 char peekbuf[4096] = { 0, };-
1708-
1709 if ((
(buff = BIO_ne...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
buff = BIO_new(BIO_f_buffer())) ==
(buff = BIO_ne...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1710 ((void *)0)
(buff = BIO_ne...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1711 -
1712 || (
(ctx->_.file.f...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ctx->_.file.file = BIO_new_file(path, "rb")) ==
(ctx->_.file.f...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1713 ((void *)0)
(ctx->_.file.f...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1714 ) {-
1715 BIO_free_all(buff);-
1716 goto
never executed: goto err;
err;
never executed: goto err;
0
1717 }-
1718-
1719 ctx->_.file.file = BIO_push(buff, ctx->_.file.file);-
1720 if (BIO_ctrl(ctx->_.file.file,29,(sizeof(peekbuf) - 1),(peekbuf)) > 0
BIO_ctrl(ctx->...(peekbuf)) > 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1721 peekbuf[sizeof(peekbuf) - 1] = '\0';-
1722 if (strstr(peekbuf, "-----BEGIN ") !=
strstr(peekbuf...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1723 ((void *)0)
strstr(peekbuf...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1724 )-
1725 ctx->type = is_pem;
never executed: ctx->type = is_pem;
0
1726 }
never executed: end of block
0
1727 }
never executed: end of block
0
1728-
1729 return
never executed: return ctx;
ctx;
never executed: return ctx;
0
1730 err:-
1731 OSSL_STORE_LOADER_CTX_free(ctx);-
1732 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
1733 ((void *)0)
never executed: return ((void *)0) ;
0
1734 ;
never executed: return ((void *)0) ;
0
1735}-
1736-
1737static int file_ctrl(OSSL_STORE_LOADER_CTX *ctx, int cmd, va_list args)-
1738{-
1739 int ret = 1;-
1740-
1741 switch (cmd) {-
1742 case
never executed: case 1:
1:
never executed: case 1:
0
1743 {-
1744 int on = *(-
1745 __builtin_va_arg(-
1746 args-
1747 ,-
1748 int *-
1749 )-
1750 );-
1751-
1752 switch (on) {-
1753 case
never executed: case 0:
0:
never executed: case 0:
0
1754 ctx->flags &= ~(1<<0);-
1755 break;
never executed: break;
0
1756 case
never executed: case 1:
1:
never executed: case 1:
0
1757 ctx->flags |= (1<<0);-
1758 break;
never executed: break;
0
1759 default
never executed: default:
:
never executed: default:
0
1760 ERR_put_error(44,(129),((7)),__FILE__,913)-
1761 ;-
1762 ret = 0;-
1763 break;
never executed: break;
0
1764 }-
1765 }-
1766 break;
never executed: break;
0
1767 default
never executed: default:
:
never executed: default:
0
1768 break;
never executed: break;
0
1769 }-
1770-
1771 return
never executed: return ret;
ret;
never executed: return ret;
0
1772}-
1773-
1774static int file_expect(OSSL_STORE_LOADER_CTX *ctx, int expected)-
1775{-
1776 ctx->expected_type = expected;-
1777 return
never executed: return 1;
1;
never executed: return 1;
0
1778}-
1779-
1780static int file_find(OSSL_STORE_LOADER_CTX *ctx, OSSL_STORE_SEARCH *search)-
1781{-
1782-
1783-
1784-
1785-
1786-
1787 if (OSSL_STORE_SEARCH_get_type(search) == 1
OSSL_STORE_SEA...e(search) == 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1788 unsigned long hash = 0;-
1789-
1790 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1791 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1792 )-
1793 return
never executed: return 1;
1;
never executed: return 1;
0
1794-
1795 if (ctx->type != is_dir
ctx->type != is_dirDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1796 ERR_put_error(44,(138),(119),__FILE__,947)-
1797 ;-
1798 return
never executed: return 0;
0;
never executed: return 0;
0
1799 }-
1800-
1801 hash = X509_NAME_hash(OSSL_STORE_SEARCH_get0_name(search));-
1802 BIO_snprintf(ctx->_.dir.search_name, sizeof(ctx->_.dir.search_name),-
1803 "%08lx", hash);-
1804 return
never executed: return 1;
1;
never executed: return 1;
0
1805 }-
1806-
1807 if (ctx !=
ctx != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1808 ((void *)0)
ctx != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1809 )-
1810 ERR_put_error(44,(138),(120),__FILE__,959)
never executed: ERR_put_error(44,(138),(120),__FILE__,959) ;
0
1811 ;
never executed: ERR_put_error(44,(138),(120),__FILE__,959) ;
0
1812 return
never executed: return 0;
0;
never executed: return 0;
0
1813}-
1814-
1815-
1816OSSL_STORE_LOADER_CTX *ossl_store_file_attach_pem_bio_int(BIO *bp)-
1817{-
1818 OSSL_STORE_LOADER_CTX *ctx = CRYPTO_zalloc(sizeof(*ctx), __FILE__, 966);-
1819-
1820 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1821 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1822 ) {-
1823 ERR_put_error(44,(128),((1|64)),__FILE__,970)-
1824 ;-
1825 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
1826 ((void *)0)
never executed: return ((void *)0) ;
0
1827 ;
never executed: return ((void *)0) ;
0
1828 }-
1829-
1830 ctx->_.file.file = bp;-
1831 ctx->type = is_pem;-
1832-
1833 return
never executed: return ctx;
ctx;
never executed: return ctx;
0
1834}-
1835-
1836static OSSL_STORE_INFO *file_load_try_decode(OSSL_STORE_LOADER_CTX *ctx,-
1837 const char *pem_name,-
1838 const char *pem_header,-
1839 unsigned char *data, size_t len,-
1840 const UI_METHOD *ui_method,-
1841 void *ui_data, int *matchcount)-
1842{-
1843 OSSL_STORE_INFO *result = -
1844 ((void *)0)-
1845 ;-
1846 BUF_MEM *new_mem = -
1847 ((void *)0)-
1848 ;-
1849 char *new_pem_name = -
1850 ((void *)0)-
1851 ;-
1852 int t = 0;-
1853-
1854 again:
code before this statement never executed: again:
0
1855 {-
1856 size_t i = 0;-
1857 void *handler_ctx = -
1858 ((void *)0)-
1859 ;-
1860 const FILE_HANDLER **matching_handlers =-
1861 CRYPTO_zalloc(sizeof(*matching_handlers) * (sizeof(file_handlers)/sizeof((file_handlers)[0])),-
1862 __FILE__-
1863 ,-
1864 998-
1865 )-
1866 ;-
1867-
1868 if (matching_handlers ==
matching_handl...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1869 ((void *)0)
matching_handl...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1870 ) {-
1871 ERR_put_error(44,(124),((1|64)),__FILE__,1002)-
1872 ;-
1873 goto
never executed: goto err;
err;
never executed: goto err;
0
1874 }-
1875-
1876 *matchcount = 0;-
1877 for (i = 0; i < (sizeof(file_handlers)/sizeof((file_handlers)[0]))
i < (sizeof(fi...handlers)[0]))Description
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
1878 const FILE_HANDLER *handler = file_handlers[i];-
1879 int try_matchcount = 0;-
1880 void *tmp_handler_ctx = -
1881 ((void *)0)-
1882 ;-
1883 OSSL_STORE_INFO *tmp_result =-
1884 handler->try_decode(pem_name, pem_header, data, len,-
1885 &tmp_handler_ctx, &try_matchcount,-
1886 ui_method, ui_data);-
1887-
1888 if (try_matchcount > 0
try_matchcount > 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1889-
1890 matching_handlers[*matchcount] = handler;-
1891-
1892 if (handler_ctx
handler_ctxDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1893 handler->destroy_ctx(&handler_ctx);
never executed: handler->destroy_ctx(&handler_ctx);
0
1894 handler_ctx = tmp_handler_ctx;-
1895-
1896 if ((*
(*matchcount +...atchcount) > 1Description
TRUEnever evaluated
FALSEnever evaluated
matchcount += try_matchcount) > 1
(*matchcount +...atchcount) > 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1897-
1898 OSSL_STORE_INFO_free(result);-
1899 OSSL_STORE_INFO_free(tmp_result);-
1900 if (handler->destroy_ctx !=
handler->destr...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1901 ((void *)0)
handler->destr...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1902 )-
1903 handler->destroy_ctx(&handler_ctx);
never executed: handler->destroy_ctx(&handler_ctx);
0
1904 handler_ctx = -
1905 ((void *)0)-
1906 ;-
1907 tmp_result = -
1908 ((void *)0)-
1909 ;-
1910 result = -
1911 ((void *)0)-
1912 ;-
1913 }
never executed: end of block
0
1914 if (result ==
result == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1915 ((void *)0)
result == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1916 )-
1917 result = tmp_result;
never executed: result = tmp_result;
0
1918 }
never executed: end of block
0
1919 }
never executed: end of block
0
1920-
1921 if (*
*matchcount == 1Description
TRUEnever evaluated
FALSEnever evaluated
matchcount == 1
*matchcount == 1Description
TRUEnever evaluated
FALSEnever evaluated
&& matching_handlers[0]->repeatable
matching_handl...0]->repeatableDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1922 ctx->_.file.last_handler = matching_handlers[0];-
1923 ctx->_.file.last_handler_ctx = handler_ctx;-
1924 }
never executed: end of block
0
1925-
1926 CRYPTO_free(matching_handlers, __FILE__, 1044);-
1927 }-
1928-
1929 err:
code before this statement never executed: err:
0
1930 CRYPTO_free(new_pem_name, __FILE__, 1048);-
1931 BUF_MEM_free(new_mem);-
1932-
1933 if (result !=
result != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1934 ((void *)0)
result != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1935 -
1936 && (
(t = OSSL_STOR...result)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
t = OSSL_STORE_INFO_get_type(result)) == -1
(t = OSSL_STOR...result)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1937 pem_name = new_pem_name =-
1938 ossl_store_info_get0_EMBEDDED_pem_name(result);-
1939 new_mem = ossl_store_info_get0_EMBEDDED_buffer(result);-
1940 data = (unsigned char *)new_mem->data;-
1941 len = new_mem->length;-
1942 CRYPTO_free(result, __FILE__, 1058);-
1943 result = -
1944 ((void *)0)-
1945 ;-
1946 goto
never executed: goto again;
again;
never executed: goto again;
0
1947 }-
1948-
1949 if (result !=
result != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1950 ((void *)0)
result != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1951 )-
1952 ERR_clear_error();
never executed: ERR_clear_error();
0
1953-
1954 return
never executed: return result;
result;
never executed: return result;
0
1955}-
1956-
1957static OSSL_STORE_INFO *file_load_try_repeat(OSSL_STORE_LOADER_CTX *ctx,-
1958 const UI_METHOD *ui_method,-
1959 void *ui_data)-
1960{-
1961 OSSL_STORE_INFO *result = -
1962 ((void *)0)-
1963 ;-
1964 int try_matchcount = 0;-
1965-
1966 if (ctx->_.file.last_handler !=
ctx->_.file.la...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1967 ((void *)0)
ctx->_.file.la...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1968 ) {-
1969 result =-
1970 ctx->_.file.last_handler->try_decode(-
1971 ((void *)0)-
1972 , -
1973 ((void *)0)-
1974 , -
1975 ((void *)0)-
1976 , 0,-
1977 &ctx->_.file.last_handler_ctx,-
1978 &try_matchcount,-
1979 ui_method, ui_data);-
1980-
1981 if (result ==
result == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1982 ((void *)0)
result == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1983 ) {-
1984 ctx->_.file.last_handler->destroy_ctx(&ctx->_.file.last_handler_ctx);-
1985 ctx->_.file.last_handler_ctx = -
1986 ((void *)0)-
1987 ;-
1988 ctx->_.file.last_handler = -
1989 ((void *)0)-
1990 ;-
1991 }
never executed: end of block
0
1992 }
never executed: end of block
0
1993 return
never executed: return result;
result;
never executed: return result;
0
1994}-
1995-
1996static void pem_free_flag(void *pem_data, int secure, size_t num)-
1997{-
1998 if (secure
secureDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1999 CRYPTO_secure_clear_free(pem_data, num, __FILE__, 1095);
never executed: CRYPTO_secure_clear_free(pem_data, num, __FILE__, 1095);
0
2000 else-
2001 CRYPTO_free(pem_data, __FILE__, 1097);
never executed: CRYPTO_free(pem_data, __FILE__, 1097);
0
2002}-
2003static int file_read_pem(BIO *bp, char **pem_name, char **pem_header,-
2004 unsigned char **data, long *len,-
2005 const UI_METHOD *ui_method,-
2006 void *ui_data, int secure)-
2007{-
2008 int i = secure
secureDescription
TRUEnever evaluated
FALSEnever evaluated
0
2009 ? PEM_read_bio_ex(bp, pem_name, pem_header, data, len,-
2010 0x1 | 0x2)-
2011 : PEM_read_bio(bp, pem_name, pem_header, data, len);-
2012-
2013 if (i <= 0
i <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2014 return
never executed: return 0;
0;
never executed: return 0;
0
2015-
2016-
2017-
2018-
2019-
2020-
2021-
2022 if (strlen(*pem_header) > 10
strlen(*pem_header) > 10Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2023 EVP_CIPHER_INFO cipher;-
2024 struct pem_pass_data pass_data;-
2025-
2026 if (!PEM_get_EVP_CIPHER_INFO(*pem_header, &cipher)
!PEM_get_EVP_C...ader, &cipher)Description
TRUEnever evaluated
FALSEnever evaluated
0
2027 || !file_fill_pem_pass_data(&pass_data, "PEM", ui_method, ui_data)
!file_fill_pem...thod, ui_data)Description
TRUEnever evaluated
FALSEnever evaluated
0
2028 || !PEM_do_header(&cipher, *data, len, file_get_pem_pass,
!PEM_do_header...s, &pass_data)Description
TRUEnever evaluated
FALSEnever evaluated
0
2029 &pass_data)
!PEM_do_header...s, &pass_data)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2030 return
never executed: return 0;
0;
never executed: return 0;
0
2031 }-
2032 }
never executed: end of block
0
2033 return
never executed: return 1;
1;
never executed: return 1;
0
2034}-
2035-
2036static int file_read_asn1(BIO *bp, unsigned char **data, long *len)-
2037{-
2038 BUF_MEM *mem = -
2039 ((void *)0)-
2040 ;-
2041-
2042 if (asn1_d2i_read_bio(bp, &mem) < 0
asn1_d2i_read_...(bp, &mem) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2043 return
never executed: return 0;
0;
never executed: return 0;
0
2044-
2045 *data = (unsigned char *)mem->data;-
2046 *len = (long)mem->length;-
2047 CRYPTO_free(mem, __FILE__, 1141);-
2048-
2049 return
never executed: return 1;
1;
never executed: return 1;
0
2050}-
2051-
2052static int ends_with_dirsep(const char *uri)-
2053{-
2054 if (*
*uri != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
uri != '\0'
*uri != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2055 uri += strlen(uri) - 1;
never executed: uri += strlen(uri) - 1;
0
2056-
2057-
2058-
2059-
2060-
2061-
2062-
2063 return
never executed: return *uri == '/';
*uri == '/';
never executed: return *uri == '/';
0
2064}-
2065-
2066static int file_name_to_uri(OSSL_STORE_LOADER_CTX *ctx, const char *name,-
2067 char **data)-
2068{-
2069 -
2070 ((void) (0))-
2071 ;-
2072 -
2073 ((void) (0))-
2074 ;-
2075 {-
2076 const char *pathsep = ends_with_dirsep(ctx->_.dir.uri)
ends_with_dirs...tx->_.dir.uri)Description
TRUEnever evaluated
FALSEnever evaluated
? "" : "/";
0
2077 long calculated_length = strlen(ctx->_.dir.uri) + strlen(pathsep)-
2078 + strlen(name) + 1 ;-
2079-
2080 *data = CRYPTO_zalloc(calculated_length, __FILE__, 1170);-
2081 if (*
*data == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
data ==
*data == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2082 ((void *)0)
*data == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2083 ) {-
2084 ERR_put_error(44,(126),((1|64)),__FILE__,1172);-
2085 return
never executed: return 0;
0;
never executed: return 0;
0
2086 }-
2087-
2088 OPENSSL_strlcat(*data, ctx->_.dir.uri, calculated_length);-
2089 OPENSSL_strlcat(*data, pathsep, calculated_length);-
2090 OPENSSL_strlcat(*data, name, calculated_length);-
2091 }-
2092 return
never executed: return 1;
1;
never executed: return 1;
0
2093}-
2094-
2095static int file_name_check(OSSL_STORE_LOADER_CTX *ctx, const char *name)-
2096{-
2097 const char *p = -
2098 ((void *)0)-
2099 ;-
2100-
2101-
2102 if (ctx->_.dir.search_name[0] == '\0'
ctx->_.dir.sea...ame[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2103 return
never executed: return 1;
1;
never executed: return 1;
0
2104-
2105-
2106 if (ctx->expected_type != 0
ctx->expected_type != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2107 && ctx->expected_type != 4
ctx->expected_type != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
2108 && ctx->expected_type != 5
ctx->expected_type != 5Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2109 return
never executed: return 0;
0;
never executed: return 0;
0
2110-
2111-
2112-
2113-
2114 if (strncasecmp(name, ctx->_.dir.search_name,
strncasecmp(na...ame) - 1) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2115 sizeof(ctx->_.dir.search_name) - 1) != 0
strncasecmp(na...ame) - 1) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2116 || name[sizeof(ctx->_.dir.search_name) - 1] != '.'
name[sizeof(ct...e) - 1] != '.'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2117 return
never executed: return 0;
0;
never executed: return 0;
0
2118 p = &name[sizeof(ctx->_.dir.search_name)];-
2119-
2120-
2121-
2122-
2123-
2124 if (*
*p == 'r'Description
TRUEnever evaluated
FALSEnever evaluated
p == 'r'
*p == 'r'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2125 p++;-
2126 if (ctx->expected_type != 0
ctx->expected_type != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2127 && ctx->expected_type != 5
ctx->expected_type != 5Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2128 return
never executed: return 0;
0;
never executed: return 0;
0
2129 }
never executed: end of block
else if (ctx->expected_type == 5
ctx->expected_type == 5Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2130 return
never executed: return 0;
0;
never executed: return 0;
0
2131 }-
2132-
2133-
2134-
2135-
2136-
2137 if (!(ossl_ctype_check((*p), 0x4))
!(ossl_ctype_check((*p), 0x4))Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2138 return
never executed: return 0;
0;
never executed: return 0;
0
2139 while ((
(ossl_ctype_check((*p), 0x4))Description
TRUEnever evaluated
FALSEnever evaluated
ossl_ctype_check((*p), 0x4))
(ossl_ctype_check((*p), 0x4))Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2140 p++;
never executed: p++;
0
2141 return
never executed: return *p == '\0';
*p == '\0';
never executed: return *p == '\0';
0
2142}-
2143-
2144static int file_eof(OSSL_STORE_LOADER_CTX *ctx);-
2145static int file_error(OSSL_STORE_LOADER_CTX *ctx);-
2146static OSSL_STORE_INFO *file_load(OSSL_STORE_LOADER_CTX *ctx,-
2147 const UI_METHOD *ui_method, void *ui_data)-
2148{-
2149 OSSL_STORE_INFO *result = -
2150 ((void *)0)-
2151 ;-
2152-
2153 ctx->errcnt = 0;-
2154 ERR_clear_error();-
2155-
2156 if (ctx->type == is_dir
ctx->type == is_dirDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2157 do {-
2158 char *newname = -
2159 ((void *)0)-
2160 ;-
2161-
2162 if (ctx->_.dir.last_entry ==
ctx->_.dir.las...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2163 ((void *)0)
ctx->_.dir.las...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2164 ) {-
2165 if (!ctx->_.dir.end_reached
!ctx->_.dir.end_reachedDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2166 char errbuf[256];-
2167 -
2168 ((void) (0))-
2169 ;-
2170 -
2171 (*__errno_location ()) -
2172 = ctx->_.dir.last_errno;-
2173 ctx->errcnt++;-
2174 openssl_strerror_r(-
2175 (*__errno_location ())-
2176 , errbuf, sizeof(errbuf));-
2177 ERR_put_error(44,(119),(2),__FILE__,1266);-
2178 ERR_add_error_data(1, errbuf);-
2179 }
never executed: end of block
0
2180 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
2181 ((void *)0)
never executed: return ((void *)0) ;
0
2182 ;
never executed: return ((void *)0) ;
0
2183 }-
2184-
2185 if (ctx->_.dir.last_entry[0] != '.'
ctx->_.dir.las...ntry[0] != '.'Description
TRUEnever evaluated
FALSEnever evaluated
0
2186 && file_name_check(ctx, ctx->_.dir.last_entry)
file_name_chec...ir.last_entry)Description
TRUEnever evaluated
FALSEnever evaluated
0
2187 && !file_name_to_uri(ctx, ctx->_.dir.last_entry, &newname)
!file_name_to_...try, &newname)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2188 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
2189 ((void *)0)
never executed: return ((void *)0) ;
0
2190 ;
never executed: return ((void *)0) ;
0
2191-
2192-
2193-
2194-
2195-
2196-
2197-
2198 ctx->_.dir.last_entry = OPENSSL_DIR_read(&ctx->_.dir.ctx,-
2199 ctx->_.dir.uri);-
2200 ctx->_.dir.last_errno = -
2201 (*__errno_location ())-
2202 ;-
2203 if (ctx->_.dir.last_entry ==
ctx->_.dir.las...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2204 ((void *)0)
ctx->_.dir.las...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2205 && ctx->_.dir.last_errno == 0
ctx->_.dir.last_errno == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2206 ctx->_.dir.end_reached = 1;
never executed: ctx->_.dir.end_reached = 1;
0
2207-
2208 if (newname !=
newname != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2209 ((void *)0)
newname != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2210 -
2211 && (
(result = OSSL...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
result = OSSL_STORE_INFO_new_NAME(newname)) ==
(result = OSSL...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2212 ((void *)0)
(result = OSSL...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2213 ) {-
2214 CRYPTO_free(newname, __FILE__, 1291);-
2215 ERR_put_error(44,(119),(44),__FILE__,1292);-
2216 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
2217 ((void *)0)
never executed: return ((void *)0) ;
0
2218 ;
never executed: return ((void *)0) ;
0
2219 }-
2220 }
never executed: end of block
while (result ==
result == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2221 ((void *)0)
result == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2222 && !file_eof(ctx)
!file_eof(ctx)Description
TRUEnever evaluated
FALSEnever evaluated
);
0
2223 }
never executed: end of block
else {
0
2224 int matchcount = -1;-
2225-
2226 again:
code before this statement never executed: again:
0
2227 result = file_load_try_repeat(ctx, ui_method, ui_data);-
2228 if (result !=
result != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2229 ((void *)0)
result != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2230 )-
2231 return
never executed: return result;
result;
never executed: return result;
0
2232-
2233 if (file_eof(ctx)
file_eof(ctx)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2234 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
2235 ((void *)0)
never executed: return ((void *)0) ;
0
2236 ;
never executed: return ((void *)0) ;
0
2237-
2238 do {-
2239 char *pem_name = -
2240 ((void *)0)-
2241 ;-
2242 char *pem_header = -
2243 ((void *)0)-
2244 ;-
2245 unsigned char *data = -
2246 ((void *)0)-
2247 ;-
2248 long len = 0;-
2249-
2250 matchcount = -1;-
2251 if (ctx->type == is_pem
ctx->type == is_pemDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2252 if (!file_read_pem(ctx->_.file.file, &pem_name, &pem_header,
!file_read_pem... (1<<0)) != 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2253 &data, &len, ui_method, ui_data,
!file_read_pem... (1<<0)) != 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2254 (ctx->flags & (1<<0)) != 0)
!file_read_pem... (1<<0)) != 0)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2255 ctx->errcnt++;-
2256 goto
never executed: goto endloop;
endloop;
never executed: goto endloop;
0
2257 }-
2258 }
never executed: end of block
else {
0
2259 if (!file_read_asn1(ctx->_.file.file, &data, &len)
!file_read_asn..., &data, &len)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2260 ctx->errcnt++;-
2261 goto
never executed: goto endloop;
endloop;
never executed: goto endloop;
0
2262 }-
2263 }
never executed: end of block
0
2264-
2265 result = file_load_try_decode(ctx, pem_name, pem_header, data, len,-
2266 ui_method, ui_data, &matchcount);-
2267-
2268 if (result !=
result != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2269 ((void *)0)
result != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2270 )-
2271 goto
never executed: goto endloop;
endloop;
never executed: goto endloop;
0
2272-
2273-
2274-
2275-
2276-
2277 if (!((pem_name ==
pem_name == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
!((pem_name ==...nt <= 1) != 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2278 ((void *)0)
pem_name == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
!((pem_name ==...nt <= 1) != 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2279 || matchcount <= 1
matchcount <= 1Description
TRUEnever evaluated
FALSEnever evaluated
) != 0)
!((pem_name ==...nt <= 1) != 0)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2280 ctx->errcnt++;-
2281 goto
never executed: goto endloop;
endloop;
never executed: goto endloop;
0
2282 }-
2283-
2284 if (matchcount > 1
matchcount > 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2285 ERR_put_error(44,(119),(107),__FILE__,1345)-
2286 ;-
2287 }
never executed: end of block
else if (matchcount == 1
matchcount == 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2288-
2289-
2290-
2291-
2292 if (ERR_peek_error() == 0
ERR_peek_error() == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2293 ERR_put_error(44,(119),(110),__FILE__,1353)-
2294 ;-
2295 if (pem_name !=
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2296 ((void *)0)
pem_name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2297 )-
2298 ERR_add_error_data(3, "PEM type is '", pem_name, "'");
never executed: ERR_add_error_data(3, "PEM type is '", pem_name, "'");
0
2299 }
never executed: end of block
0
2300 }
never executed: end of block
0
2301 if (matchcount > 0
matchcount > 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2302 ctx->errcnt++;
never executed: ctx->errcnt++;
0
2303-
2304 endloop:
code before this statement never executed: endloop:
0
2305 pem_free_flag(pem_name, (ctx->flags & (1<<0)) != 0, 0);-
2306 pem_free_flag(pem_header, (ctx->flags & (1<<0)) != 0, 0);-
2307 pem_free_flag(data, (ctx->flags & (1<<0)) != 0, len);-
2308 }
never executed: end of block
while (matchcount == 0
matchcount == 0Description
TRUEnever evaluated
FALSEnever evaluated
&& !file_eof(ctx)
!file_eof(ctx)Description
TRUEnever evaluated
FALSEnever evaluated
&& !file_error(ctx)
!file_error(ctx)Description
TRUEnever evaluated
FALSEnever evaluated
);
0
2309-
2310-
2311 if (matchcount > 1
matchcount > 1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2312 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
2313 ((void *)0)
never executed: return ((void *)0) ;
0
2314 ;
never executed: return ((void *)0) ;
0
2315-
2316 if (result !=
result != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2317 ((void *)0)
result != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2318 -
2319 && ctx->expected_type != 0
ctx->expected_type != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2320 && ctx->expected_type != OSSL_STORE_INFO_get_type(result)
ctx->expected_...t_type(result)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2321 OSSL_STORE_INFO_free(result);-
2322 goto
never executed: goto again;
again;
never executed: goto again;
0
2323 }-
2324 }
never executed: end of block
0
2325-
2326 return
never executed: return result;
result;
never executed: return result;
0
2327}-
2328-
2329static int file_error(OSSL_STORE_LOADER_CTX *ctx)-
2330{-
2331 return
never executed: return ctx->errcnt > 0;
ctx->errcnt > 0;
never executed: return ctx->errcnt > 0;
0
2332}-
2333-
2334static int file_eof(OSSL_STORE_LOADER_CTX *ctx)-
2335{-
2336 if (ctx->type == is_dir
ctx->type == is_dirDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2337 return
never executed: return ctx->_.dir.end_reached;
ctx->_.dir.end_reached;
never executed: return ctx->_.dir.end_reached;
0
2338-
2339 if (ctx->_.file.last_handler !=
ctx->_.file.la...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2340 ((void *)0)
ctx->_.file.la...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2341 -
2342 && !ctx->_.file.last_handler->eof(ctx->_.file.last_handler_ctx)
!ctx->_.file.l...t_handler_ctx)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2343 return
never executed: return 0;
0;
never executed: return 0;
0
2344 return
never executed: return (int)BIO_ctrl(ctx->_.file.file,2,0, ((void *)0) );
(int)BIO_ctrl(ctx->_.file.file,2,0,
never executed: return (int)BIO_ctrl(ctx->_.file.file,2,0, ((void *)0) );
0
2345 ((void *)0)
never executed: return (int)BIO_ctrl(ctx->_.file.file,2,0, ((void *)0) );
0
2346 );
never executed: return (int)BIO_ctrl(ctx->_.file.file,2,0, ((void *)0) );
0
2347}-
2348-
2349static int file_close(OSSL_STORE_LOADER_CTX *ctx)-
2350{-
2351 if (ctx->type == is_dir
ctx->type == is_dirDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2352 OPENSSL_DIR_end(&ctx->_.dir.ctx);-
2353 }
never executed: end of block
else {
0
2354 BIO_free_all(ctx->_.file.file);-
2355 }
never executed: end of block
0
2356 OSSL_STORE_LOADER_CTX_free(ctx);-
2357 return
never executed: return 1;
1;
never executed: return 1;
0
2358}-
2359-
2360int ossl_store_file_detach_pem_bio_int(OSSL_STORE_LOADER_CTX *ctx)-
2361{-
2362 OSSL_STORE_LOADER_CTX_free(ctx);-
2363 return
never executed: return 1;
1;
never executed: return 1;
0
2364}-
2365-
2366static OSSL_STORE_LOADER file_loader =-
2367 {-
2368 "file",-
2369 -
2370 ((void *)0)-
2371 ,-
2372 file_open,-
2373 file_ctrl,-
2374 file_expect,-
2375 file_find,-
2376 file_load,-
2377 file_eof,-
2378 file_error,-
2379 file_close-
2380 };-
2381-
2382static void store_file_loader_deinit(void)-
2383{-
2384 ossl_store_unregister_loader_int(file_loader.scheme);-
2385}
never executed: end of block
0
2386-
2387int ossl_store_file_loader_init(void)-
2388{-
2389 int ret = ossl_store_register_loader_int(&file_loader);-
2390-
2391 OPENSSL_atexit(store_file_loader_deinit);-
2392 return
never executed: return ret;
ret;
never executed: return ret;
0
2393}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2