OpenCoverage

ecs_lib.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ecdsa/ecs_lib.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8static const ECDSA_METHOD *default_ECDSA_method = -
9 ((void *)0)-
10 ;-
11-
12static void *ecdsa_data_new(void);-
13static void *ecdsa_data_dup(void *);-
14static void ecdsa_data_free(void *);-
15-
16void-
17ECDSA_set_default_method(const ECDSA_METHOD *meth)-
18{-
19 default_ECDSA_method = meth;-
20}
never executed: end of block
0
21-
22const ECDSA_METHOD *-
23ECDSA_get_default_method(void)-
24{-
25 if (!default_ECDSA_method
!default_ECDSA_methodDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • ecdsatest
FALSEevaluated 151 times by 1 test
Evaluated by:
  • ecdsatest
) {
1-151
26 default_ECDSA_method = ECDSA_OpenSSL();-
27 }
executed 1 time by 1 test: end of block
Executed by:
  • ecdsatest
1
28 return
executed 152 times by 1 test: return default_ECDSA_method;
Executed by:
  • ecdsatest
default_ECDSA_method;
executed 152 times by 1 test: return default_ECDSA_method;
Executed by:
  • ecdsatest
152
29}-
30-
31int-
32ECDSA_set_method(EC_KEY *eckey, const ECDSA_METHOD *meth)-
33{-
34 ECDSA_DATA *ecdsa;-
35-
36 ecdsa = ecdsa_check(eckey);-
37-
38 if (ecdsa ==
ecdsa == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
39 ((void *)0)
ecdsa == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
40 )-
41 return
never executed: return 0;
0;
never executed: return 0;
0
42-
43-
44 ENGINE_finish(ecdsa->engine);-
45 ecdsa->engine = -
46 ((void *)0)-
47 ;-
48-
49 ecdsa->meth = meth;-
50-
51 return
never executed: return 1;
1;
never executed: return 1;
0
52}-
53-
54static ECDSA_DATA *-
55ECDSA_DATA_new_method(ENGINE *engine)-
56{-
57 ECDSA_DATA *ret;-
58-
59 ret = malloc(sizeof(ECDSA_DATA));-
60 if (ret ==
ret == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 152 times by 1 test
Evaluated by:
  • ecdsatest
0-152
61 ((void *)0)
ret == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 152 times by 1 test
Evaluated by:
  • ecdsatest
0-152
62 ) {-
63 ERR_put_error(42,(0xfff),((1|64)),__FILE__,114);-
64 return
never executed: return ( ((void *)0) );
(
never executed: return ( ((void *)0) );
0
65 ((void *)0)
never executed: return ( ((void *)0) );
0
66 );
never executed: return ( ((void *)0) );
0
67 }-
68-
69 ret->init = -
70 ((void *)0)-
71 ;-
72-
73 ret->meth = ECDSA_get_default_method();-
74 ret->engine = engine;-
75-
76 if (!ret->engine
!ret->engineDescription
TRUEevaluated 152 times by 1 test
Evaluated by:
  • ecdsatest
FALSEnever evaluated
)
0-152
77 ret->engine = ENGINE_get_default_ECDSA();
executed 152 times by 1 test: ret->engine = ENGINE_get_default_ECDSA();
Executed by:
  • ecdsatest
152
78 if (ret->engine
ret->engineDescription
TRUEnever evaluated
FALSEevaluated 152 times by 1 test
Evaluated by:
  • ecdsatest
) {
0-152
79 ret->meth = ENGINE_get_ECDSA(ret->engine);-
80 if (ret->meth ==
ret->meth == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
81 ((void *)0)
ret->meth == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
82 ) {-
83 ERR_put_error(42,(0xfff),(38),__FILE__,128);-
84 ENGINE_finish(ret->engine);-
85 free(ret);-
86 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
87 ((void *)0)
never executed: return ((void *)0) ;
0
88 ;
never executed: return ((void *)0) ;
0
89 }-
90 }
never executed: end of block
0
91-
92-
93 ret->flags = ret->meth->flags;-
94 CRYPTO_new_ex_data(12, ret, &ret->ex_data);-
95 return
executed 152 times by 1 test: return (ret);
Executed by:
  • ecdsatest
(ret);
executed 152 times by 1 test: return (ret);
Executed by:
  • ecdsatest
152
96}-
97-
98static void *-
99ecdsa_data_new(void)-
100{-
101 return
executed 152 times by 1 test: return (void *)ECDSA_DATA_new_method( ((void *)0) );
Executed by:
  • ecdsatest
(void *)ECDSA_DATA_new_method(
executed 152 times by 1 test: return (void *)ECDSA_DATA_new_method( ((void *)0) );
Executed by:
  • ecdsatest
152
102 ((void *)0)
executed 152 times by 1 test: return (void *)ECDSA_DATA_new_method( ((void *)0) );
Executed by:
  • ecdsatest
152
103 );
executed 152 times by 1 test: return (void *)ECDSA_DATA_new_method( ((void *)0) );
Executed by:
  • ecdsatest
152
104}-
105-
106static void *-
107ecdsa_data_dup(void *data)-
108{-
109 ECDSA_DATA *r = (ECDSA_DATA *)data;-
110-
111-
112 if (r ==
r == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
113 ((void *)0)
r == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
114 )-
115 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
116 ((void *)0)
never executed: return ((void *)0) ;
0
117 ;
never executed: return ((void *)0) ;
0
118-
119 return
never executed: return ecdsa_data_new();
ecdsa_data_new();
never executed: return ecdsa_data_new();
0
120}-
121-
122static void-
123ecdsa_data_free(void *data)-
124{-
125 ECDSA_DATA *r = (ECDSA_DATA *)data;-
126-
127-
128 ENGINE_finish(r->engine);-
129-
130 CRYPTO_free_ex_data(12, r, &r->ex_data);-
131-
132 freezero(r, sizeof(ECDSA_DATA));-
133}
executed 152 times by 1 test: end of block
Executed by:
  • ecdsatest
