Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ecdh/ech_lib.c |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||
---|---|---|---|---|---|---|---|---|
1 | - | |||||||
2 | - | |||||||
3 | - | |||||||
4 | - | |||||||
5 | - | |||||||
6 | - | |||||||
7 | static const ECDH_METHOD *default_ECDH_method = | - | ||||||
8 | ((void *)0) | - | ||||||
9 | ; | - | ||||||
10 | - | |||||||
11 | static void *ecdh_data_new(void); | - | ||||||
12 | static void *ecdh_data_dup(void *); | - | ||||||
13 | static void ecdh_data_free(void *); | - | ||||||
14 | - | |||||||
15 | void | - | ||||||
16 | ECDH_set_default_method(const ECDH_METHOD *meth) | - | ||||||
17 | { | - | ||||||
18 | default_ECDH_method = meth; | - | ||||||
19 | } never executed: end of block | 0 | ||||||
20 | - | |||||||
21 | const ECDH_METHOD * | - | ||||||
22 | ECDH_get_default_method(void) | - | ||||||
23 | { | - | ||||||
24 | if (!default_ECDH_method
| 24-58 | ||||||
25 | default_ECDH_method = ECDH_OpenSSL(); | - | ||||||
26 | } executed 24 times by 2 tests: end of block Executed by:
| 24 | ||||||
27 | return executed 82 times by 2 tests: default_ECDH_method;return default_ECDH_method; Executed by:
executed 82 times by 2 tests: return default_ECDH_method; Executed by:
| 82 | ||||||
28 | } | - | ||||||
29 | - | |||||||
30 | int | - | ||||||
31 | ECDH_set_method(EC_KEY *eckey, const ECDH_METHOD *meth) | - | ||||||
32 | { | - | ||||||
33 | ECDH_DATA *ecdh; | - | ||||||
34 | - | |||||||
35 | ecdh = ecdh_check(eckey); | - | ||||||
36 | - | |||||||
37 | if (ecdh ==
| 0 | ||||||
38 | ((void *)0)
| 0 | ||||||
39 | ) | - | ||||||
40 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||
41 | - | |||||||
42 | - | |||||||
43 | ENGINE_finish(ecdh->engine); | - | ||||||
44 | ecdh->engine = | - | ||||||
45 | ((void *)0) | - | ||||||
46 | ; | - | ||||||
47 | - | |||||||
48 | ecdh->meth = meth; | - | ||||||
49 | return never executed: 1;return 1; never executed: return 1; | 0 | ||||||
50 | } | - | ||||||
51 | - | |||||||
52 | static ECDH_DATA * | - | ||||||
53 | ECDH_DATA_new_method(ENGINE *engine) | - | ||||||
54 | { | - | ||||||
55 | ECDH_DATA *ret; | - | ||||||
56 | - | |||||||
57 | ret = malloc(sizeof(ECDH_DATA)); | - | ||||||
58 | if (ret ==
| 0-82 | ||||||
59 | ((void *)0)
| 0-82 | ||||||
60 | ) { | - | ||||||
61 | ERR_put_error(43,(0xfff),((1|64)),__FILE__,126); | - | ||||||
62 | return never executed: (return ( ((void *)0) ); never executed: return ( ((void *)0) ); | 0 | ||||||
63 | ((void *)0) never executed: return ( ((void *)0) ); | 0 | ||||||
64 | ); never executed: return ( ((void *)0) ); | 0 | ||||||
65 | } | - | ||||||
66 | - | |||||||
67 | ret->init = | - | ||||||
68 | ((void *)0) | - | ||||||
69 | ; | - | ||||||
70 | - | |||||||
71 | ret->meth = ECDH_get_default_method(); | - | ||||||
72 | ret->engine = engine; | - | ||||||
73 | - | |||||||
74 | if (!ret->engine
| 0-82 | ||||||
75 | ret->engine = ENGINE_get_default_ECDH(); executed 82 times by 2 tests: ret->engine = ENGINE_get_default_ECDH(); Executed by:
| 82 | ||||||
76 | if (ret->engine
| 0-82 | ||||||
77 | ret->meth = ENGINE_get_ECDH(ret->engine); | - | ||||||
78 | if (ret->meth ==
| 0 | ||||||
79 | ((void *)0)
| 0 | ||||||
80 | ) { | - | ||||||
81 | ERR_put_error(43,(0xfff),(38),__FILE__,140); | - | ||||||
82 | ENGINE_finish(ret->engine); | - | ||||||
83 | free(ret); | - | ||||||
84 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||
85 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||
86 | ; never executed: return ((void *)0) ; | 0 | ||||||
87 | } | - | ||||||
88 | } never executed: end of block | 0 | ||||||
89 | - | |||||||
90 | - | |||||||
91 | ret->flags = ret->meth->flags; | - | ||||||
92 | CRYPTO_new_ex_data(13, ret, &ret->ex_data); | - | ||||||
93 | return executed 82 times by 2 tests: (ret);return (ret); Executed by:
executed 82 times by 2 tests: return (ret); Executed by:
| 82 | ||||||
94 | } | - | ||||||
95 | - | |||||||
96 | static void * | - | ||||||
97 | ecdh_data_new(void) | - | ||||||
98 | { | - | ||||||
99 | return executed 82 times by 2 tests: (void *)ECDH_DATA_new_method(return (void *)ECDH_DATA_new_method( ((void *)0) ); Executed by:
executed 82 times by 2 tests: return (void *)ECDH_DATA_new_method( ((void *)0) ); Executed by:
| 82 | ||||||
100 | ((void *)0) executed 82 times by 2 tests: return (void *)ECDH_DATA_new_method( ((void *)0) ); Executed by:
| 82 | ||||||
101 | ); executed 82 times by 2 tests: return (void *)ECDH_DATA_new_method( ((void *)0) ); Executed by:
| 82 | ||||||
102 | } | - | ||||||
103 | - | |||||||
104 | static void * | - | ||||||
105 | ecdh_data_dup(void *data) | - | ||||||
106 | { | - | ||||||
107 | ECDH_DATA *r = (ECDH_DATA *)data; | - | ||||||
108 | - | |||||||
109 | - | |||||||
110 | if (r ==
| 0 | ||||||
111 | ((void *)0)
| 0 | ||||||
112 | ) | - | ||||||
113 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||
114 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||
115 | ; never executed: return ((void *)0) ; | 0 | ||||||
116 | - | |||||||
117 | return never executed: (void *)ecdh_data_new();return (void *)ecdh_data_new(); never executed: return (void *)ecdh_data_new(); | 0 | ||||||
118 | } | - | ||||||
119 | - | |||||||
120 | void | - | ||||||
121 | ecdh_data_free(void *data) | - | ||||||
122 | { | - | ||||||
123 | ECDH_DATA *r = (ECDH_DATA *)data; | - | ||||||
124 | - | |||||||
125 | - | |||||||
126 | ENGINE_finish(r->engine); | - | ||||||
127 | - | |||||||
128 | - | |||||||
129 | CRYPTO_free_ex_data(13, r, &r->ex_data); | - | ||||||
130 | - | |||||||
131 | freezero(r, sizeof(ECDH_DATA)); | - | ||||||
132 | } executed 82 times by 2 tests: end of block Executed by:
| 82 | ||||||
133 | - | |||||||
134 | ECDH_DATA * | - | ||||||
135 | ecdh_check(EC_KEY *key) | - | ||||||
136 | { | - | ||||||
137 | ECDH_DATA *ecdh_data; | - | ||||||
138 | - | |||||||
139 | void *data = EC_KEY_get_key_method_data(key, ecdh_data_dup, | - | ||||||
140 | ecdh_data_free, ecdh_data_free); | - | ||||||
141 | if (data ==
| 0-82 | ||||||
142 | ((void *)0)
| 0-82 | ||||||
143 | ) { | - | ||||||
144 | ecdh_data = (ECDH_DATA *)ecdh_data_new(); | - | ||||||
145 | if (ecdh_data ==
| 0-82 | ||||||
146 | ((void *)0)
| 0-82 | ||||||
147 | ) | - | ||||||
148 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||
149 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||
150 | ; never executed: return ((void *)0) ; | 0 | ||||||
151 | data = EC_KEY_insert_key_method_data(key, (void *)ecdh_data, | - | ||||||
152 | ecdh_data_dup, ecdh_data_free, ecdh_data_free); | - | ||||||
153 | if (data !=
| 0-82 | ||||||
154 | ((void *)0)
| 0-82 | ||||||
155 | ) { | - | ||||||
156 | - | |||||||
157 | - | |||||||
158 | ecdh_data_free(ecdh_data); | - | ||||||
159 | ecdh_data = (ECDH_DATA *)data; | - | ||||||
160 | } never executed: end of block | 0 | ||||||
161 | } executed 82 times by 2 tests: elseend of block Executed by:
| 82 | ||||||
162 | ecdh_data = (ECDH_DATA *)data; never executed: ecdh_data = (ECDH_DATA *)data; | 0 | ||||||
163 | - | |||||||
164 | return executed 82 times by 2 tests: ecdh_data;return ecdh_data; Executed by:
executed 82 times by 2 tests: return ecdh_data; Executed by:
| 82 | ||||||
165 | } | - | ||||||
166 | - | |||||||
167 | int | - | ||||||
168 | ECDH_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, | - | ||||||
169 | CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func) | - | ||||||
170 | { | - | ||||||
171 | return never executed: CRYPTO_get_ex_new_index(13, argl, argp,return CRYPTO_get_ex_new_index(13, argl, argp, new_func, dup_func, free_func); never executed: return CRYPTO_get_ex_new_index(13, argl, argp, new_func, dup_func, free_func); | 0 | ||||||
172 | new_func, dup_func, free_func); never executed: return CRYPTO_get_ex_new_index(13, argl, argp, new_func, dup_func, free_func); | 0 | ||||||
173 | } | - | ||||||
174 | - | |||||||
175 | int | - | ||||||
176 | ECDH_set_ex_data(EC_KEY *d, int idx, void *arg) | - | ||||||
177 | { | - | ||||||
178 | ECDH_DATA *ecdh; | - | ||||||
179 | ecdh = ecdh_check(d); | - | ||||||
180 | if (ecdh ==
| 0 | ||||||
181 | ((void *)0)
| 0 | ||||||
182 | ) | - | ||||||
183 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||
184 | return never executed: (CRYPTO_set_ex_data(&ecdh->ex_data, idx, arg));return (CRYPTO_set_ex_data(&ecdh->ex_data, idx, arg)); never executed: return (CRYPTO_set_ex_data(&ecdh->ex_data, idx, arg)); | 0 | ||||||
185 | } | - | ||||||
186 | - | |||||||
187 | void * | - | ||||||
188 | ECDH_get_ex_data(EC_KEY *d, int idx) | - | ||||||
189 | { | - | ||||||
190 | ECDH_DATA *ecdh; | - | ||||||
191 | ecdh = ecdh_check(d); | - | ||||||
192 | if (ecdh ==
| 0 | ||||||
193 | ((void *)0)
| 0 | ||||||
194 | ) | - | ||||||
195 | return never executed: return ((void *)0) ; never executed: return ((void *)0) ; | 0 | ||||||
196 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||
197 | ; never executed: return ((void *)0) ; | 0 | ||||||
198 | return never executed: (CRYPTO_get_ex_data(&ecdh->ex_data, idx));return (CRYPTO_get_ex_data(&ecdh->ex_data, idx)); never executed: return (CRYPTO_get_ex_data(&ecdh->ex_data, idx)); | 0 | ||||||
199 | } | - | ||||||
200 | - | |||||||
201 | int | - | ||||||
202 | ECDH_size(const EC_KEY *d) | - | ||||||
203 | { | - | ||||||
204 | return executed 131 times by 2 tests: ((EC_GROUP_get_degree(EC_KEY_get0_group(d)) + 7) / 8);return ((EC_GROUP_get_degree(EC_KEY_get0_group(d)) + 7) / 8); Executed by:
executed 131 times by 2 tests: return ((EC_GROUP_get_degree(EC_KEY_get0_group(d)) + 7) / 8); Executed by:
| 131 | ||||||
205 | } | - | ||||||
Switch to Source code | Preprocessed file |