Line | Source | Count |
1 | | - |
2 | | - |
3 | | - |
4 | | - |
5 | | - |
6 | | - |
7 | struct ossl_store_ctx_st { | - |
8 | const OSSL_STORE_LOADER *loader; | - |
9 | OSSL_STORE_LOADER_CTX *loader_ctx; | - |
10 | const UI_METHOD *ui_method; | - |
11 | void *ui_data; | - |
12 | OSSL_STORE_post_process_info_fn post_process; | - |
13 | void *post_process_data; | - |
14 | int expected_type; | - |
15 | | - |
16 | | - |
17 | int loading; | - |
18 | }; | - |
19 | | - |
20 | OSSL_STORE_CTX *OSSL_STORE_open(const char *uri, const UI_METHOD *ui_method, | - |
21 | void *ui_data, | - |
22 | OSSL_STORE_post_process_info_fn post_process, | - |
23 | void *post_process_data) | - |
24 | { | - |
25 | const OSSL_STORE_LOADER *loader = | - |
26 | ((void *)0) | - |
27 | ; | - |
28 | OSSL_STORE_LOADER_CTX *loader_ctx = | - |
29 | ((void *)0) | - |
30 | ; | - |
31 | OSSL_STORE_CTX *ctx = | - |
32 | ((void *)0) | - |
33 | ; | - |
34 | char scheme_copy[256], *p, *schemes[2]; | - |
35 | size_t schemes_n = 0; | - |
36 | size_t i; | - |
37 | | - |
38 | | - |
39 | | - |
40 | | - |
41 | | - |
42 | | - |
43 | schemes[schemes_n++] = "file"; | - |
44 | OPENSSL_strlcpy(scheme_copy, uri, sizeof(scheme_copy)); | - |
45 | if ((TRUE | never evaluated | FALSE | never evaluated |
p = TRUE | never evaluated | FALSE | never evaluated |
| 0 |
46 | (__extension__ (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
47 | ':'TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
48 | )TRUE | never evaluated | FALSE | never evaluated |
&& !__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
49 | scheme_copyTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
50 | )TRUE | never evaluated | FALSE | never evaluated |
&& (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
51 | ':'TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
52 | ) == '\0'TRUE | never evaluated | FALSE | never evaluated |
? (char *) __rawmemchr (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
53 | scheme_copyTRUE | never evaluated | FALSE | never evaluated |
| 0 |
54 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
55 | ':'TRUE | never evaluated | FALSE | never evaluated |
| 0 |
56 | ) : __builtin_strchr (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
57 | scheme_copyTRUE | never evaluated | FALSE | never evaluated |
| 0 |
58 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
59 | ':'TRUE | never evaluated | FALSE | never evaluated |
| 0 |
60 | )))TRUE | never evaluated | FALSE | never evaluated |
| 0 |
61 | ) != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
62 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
63 | ) { | - |
64 | *p++ = '\0'; | - |
65 | if (strcasecmp(scheme_copy, "file") != 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
66 | if ( | - |
67 | (TRUE | never evaluated | FALSE | never evaluated |
__extension__ (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
68 | 2TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
69 | )TRUE | never evaluated | FALSE | never evaluated |
&& ((__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
70 | pTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
71 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
72 | pTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
73 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
74 | 2TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
75 | ))TRUE | never evaluated | FALSE | never evaluated |
) || (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
76 | "//"TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
77 | )TRUE | never evaluated | FALSE | never evaluated |
&& strlen (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
78 | "//"TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
79 | ) < ((size_t) (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
80 | 2TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
81 | ))TRUE | never evaluated | FALSE | never evaluated |
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
82 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
83 | ) && __builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
84 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
85 | ) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
86 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
87 | ), __s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
88 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
89 | ), (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
90 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
91 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
92 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
93 | ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
94 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
95 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
96 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
97 | ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
98 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
99 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
100 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
101 | ) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
102 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
103 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
104 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
105 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
106 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
107 | ) == 1) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
108 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
109 | ), __s1_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
110 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
111 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
112 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
113 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
114 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
115 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
116 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
117 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
118 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
119 | ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
120 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
121 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
122 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
123 | ))[0] - __s2[0]); if (__s1_len > 0TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
124 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
125 | ))[1] - __s2[1]); if (__s1_len > 1TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
126 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
127 | ))[2] - __s2[2]); if (__s1_len > 2TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) __result = (((const unsigned char *) (const char *) (never executed: __result = (((const unsigned char *) (const char *) ( p ))[3] - __s2[3]); | 0 |
128 | pTRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( p ))[3] - __s2[3]); | 0 |
129 | ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
130 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
131 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
132 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
133 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
134 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
135 | ) == 1) && (__s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
136 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
137 | ), __s2_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
138 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
139 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
140 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
141 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
142 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
143 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
144 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
145 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
146 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
147 | ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
148 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
149 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
150 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
151 | ))[0] - __s2[0]); if (__s2_len > 0TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
152 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
153 | ))[1] - __s2[1]); if (__s2_len > 1TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
154 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
155 | ))[2] - __s2[2]); if (__s2_len > 2TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) __result = (((const unsigned char *) (const char *) (never executed: __result = (((const unsigned char *) (const char *) ( "//" ))[3] - __s2[3]); | 0 |
156 | "//"TRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( "//" ))[3] - __s2[3]); | 0 |
157 | ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
158 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
159 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
160 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
161 | )))); }) : strncmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
162 | pTRUE | never evaluated | FALSE | never evaluated |
| 0 |
163 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
164 | "//"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
165 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
166 | 2TRUE | never evaluated | FALSE | never evaluated |
| 0 |
167 | ))) TRUE | never evaluated | FALSE | never evaluated |
| 0 |
168 | == 0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
169 | schemes_n--; never executed: schemes_n--; | 0 |
170 | schemes[schemes_n++] = scheme_copy; | - |
171 | } never executed: end of block | 0 |
172 | } never executed: end of block | 0 |
173 | | - |
174 | ERR_set_mark(); | - |
175 | | - |
176 | | - |
177 | for (i = 0; loader_ctx == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
178 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
179 | && i < schemes_nTRUE | never evaluated | FALSE | never evaluated |
; i++) { | 0 |
180 | if ((TRUE | never evaluated | FALSE | never evaluated |
loader = ossl_store_get0_loader_int(schemes[i])) != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
181 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
182 | ) | - |
183 | loader_ctx = loader->open(loader, uri, ui_method, ui_data); never executed: loader_ctx = loader->open(loader, uri, ui_method, ui_data); | 0 |
184 | } never executed: end of block | 0 |
185 | if (loader_ctx == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
186 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
187 | ) | - |
188 | goto never executed: goto err; err;never executed: goto err; | 0 |
189 | | - |
190 | if ((TRUE | never evaluated | FALSE | never evaluated |
ctx = CRYPTO_zalloc(sizeof(*ctx), __FILE__, 83)) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
191 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
192 | ) { | - |
193 | ERR_put_error(44,(114),((1|64)),__FILE__,84); | - |
194 | goto never executed: goto err; err;never executed: goto err; | 0 |
195 | } | - |
196 | | - |
197 | ctx->loader = loader; | - |
198 | ctx->loader_ctx = loader_ctx; | - |
199 | ctx->ui_method = ui_method; | - |
200 | ctx->ui_data = ui_data; | - |
201 | ctx->post_process = post_process; | - |
202 | ctx->post_process_data = post_process_data; | - |
203 | | - |
204 | | - |
205 | | - |
206 | | - |
207 | | - |
208 | | - |
209 | ERR_pop_to_mark(); | - |
210 | | - |
211 | return never executed: return ctx; ctx;never executed: return ctx; | 0 |
212 | | - |
213 | err: | - |
214 | ERR_clear_last_mark(); | - |
215 | if (loader_ctx != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
216 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
217 | ) { | - |
218 | | - |
219 | | - |
220 | | - |
221 | | - |
222 | | - |
223 | (void)loader->close(loader_ctx); | - |
224 | } never executed: end of block | 0 |
225 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
226 | ((void *)0) never executed: return ((void *)0) ; | 0 |
227 | ; never executed: return ((void *)0) ; | 0 |
228 | } | - |
229 | | - |
230 | int OSSL_STORE_ctrl(OSSL_STORE_CTX *ctx, int cmd, ...) | - |
231 | { | - |
232 | va_list args; | - |
233 | int ret; | - |
234 | | - |
235 | | - |
236 | __builtin_va_start( | - |
237 | args | - |
238 | , | - |
239 | cmd | - |
240 | ) | - |
241 | ; | - |
242 | ret = OSSL_STORE_vctrl(ctx, cmd, args); | - |
243 | | - |
244 | __builtin_va_end( | - |
245 | args | - |
246 | ) | - |
247 | ; | - |
248 | | - |
249 | return never executed: return ret; ret;never executed: return ret; | 0 |
250 | } | - |
251 | | - |
252 | int OSSL_STORE_vctrl(OSSL_STORE_CTX *ctx, int cmd, va_list args) | - |
253 | { | - |
254 | if (ctx->loader->ctrl != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
255 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
256 | ) | - |
257 | return never executed: return ctx->loader->ctrl(ctx->loader_ctx, cmd, args); ctx->loader->ctrl(ctx->loader_ctx, cmd, args);never executed: return ctx->loader->ctrl(ctx->loader_ctx, cmd, args); | 0 |
258 | return never executed: return 0; 0;never executed: return 0; | 0 |
259 | } | - |
260 | | - |
261 | int OSSL_STORE_expect(OSSL_STORE_CTX *ctx, int expected_type) | - |
262 | { | - |
263 | if (ctx->loadingTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
264 | ERR_put_error(44,(130),(117),__FILE__,140) | - |
265 | ; | - |
266 | return never executed: return 0; 0;never executed: return 0; | 0 |
267 | } | - |
268 | | - |
269 | ctx->expected_type = expected_type; | - |
270 | if (ctx->loader->expect != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
271 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
272 | ) | - |
273 | return never executed: return ctx->loader->expect(ctx->loader_ctx, expected_type); ctx->loader->expect(ctx->loader_ctx, expected_type);never executed: return ctx->loader->expect(ctx->loader_ctx, expected_type); | 0 |
274 | return never executed: return 1; 1;never executed: return 1; | 0 |
275 | } | - |
276 | | - |
277 | int OSSL_STORE_find(OSSL_STORE_CTX *ctx, OSSL_STORE_SEARCH *search) | - |
278 | { | - |
279 | if (ctx->loadingTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
280 | ERR_put_error(44,(131),(117),__FILE__,154) | - |
281 | ; | - |
282 | return never executed: return 0; 0;never executed: return 0; | 0 |
283 | } | - |
284 | if (ctx->loader->find == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
285 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
286 | ) { | - |
287 | ERR_put_error(44,(131),(118),__FILE__,159) | - |
288 | ; | - |
289 | return never executed: return 0; 0;never executed: return 0; | 0 |
290 | } | - |
291 | | - |
292 | return never executed: return ctx->loader->find(ctx->loader_ctx, search); ctx->loader->find(ctx->loader_ctx, search);never executed: return ctx->loader->find(ctx->loader_ctx, search); | 0 |
293 | } | - |
294 | | - |
295 | OSSL_STORE_INFO *OSSL_STORE_load(OSSL_STORE_CTX *ctx) | - |
296 | { | - |
297 | OSSL_STORE_INFO *v = | - |
298 | ((void *)0) | - |
299 | ; | - |
300 | | - |
301 | ctx->loading = 1; | - |
302 | again: code before this statement never executed: again: | 0 |
303 | if (OSSL_STORE_eof(ctx)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
304 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
305 | ((void *)0) never executed: return ((void *)0) ; | 0 |
306 | ; never executed: return ((void *)0) ; | 0 |
307 | | - |
308 | v = ctx->loader->load(ctx->loader_ctx, ctx->ui_method, ctx->ui_data); | - |
309 | | - |
310 | if (ctx->post_process != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
311 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
312 | && v != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
313 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
314 | ) { | - |
315 | v = ctx->post_process(v, ctx->post_process_data); | - |
316 | | - |
317 | | - |
318 | | - |
319 | | - |
320 | | - |
321 | if (v == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
322 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
323 | ) | - |
324 | goto never executed: goto again; again;never executed: goto again; | 0 |
325 | } never executed: end of block | 0 |
326 | | - |
327 | if (v != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
328 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
329 | && ctx->expected_type != 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
330 | int returned_type = OSSL_STORE_INFO_get_type(v); | - |
331 | | - |
332 | if (returned_type != 1TRUE | never evaluated | FALSE | never evaluated |
&& returned_type != 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
333 | | - |
334 | | - |
335 | | - |
336 | | - |
337 | if (ctx->loader->expect != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
338 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
339 | ) | - |
340 | | - |
341 | (( never executed: ((void) (0)) ; void) (0))never executed: ((void) (0)) ; | 0 |
342 | ; never executed: ((void) (0)) ; | 0 |
343 | | - |
344 | if (ctx->expected_type != returned_typeTRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
345 | OSSL_STORE_INFO_free(v); | - |
346 | goto never executed: goto again; again;never executed: goto again; | 0 |
347 | } | - |
348 | } never executed: end of block | 0 |
349 | } never executed: end of block | 0 |
350 | | - |
351 | return never executed: return v; v;never executed: return v; | 0 |
352 | } | - |
353 | | - |
354 | int OSSL_STORE_error(OSSL_STORE_CTX *ctx) | - |
355 | { | - |
356 | return never executed: return ctx->loader->error(ctx->loader_ctx); ctx->loader->error(ctx->loader_ctx);never executed: return ctx->loader->error(ctx->loader_ctx); | 0 |
357 | } | - |
358 | | - |
359 | int OSSL_STORE_eof(OSSL_STORE_CTX *ctx) | - |
360 | { | - |
361 | return never executed: return ctx->loader->eof(ctx->loader_ctx); ctx->loader->eof(ctx->loader_ctx);never executed: return ctx->loader->eof(ctx->loader_ctx); | 0 |
362 | } | - |
363 | | - |
364 | int OSSL_STORE_close(OSSL_STORE_CTX *ctx) | - |
365 | { | - |
366 | int loader_ret = ctx->loader->close(ctx->loader_ctx); | - |
367 | | - |
368 | CRYPTO_free(ctx, __FILE__, 223); | - |
369 | return never executed: return loader_ret; loader_ret;never executed: return loader_ret; | 0 |
370 | } | - |
371 | static OSSL_STORE_INFO *store_info_new(int type, void *data) | - |
372 | { | - |
373 | OSSL_STORE_INFO *info = CRYPTO_zalloc(sizeof(*info), __FILE__, 236); | - |
374 | | - |
375 | if (info == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
376 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
377 | ) | - |
378 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
379 | ((void *)0) never executed: return ((void *)0) ; | 0 |
380 | ; never executed: return ((void *)0) ; | 0 |
381 | | - |
382 | info->type = type; | - |
383 | info->_.data = data; | - |
384 | return never executed: return info; info;never executed: return info; | 0 |
385 | } | - |
386 | | - |
387 | OSSL_STORE_INFO *OSSL_STORE_INFO_new_NAME(char *name) | - |
388 | { | - |
389 | OSSL_STORE_INFO *info = store_info_new(1, | - |
390 | ((void *)0) | - |
391 | ); | - |
392 | | - |
393 | if (info == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
394 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
395 | ) { | - |
396 | ERR_put_error(44,(109),((1|64)),__FILE__,252) | - |
397 | ; | - |
398 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
399 | ((void *)0) never executed: return ((void *)0) ; | 0 |
400 | ; never executed: return ((void *)0) ; | 0 |
401 | } | - |
402 | | - |
403 | info->_.name.name = name; | - |
404 | info->_.name.desc = | - |
405 | ((void *)0) | - |
406 | ; | - |
407 | | - |
408 | return never executed: return info; info;never executed: return info; | 0 |
409 | } | - |
410 | | - |
411 | int OSSL_STORE_INFO_set0_NAME_description(OSSL_STORE_INFO *info, char *desc) | - |
412 | { | - |
413 | if (info->type != 1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
414 | ERR_put_error(44,(134),((7)),__FILE__,266) | - |
415 | ; | - |
416 | return never executed: return 0; 0;never executed: return 0; | 0 |
417 | } | - |
418 | | - |
419 | info->_.name.desc = desc; | - |
420 | | - |
421 | return never executed: return 1; 1;never executed: return 1; | 0 |
422 | } | - |
423 | OSSL_STORE_INFO *OSSL_STORE_INFO_new_PARAMS(EVP_PKEY *params) | - |
424 | { | - |
425 | OSSL_STORE_INFO *info = store_info_new(2, params); | - |
426 | | - |
427 | if (info == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
428 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
429 | ) | - |
430 | ERR_put_error(44,(110),((1|64)),__FILE__,280) never executed: ERR_put_error(44,(110),((1|64)),__FILE__,280) ; | 0 |
431 | ; never executed: ERR_put_error(44,(110),((1|64)),__FILE__,280) ; | 0 |
432 | return never executed: return info; info;never executed: return info; | 0 |
433 | } | - |
434 | | - |
435 | OSSL_STORE_INFO *OSSL_STORE_INFO_new_PKEY(EVP_PKEY *pkey) | - |
436 | { | - |
437 | OSSL_STORE_INFO *info = store_info_new(3, pkey); | - |
438 | | - |
439 | if (info == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
440 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
441 | ) | - |
442 | ERR_put_error(44,(111),((1|64)),__FILE__,290) never executed: ERR_put_error(44,(111),((1|64)),__FILE__,290) ; | 0 |
443 | ; never executed: ERR_put_error(44,(111),((1|64)),__FILE__,290) ; | 0 |
444 | return never executed: return info; info;never executed: return info; | 0 |
445 | } | - |
446 | | - |
447 | OSSL_STORE_INFO *OSSL_STORE_INFO_new_CERT(X509 *x509) | - |
448 | { | - |
449 | OSSL_STORE_INFO *info = store_info_new(4, x509); | - |
450 | | - |
451 | if (info == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
452 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
453 | ) | - |
454 | ERR_put_error(44,(106),((1|64)),__FILE__,300) never executed: ERR_put_error(44,(106),((1|64)),__FILE__,300) ; | 0 |
455 | ; never executed: ERR_put_error(44,(106),((1|64)),__FILE__,300) ; | 0 |
456 | return never executed: return info; info;never executed: return info; | 0 |
457 | } | - |
458 | | - |
459 | OSSL_STORE_INFO *OSSL_STORE_INFO_new_CRL(X509_CRL *crl) | - |
460 | { | - |
461 | OSSL_STORE_INFO *info = store_info_new(5, crl); | - |
462 | | - |
463 | if (info == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
464 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
465 | ) | - |
466 | ERR_put_error(44,(107),((1|64)),__FILE__,310) never executed: ERR_put_error(44,(107),((1|64)),__FILE__,310) ; | 0 |
467 | ; never executed: ERR_put_error(44,(107),((1|64)),__FILE__,310) ; | 0 |
468 | return never executed: return info; info;never executed: return info; | 0 |
469 | } | - |
470 | | - |
471 | | - |
472 | | - |
473 | | - |
474 | int OSSL_STORE_INFO_get_type(const OSSL_STORE_INFO *info) | - |
475 | { | - |
476 | return never executed: return info->type; info->type;never executed: return info->type; | 0 |
477 | } | - |
478 | | - |
479 | const char *OSSL_STORE_INFO_get0_NAME(const OSSL_STORE_INFO *info) | - |
480 | { | - |
481 | if (info->type == 1TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
482 | return never executed: return info->_.name.name; info->_.name.name;never executed: return info->_.name.name; | 0 |
483 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
484 | ((void *)0) never executed: return ((void *)0) ; | 0 |
485 | ; never executed: return ((void *)0) ; | 0 |
486 | } | - |
487 | | - |
488 | char *OSSL_STORE_INFO_get1_NAME(const OSSL_STORE_INFO *info) | - |
489 | { | - |
490 | if (info->type == 1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
491 | char *ret = CRYPTO_strdup(info->_.name.name, __FILE__, 332); | - |
492 | | - |
493 | if (ret == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
494 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
495 | ) | - |
496 | ERR_put_error(44,(103),((1|64)),__FILE__,336) never executed: ERR_put_error(44,(103),((1|64)),__FILE__,336) ; | 0 |
497 | ; never executed: ERR_put_error(44,(103),((1|64)),__FILE__,336) ; | 0 |
498 | return never executed: return ret; ret;never executed: return ret; | 0 |
499 | } | - |
500 | ERR_put_error(44,(103),(103),__FILE__,340) | - |
501 | ; | - |
502 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
503 | ((void *)0) never executed: return ((void *)0) ; | 0 |
504 | ; never executed: return ((void *)0) ; | 0 |
505 | } | - |
506 | | - |
507 | const char *OSSL_STORE_INFO_get0_NAME_description(const OSSL_STORE_INFO *info) | - |
508 | { | - |
509 | if (info->type == 1TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
510 | return never executed: return info->_.name.desc; info->_.name.desc;never executed: return info->_.name.desc; | 0 |
511 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
512 | ((void *)0) never executed: return ((void *)0) ; | 0 |
513 | ; never executed: return ((void *)0) ; | 0 |
514 | } | - |
515 | | - |
516 | char *OSSL_STORE_INFO_get1_NAME_description(const OSSL_STORE_INFO *info) | - |
517 | { | - |
518 | if (info->type == 1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
519 | char *ret = CRYPTO_strdup(info->_.name.desc ? info->_.name.desc : "", | - |
520 | __FILE__ | - |
521 | , | - |
522 | 355 | - |
523 | ) | - |
524 | ; | - |
525 | | - |
526 | if (ret == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
527 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
528 | ) | - |
529 | ERR_put_error(44,(135),((1|64)),__FILE__,359) never executed: ERR_put_error(44,(135),((1|64)),__FILE__,359) ; | 0 |
530 | ; never executed: ERR_put_error(44,(135),((1|64)),__FILE__,359) ; | 0 |
531 | return never executed: return ret; ret;never executed: return ret; | 0 |
532 | } | - |
533 | ERR_put_error(44,(135),(103),__FILE__,363) | - |
534 | ; | - |
535 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
536 | ((void *)0) never executed: return ((void *)0) ; | 0 |
537 | ; never executed: return ((void *)0) ; | 0 |
538 | } | - |
539 | | - |
540 | EVP_PKEY *OSSL_STORE_INFO_get0_PARAMS(const OSSL_STORE_INFO *info) | - |
541 | { | - |
542 | if (info->type == 2TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
543 | return never executed: return info->_.params; info->_.params;never executed: return info->_.params; | 0 |
544 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
545 | ((void *)0) never executed: return ((void *)0) ; | 0 |
546 | ; never executed: return ((void *)0) ; | 0 |
547 | } | - |
548 | | - |
549 | EVP_PKEY *OSSL_STORE_INFO_get1_PARAMS(const OSSL_STORE_INFO *info) | - |
550 | { | - |
551 | if (info->type == 2TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
552 | EVP_PKEY_up_ref(info->_.params); | - |
553 | return never executed: return info->_.params; info->_.params;never executed: return info->_.params; | 0 |
554 | } | - |
555 | ERR_put_error(44,(104),(104),__FILE__,381) | - |
556 | ; | - |
557 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
558 | ((void *)0) never executed: return ((void *)0) ; | 0 |
559 | ; never executed: return ((void *)0) ; | 0 |
560 | } | - |
561 | | - |
562 | EVP_PKEY *OSSL_STORE_INFO_get0_PKEY(const OSSL_STORE_INFO *info) | - |
563 | { | - |
564 | if (info->type == 3TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
565 | return never executed: return info->_.pkey; info->_.pkey;never executed: return info->_.pkey; | 0 |
566 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
567 | ((void *)0) never executed: return ((void *)0) ; | 0 |
568 | ; never executed: return ((void *)0) ; | 0 |
569 | } | - |
570 | | - |
571 | EVP_PKEY *OSSL_STORE_INFO_get1_PKEY(const OSSL_STORE_INFO *info) | - |
572 | { | - |
573 | if (info->type == 3TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
574 | EVP_PKEY_up_ref(info->_.pkey); | - |
575 | return never executed: return info->_.pkey; info->_.pkey;never executed: return info->_.pkey; | 0 |
576 | } | - |
577 | ERR_put_error(44,(105),(102),__FILE__,399) | - |
578 | ; | - |
579 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
580 | ((void *)0) never executed: return ((void *)0) ; | 0 |
581 | ; never executed: return ((void *)0) ; | 0 |
582 | } | - |
583 | | - |
584 | X509 *OSSL_STORE_INFO_get0_CERT(const OSSL_STORE_INFO *info) | - |
585 | { | - |
586 | if (info->type == 4TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
587 | return never executed: return info->_.x509; info->_.x509;never executed: return info->_.x509; | 0 |
588 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
589 | ((void *)0) never executed: return ((void *)0) ; | 0 |
590 | ; never executed: return ((void *)0) ; | 0 |
591 | } | - |
592 | | - |
593 | X509 *OSSL_STORE_INFO_get1_CERT(const OSSL_STORE_INFO *info) | - |
594 | { | - |
595 | if (info->type == 4TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
596 | X509_up_ref(info->_.x509); | - |
597 | return never executed: return info->_.x509; info->_.x509;never executed: return info->_.x509; | 0 |
598 | } | - |
599 | ERR_put_error(44,(101),(100),__FILE__,417) | - |
600 | ; | - |
601 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
602 | ((void *)0) never executed: return ((void *)0) ; | 0 |
603 | ; never executed: return ((void *)0) ; | 0 |
604 | } | - |
605 | | - |
606 | X509_CRL *OSSL_STORE_INFO_get0_CRL(const OSSL_STORE_INFO *info) | - |
607 | { | - |
608 | if (info->type == 5TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
609 | return never executed: return info->_.crl; info->_.crl;never executed: return info->_.crl; | 0 |
610 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
611 | ((void *)0) never executed: return ((void *)0) ; | 0 |
612 | ; never executed: return ((void *)0) ; | 0 |
613 | } | - |
614 | | - |
615 | X509_CRL *OSSL_STORE_INFO_get1_CRL(const OSSL_STORE_INFO *info) | - |
616 | { | - |
617 | if (info->type == 5TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
618 | X509_CRL_up_ref(info->_.crl); | - |
619 | return never executed: return info->_.crl; info->_.crl;never executed: return info->_.crl; | 0 |
620 | } | - |
621 | ERR_put_error(44,(102),(101),__FILE__,435) | - |
622 | ; | - |
623 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
624 | ((void *)0) never executed: return ((void *)0) ; | 0 |
625 | ; never executed: return ((void *)0) ; | 0 |
626 | } | - |
627 | | - |
628 | | - |
629 | | - |
630 | | - |
631 | void OSSL_STORE_INFO_free(OSSL_STORE_INFO *info) | - |
632 | { | - |
633 | if (info != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
634 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
635 | ) { | - |
636 | switch (info->type) { | - |
637 | case never executed: case -1: -1:never executed: case -1: | 0 |
638 | BUF_MEM_free(info->_.embedded.blob); | - |
639 | CRYPTO_free(info->_.embedded.pem_name, __FILE__, 448); | - |
640 | break; never executed: break; | 0 |
641 | case never executed: case 1: 1:never executed: case 1: | 0 |
642 | CRYPTO_free(info->_.name.name, __FILE__, 451); | - |
643 | CRYPTO_free(info->_.name.desc, __FILE__, 452); | - |
644 | break; never executed: break; | 0 |
645 | case never executed: case 2: 2:never executed: case 2: | 0 |
646 | EVP_PKEY_free(info->_.params); | - |
647 | break; never executed: break; | 0 |
648 | case never executed: case 3: 3:never executed: case 3: | 0 |
649 | EVP_PKEY_free(info->_.pkey); | - |
650 | break; never executed: break; | 0 |
651 | case never executed: case 4: 4:never executed: case 4: | 0 |
652 | X509_free(info->_.x509); | - |
653 | break; never executed: break; | 0 |
654 | case never executed: case 5: 5:never executed: case 5: | 0 |
655 | X509_CRL_free(info->_.crl); | - |
656 | break; never executed: break; | 0 |
657 | } | - |
658 | CRYPTO_free(info, __FILE__, 467); | - |
659 | } never executed: end of block | 0 |
660 | } never executed: end of block | 0 |
661 | | - |
662 | int OSSL_STORE_supports_search(OSSL_STORE_CTX *ctx, int search_type) | - |
663 | { | - |
664 | OSSL_STORE_SEARCH tmp_search; | - |
665 | | - |
666 | if (ctx->loader->find == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
667 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
668 | ) | - |
669 | return never executed: return 0; 0;never executed: return 0; | 0 |
670 | tmp_search.search_type = search_type; | - |
671 | return never executed: return ctx->loader->find( ((void *)0) , &tmp_search); ctx->loader->find(never executed: return ctx->loader->find( ((void *)0) , &tmp_search); | 0 |
672 | ((void *)0) never executed: return ctx->loader->find( ((void *)0) , &tmp_search); | 0 |
673 | , &tmp_search); never executed: return ctx->loader->find( ((void *)0) , &tmp_search); | 0 |
674 | } | - |
675 | | - |
676 | | - |
677 | OSSL_STORE_SEARCH *OSSL_STORE_SEARCH_by_name(X509_NAME *name) | - |
678 | { | - |
679 | OSSL_STORE_SEARCH *search = CRYPTO_zalloc(sizeof(*search), __FILE__, 484); | - |
680 | | - |
681 | if (search == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
682 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
683 | ) { | - |
684 | ERR_put_error(44,(137),((1|64)),__FILE__,488) | - |
685 | ; | - |
686 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
687 | ((void *)0) never executed: return ((void *)0) ; | 0 |
688 | ; never executed: return ((void *)0) ; | 0 |
689 | } | - |
690 | | - |
691 | search->search_type = 1; | - |
692 | search->name = name; | - |
693 | return never executed: return search; search;never executed: return search; | 0 |
694 | } | - |
695 | | - |
696 | OSSL_STORE_SEARCH *OSSL_STORE_SEARCH_by_issuer_serial(X509_NAME *name, | - |
697 | const ASN1_INTEGER *serial) | - |
698 | { | - |
699 | OSSL_STORE_SEARCH *search = CRYPTO_zalloc(sizeof(*search), __FILE__, 500); | - |
700 | | - |
701 | if (search == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
702 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
703 | ) { | - |
704 | ERR_put_error(44,(133),((1|64)),__FILE__,504) | - |
705 | ; | - |
706 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
707 | ((void *)0) never executed: return ((void *)0) ; | 0 |
708 | ; never executed: return ((void *)0) ; | 0 |
709 | } | - |
710 | | - |
711 | search->search_type = 2; | - |
712 | search->name = name; | - |
713 | search->serial = serial; | - |
714 | return never executed: return search; search;never executed: return search; | 0 |
715 | } | - |
716 | | - |
717 | OSSL_STORE_SEARCH *OSSL_STORE_SEARCH_by_key_fingerprint(const EVP_MD *digest, | - |
718 | const unsigned char | - |
719 | *bytes, size_t len) | - |
720 | { | - |
721 | OSSL_STORE_SEARCH *search = CRYPTO_zalloc(sizeof(*search), __FILE__, 518); | - |
722 | | - |
723 | if (search == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
724 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
725 | ) { | - |
726 | ERR_put_error(44,(136),((1|64)),__FILE__,522) | - |
727 | ; | - |
728 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
729 | ((void *)0) never executed: return ((void *)0) ; | 0 |
730 | ; never executed: return ((void *)0) ; | 0 |
731 | } | - |
732 | | - |
733 | if (digest != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
734 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
735 | && len != (size_t)EVP_MD_size(digest)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
736 | char buf1[20], buf2[20]; | - |
737 | | - |
738 | BIO_snprintf(buf1, sizeof(buf1), "%d", EVP_MD_size(digest)); | - |
739 | BIO_snprintf(buf2, sizeof(buf2), "%zu", len); | - |
740 | ERR_put_error(44,(136),(121),__FILE__,532) | - |
741 | ; | - |
742 | ERR_add_error_data(5, OBJ_nid2sn(EVP_MD_type(digest)), " size is ", buf1, | - |
743 | ", fingerprint size is ", buf2); | - |
744 | } never executed: end of block | 0 |
745 | | - |
746 | search->search_type = 3; | - |
747 | search->digest = digest; | - |
748 | search->string = bytes; | - |
749 | search->stringlength = len; | - |
750 | return never executed: return search; search;never executed: return search; | 0 |
751 | } | - |
752 | | - |
753 | OSSL_STORE_SEARCH *OSSL_STORE_SEARCH_by_alias(const char *alias) | - |
754 | { | - |
755 | OSSL_STORE_SEARCH *search = CRYPTO_zalloc(sizeof(*search), __FILE__, 546); | - |
756 | | - |
757 | if (search == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
758 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
759 | ) { | - |
760 | ERR_put_error(44,(132),((1|64)),__FILE__,550) | - |
761 | ; | - |
762 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
763 | ((void *)0) never executed: return ((void *)0) ; | 0 |
764 | ; never executed: return ((void *)0) ; | 0 |
765 | } | - |
766 | | - |
767 | search->search_type = 4; | - |
768 | search->string = (const unsigned char *)alias; | - |
769 | search->stringlength = strlen(alias); | - |
770 | return never executed: return search; search;never executed: return search; | 0 |
771 | } | - |
772 | | - |
773 | | - |
774 | void OSSL_STORE_SEARCH_free(OSSL_STORE_SEARCH *search) | - |
775 | { | - |
776 | CRYPTO_free(search, __FILE__, 563); | - |
777 | } never executed: end of block | 0 |
778 | | - |
779 | | - |
780 | int OSSL_STORE_SEARCH_get_type(const OSSL_STORE_SEARCH *criterion) | - |
781 | { | - |
782 | return never executed: return criterion->search_type; criterion->search_type;never executed: return criterion->search_type; | 0 |
783 | } | - |
784 | | - |
785 | X509_NAME *OSSL_STORE_SEARCH_get0_name(OSSL_STORE_SEARCH *criterion) | - |
786 | { | - |
787 | return never executed: return criterion->name; criterion->name;never executed: return criterion->name; | 0 |
788 | } | - |
789 | | - |
790 | const ASN1_INTEGER *OSSL_STORE_SEARCH_get0_serial(const OSSL_STORE_SEARCH | - |
791 | *criterion) | - |
792 | { | - |
793 | return never executed: return criterion->serial; criterion->serial;never executed: return criterion->serial; | 0 |
794 | } | - |
795 | | - |
796 | const unsigned char *OSSL_STORE_SEARCH_get0_bytes(const OSSL_STORE_SEARCH | - |
797 | *criterion, size_t *length) | - |
798 | { | - |
799 | *length = criterion->stringlength; | - |
800 | return never executed: return criterion->string; criterion->string;never executed: return criterion->string; | 0 |
801 | } | - |
802 | | - |
803 | const char *OSSL_STORE_SEARCH_get0_string(const OSSL_STORE_SEARCH *criterion) | - |
804 | { | - |
805 | return never executed: return (const char *)criterion->string; (const char *)criterion->string;never executed: return (const char *)criterion->string; | 0 |
806 | } | - |
807 | | - |
808 | const EVP_MD *OSSL_STORE_SEARCH_get0_digest(const OSSL_STORE_SEARCH *criterion) | - |
809 | { | - |
810 | return never executed: return criterion->digest; criterion->digest;never executed: return criterion->digest; | 0 |
811 | } | - |
812 | | - |
813 | | - |
814 | OSSL_STORE_INFO *ossl_store_info_new_EMBEDDED(const char *new_pem_name, | - |
815 | BUF_MEM *embedded) | - |
816 | { | - |
817 | OSSL_STORE_INFO *info = store_info_new(-1, | - |
818 | ((void *)0) | - |
819 | ); | - |
820 | | - |
821 | if (info == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
822 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
823 | ) { | - |
824 | ERR_put_error(44,(123),((1|64)),__FILE__,608) | - |
825 | ; | - |
826 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
827 | ((void *)0) never executed: return ((void *)0) ; | 0 |
828 | ; never executed: return ((void *)0) ; | 0 |
829 | } | - |
830 | | - |
831 | info->_.embedded.blob = embedded; | - |
832 | info->_.embedded.pem_name = | - |
833 | new_pem_name == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
834 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
835 | ? | - |
836 | ((void *)0) | - |
837 | : CRYPTO_strdup(new_pem_name, __FILE__, 614); | - |
838 | | - |
839 | if (new_pem_name != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
840 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
841 | && info->_.embedded.pem_name == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
842 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
843 | ) { | - |
844 | ERR_put_error(44,(123),((1|64)),__FILE__,618) | - |
845 | ; | - |
846 | OSSL_STORE_INFO_free(info); | - |
847 | info = | - |
848 | ((void *)0) | - |
849 | ; | - |
850 | } never executed: end of block | 0 |
851 | | - |
852 | return never executed: return info; info;never executed: return info; | 0 |
853 | } | - |
854 | | - |
855 | BUF_MEM *ossl_store_info_get0_EMBEDDED_buffer(OSSL_STORE_INFO *info) | - |
856 | { | - |
857 | if (info->type == -1TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
858 | return never executed: return info->_.embedded.blob; info->_.embedded.blob;never executed: return info->_.embedded.blob; | 0 |
859 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
860 | ((void *)0) never executed: return ((void *)0) ; | 0 |
861 | ; never executed: return ((void *)0) ; | 0 |
862 | } | - |
863 | | - |
864 | char *ossl_store_info_get0_EMBEDDED_pem_name(OSSL_STORE_INFO *info) | - |
865 | { | - |
866 | if (info->type == -1TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
867 | return never executed: return info->_.embedded.pem_name; info->_.embedded.pem_name;never executed: return info->_.embedded.pem_name; | 0 |
868 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 |
869 | ((void *)0) never executed: return ((void *)0) ; | 0 |
870 | ; never executed: return ((void *)0) ; | 0 |
871 | } | - |
872 | | - |
873 | OSSL_STORE_CTX *ossl_store_attach_pem_bio(BIO *bp, const UI_METHOD *ui_method, | - |
874 | void *ui_data) | - |
875 | { | - |
876 | OSSL_STORE_CTX *ctx = | - |
877 | ((void *)0) | - |
878 | ; | - |
879 | const OSSL_STORE_LOADER *loader = | - |
880 | ((void *)0) | - |
881 | ; | - |
882 | OSSL_STORE_LOADER_CTX *loader_ctx = | - |
883 | ((void *)0) | - |
884 | ; | - |
885 | | - |
886 | if ((TRUE | never evaluated | FALSE | never evaluated |
loader = ossl_store_get0_loader_int("file")) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
887 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
888 | | - |
889 | || ((TRUE | never evaluated | FALSE | never evaluated |
loader_ctx = ossl_store_file_attach_pem_bio_int(bp)) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
890 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
891 | )TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
892 | goto never executed: goto done; done;never executed: goto done; | 0 |
893 | if ((TRUE | never evaluated | FALSE | never evaluated |
ctx = CRYPTO_zalloc(sizeof(*ctx), __FILE__, 650)) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
894 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
895 | ) { | - |
896 | ERR_put_error(44,(127),((1|64)),__FILE__,652) | - |
897 | ; | - |
898 | goto never executed: goto done; done;never executed: goto done; | 0 |
899 | } | - |
900 | | - |
901 | ctx->loader = loader; | - |
902 | ctx->loader_ctx = loader_ctx; | - |
903 | loader_ctx = | - |
904 | ((void *)0) | - |
905 | ; | - |
906 | ctx->ui_method = ui_method; | - |
907 | ctx->ui_data = ui_data; | - |
908 | ctx->post_process = | - |
909 | ((void *)0) | - |
910 | ; | - |
911 | ctx->post_process_data = | - |
912 | ((void *)0) | - |
913 | ; | - |
914 | | - |
915 | done: code before this statement never executed: done: | 0 |
916 | if (loader_ctx != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
917 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
918 | ) | - |
919 | | - |
920 | | - |
921 | | - |
922 | | - |
923 | | - |
924 | ( never executed: (void)loader->close(loader_ctx); void)loader->close(loader_ctx);never executed: (void)loader->close(loader_ctx); | 0 |
925 | return never executed: return ctx; ctx;never executed: return ctx; | 0 |
926 | } | - |
927 | | - |
928 | int ossl_store_detach_pem_bio(OSSL_STORE_CTX *ctx) | - |
929 | { | - |
930 | int loader_ret = ossl_store_file_detach_pem_bio_int(ctx->loader_ctx); | - |
931 | | - |
932 | CRYPTO_free(ctx, __FILE__, 679); | - |
933 | return never executed: return loader_ret; loader_ret;never executed: return loader_ret; | 0 |
934 | } | - |
| | |