152
134-
135ECDSA_DATA *-
136ecdsa_check(EC_KEY *key)-
137{-
138 ECDSA_DATA *ecdsa_data;-
139-
140 void *data = EC_KEY_get_key_method_data(key, ecdsa_data_dup,-
141 ecdsa_data_free, ecdsa_data_free);-
142 if (data ==
data == ((void *)0)Description
TRUEevaluated 152 times by 1 test
Evaluated by:
  • ecdsatest
FALSEevaluated 456 times by 1 test
Evaluated by:
  • ecdsatest
152-456
143 ((void *)0)
data == ((void *)0)Description
TRUEevaluated 152 times by 1 test
Evaluated by:
  • ecdsatest
FALSEevaluated 456 times by 1 test
Evaluated by:
  • ecdsatest
152-456
144 ) {-
145 ecdsa_data = (ECDSA_DATA *)ecdsa_data_new();-
146 if (ecdsa_data ==
ecdsa_data == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 152 times by 1 test
Evaluated by:
  • ecdsatest
0-152
147 ((void *)0)
ecdsa_data == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 152 times by 1 test
Evaluated by:
  • ecdsatest
0-152
148 )-
149 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
150 ((void *)0)
never executed: return ((void *)0) ;
0
151 ;
never executed: return ((void *)0) ;
0
152 data = EC_KEY_insert_key_method_data(key, (void *)ecdsa_data,-
153 ecdsa_data_dup, ecdsa_data_free, ecdsa_data_free);-
154 if (data !=
data != ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 152 times by 1 test
Evaluated by:
  • ecdsatest
0-152
155 ((void *)0)
data != ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 152 times by 1 test
Evaluated by:
  • ecdsatest
0-152
156 ) {-
157-
158-
159 ecdsa_data_free(ecdsa_data);-
160 ecdsa_data = (ECDSA_DATA *)data;-
161 }
never executed: end of block
0
162 }
executed 152 times by 1 test: end of block
Executed by:
  • ecdsatest
else
152
163 ecdsa_data = (ECDSA_DATA *)data;
executed 456 times by 1 test: ecdsa_data = (ECDSA_DATA *)data;
Executed by:
  • ecdsatest
456
164-
165 return
executed 608 times by 1 test: return ecdsa_data;
Executed by:
  • ecdsatest
ecdsa_data;
executed 608 times by 1 test: return ecdsa_data;
Executed by:
  • ecdsatest
608
166}-
167-
168int-
169ECDSA_size(const EC_KEY *r)-
170{-
171 int ret, i;-
172 ASN1_INTEGER bs;-
173 BIGNUM *order = -
174 ((void *)0)-
175 ;-
176 unsigned char buf[4];-
177 const EC_GROUP *group;-
178-
179 if (r ==
r == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 76 times by 1 test
Evaluated by:
  • ecdsatest
0-76
180 ((void *)0)
r == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 76 times by 1 test
Evaluated by:
  • ecdsatest
0-76
181 )-
182 return
never executed: return 0;
0;
never executed: return 0;
0
183 group = EC_KEY_get0_group(r);-
184 if (group ==
group == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 76 times by 1 test
Evaluated by:
  • ecdsatest
0-76
185 ((void *)0)
group == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 76 times by 1 test
Evaluated by:
  • ecdsatest
0-76
186 )-
187 return
never executed: return 0;
0;
never executed: return 0;
0
188-
189 if ((
(order = BN_ne...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 76 times by 1 test
Evaluated by:
  • ecdsatest
order = BN_new()) ==
(order = BN_ne...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 76 times by 1 test
Evaluated by:
  • ecdsatest
0-76
190 ((void *)0)
(order = BN_ne...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 76 times by 1 test
Evaluated by:
  • ecdsatest
0-76
191 )-
192 return
never executed: return 0;
0;
never executed: return 0;
0
193 if (!EC_GROUP_get_order(group, order,
!EC_GROUP_get_... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 76 times by 1 test
Evaluated by:
  • ecdsatest
0-76
194 ((void *)0)
!EC_GROUP_get_... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 76 times by 1 test
Evaluated by:
  • ecdsatest
0-76
195 )
!EC_GROUP_get_... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 76 times by 1 test
Evaluated by:
  • ecdsatest
) {
0-76
196 BN_clear_free(order);-
197 return
never executed: return 0;
0;
never executed: return 0;
0
198 }-
199 i = BN_num_bits(order);-
200 bs.length = (i + 7) / 8;-
201 bs.data = buf;-
202 bs.type = 2;-
203-
204 buf[0] = 0xff;-
205-
206 i = i2d_ASN1_INTEGER(&bs, -
207 ((void *)0)-
208 );-
209 i += i;-
210 ret = ASN1_object_size(1, i, 16);-
211 BN_clear_free(order);-
212 return
executed 76 times by 1 test: return (ret);
Executed by:
  • ecdsatest
(ret);
executed 76 times by 1 test: return (ret);
Executed by:
  • ecdsatest
76
213}-
214-
215int-
216ECDSA_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,-
217 CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func)-
218{-
219 return
never executed: return CRYPTO_get_ex_new_index(12, argl, argp, new_func, dup_func, free_func);
CRYPTO_get_ex_new_index(12, argl, argp,
never executed: return CRYPTO_get_ex_new_index(12, argl, argp, new_func, dup_func, free_func);
0
220 new_func, dup_func, free_func);
never executed: return CRYPTO_get_ex_new_index(12, argl, argp, new_func, dup_func, free_func);
0
221}-
222-
223int-
224ECDSA_set_ex_data(EC_KEY *d, int idx, void *arg)-
225{-
226 ECDSA_DATA *ecdsa;-
227 ecdsa = ecdsa_check(d);-
228 if (ecdsa ==
ecdsa == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
229 ((void *)0)
ecdsa == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
230 )-
231 return
never executed: return 0;
0;
never executed: return 0;
0
232 return
never executed: return (CRYPTO_set_ex_data(&ecdsa->ex_data, idx, arg));
(CRYPTO_set_ex_data(&ecdsa->ex_data, idx, arg));
never executed: return (CRYPTO_set_ex_data(&ecdsa->ex_data, idx, arg));
0
233}-
234-
235void *-
236ECDSA_get_ex_data(EC_KEY *d, int idx)-
237{-
238 ECDSA_DATA *ecdsa;-
239 ecdsa = ecdsa_check(d);-
240 if (ecdsa ==
ecdsa == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
241 ((void *)0)
ecdsa == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
242 )-
243 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
244 ((void *)0)
never executed: return ((void *)0) ;
0
245 ;
never executed: return ((void *)0) ;
0
246 return
never executed: return (CRYPTO_get_ex_data(&ecdsa->ex_data, idx));
(CRYPTO_get_ex_data(&ecdsa->ex_data, idx));
never executed: return (CRYPTO_get_ex_data(&ecdsa->ex_data, idx));
0
247}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2