Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/dso/dso_lib.c |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | - | |||||||||||||||||||
2 | - | |||||||||||||||||||
3 | static DSO_METHOD *default_DSO_meth = | - | ||||||||||||||||||
4 | ((void *)0) | - | ||||||||||||||||||
5 | ; | - | ||||||||||||||||||
6 | - | |||||||||||||||||||
7 | static DSO *DSO_new_method(DSO_METHOD *meth) | - | ||||||||||||||||||
8 | { | - | ||||||||||||||||||
9 | DSO *ret; | - | ||||||||||||||||||
10 | - | |||||||||||||||||||
11 | if (default_DSO_meth ==
| 0-368 | ||||||||||||||||||
12 | ((void *)0)
| 0-368 | ||||||||||||||||||
13 | ) { | - | ||||||||||||||||||
14 | - | |||||||||||||||||||
15 | - | |||||||||||||||||||
16 | - | |||||||||||||||||||
17 | - | |||||||||||||||||||
18 | - | |||||||||||||||||||
19 | default_DSO_meth = DSO_METHOD_openssl(); | - | ||||||||||||||||||
20 | } executed 368 times by 1 test: end of block Executed by:
| 368 | ||||||||||||||||||
21 | ret = CRYPTO_zalloc(sizeof(*ret), __FILE__, 27); | - | ||||||||||||||||||
22 | if (ret ==
| 0-368 | ||||||||||||||||||
23 | ((void *)0)
| 0-368 | ||||||||||||||||||
24 | ) { | - | ||||||||||||||||||
25 | ERR_put_error(37,(113),((1|64)),__FILE__,29); | - | ||||||||||||||||||
26 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
27 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
28 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
29 | } | - | ||||||||||||||||||
30 | ret->meth_data = sk_void_new_null(); | - | ||||||||||||||||||
31 | if (ret->meth_data ==
| 0-368 | ||||||||||||||||||
32 | ((void *)0)
| 0-368 | ||||||||||||||||||
33 | ) { | - | ||||||||||||||||||
34 | - | |||||||||||||||||||
35 | ERR_put_error(37,(113),((1|64)),__FILE__,35); | - | ||||||||||||||||||
36 | CRYPTO_free(ret, __FILE__, 36); | - | ||||||||||||||||||
37 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
38 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
39 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
40 | } | - | ||||||||||||||||||
41 | ret->meth = default_DSO_meth; | - | ||||||||||||||||||
42 | ret->references = 1; | - | ||||||||||||||||||
43 | ret->lock = CRYPTO_THREAD_lock_new(); | - | ||||||||||||||||||
44 | if (ret->lock ==
| 0-368 | ||||||||||||||||||
45 | ((void *)0)
| 0-368 | ||||||||||||||||||
46 | ) { | - | ||||||||||||||||||
47 | ERR_put_error(37,(113),((1|64)),__FILE__,43); | - | ||||||||||||||||||
48 | sk_void_free(ret->meth_data); | - | ||||||||||||||||||
49 | CRYPTO_free(ret, __FILE__, 45); | - | ||||||||||||||||||
50 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
51 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
52 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
53 | } | - | ||||||||||||||||||
54 | - | |||||||||||||||||||
55 | if ((
| 0-368 | ||||||||||||||||||
56 | ((void *)0)
| 0-368 | ||||||||||||||||||
57 | )
| 0-368 | ||||||||||||||||||
58 | DSO_free(ret); | - | ||||||||||||||||||
59 | ret = | - | ||||||||||||||||||
60 | ((void *)0) | - | ||||||||||||||||||
61 | ; | - | ||||||||||||||||||
62 | } never executed: end of block | 0 | ||||||||||||||||||
63 | - | |||||||||||||||||||
64 | return executed 368 times by 1 test: ret;return ret; Executed by:
executed 368 times by 1 test: return ret; Executed by:
| 368 | ||||||||||||||||||
65 | } | - | ||||||||||||||||||
66 | - | |||||||||||||||||||
67 | DSO *DSO_new(void) | - | ||||||||||||||||||
68 | { | - | ||||||||||||||||||
69 | return executed 368 times by 1 test: DSO_new_method(return DSO_new_method( ((void *)0) ); Executed by:
executed 368 times by 1 test: return DSO_new_method( ((void *)0) ); Executed by:
| 368 | ||||||||||||||||||
70 | ((void *)0) executed 368 times by 1 test: return DSO_new_method( ((void *)0) ); Executed by:
| 368 | ||||||||||||||||||
71 | ); executed 368 times by 1 test: return DSO_new_method( ((void *)0) ); Executed by:
| 368 | ||||||||||||||||||
72 | } | - | ||||||||||||||||||
73 | - | |||||||||||||||||||
74 | int DSO_free(DSO *dso) | - | ||||||||||||||||||
75 | { | - | ||||||||||||||||||
76 | int i; | - | ||||||||||||||||||
77 | - | |||||||||||||||||||
78 | if (dso ==
| 368-9790 | ||||||||||||||||||
79 | ((void *)0)
| 368-9790 | ||||||||||||||||||
80 | ) | - | ||||||||||||||||||
81 | return executed 9790 times by 1 test: 1;return 1; Executed by:
executed 9790 times by 1 test: return 1; Executed by:
| 9790 | ||||||||||||||||||
82 | - | |||||||||||||||||||
83 | if (CRYPTO_DOWN_REF(&dso->references, &i, dso->lock) <= 0
| 0-368 | ||||||||||||||||||
84 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
85 | - | |||||||||||||||||||
86 | ; | - | ||||||||||||||||||
87 | if (i > 0
| 0-368 | ||||||||||||||||||
88 | return never executed: 1;return 1; never executed: return 1; | 0 | ||||||||||||||||||
89 | ; | - | ||||||||||||||||||
90 | - | |||||||||||||||||||
91 | if ((
| 0-368 | ||||||||||||||||||
92 | if ((
| 0-368 | ||||||||||||||||||
93 | ((void *)0)
| 0-368 | ||||||||||||||||||
94 | )
| 0-368 | ||||||||||||||||||
95 | ERR_put_error(37,(111),(107),__FILE__,79); | - | ||||||||||||||||||
96 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
97 | } | - | ||||||||||||||||||
98 | } executed 368 times by 1 test: end of block Executed by:
| 368 | ||||||||||||||||||
99 | - | |||||||||||||||||||
100 | if ((
| 0-368 | ||||||||||||||||||
101 | ((void *)0)
| 0-368 | ||||||||||||||||||
102 | )
| 0-368 | ||||||||||||||||||
103 | ERR_put_error(37,(111),(102),__FILE__,85); | - | ||||||||||||||||||
104 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
105 | } | - | ||||||||||||||||||
106 | - | |||||||||||||||||||
107 | sk_void_free(dso->meth_data); | - | ||||||||||||||||||
108 | CRYPTO_free(dso->filename, __FILE__, 90); | - | ||||||||||||||||||
109 | CRYPTO_free(dso->loaded_filename, __FILE__, 91); | - | ||||||||||||||||||
110 | CRYPTO_THREAD_lock_free(dso->lock); | - | ||||||||||||||||||
111 | CRYPTO_free(dso, __FILE__, 93); | - | ||||||||||||||||||
112 | return executed 368 times by 1 test: 1;return 1; Executed by:
executed 368 times by 1 test: return 1; Executed by:
| 368 | ||||||||||||||||||
113 | } | - | ||||||||||||||||||
114 | - | |||||||||||||||||||
115 | int DSO_flags(DSO *dso) | - | ||||||||||||||||||
116 | { | - | ||||||||||||||||||
117 | return executed 736 times by 1 test: ((return ((dso == ((void *)0) ) ? 0 : dso->flags); Executed by:
executed 736 times by 1 test: return ((dso == ((void *)0) ) ? 0 : dso->flags); Executed by:
| 0-736 | ||||||||||||||||||
118 | ((void *)0)
executed 736 times by 1 test: return ((dso == ((void *)0) ) ? 0 : dso->flags); Executed by:
| 0-736 | ||||||||||||||||||
119 | )
executed 736 times by 1 test: return ((dso == ((void *)0) ) ? 0 : dso->flags); Executed by:
| 0-736 | ||||||||||||||||||
120 | } | - | ||||||||||||||||||
121 | - | |||||||||||||||||||
122 | int DSO_up_ref(DSO *dso) | - | ||||||||||||||||||
123 | { | - | ||||||||||||||||||
124 | int i; | - | ||||||||||||||||||
125 | - | |||||||||||||||||||
126 | if (dso ==
| 0 | ||||||||||||||||||
127 | ((void *)0)
| 0 | ||||||||||||||||||
128 | ) { | - | ||||||||||||||||||
129 | ERR_put_error(37,(114),((3|64)),__FILE__,107); | - | ||||||||||||||||||
130 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
131 | } | - | ||||||||||||||||||
132 | - | |||||||||||||||||||
133 | if (CRYPTO_UP_REF(&dso->references, &i, dso->lock) <= 0
| 0 | ||||||||||||||||||
134 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
135 | - | |||||||||||||||||||
136 | ; | - | ||||||||||||||||||
137 | ; | - | ||||||||||||||||||
138 | return never executed: ((return ((i > 1) ? 1 : 0);
never executed: return ((i > 1) ? 1 : 0); | 0 | ||||||||||||||||||
139 | } | - | ||||||||||||||||||
140 | - | |||||||||||||||||||
141 | DSO *DSO_load(DSO *dso, const char *filename, DSO_METHOD *meth, int flags) | - | ||||||||||||||||||
142 | { | - | ||||||||||||||||||
143 | DSO *ret; | - | ||||||||||||||||||
144 | int allocated = 0; | - | ||||||||||||||||||
145 | - | |||||||||||||||||||
146 | if (dso ==
| 0-368 | ||||||||||||||||||
147 | ((void *)0)
| 0-368 | ||||||||||||||||||
148 | ) { | - | ||||||||||||||||||
149 | ret = DSO_new_method(meth); | - | ||||||||||||||||||
150 | if (ret ==
| 0 | ||||||||||||||||||
151 | ((void *)0)
| 0 | ||||||||||||||||||
152 | ) { | - | ||||||||||||||||||
153 | ERR_put_error(37,(112),((1|64)),__FILE__,127); | - | ||||||||||||||||||
154 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||
155 | } | - | ||||||||||||||||||
156 | allocated = 1; | - | ||||||||||||||||||
157 | - | |||||||||||||||||||
158 | if (DSO_ctrl(ret, 2, flags,
| 0 | ||||||||||||||||||
159 | ((void *)0)
| 0 | ||||||||||||||||||
160 | ) < 0
| 0 | ||||||||||||||||||
161 | ERR_put_error(37,(112),(100),__FILE__,133); | - | ||||||||||||||||||
162 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||
163 | } | - | ||||||||||||||||||
164 | } never executed: elseend of block | 0 | ||||||||||||||||||
165 | ret = dso; executed 368 times by 1 test: ret = dso; Executed by:
| 368 | ||||||||||||||||||
166 | - | |||||||||||||||||||
167 | if (ret->filename !=
| 0-368 | ||||||||||||||||||
168 | ((void *)0)
| 0-368 | ||||||||||||||||||
169 | ) { | - | ||||||||||||||||||
170 | ERR_put_error(37,(112),(110),__FILE__,140); | - | ||||||||||||||||||
171 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||
172 | } | - | ||||||||||||||||||
173 | - | |||||||||||||||||||
174 | - | |||||||||||||||||||
175 | - | |||||||||||||||||||
176 | - | |||||||||||||||||||
177 | if (filename !=
| 0-368 | ||||||||||||||||||
178 | ((void *)0)
| 0-368 | ||||||||||||||||||
179 | ) | - | ||||||||||||||||||
180 | if (!DSO_set_filename(ret, filename)
| 0-368 | ||||||||||||||||||
181 | ERR_put_error(37,(112),(112),__FILE__,149); | - | ||||||||||||||||||
182 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||
183 | } | - | ||||||||||||||||||
184 | filename = ret->filename; | - | ||||||||||||||||||
185 | if (filename ==
| 0-368 | ||||||||||||||||||
186 | ((void *)0)
| 0-368 | ||||||||||||||||||
187 | ) { | - | ||||||||||||||||||
188 | ERR_put_error(37,(112),(111),__FILE__,154); | - | ||||||||||||||||||
189 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||
190 | } | - | ||||||||||||||||||
191 | if (ret->meth->dso_load ==
| 0-368 | ||||||||||||||||||
192 | ((void *)0)
| 0-368 | ||||||||||||||||||
193 | ) { | - | ||||||||||||||||||
194 | ERR_put_error(37,(112),(108),__FILE__,158); | - | ||||||||||||||||||
195 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||
196 | } | - | ||||||||||||||||||
197 | if (!ret->meth->dso_load(ret)
| 0-368 | ||||||||||||||||||
198 | ERR_put_error(37,(112),(103),__FILE__,162); | - | ||||||||||||||||||
199 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||
200 | } | - | ||||||||||||||||||
201 | - | |||||||||||||||||||
202 | return executed 368 times by 1 test: ret;return ret; Executed by:
executed 368 times by 1 test: return ret; Executed by:
| 368 | ||||||||||||||||||
203 | err: | - | ||||||||||||||||||
204 | if (allocated
| 0 | ||||||||||||||||||
205 | DSO_free(ret); never executed: DSO_free(ret); | 0 | ||||||||||||||||||
206 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
207 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
208 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
209 | } | - | ||||||||||||||||||
210 | - | |||||||||||||||||||
211 | DSO_FUNC_TYPE DSO_bind_func(DSO *dso, const char *symname) | - | ||||||||||||||||||
212 | { | - | ||||||||||||||||||
213 | DSO_FUNC_TYPE ret = | - | ||||||||||||||||||
214 | ((void *)0) | - | ||||||||||||||||||
215 | ; | - | ||||||||||||||||||
216 | - | |||||||||||||||||||
217 | if ((
| 0-736 | ||||||||||||||||||
218 | ((void *)0)
| 0-736 | ||||||||||||||||||
219 | )
| 0-736 | ||||||||||||||||||
220 | ((void *)0)
| 0-736 | ||||||||||||||||||
221 | )
| 0-736 | ||||||||||||||||||
222 | ERR_put_error(37,(108),((3|64)),__FILE__,178); | - | ||||||||||||||||||
223 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
224 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
225 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
226 | } | - | ||||||||||||||||||
227 | if (dso->meth->dso_bind_func ==
| 0-736 | ||||||||||||||||||
228 | ((void *)0)
| 0-736 | ||||||||||||||||||
229 | ) { | - | ||||||||||||||||||
230 | ERR_put_error(37,(108),(108),__FILE__,182); | - | ||||||||||||||||||
231 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
232 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
233 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
234 | } | - | ||||||||||||||||||
235 | if ((
| 0-736 | ||||||||||||||||||
236 | ((void *)0)
| 0-736 | ||||||||||||||||||
237 | ) { | - | ||||||||||||||||||
238 | ERR_put_error(37,(108),(106),__FILE__,186); | - | ||||||||||||||||||
239 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
240 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
241 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
242 | } | - | ||||||||||||||||||
243 | - | |||||||||||||||||||
244 | return executed 736 times by 1 test: ret;return ret; Executed by:
executed 736 times by 1 test: return ret; Executed by:
| 736 | ||||||||||||||||||
245 | } | - | ||||||||||||||||||
246 | long DSO_ctrl(DSO *dso, int cmd, long larg, void *parg) | - | ||||||||||||||||||
247 | { | - | ||||||||||||||||||
248 | if (dso ==
| 0-368 | ||||||||||||||||||
249 | ((void *)0)
| 0-368 | ||||||||||||||||||
250 | ) { | - | ||||||||||||||||||
251 | ERR_put_error(37,(110),((3|64)),__FILE__,205); | - | ||||||||||||||||||
252 | return never executed: -1;return -1; never executed: return -1; | 0 | ||||||||||||||||||
253 | } | - | ||||||||||||||||||
254 | - | |||||||||||||||||||
255 | - | |||||||||||||||||||
256 | - | |||||||||||||||||||
257 | - | |||||||||||||||||||
258 | switch (cmd) { | - | ||||||||||||||||||
259 | case never executed: 1:case 1: never executed: case 1: | 0 | ||||||||||||||||||
260 | return never executed: dso->flags;return dso->flags; never executed: return dso->flags; | 0 | ||||||||||||||||||
261 | case executed 368 times by 1 test: 2:case 2: Executed by:
executed 368 times by 1 test: case 2: Executed by:
| 368 | ||||||||||||||||||
262 | dso->flags = (int)larg; | - | ||||||||||||||||||
263 | return executed 368 times by 1 test: 0;return 0; Executed by:
executed 368 times by 1 test: return 0; Executed by:
| 368 | ||||||||||||||||||
264 | case never executed: 3:case 3: never executed: case 3: | 0 | ||||||||||||||||||
265 | dso->flags |= (int)larg; | - | ||||||||||||||||||
266 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
267 | default never executed: :default: never executed: default: | 0 | ||||||||||||||||||
268 | break; never executed: break; | 0 | ||||||||||||||||||
269 | } | - | ||||||||||||||||||
270 | if ((
| 0 | ||||||||||||||||||
271 | ((void *)0)
| 0 | ||||||||||||||||||
272 | )
| 0 | ||||||||||||||||||
273 | ((void *)0)
| 0 | ||||||||||||||||||
274 | )
| 0 | ||||||||||||||||||
275 | ERR_put_error(37,(110),(108),__FILE__,225); | - | ||||||||||||||||||
276 | return never executed: -1;return -1; never executed: return -1; | 0 | ||||||||||||||||||
277 | } | - | ||||||||||||||||||
278 | return never executed: dso->meth->dso_ctrl(dso, cmd, larg, parg);return dso->meth->dso_ctrl(dso, cmd, larg, parg); never executed: return dso->meth->dso_ctrl(dso, cmd, larg, parg); | 0 | ||||||||||||||||||
279 | } | - | ||||||||||||||||||
280 | - | |||||||||||||||||||
281 | const char *DSO_get_filename(DSO *dso) | - | ||||||||||||||||||
282 | { | - | ||||||||||||||||||
283 | if (dso ==
| 0 | ||||||||||||||||||
284 | ((void *)0)
| 0 | ||||||||||||||||||
285 | ) { | - | ||||||||||||||||||
286 | ERR_put_error(37,(127),((3|64)),__FILE__,234); | - | ||||||||||||||||||
287 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
288 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
289 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
290 | } | - | ||||||||||||||||||
291 | return never executed: dso->filename;return dso->filename; never executed: return dso->filename; | 0 | ||||||||||||||||||
292 | } | - | ||||||||||||||||||
293 | - | |||||||||||||||||||
294 | int DSO_set_filename(DSO *dso, const char *filename) | - | ||||||||||||||||||
295 | { | - | ||||||||||||||||||
296 | char *copied; | - | ||||||||||||||||||
297 | - | |||||||||||||||||||
298 | if ((
| 0-368 | ||||||||||||||||||
299 | ((void *)0)
| 0-368 | ||||||||||||||||||
300 | )
| 0-368 | ||||||||||||||||||
301 | ((void *)0)
| 0-368 | ||||||||||||||||||
302 | )
| 0-368 | ||||||||||||||||||
303 | ERR_put_error(37,(129),((3|64)),__FILE__,245); | - | ||||||||||||||||||
304 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
305 | } | - | ||||||||||||||||||
306 | if (dso->loaded_filename
| 0-368 | ||||||||||||||||||
307 | ERR_put_error(37,(129),(110),__FILE__,249); | - | ||||||||||||||||||
308 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
309 | } | - | ||||||||||||||||||
310 | - | |||||||||||||||||||
311 | copied = CRYPTO_strdup(filename, __FILE__, 253); | - | ||||||||||||||||||
312 | if (copied ==
| 0-368 | ||||||||||||||||||
313 | ((void *)0)
| 0-368 | ||||||||||||||||||
314 | ) { | - | ||||||||||||||||||
315 | ERR_put_error(37,(129),((1|64)),__FILE__,255); | - | ||||||||||||||||||
316 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
317 | } | - | ||||||||||||||||||
318 | CRYPTO_free(dso->filename, __FILE__, 258); | - | ||||||||||||||||||
319 | dso->filename = copied; | - | ||||||||||||||||||
320 | return executed 368 times by 1 test: 1;return 1; Executed by:
executed 368 times by 1 test: return 1; Executed by:
| 368 | ||||||||||||||||||
321 | } | - | ||||||||||||||||||
322 | - | |||||||||||||||||||
323 | char *DSO_merge(DSO *dso, const char *filespec1, const char *filespec2) | - | ||||||||||||||||||
324 | { | - | ||||||||||||||||||
325 | char *result = | - | ||||||||||||||||||
326 | ((void *)0) | - | ||||||||||||||||||
327 | ; | - | ||||||||||||||||||
328 | - | |||||||||||||||||||
329 | if (dso ==
| 0-368 | ||||||||||||||||||
330 | ((void *)0)
| 0-368 | ||||||||||||||||||
331 | || filespec1 ==
| 0-368 | ||||||||||||||||||
332 | ((void *)0)
| 0-368 | ||||||||||||||||||
333 | ) { | - | ||||||||||||||||||
334 | ERR_put_error(37,(132),((3|64)),__FILE__,268); | - | ||||||||||||||||||
335 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
336 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
337 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
338 | } | - | ||||||||||||||||||
339 | if ((
| 0-368 | ||||||||||||||||||
340 | if (dso->merger !=
| 0-368 | ||||||||||||||||||
341 | ((void *)0)
| 0-368 | ||||||||||||||||||
342 | ) | - | ||||||||||||||||||
343 | result = dso->merger(dso, filespec1, filespec2); never executed: result = dso->merger(dso, filespec1, filespec2); | 0 | ||||||||||||||||||
344 | else if (dso->meth->dso_merger !=
| 0-368 | ||||||||||||||||||
345 | ((void *)0)
| 0-368 | ||||||||||||||||||
346 | ) | - | ||||||||||||||||||
347 | result = dso->meth->dso_merger(dso, filespec1, filespec2); executed 368 times by 1 test: result = dso->meth->dso_merger(dso, filespec1, filespec2); Executed by:
| 368 | ||||||||||||||||||
348 | } executed 368 times by 1 test: end of block Executed by:
| 368 | ||||||||||||||||||
349 | return executed 368 times by 1 test: result;return result; Executed by:
executed 368 times by 1 test: return result; Executed by:
| 368 | ||||||||||||||||||
350 | } | - | ||||||||||||||||||
351 | - | |||||||||||||||||||
352 | char *DSO_convert_filename(DSO *dso, const char *filename) | - | ||||||||||||||||||
353 | { | - | ||||||||||||||||||
354 | char *result = | - | ||||||||||||||||||
355 | ((void *)0) | - | ||||||||||||||||||
356 | ; | - | ||||||||||||||||||
357 | - | |||||||||||||||||||
358 | if (dso ==
| 0-736 | ||||||||||||||||||
359 | ((void *)0)
| 0-736 | ||||||||||||||||||
360 | ) { | - | ||||||||||||||||||
361 | ERR_put_error(37,(126),((3|64)),__FILE__,285); | - | ||||||||||||||||||
362 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
363 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
364 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
365 | } | - | ||||||||||||||||||
366 | if (filename ==
| 368 | ||||||||||||||||||
367 | ((void *)0)
| 368 | ||||||||||||||||||
368 | ) | - | ||||||||||||||||||
369 | filename = dso->filename; executed 368 times by 1 test: filename = dso->filename; Executed by:
| 368 | ||||||||||||||||||
370 | if (filename ==
| 0-736 | ||||||||||||||||||
371 | ((void *)0)
| 0-736 | ||||||||||||||||||
372 | ) { | - | ||||||||||||||||||
373 | ERR_put_error(37,(126),(111),__FILE__,291); | - | ||||||||||||||||||
374 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
375 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
376 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
377 | } | - | ||||||||||||||||||
378 | if ((
| 0-736 | ||||||||||||||||||
379 | if (dso->name_converter !=
| 0-736 | ||||||||||||||||||
380 | ((void *)0)
| 0-736 | ||||||||||||||||||
381 | ) | - | ||||||||||||||||||
382 | result = dso->name_converter(dso, filename); never executed: result = dso->name_converter(dso, filename); | 0 | ||||||||||||||||||
383 | else if (dso->meth->dso_name_converter !=
| 0-736 | ||||||||||||||||||
384 | ((void *)0)
| 0-736 | ||||||||||||||||||
385 | ) | - | ||||||||||||||||||
386 | result = dso->meth->dso_name_converter(dso, filename); executed 736 times by 1 test: result = dso->meth->dso_name_converter(dso, filename); Executed by:
| 736 | ||||||||||||||||||
387 | } executed 736 times by 1 test: end of block Executed by:
| 736 | ||||||||||||||||||
388 | if (result ==
| 0-736 | ||||||||||||||||||
389 | ((void *)0)
| 0-736 | ||||||||||||||||||
390 | ) { | - | ||||||||||||||||||
391 | result = CRYPTO_strdup(filename, __FILE__, 301); | - | ||||||||||||||||||
392 | if (result ==
| 0 | ||||||||||||||||||
393 | ((void *)0)
| 0 | ||||||||||||||||||
394 | ) { | - | ||||||||||||||||||
395 | ERR_put_error(37,(126),((1|64)),__FILE__,303); | - | ||||||||||||||||||
396 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
397 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
398 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
399 | } | - | ||||||||||||||||||
400 | } never executed: end of block | 0 | ||||||||||||||||||
401 | return executed 736 times by 1 test: result;return result; Executed by:
executed 736 times by 1 test: return result; Executed by:
| 736 | ||||||||||||||||||
402 | } | - | ||||||||||||||||||
403 | - | |||||||||||||||||||
404 | int DSO_pathbyaddr(void *addr, char *path, int sz) | - | ||||||||||||||||||
405 | { | - | ||||||||||||||||||
406 | DSO_METHOD *meth = default_DSO_meth; | - | ||||||||||||||||||
407 | if (meth ==
| 0 | ||||||||||||||||||
408 | ((void *)0)
| 0 | ||||||||||||||||||
409 | ) | - | ||||||||||||||||||
410 | meth = DSO_METHOD_openssl(); never executed: meth = DSO_METHOD_openssl(); | 0 | ||||||||||||||||||
411 | if (meth->pathbyaddr ==
| 0 | ||||||||||||||||||
412 | ((void *)0)
| 0 | ||||||||||||||||||
413 | ) { | - | ||||||||||||||||||
414 | ERR_put_error(37,(105),(108),__FILE__,316); | - | ||||||||||||||||||
415 | return never executed: -1;return -1; never executed: return -1; | 0 | ||||||||||||||||||
416 | } | - | ||||||||||||||||||
417 | return never executed: (*meth->pathbyaddr) (addr, path, sz);return (*meth->pathbyaddr) (addr, path, sz); never executed: return (*meth->pathbyaddr) (addr, path, sz); | 0 | ||||||||||||||||||
418 | } | - | ||||||||||||||||||
419 | - | |||||||||||||||||||
420 | DSO *DSO_dsobyaddr(void *addr, int flags) | - | ||||||||||||||||||
421 | { | - | ||||||||||||||||||
422 | DSO *ret = | - | ||||||||||||||||||
423 | ((void *)0) | - | ||||||||||||||||||
424 | ; | - | ||||||||||||||||||
425 | char *filename = | - | ||||||||||||||||||
426 | ((void *)0) | - | ||||||||||||||||||
427 | ; | - | ||||||||||||||||||
428 | int len = DSO_pathbyaddr(addr, | - | ||||||||||||||||||
429 | ((void *)0) | - | ||||||||||||||||||
430 | , 0); | - | ||||||||||||||||||
431 | - | |||||||||||||||||||
432 | if (len < 0
| 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 | - | |||||||||||||||||||
437 | filename = CRYPTO_malloc(len, __FILE__, 331); | - | ||||||||||||||||||
438 | if (filename !=
| 0 | ||||||||||||||||||
439 | ((void *)0)
| 0 | ||||||||||||||||||
440 | - | |||||||||||||||||||
441 | && DSO_pathbyaddr(addr, filename, len) == len
| 0 | ||||||||||||||||||
442 | ret = DSO_load( never executed: ret = DSO_load( ((void *)0) , filename, ((void *)0) , flags); | 0 | ||||||||||||||||||
443 | ((void *)0) never executed: ret = DSO_load( ((void *)0) , filename, ((void *)0) , flags); | 0 | ||||||||||||||||||
444 | , filename, never executed: ret = DSO_load( ((void *)0) , filename, ((void *)0) , flags); | 0 | ||||||||||||||||||
445 | ((void *)0) never executed: ret = DSO_load( ((void *)0) , filename, ((void *)0) , flags); | 0 | ||||||||||||||||||
446 | , flags); never executed: ret = DSO_load( ((void *)0) , filename, ((void *)0) , flags); | 0 | ||||||||||||||||||
447 | - | |||||||||||||||||||
448 | CRYPTO_free(filename, __FILE__, 336); | - | ||||||||||||||||||
449 | return never executed: ret;return ret; never executed: return ret; | 0 | ||||||||||||||||||
450 | } | - | ||||||||||||||||||
451 | - | |||||||||||||||||||
452 | void *DSO_global_lookup(const char *name) | - | ||||||||||||||||||
453 | { | - | ||||||||||||||||||
454 | DSO_METHOD *meth = default_DSO_meth; | - | ||||||||||||||||||
455 | if (meth ==
| 0 | ||||||||||||||||||
456 | ((void *)0)
| 0 | ||||||||||||||||||
457 | ) | - | ||||||||||||||||||
458 | meth = DSO_METHOD_openssl(); never executed: meth = DSO_METHOD_openssl(); | 0 | ||||||||||||||||||
459 | if (meth->globallookup ==
| 0 | ||||||||||||||||||
460 | ((void *)0)
| 0 | ||||||||||||||||||
461 | ) { | - | ||||||||||||||||||
462 | ERR_put_error(37,(139),(108),__FILE__,346); | - | ||||||||||||||||||
463 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
464 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
465 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||
466 | } | - | ||||||||||||||||||
467 | return never executed: (*meth->globallookup) (name);return (*meth->globallookup) (name); never executed: return (*meth->globallookup) (name); | 0 | ||||||||||||||||||
468 | } | - | ||||||||||||||||||
Switch to Source code | Preprocessed file |