OpenCoverage

ec2_oct.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec2_oct.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3int-
4ec_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 ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
17 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
18 ) {-
19 ctx = new_ctx = BN_CTX_new();-
20 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
21 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
22 )-
23 return
never executed: return 0;
0;
never executed: return 0;
0
24 }
never executed: end of block
0
25 y_bit = (
(y_bit != 0)Description
TRUEnever evaluated
FALSEnever evaluated
y_bit != 0)
(y_bit != 0)Description
TRUEnever evaluated
FALSEnever evaluated
? 1 : 0;
0
26-
27 BN_CTX_start(ctx);-
28 if ((
(tmp = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
tmp = BN_CTX_get(ctx)) ==
(tmp = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
29 ((void *)0)
(tmp = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
30 )-
31 goto
never executed: goto err;
err;
never executed: goto err;
0
32 if ((
(x = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
x = BN_CTX_get(ctx)) ==
(x = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
33 ((void *)0)
(x = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
34 )-
35 goto
never executed: goto err;
err;
never executed: goto err;
0
36 if ((
(y = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
y = BN_CTX_get(ctx)) ==
(y = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
37 ((void *)0)
(y = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
38 )-
39 goto
never executed: goto err;
err;
never executed: goto err;
0
40 if ((
(z = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
z = BN_CTX_get(ctx)) ==
(z = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
41 ((void *)0)
(z = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
42 )-
43 goto
never executed: goto err;
err;
never executed: goto err;
0
44-
45 if (!BN_GF2m_mod_arr(x, x_, group->poly)
!BN_GF2m_mod_a..., group->poly)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
46 goto
never executed: goto err;
err;
never executed: goto err;
0
47 if (((
((x)->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
x)->top == 0)
((x)->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
48 if (!BN_GF2m_mod_sqrt_arr(y, &group->b, group->poly, ctx)
!BN_GF2m_mod_s...up->poly, ctx)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
49 goto
never executed: goto err;
err;
never executed: goto err;
0
50 }
never executed: end of block
else {
0
51 if (!group->meth->field_sqr(group, tmp, x, ctx)
!group->meth->..., tmp, x, ctx)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
52 goto
never executed: goto err;
err;
never executed: goto err;
0
53 if (!group->meth->field_div(group, tmp, &group->b, tmp, ctx)
!group->meth->...->b, tmp, ctx)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
54 goto
never executed: goto err;
err;
never executed: goto err;
0
55 if (!BN_GF2m_add(tmp, &group->a, tmp)
!BN_GF2m_add(t...group->a, tmp)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
56 goto
never executed: goto err;
err;
never executed: goto err;
0
57 if (!BN_GF2m_add(tmp, x, tmp)
!BN_GF2m_add(tmp, x, tmp)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
58 goto
never executed: goto err;
err;
never executed: goto err;
0
59 if (!BN_GF2m_mod_solve_quad_arr(z, tmp, group->poly, ctx)
!BN_GF2m_mod_s...up->poly, ctx)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
60 unsigned long err = ERR_peek_last_error();-
61-
62 if ((
(int)((((unsig...L)&0xffL) == 3Description
TRUEnever evaluated
FALSEnever evaluated
int)((((unsigned long)err)>>24L)&0xffL) == 3
(int)((((unsig...L)&0xffL) == 3Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
63 (
(int)((err)&0xfffL) == 116Description
TRUEnever evaluated
FALSEnever evaluated
int)((err)&0xfffL) == 116
(int)((err)&0xfffL) == 116Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
64 ERR_clear_error();-
65 ERR_put_error(16,(0xfff),(110),__FILE__,141);-
66 }
never executed: end of block
else
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: goto err;
err;
never executed: goto err;
0
69 }-
70 z0 = ((((
((z)->top > 0)Description
TRUEnever evaluated
FALSEnever evaluated
z)->top > 0)
((z)->top > 0)Description
TRUEnever evaluated
FALSEnever evaluated
&& ((
((z)->d[0] & 1)Description
TRUEnever evaluated
FALSEnever evaluated
z)->d[0] & 1)
((z)->d[0] & 1)Description
TRUEnever evaluated
FALSEnever evaluated
)) ? 1 : 0;
0
71 if (!group->meth->field_mul(group, y, x, z, ctx)
!group->meth->... y, x, z, ctx)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
72 goto
never executed: goto err;
err;
never executed: goto err;
0
73 if (z0 != y_bit
z0 != y_bitDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
74 if (!BN_GF2m_add(y, y, x)
!BN_GF2m_add(y, y, x)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
75 goto
never executed: goto err;
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)
!EC_POINT_set_...nt, x, y, ctx)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
80 goto
never executed: goto err;
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: return ret;
ret;
never executed: return ret;
0
88}-
89-
90-
91-
92-
93-
94-
95size_t-
96ec_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 ((
(form != POINT...ON_COMPRESSED)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
form != POINT_CONVERSION_COMPRESSED)
(form != POINT...ON_COMPRESSED)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
0-1
109 && (
(form != POINT..._UNCOMPRESSED)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
form != POINT_CONVERSION_UNCOMPRESSED)
(form != POINT..._UNCOMPRESSED)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
110 && (
(form != POINT...ERSION_HYBRID)Description
TRUEnever evaluated
FALSEnever evaluated
form != POINT_CONVERSION_HYBRID)
(form != POINT...ERSION_HYBRID)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
111 ERR_put_error(16,(0xfff),(104),__FILE__,185);-
112 goto
never executed: goto err;
err;
never executed: goto err;
0
113 }-
114 if (EC_POINT_is_at_infinity(group, point) > 0
EC_POINT_is_at...up, point) > 0Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
115-
116 if (buf !=
buf != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
117 ((void *)0)
buf != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
118 ) {-
119 if (len < 1
len < 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
120 ERR_put_error(16,(0xfff),(100),__FILE__,192);-
121 return
never executed: return 0;
0;
never executed: return 0;
0
122 }-
123 buf[0] = 0;-
124 }
never executed: end of block
0
125 return
never executed: return 1;
1;
never executed: return 1;
0
126 }-
127-
128 field_len = (EC_GROUP_get_degree(group) + 7) / 8;-
129 ret = (
(form == POINT...ON_COMPRESSED)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
form == POINT_CONVERSION_COMPRESSED)
(form == POINT...ON_COMPRESSED)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
? 1 + field_len :
0-1
130 1 + 2 * field_len;-
131-
132-
133 if (buf !=
buf != ((void *)0)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
0-1
134 ((void *)0)
buf != ((void *)0)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
0-1
135 ) {-
136 if (len < ret
len < retDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
137 ERR_put_error(16,(0xfff),(100),__FILE__,207);-
138 goto
never executed: goto err;
err;
never executed: goto err;
0
139 }-
140 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
141 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
142 ) {-
143 ctx = new_ctx = BN_CTX_new();-
144 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
145 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
146 )-
147 return
never executed: return 0;
0;
never executed: return 0;
0
148 }
never executed: end of block
0
149 BN_CTX_start(ctx);-
150 used_ctx = 1;-
151 if ((
(x = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
x = BN_CTX_get(ctx)) ==
(x = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
152 ((void *)0)
(x = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
153 )-
154 goto
never executed: goto err;
err;
never executed: goto err;
0
155 if ((
(y = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
y = BN_CTX_get(ctx)) ==
(y = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
156 ((void *)0)
(y = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
157 )-
158 goto
never executed: goto err;
err;
never executed: goto err;
0
159 if ((
(yxi = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
yxi = BN_CTX_get(ctx)) ==
(yxi = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
160 ((void *)0)
(yxi = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
161 )-
162 goto
never executed: goto err;
err;
never executed: goto err;
0
163-
164 if (!EC_POINT_get_affine_coordinates_GF2m(group, point, x, y, ctx)
!EC_POINT_get_...nt, x, y, ctx)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
)
0-1
165 goto
never executed: goto err;
err;
never executed: goto err;
0
166-
167 buf[0] = form;-
168 if ((
(form != POINT..._UNCOMPRESSED)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
form != POINT_CONVERSION_UNCOMPRESSED)
(form != POINT..._UNCOMPRESSED)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
&& !((x)->top == 0)
!((x)->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0-1
169 if (!group->meth->field_div(group, yxi, y, x, ctx)
!group->meth->...xi, y, x, ctx)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
170 goto
never executed: goto err;
err;
never executed: goto err;
0
171 if ((((
((yxi)->top > 0)Description
TRUEnever evaluated
FALSEnever evaluated
yxi)->top > 0)
((yxi)->top > 0)Description
TRUEnever evaluated
FALSEnever evaluated
&& ((
((yxi)->d[0] & 1)Description
TRUEnever evaluated
FALSEnever evaluated
yxi)->d[0] & 1)
((yxi)->d[0] & 1)Description
TRUEnever evaluated
FALSEnever evaluated
))
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
skip > field_lenDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
178 ERR_put_error(16,(0xfff),((4|64)),__FILE__,238);-
179 goto
never executed: goto err;
err;
never executed: goto err;
0
180 }-
181 while (skip > 0
skip > 0Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
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
i != 1 + field_lenDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
188 ERR_put_error(16,(0xfff),((4|64)),__FILE__,248);-
189 goto
never executed: goto err;
err;
never executed: goto err;
0
190 }-
191 if (form == POINT_CONVERSION_UNCOMPRESSED
form == POINT_...N_UNCOMPRESSEDDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
||
0-1
192 form == POINT_CONVERSION_HYBRID
form == POINT_...VERSION_HYBRIDDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
193 skip = field_len - ((BN_num_bits(y)+7)/8);-
194 if (skip > field_len
skip > field_lenDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
195 ERR_put_error(16,(0xfff),((4|64)),__FILE__,255);-
196 goto
never executed: goto err;
err;
never executed: goto err;
0
197 }-
198 while (skip > 0
skip > 0Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
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:
  • ectest
1
205 if (i != ret
i != retDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
206 ERR_put_error(16,(0xfff),((4|64)),__FILE__,266);-
207 goto
never executed: goto err;
err;
never executed: goto err;
0
208 }-
209 }
executed 1 time by 1 test: end of block
Executed by:
  • ectest
1
210 if (used_ctx
used_ctxDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
)
0-1
211 BN_CTX_end(ctx);
executed 1 time by 1 test: BN_CTX_end(ctx);
Executed by:
  • ectest
1
212 BN_CTX_free(new_ctx);-
213 return
executed 1 time by 1 test: return ret;
Executed by:
  • ectest
ret;
executed 1 time by 1 test: return ret;
Executed by:
  • ectest
1
214-
215 err:-
216 if (used_ctx
used_ctxDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
217 BN_CTX_end(ctx);
never executed: BN_CTX_end(ctx);
0
218 BN_CTX_free(new_ctx);-
219 return
never executed: return 0;
0;
never executed: return 0;
0
220}-
221-
222-
223-
224-
225-
226int-
227ec_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
len == 0Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • ectest
) {
0-2
240 ERR_put_error(16,(0xfff),(100),__FILE__,298);-
241 return
never executed: return 0;
0;
never executed: return 0;
0
242 }-
243 form = buf[0];-
244 y_bit = form & 1;-
245 form = form & ~1U;-
246 if ((
(form != 0)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
form != 0)
(form != 0)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
&& (
(form != POINT...ON_COMPRESSED)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
form != POINT_CONVERSION_COMPRESSED)
(form != POINT...ON_COMPRESSED)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
&&
0-1
247 (
(form != POINT..._UNCOMPRESSED)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
form != POINT_CONVERSION_UNCOMPRESSED)
(form != POINT..._UNCOMPRESSED)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
&&
0-1
248 (
(form != POINT...ERSION_HYBRID)Description
TRUEnever evaluated
FALSEnever evaluated
form != POINT_CONVERSION_HYBRID)
(form != POINT...ERSION_HYBRID)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
249 ERR_put_error(16,(0xfff),(102),__FILE__,307);-
250 return
never executed: return 0;
0;
never executed: return 0;
0
251 }-
252 if ((form == 0
form == 0Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
|| form == POINT_CONVERSION_UNCOMPRESSED
form == POINT_...N_UNCOMPRESSEDDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
) && y_bit
y_bitDescription
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • ectest
) {
0-2
253 ERR_put_error(16,(0xfff),(102),__FILE__,311);-
254 return
never executed: return 0;
0;
never executed: return 0;
0
255 }-
256 if (form == 0
form == 0Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ectest
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
1
257 if (len != 1
len != 1Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
258 ERR_put_error(16,(0xfff),(102),__FILE__,316);-
259 return
never executed: return 0;
0;
never executed: return 0;
0
260 }-
261 return
executed 1 time by 1 test: return EC_POINT_set_to_infinity(group, point);
Executed by:
  • ectest
EC_POINT_set_to_infinity(group, point);
executed 1 time by 1 test: return EC_POINT_set_to_infinity(group, point);
Executed by:
  • ectest
1
262 }-
263 field_len = (EC_GROUP_get_degree(group) + 7) / 8;-
264 enc_len = (
(form == POINT...ON_COMPRESSED)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
form == POINT_CONVERSION_COMPRESSED)
(form == POINT...ON_COMPRESSED)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
? 1 + field_len :
0-1
265 1 + 2 * field_len;-
266-
267 if (len != enc_len
len != enc_lenDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
268 ERR_put_error(16,(0xfff),(102),__FILE__,326);-
269 return
never executed: return 0;
0;
never executed: return 0;
0
270 }-
271 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
272 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
273 ) {-
274 ctx = new_ctx = BN_CTX_new();-
275 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
276 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
277 )-
278 return
never executed: return 0;
0;
never executed: return 0;
0
279 }
never executed: end of block
0
280 BN_CTX_start(ctx);-
281 if ((
(x = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
x = BN_CTX_get(ctx)) ==
(x = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
282 ((void *)0)
(x = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
283 )-
284 goto
never executed: goto err;
err;
never executed: goto err;
0
285 if ((
(y = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
y = BN_CTX_get(ctx)) ==
(y = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
286 ((void *)0)
(y = BN_CTX_ge...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
287 )-
288 goto
never executed: goto err;
err;
never executed: goto err;
0
289 if ((
(yxi = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
yxi = BN_CTX_get(ctx)) ==
(yxi = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
290 ((void *)0)
(yxi = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
0-1
291 )-
292 goto
never executed: goto err;
err;
never executed: goto err;
0
293-
294 if (!BN_bin2bn(buf + 1, field_len, x)
!BN_bin2bn(buf... field_len, x)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
)
0-1
295 goto
never executed: goto err;
err;
never executed: goto err;
0
296 if (BN_ucmp(x, &group->field) >= 0
BN_ucmp(x, &group->field) >= 0Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
297 ERR_put_error(16,(0xfff),(102),__FILE__,345);-
298 goto
never executed: goto err;
err;
never executed: goto err;
0
299 }-
300 if (form == POINT_CONVERSION_COMPRESSED
form == POINT_...ION_COMPRESSEDDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
301 if (!EC_POINT_set_compressed_coordinates_GF2m(group, point, x, y_bit, ctx)
!EC_POINT_set_...x, y_bit, ctx)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
302 goto
never executed: goto err;
err;
never executed: goto err;
0
303 }
never executed: end of block
else {
0
304 if (!BN_bin2bn(buf + 1 + field_len, field_len, y)
!BN_bin2bn(buf... field_len, y)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
)
0-1
305 goto
never executed: goto err;
err;
never executed: goto err;
0
306 if (BN_ucmp(y, &group->field) >= 0
BN_ucmp(y, &group->field) >= 0Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
307 ERR_put_error(16,(0xfff),(102),__FILE__,355);-
308 goto
never executed: goto err;
err;
never executed: goto err;
0
309 }-
310 if (form == POINT_CONVERSION_HYBRID
form == POINT_...VERSION_HYBRIDDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
311 if (!group->meth->field_div(group, yxi, y, x, ctx)
!group->meth->...xi, y, x, ctx)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
312 goto
never executed: goto err;
err;
never executed: goto err;
0
313 if (y_bit != (((
((yxi)->top > 0)Description
TRUEnever evaluated
FALSEnever evaluated
yxi)->top > 0)
((yxi)->top > 0)Description
TRUEnever evaluated
FALSEnever evaluated
&& ((
((yxi)->d[0] & 1)Description
TRUEnever evaluated
FALSEnever evaluated
yxi)->d[0] & 1)
((yxi)->d[0] & 1)Description
TRUEnever evaluated
FALSEnever evaluated
)
y_bit != (((yx...i)->d[0] & 1))Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
314 ERR_put_error(16,(0xfff),(102),__FILE__,362);-
315 goto
never executed: goto err;
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)
!EC_POINT_set_...nt, x, y, ctx)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
)
0-1
319 goto
never executed: goto err;
err;
never executed: goto err;
0
320 }
executed 1 time by 1 test: end of block
Executed by:
  • ectest
1
321-
322-
323 if (EC_POINT_is_on_curve(group, point, ctx) <= 0
EC_POINT_is_on...int, ctx) <= 0Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • ectest
) {
0-1
324 ERR_put_error(16,(0xfff),(107),__FILE__,372);-
325 goto
never executed: goto err;
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:
  • ectest
1
330 BN_CTX_end(ctx);-
331 BN_CTX_free(new_ctx);-
332 return
executed 1 time by 1 test: return ret;
Executed by:
  • ectest
ret;
executed 1 time by 1 test: return ret;
Executed by:
  • ectest
1
333}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2