Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec2_oct.c |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | - | |||||||||||||||||||||||||||||||
2 | - | |||||||||||||||||||||||||||||||
3 | int | - | ||||||||||||||||||||||||||||||
4 | ec_GF2m_simple_set_compressed_coordinates(const EC_GROUP *group, EC_POINT *point, | - | ||||||||||||||||||||||||||||||
5 | const BIGNUM *x_, int y_bit, BN_CTX *ctx) | - | ||||||||||||||||||||||||||||||
6 | { | - | ||||||||||||||||||||||||||||||
7 | BN_CTX *new_ctx = | - | ||||||||||||||||||||||||||||||
8 | ((void *)0) | - | ||||||||||||||||||||||||||||||
9 | ; | - | ||||||||||||||||||||||||||||||
10 | BIGNUM *tmp, *x, *y, *z; | - | ||||||||||||||||||||||||||||||
11 | int ret = 0, z0; | - | ||||||||||||||||||||||||||||||
12 | - | |||||||||||||||||||||||||||||||
13 | - | |||||||||||||||||||||||||||||||
14 | ERR_clear_error(); | - | ||||||||||||||||||||||||||||||
15 | - | |||||||||||||||||||||||||||||||
16 | if (ctx ==
| 0 | ||||||||||||||||||||||||||||||
17 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
18 | ) { | - | ||||||||||||||||||||||||||||||
19 | ctx = new_ctx = BN_CTX_new(); | - | ||||||||||||||||||||||||||||||
20 | if (ctx ==
| 0 | ||||||||||||||||||||||||||||||
21 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
22 | ) | - | ||||||||||||||||||||||||||||||
23 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||
24 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
25 | y_bit = (
| 0 | ||||||||||||||||||||||||||||||
26 | - | |||||||||||||||||||||||||||||||
27 | BN_CTX_start(ctx); | - | ||||||||||||||||||||||||||||||
28 | if ((
| 0 | ||||||||||||||||||||||||||||||
29 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
30 | ) | - | ||||||||||||||||||||||||||||||
31 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
32 | if ((
| 0 | ||||||||||||||||||||||||||||||
33 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
34 | ) | - | ||||||||||||||||||||||||||||||
35 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
36 | if ((
| 0 | ||||||||||||||||||||||||||||||
37 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
38 | ) | - | ||||||||||||||||||||||||||||||
39 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
40 | if ((
| 0 | ||||||||||||||||||||||||||||||
41 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
42 | ) | - | ||||||||||||||||||||||||||||||
43 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
44 | - | |||||||||||||||||||||||||||||||
45 | if (!BN_GF2m_mod_arr(x, x_, group->poly)
| 0 | ||||||||||||||||||||||||||||||
46 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
47 | if (((
| 0 | ||||||||||||||||||||||||||||||
48 | if (!BN_GF2m_mod_sqrt_arr(y, &group->b, group->poly, ctx)
| 0 | ||||||||||||||||||||||||||||||
49 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
50 | } never executed: else {end of block | 0 | ||||||||||||||||||||||||||||||
51 | if (!group->meth->field_sqr(group, tmp, x, ctx)
| 0 | ||||||||||||||||||||||||||||||
52 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
53 | if (!group->meth->field_div(group, tmp, &group->b, tmp, ctx)
| 0 | ||||||||||||||||||||||||||||||
54 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
55 | if (!BN_GF2m_add(tmp, &group->a, tmp)
| 0 | ||||||||||||||||||||||||||||||
56 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
57 | if (!BN_GF2m_add(tmp, x, tmp)
| 0 | ||||||||||||||||||||||||||||||
58 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
59 | if (!BN_GF2m_mod_solve_quad_arr(z, tmp, group->poly, ctx)
| 0 | ||||||||||||||||||||||||||||||
60 | unsigned long err = ERR_peek_last_error(); | - | ||||||||||||||||||||||||||||||
61 | - | |||||||||||||||||||||||||||||||
62 | if ((
| 0 | ||||||||||||||||||||||||||||||
63 | (
| 0 | ||||||||||||||||||||||||||||||
64 | ERR_clear_error(); | - | ||||||||||||||||||||||||||||||
65 | ERR_put_error(16,(0xfff),(110),__FILE__,141); | - | ||||||||||||||||||||||||||||||
66 | } never executed: elseend of block | 0 | ||||||||||||||||||||||||||||||
67 | ERR_put_error(16,(0xfff),(3),__FILE__,143); never executed: ERR_put_error(16,(0xfff),(3),__FILE__,143); | 0 | ||||||||||||||||||||||||||||||
68 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
69 | } | - | ||||||||||||||||||||||||||||||
70 | z0 = ((((
| 0 | ||||||||||||||||||||||||||||||
71 | if (!group->meth->field_mul(group, y, x, z, ctx)
| 0 | ||||||||||||||||||||||||||||||
72 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
73 | if (z0 != y_bit
| 0 | ||||||||||||||||||||||||||||||
74 | if (!BN_GF2m_add(y, y, x)
| 0 | ||||||||||||||||||||||||||||||
75 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
76 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
77 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
78 | - | |||||||||||||||||||||||||||||||
79 | if (!EC_POINT_set_affine_coordinates_GF2m(group, point, x, y, ctx)
| 0 | ||||||||||||||||||||||||||||||
80 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
81 | - | |||||||||||||||||||||||||||||||
82 | ret = 1; | - | ||||||||||||||||||||||||||||||
83 | - | |||||||||||||||||||||||||||||||
84 | err: code before this statement never executed: err: | 0 | ||||||||||||||||||||||||||||||
85 | BN_CTX_end(ctx); | - | ||||||||||||||||||||||||||||||
86 | BN_CTX_free(new_ctx); | - | ||||||||||||||||||||||||||||||
87 | return never executed: ret;return ret; never executed: return ret; | 0 | ||||||||||||||||||||||||||||||
88 | } | - | ||||||||||||||||||||||||||||||
89 | - | |||||||||||||||||||||||||||||||
90 | - | |||||||||||||||||||||||||||||||
91 | - | |||||||||||||||||||||||||||||||
92 | - | |||||||||||||||||||||||||||||||
93 | - | |||||||||||||||||||||||||||||||
94 | - | |||||||||||||||||||||||||||||||
95 | size_t | - | ||||||||||||||||||||||||||||||
96 | ec_GF2m_simple_point2oct(const EC_GROUP *group, const EC_POINT *point, | - | ||||||||||||||||||||||||||||||
97 | point_conversion_form_t form, | - | ||||||||||||||||||||||||||||||
98 | unsigned char *buf, size_t len, BN_CTX * ctx) | - | ||||||||||||||||||||||||||||||
99 | { | - | ||||||||||||||||||||||||||||||
100 | size_t ret; | - | ||||||||||||||||||||||||||||||
101 | BN_CTX *new_ctx = | - | ||||||||||||||||||||||||||||||
102 | ((void *)0) | - | ||||||||||||||||||||||||||||||
103 | ; | - | ||||||||||||||||||||||||||||||
104 | int used_ctx = 0; | - | ||||||||||||||||||||||||||||||
105 | BIGNUM *x, *y, *yxi; | - | ||||||||||||||||||||||||||||||
106 | size_t field_len, i, skip; | - | ||||||||||||||||||||||||||||||
107 | - | |||||||||||||||||||||||||||||||
108 | if ((
| 0-1 | ||||||||||||||||||||||||||||||
109 | && (
| 0-1 | ||||||||||||||||||||||||||||||
110 | && (
| 0 | ||||||||||||||||||||||||||||||
111 | ERR_put_error(16,(0xfff),(104),__FILE__,185); | - | ||||||||||||||||||||||||||||||
112 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
113 | } | - | ||||||||||||||||||||||||||||||
114 | if (EC_POINT_is_at_infinity(group, point) > 0
| 0-1 | ||||||||||||||||||||||||||||||
115 | - | |||||||||||||||||||||||||||||||
116 | if (buf !=
| 0 | ||||||||||||||||||||||||||||||
117 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
118 | ) { | - | ||||||||||||||||||||||||||||||
119 | if (len < 1
| 0 | ||||||||||||||||||||||||||||||
120 | ERR_put_error(16,(0xfff),(100),__FILE__,192); | - | ||||||||||||||||||||||||||||||
121 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||
122 | } | - | ||||||||||||||||||||||||||||||
123 | buf[0] = 0; | - | ||||||||||||||||||||||||||||||
124 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
125 | return never executed: 1;return 1; never executed: return 1; | 0 | ||||||||||||||||||||||||||||||
126 | } | - | ||||||||||||||||||||||||||||||
127 | - | |||||||||||||||||||||||||||||||
128 | field_len = (EC_GROUP_get_degree(group) + 7) / 8; | - | ||||||||||||||||||||||||||||||
129 | ret = (
| 0-1 | ||||||||||||||||||||||||||||||
130 | 1 + 2 * field_len; | - | ||||||||||||||||||||||||||||||
131 | - | |||||||||||||||||||||||||||||||
132 | - | |||||||||||||||||||||||||||||||
133 | if (buf !=
| 0-1 | ||||||||||||||||||||||||||||||
134 | ((void *)0)
| 0-1 | ||||||||||||||||||||||||||||||
135 | ) { | - | ||||||||||||||||||||||||||||||
136 | if (len < ret
| 0-1 | ||||||||||||||||||||||||||||||
137 | ERR_put_error(16,(0xfff),(100),__FILE__,207); | - | ||||||||||||||||||||||||||||||
138 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
139 | } | - | ||||||||||||||||||||||||||||||
140 | if (ctx ==
| 0-1 | ||||||||||||||||||||||||||||||
141 | ((void *)0)
| 0-1 | ||||||||||||||||||||||||||||||
142 | ) { | - | ||||||||||||||||||||||||||||||
143 | ctx = new_ctx = BN_CTX_new(); | - | ||||||||||||||||||||||||||||||
144 | if (ctx ==
| 0 | ||||||||||||||||||||||||||||||
145 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
146 | ) | - | ||||||||||||||||||||||||||||||
147 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||
148 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
149 | BN_CTX_start(ctx); | - | ||||||||||||||||||||||||||||||
150 | used_ctx = 1; | - | ||||||||||||||||||||||||||||||
151 | if ((
| 0-1 | ||||||||||||||||||||||||||||||
152 | ((void *)0)
| 0-1 | ||||||||||||||||||||||||||||||
153 | ) | - | ||||||||||||||||||||||||||||||
154 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
155 | if ((
| 0-1 | ||||||||||||||||||||||||||||||
156 | ((void *)0)
| 0-1 | ||||||||||||||||||||||||||||||
157 | ) | - | ||||||||||||||||||||||||||||||
158 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
159 | if ((
| 0-1 | ||||||||||||||||||||||||||||||
160 | ((void *)0)
| 0-1 | ||||||||||||||||||||||||||||||
161 | ) | - | ||||||||||||||||||||||||||||||
162 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
163 | - | |||||||||||||||||||||||||||||||
164 | if (!EC_POINT_get_affine_coordinates_GF2m(group, point, x, y, ctx)
| 0-1 | ||||||||||||||||||||||||||||||
165 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
166 | - | |||||||||||||||||||||||||||||||
167 | buf[0] = form; | - | ||||||||||||||||||||||||||||||
168 | if ((
| 0-1 | ||||||||||||||||||||||||||||||
169 | if (!group->meth->field_div(group, yxi, y, x, ctx)
| 0 | ||||||||||||||||||||||||||||||
170 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
171 | if ((((
| 0 | ||||||||||||||||||||||||||||||
172 | buf[0]++; never executed: buf[0]++; | 0 | ||||||||||||||||||||||||||||||
173 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
174 | i = 1; | - | ||||||||||||||||||||||||||||||
175 | - | |||||||||||||||||||||||||||||||
176 | skip = field_len - ((BN_num_bits(x)+7)/8); | - | ||||||||||||||||||||||||||||||
177 | if (skip > field_len
| 0-1 | ||||||||||||||||||||||||||||||
178 | ERR_put_error(16,(0xfff),((4|64)),__FILE__,238); | - | ||||||||||||||||||||||||||||||
179 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
180 | } | - | ||||||||||||||||||||||||||||||
181 | while (skip > 0
| 0-1 | ||||||||||||||||||||||||||||||
182 | buf[i++] = 0; | - | ||||||||||||||||||||||||||||||
183 | skip--; | - | ||||||||||||||||||||||||||||||
184 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
185 | skip = BN_bn2bin(x, buf + i); | - | ||||||||||||||||||||||||||||||
186 | i += skip; | - | ||||||||||||||||||||||||||||||
187 | if (i != 1 + field_len
| 0-1 | ||||||||||||||||||||||||||||||
188 | ERR_put_error(16,(0xfff),((4|64)),__FILE__,248); | - | ||||||||||||||||||||||||||||||
189 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
190 | } | - | ||||||||||||||||||||||||||||||
191 | if (form == POINT_CONVERSION_UNCOMPRESSED
| 0-1 | ||||||||||||||||||||||||||||||
192 | form == POINT_CONVERSION_HYBRID
| 0 | ||||||||||||||||||||||||||||||
193 | skip = field_len - ((BN_num_bits(y)+7)/8); | - | ||||||||||||||||||||||||||||||
194 | if (skip > field_len
| 0-1 | ||||||||||||||||||||||||||||||
195 | ERR_put_error(16,(0xfff),((4|64)),__FILE__,255); | - | ||||||||||||||||||||||||||||||
196 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
197 | } | - | ||||||||||||||||||||||||||||||
198 | while (skip > 0
| 0-1 | ||||||||||||||||||||||||||||||
199 | buf[i++] = 0; | - | ||||||||||||||||||||||||||||||
200 | skip--; | - | ||||||||||||||||||||||||||||||
201 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
202 | skip = BN_bn2bin(y, buf + i); | - | ||||||||||||||||||||||||||||||
203 | i += skip; | - | ||||||||||||||||||||||||||||||
204 | } executed 1 time by 1 test: end of block Executed by:
| 1 | ||||||||||||||||||||||||||||||
205 | if (i != ret
| 0-1 | ||||||||||||||||||||||||||||||
206 | ERR_put_error(16,(0xfff),((4|64)),__FILE__,266); | - | ||||||||||||||||||||||||||||||
207 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
208 | } | - | ||||||||||||||||||||||||||||||
209 | } executed 1 time by 1 test: end of block Executed by:
| 1 | ||||||||||||||||||||||||||||||
210 | if (used_ctx
| 0-1 | ||||||||||||||||||||||||||||||
211 | BN_CTX_end(ctx); executed 1 time by 1 test: BN_CTX_end(ctx); Executed by:
| 1 | ||||||||||||||||||||||||||||||
212 | BN_CTX_free(new_ctx); | - | ||||||||||||||||||||||||||||||
213 | return executed 1 time by 1 test: ret;return ret; Executed by:
executed 1 time by 1 test: return ret; Executed by:
| 1 | ||||||||||||||||||||||||||||||
214 | - | |||||||||||||||||||||||||||||||
215 | err: | - | ||||||||||||||||||||||||||||||
216 | if (used_ctx
| 0 | ||||||||||||||||||||||||||||||
217 | BN_CTX_end(ctx); never executed: BN_CTX_end(ctx); | 0 | ||||||||||||||||||||||||||||||
218 | BN_CTX_free(new_ctx); | - | ||||||||||||||||||||||||||||||
219 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||
220 | } | - | ||||||||||||||||||||||||||||||
221 | - | |||||||||||||||||||||||||||||||
222 | - | |||||||||||||||||||||||||||||||
223 | - | |||||||||||||||||||||||||||||||
224 | - | |||||||||||||||||||||||||||||||
225 | - | |||||||||||||||||||||||||||||||
226 | int | - | ||||||||||||||||||||||||||||||
227 | ec_GF2m_simple_oct2point(const EC_GROUP *group, EC_POINT *point, | - | ||||||||||||||||||||||||||||||
228 | const unsigned char *buf, size_t len, BN_CTX *ctx) | - | ||||||||||||||||||||||||||||||
229 | { | - | ||||||||||||||||||||||||||||||
230 | point_conversion_form_t form; | - | ||||||||||||||||||||||||||||||
231 | int y_bit; | - | ||||||||||||||||||||||||||||||
232 | BN_CTX *new_ctx = | - | ||||||||||||||||||||||||||||||
233 | ((void *)0) | - | ||||||||||||||||||||||||||||||
234 | ; | - | ||||||||||||||||||||||||||||||
235 | BIGNUM *x, *y, *yxi; | - | ||||||||||||||||||||||||||||||
236 | size_t field_len, enc_len; | - | ||||||||||||||||||||||||||||||
237 | int ret = 0; | - | ||||||||||||||||||||||||||||||
238 | - | |||||||||||||||||||||||||||||||
239 | if (len == 0
| 0-2 | ||||||||||||||||||||||||||||||
240 | ERR_put_error(16,(0xfff),(100),__FILE__,298); | - | ||||||||||||||||||||||||||||||
241 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||
242 | } | - | ||||||||||||||||||||||||||||||
243 | form = buf[0]; | - | ||||||||||||||||||||||||||||||
244 | y_bit = form & 1; | - | ||||||||||||||||||||||||||||||
245 | form = form & ~1U; | - | ||||||||||||||||||||||||||||||
246 | if ((
| 0-1 | ||||||||||||||||||||||||||||||
247 | (
| 0-1 | ||||||||||||||||||||||||||||||
248 | (
| 0 | ||||||||||||||||||||||||||||||
249 | ERR_put_error(16,(0xfff),(102),__FILE__,307); | - | ||||||||||||||||||||||||||||||
250 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||
251 | } | - | ||||||||||||||||||||||||||||||
252 | if ((form == 0
| 0-2 | ||||||||||||||||||||||||||||||
253 | ERR_put_error(16,(0xfff),(102),__FILE__,311); | - | ||||||||||||||||||||||||||||||
254 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||
255 | } | - | ||||||||||||||||||||||||||||||
256 | if (form == 0
| 1 | ||||||||||||||||||||||||||||||
257 | if (len != 1
| 0-1 | ||||||||||||||||||||||||||||||
258 | ERR_put_error(16,(0xfff),(102),__FILE__,316); | - | ||||||||||||||||||||||||||||||
259 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||
260 | } | - | ||||||||||||||||||||||||||||||
261 | return executed 1 time by 1 test: EC_POINT_set_to_infinity(group, point);return EC_POINT_set_to_infinity(group, point); Executed by:
executed 1 time by 1 test: return EC_POINT_set_to_infinity(group, point); Executed by:
| 1 | ||||||||||||||||||||||||||||||
262 | } | - | ||||||||||||||||||||||||||||||
263 | field_len = (EC_GROUP_get_degree(group) + 7) / 8; | - | ||||||||||||||||||||||||||||||
264 | enc_len = (
| 0-1 | ||||||||||||||||||||||||||||||
265 | 1 + 2 * field_len; | - | ||||||||||||||||||||||||||||||
266 | - | |||||||||||||||||||||||||||||||
267 | if (len != enc_len
| 0-1 | ||||||||||||||||||||||||||||||
268 | ERR_put_error(16,(0xfff),(102),__FILE__,326); | - | ||||||||||||||||||||||||||||||
269 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||
270 | } | - | ||||||||||||||||||||||||||||||
271 | if (ctx ==
| 0-1 | ||||||||||||||||||||||||||||||
272 | ((void *)0)
| 0-1 | ||||||||||||||||||||||||||||||
273 | ) { | - | ||||||||||||||||||||||||||||||
274 | ctx = new_ctx = BN_CTX_new(); | - | ||||||||||||||||||||||||||||||
275 | if (ctx ==
| 0 | ||||||||||||||||||||||||||||||
276 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
277 | ) | - | ||||||||||||||||||||||||||||||
278 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||||||||||||||
279 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
280 | BN_CTX_start(ctx); | - | ||||||||||||||||||||||||||||||
281 | if ((
| 0-1 | ||||||||||||||||||||||||||||||
282 | ((void *)0)
| 0-1 | ||||||||||||||||||||||||||||||
283 | ) | - | ||||||||||||||||||||||||||||||
284 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
285 | if ((
| 0-1 | ||||||||||||||||||||||||||||||
286 | ((void *)0)
| 0-1 | ||||||||||||||||||||||||||||||
287 | ) | - | ||||||||||||||||||||||||||||||
288 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
289 | if ((
| 0-1 | ||||||||||||||||||||||||||||||
290 | ((void *)0)
| 0-1 | ||||||||||||||||||||||||||||||
291 | ) | - | ||||||||||||||||||||||||||||||
292 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
293 | - | |||||||||||||||||||||||||||||||
294 | if (!BN_bin2bn(buf + 1, field_len, x)
| 0-1 | ||||||||||||||||||||||||||||||
295 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
296 | if (BN_ucmp(x, &group->field) >= 0
| 0-1 | ||||||||||||||||||||||||||||||
297 | ERR_put_error(16,(0xfff),(102),__FILE__,345); | - | ||||||||||||||||||||||||||||||
298 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
299 | } | - | ||||||||||||||||||||||||||||||
300 | if (form == POINT_CONVERSION_COMPRESSED
| 0-1 | ||||||||||||||||||||||||||||||
301 | if (!EC_POINT_set_compressed_coordinates_GF2m(group, point, x, y_bit, ctx)
| 0 | ||||||||||||||||||||||||||||||
302 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
303 | } never executed: else {end of block | 0 | ||||||||||||||||||||||||||||||
304 | if (!BN_bin2bn(buf + 1 + field_len, field_len, y)
| 0-1 | ||||||||||||||||||||||||||||||
305 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
306 | if (BN_ucmp(y, &group->field) >= 0
| 0-1 | ||||||||||||||||||||||||||||||
307 | ERR_put_error(16,(0xfff),(102),__FILE__,355); | - | ||||||||||||||||||||||||||||||
308 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
309 | } | - | ||||||||||||||||||||||||||||||
310 | if (form == POINT_CONVERSION_HYBRID
| 0-1 | ||||||||||||||||||||||||||||||
311 | if (!group->meth->field_div(group, yxi, y, x, ctx)
| 0 | ||||||||||||||||||||||||||||||
312 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
313 | if (y_bit != (((
| 0 | ||||||||||||||||||||||||||||||
314 | ERR_put_error(16,(0xfff),(102),__FILE__,362); | - | ||||||||||||||||||||||||||||||
315 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
316 | } | - | ||||||||||||||||||||||||||||||
317 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
318 | if (!EC_POINT_set_affine_coordinates_GF2m(group, point, x, y, ctx)
| 0-1 | ||||||||||||||||||||||||||||||
319 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
320 | } executed 1 time by 1 test: end of block Executed by:
| 1 | ||||||||||||||||||||||||||||||
321 | - | |||||||||||||||||||||||||||||||
322 | - | |||||||||||||||||||||||||||||||
323 | if (EC_POINT_is_on_curve(group, point, ctx) <= 0
| 0-1 | ||||||||||||||||||||||||||||||
324 | ERR_put_error(16,(0xfff),(107),__FILE__,372); | - | ||||||||||||||||||||||||||||||
325 | goto never executed: err;goto err; never executed: goto err; | 0 | ||||||||||||||||||||||||||||||
326 | } | - | ||||||||||||||||||||||||||||||
327 | ret = 1; | - | ||||||||||||||||||||||||||||||
328 | - | |||||||||||||||||||||||||||||||
329 | err: code before this statement executed 1 time by 1 test: err: Executed by:
| 1 | ||||||||||||||||||||||||||||||
330 | BN_CTX_end(ctx); | - | ||||||||||||||||||||||||||||||
331 | BN_CTX_free(new_ctx); | - | ||||||||||||||||||||||||||||||
332 | return executed 1 time by 1 test: ret;return ret; Executed by:
executed 1 time by 1 test: return ret; Executed by:
| 1 | ||||||||||||||||||||||||||||||
333 | } | - | ||||||||||||||||||||||||||||||
Switch to Source code | Preprocessed file |