OpenCoverage

ameth_lib.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/ameth_lib.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8extern const EVP_PKEY_ASN1_METHOD rsa_asn1_meths[];-
9extern const EVP_PKEY_ASN1_METHOD dsa_asn1_meths[];-
10extern const EVP_PKEY_ASN1_METHOD dh_asn1_meth;-
11extern const EVP_PKEY_ASN1_METHOD eckey_asn1_meth;-
12extern const EVP_PKEY_ASN1_METHOD gostr01_asn1_meths[];-
13extern const EVP_PKEY_ASN1_METHOD gostimit_asn1_meth;-
14extern const EVP_PKEY_ASN1_METHOD hmac_asn1_meth;-
15extern const EVP_PKEY_ASN1_METHOD cmac_asn1_meth;-
16-
17-
18static const EVP_PKEY_ASN1_METHOD *standard_methods[] = {-
19-
20 &rsa_asn1_meths[0],-
21 &rsa_asn1_meths[1],-
22-
23-
24 &dh_asn1_meth,-
25-
26-
27 &dsa_asn1_meths[0],-
28 &dsa_asn1_meths[1],-
29 &dsa_asn1_meths[2],-
30 &dsa_asn1_meths[3],-
31 &dsa_asn1_meths[4],-
32-
33-
34 &eckey_asn1_meth,-
35-
36-
37 &gostr01_asn1_meths[0],-
38 &gostimit_asn1_meth,-
39-
40 &hmac_asn1_meth,-
41 &cmac_asn1_meth,-
42-
43 &gostr01_asn1_meths[1],-
44 &gostr01_asn1_meths[2],-
45-
46};-
47-
48typedef int sk_cmp_fn_type(const char * const *a, const char * const *b);-
49struct stack_st_EVP_PKEY_ASN1_METHOD { _STACK stack; };-
50static struct stack_st_EVP_PKEY_ASN1_METHOD *app_methods = -
51 ((void *)0)-
52 ;-
53-
54static int ameth_cmp_BSEARCH_CMP_FN(const void *, const void *);-
55static int ameth_cmp(const EVP_PKEY_ASN1_METHOD * const *, const EVP_PKEY_ASN1_METHOD * const *);-
56static const EVP_PKEY_ASN1_METHOD * *OBJ_bsearch_ameth(const EVP_PKEY_ASN1_METHOD * *key, const EVP_PKEY_ASN1_METHOD * const *base, int num);-
57-
58static int-
59ameth_cmp(const EVP_PKEY_ASN1_METHOD * const *a,-
60 const EVP_PKEY_ASN1_METHOD * const *b)-
61{-
62 return
executed 4961 times by 8 tests: return ((*a)->pkey_id - (*b)->pkey_id);
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
((*a)->pkey_id - (*b)->pkey_id);
executed 4961 times by 8 tests: return ((*a)->pkey_id - (*b)->pkey_id);
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
4961
63}-
64-
65-
66static int-
67ameth_cmp_BSEARCH_CMP_FN(const void *a_, const void *b_)-
68{-
69 const EVP_PKEY_ASN1_METHOD * const *a = a_;-
70 const EVP_PKEY_ASN1_METHOD * const *b = b_;-
71 return
executed 4961 times by 8 tests: return ameth_cmp(a, b);
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
ameth_cmp(a, b);
executed 4961 times by 8 tests: return ameth_cmp(a, b);
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
4961
72}-
73-
74static const EVP_PKEY_ASN1_METHOD * *-
75OBJ_bsearch_ameth(const EVP_PKEY_ASN1_METHOD * *key, const EVP_PKEY_ASN1_METHOD * const *base, int num)-
76{-
77 return
executed 2149 times by 8 tests: return (const EVP_PKEY_ASN1_METHOD * *)OBJ_bsearch_(key, base, num, sizeof(const EVP_PKEY_ASN1_METHOD *), ameth_cmp_BSEARCH_CMP_FN);
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
(const EVP_PKEY_ASN1_METHOD * *)OBJ_bsearch_(key, base, num, sizeof(const EVP_PKEY_ASN1_METHOD *),
executed 2149 times by 8 tests: return (const EVP_PKEY_ASN1_METHOD * *)OBJ_bsearch_(key, base, num, sizeof(const EVP_PKEY_ASN1_METHOD *), ameth_cmp_BSEARCH_CMP_FN);
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
2149
78 ameth_cmp_BSEARCH_CMP_FN);
executed 2149 times by 8 tests: return (const EVP_PKEY_ASN1_METHOD * *)OBJ_bsearch_(key, base, num, sizeof(const EVP_PKEY_ASN1_METHOD *), ameth_cmp_BSEARCH_CMP_FN);
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
2149
79}-
80-
81int-
82EVP_PKEY_asn1_get_count(void)-
83{-
84 int num = sizeof(standard_methods) / sizeof(EVP_PKEY_ASN1_METHOD *);-
85 if (app_methods
app_methodsDescription
TRUEnever evaluated
FALSEevaluated 154 times by 5 tests
Evaluated by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
)
0-154
86 num += sk_num(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)));
never executed: num += sk_num(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)));
0
87 return
executed 154 times by 5 tests: return num;
Executed by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
num;
executed 154 times by 5 tests: return num;
Executed by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
154
88}-
89-
90const EVP_PKEY_ASN1_METHOD *-
91EVP_PKEY_asn1_get0(int idx)-
92{-
93 int num = sizeof(standard_methods) / sizeof(EVP_PKEY_ASN1_METHOD *);-
94 if (idx < 0
idx < 0Description
TRUEnever evaluated
FALSEevaluated 154 times by 5 tests
Evaluated by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
)
0-154
95 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
96 ((void *)0)
never executed: return ((void *)0) ;
0
97 ;
never executed: return ((void *)0) ;
0
98 if (idx < num
idx < numDescription
TRUEevaluated 154 times by 5 tests
Evaluated by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
FALSEnever evaluated
)
0-154
99 return
executed 154 times by 5 tests: return standard_methods[idx];
Executed by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
standard_methods[idx];
executed 154 times by 5 tests: return standard_methods[idx];
Executed by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
154
100 idx -= num;-
101 return
never executed: return ((EVP_PKEY_ASN1_METHOD *)sk_value(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)), (idx)));
((EVP_PKEY_ASN1_METHOD *)sk_value(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)), (idx)));
never executed: return ((EVP_PKEY_ASN1_METHOD *)sk_value(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)), (idx)));
0
102}-
103-
104static const EVP_PKEY_ASN1_METHOD *-
105pkey_asn1_find(int type)-
106{-
107 EVP_PKEY_ASN1_METHOD tmp;-
108 const EVP_PKEY_ASN1_METHOD *t = &tmp, **ret;-
109 tmp.pkey_id = type;-
110 if (app_methods
app_methodsDescription
TRUEnever evaluated
FALSEevaluated 2149 times by 8 tests
Evaluated by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
) {
0-2149
111 int idx;-
112 idx = sk_find(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)), ((void*) (1 ? (&tmp) : (EVP_PKEY_ASN1_METHOD*)0)));-
113 if (idx >= 0
idx >= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
114 return
never executed: return ((EVP_PKEY_ASN1_METHOD *)sk_value(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)), (idx)));
((EVP_PKEY_ASN1_METHOD *)sk_value(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)), (idx)));
never executed: return ((EVP_PKEY_ASN1_METHOD *)sk_value(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)), (idx)));
0
115 }
never executed: end of block
0
116 ret = OBJ_bsearch_ameth(&t, standard_methods,-
117 sizeof(standard_methods) / sizeof(EVP_PKEY_ASN1_METHOD *));-
118 if (!ret
!retDescription
TRUEnever evaluated
FALSEevaluated 2149 times by 8 tests
Evaluated by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
|| !*ret
!*retDescription
TRUEnever evaluated
FALSEevaluated 2149 times by 8 tests
Evaluated by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
)
0-2149
119 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
120 ((void *)0)
never executed: return ((void *)0) ;
0
121 ;
never executed: return ((void *)0) ;
0
122 return
executed 2149 times by 8 tests: return *ret;
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
*ret;
executed 2149 times by 8 tests: return *ret;
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
2149
123}-
124-
125-
126-
127-
128-
129-
130-
131const EVP_PKEY_ASN1_METHOD *-
132EVP_PKEY_asn1_find(ENGINE **pe, int type)-
133{-
134 const EVP_PKEY_ASN1_METHOD *t;-
135-
136 for (;;) {-
137 t = pkey_asn1_find(type);-
138 if (!t
!tDescription
TRUEnever evaluated
FALSEevaluated 2149 times by 8 tests
Evaluated by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
|| !(t->pkey_flags & 0x1)
!(t->pkey_flags & 0x1)Description
TRUEevaluated 2149 times by 8 tests
Evaluated by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
FALSEnever evaluated
)
0-2149
139 break;
executed 2149 times by 8 tests: break;
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
2149
140 type = t->pkey_base_id;-
141 }
never executed: end of block
0
142 if (pe
peDescription
TRUEevaluated 2142 times by 8 tests
Evaluated by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
FALSEevaluated 7 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
) {
7-2142
143-
144 ENGINE *e;-
145-
146 e = ENGINE_get_pkey_asn1_meth_engine(type);-
147 if (e
eDescription
TRUEnever evaluated
FALSEevaluated 2142 times by 8 tests
Evaluated by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
) {
0-2142
148 *pe = e;-
149 return
never executed: return ENGINE_get_pkey_asn1_meth(e, type);
ENGINE_get_pkey_asn1_meth(e, type);
never executed: return ENGINE_get_pkey_asn1_meth(e, type);
0
150 }-
151-
152 *pe = -
153 ((void *)0)-
154 ;-
155 }
executed 2142 times by 8 tests: end of block
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
2142
156 return
executed 2149 times by 8 tests: return t;
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
t;
executed 2149 times by 8 tests: return t;
Executed by:
  • dsatest
  • gost2814789t
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tls_prf
  • tlstest
2149
157}-
158-
159const EVP_PKEY_ASN1_METHOD *-
160EVP_PKEY_asn1_find_str(ENGINE **pe, const char *str, int len)-
161{-
162 int i;-
163 const EVP_PKEY_ASN1_METHOD *ameth;-
164 if (len == -1
len == -1Description
TRUEnever evaluated
FALSEevaluated 133 times by 5 tests
Evaluated by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
)
0-133
165 len = strlen(str);
never executed: len = strlen(str);
0
166 if (pe
peDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
FALSEevaluated 131 times by 5 tests
Evaluated by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
) {
2-131
167-
168 ENGINE *e;-
169 ameth = ENGINE_pkey_asn1_find_str(&e, str, len);-
170 if (ameth
amethDescription
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
) {
0-2
171-
172-
173-
174 if (!ENGINE_init(e)
!ENGINE_init(e)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
175 ameth =
never executed: ameth = ((void *)0) ;
0
176 ((void *)0)
never executed: ameth = ((void *)0) ;
0
177 ;
never executed: ameth = ((void *)0) ;
0
178 ENGINE_free(e);-
179 *pe = e;-
180 return
never executed: return ameth;
ameth;
never executed: return ameth;
0
181 }-
182-
183 *pe = -
184 ((void *)0)-
185 ;-
186 }
executed 2 times by 1 test: end of block
Executed by:
  • libcrypto.so.44.0.1
2
187 for (i = 0; i < EVP_PKEY_asn1_get_count()
i < EVP_PKEY_asn1_get_count()Description
TRUEevaluated 154 times by 5 tests
Evaluated by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
FALSEnever evaluated
; i++) {
0-154
188 ameth = EVP_PKEY_asn1_get0(i);-
189 if (ameth->pkey_flags & 0x1
ameth->pkey_flags & 0x1Description
TRUEevaluated 15 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
FALSEevaluated 139 times by 5 tests
Evaluated by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
)
15-139
190 continue;
executed 15 times by 1 test: continue;
Executed by:
  • libcrypto.so.44.0.1
15
191 if (((
((int)strlen(a...m_str) == len)Description
TRUEevaluated 136 times by 5 tests
Evaluated by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
int)strlen(ameth->pem_str) == len)
((int)strlen(a...m_str) == len)Description
TRUEevaluated 136 times by 5 tests
Evaluated by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
&&
3-136
192 !strncasecmp(ameth->pem_str, str, len)
!strncasecmp(a...str, str, len)Description
TRUEevaluated 133 times by 5 tests
Evaluated by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
)
3-133
193 return
executed 133 times by 5 tests: return ameth;
Executed by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
ameth;
executed 133 times by 5 tests: return ameth;
Executed by:
  • libcrypto.so.44.0.1
  • pkcs7test
  • servertest
  • ssltest
  • tlstest
133
194 }
executed 6 times by 1 test: end of block
Executed by:
  • libcrypto.so.44.0.1
6
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}-
199-
200int-
201EVP_PKEY_asn1_add0(const EVP_PKEY_ASN1_METHOD *ameth)-
202{-
203 if (app_methods ==
app_methods == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
204 ((void *)0)
app_methods == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
205 ) {-
206 app_methods = ((struct stack_st_EVP_PKEY_ASN1_METHOD *)sk_new(((int (*)(const void *, const void *)) ((1 ? (ameth_cmp) : (int (*)(const EVP_PKEY_ASN1_METHOD * const *, const EVP_PKEY_ASN1_METHOD * const *))0)))));-
207 if (!app_methods
!app_methodsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
208 return
never executed: return 0;
0;
never executed: return 0;
0
209 }
never executed: end of block
0
210 if (!sk_push(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)), ((void*) (1 ? (ameth) : (EVP_PKEY_ASN1_METHOD*)0)))
!sk_push(((_ST...1_METHOD*)0)))Description
TRUEnever evaluated
FALSEnever evaluated
)
0
211 return
never executed: return 0;
0;
never executed: return 0;
0
212 sk_sort(((_STACK*) (1 ? (app_methods) : (struct stack_st_EVP_PKEY_ASN1_METHOD*)0)));-
213 return
never executed: return 1;
1;
never executed: return 1;
0
214}-
215-
216int-
217EVP_PKEY_asn1_add_alias(int to, int from)-
218{-
219 EVP_PKEY_ASN1_METHOD *ameth;-
220-
221 ameth = EVP_PKEY_asn1_new(from, 0x1, -
222 ((void *)0)-
223 , -
224 ((void *)0)-
225 );-
226 if (!ameth
!amethDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
227 return
never executed: return 0;
0;
never executed: return 0;
0
228 ameth->pkey_base_id = to;-
229 if (!EVP_PKEY_asn1_add0(ameth)
!EVP_PKEY_asn1_add0(ameth)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
230 EVP_PKEY_asn1_free(ameth);-
231 return
never executed: return 0;
0;
never executed: return 0;
0
232 }-
233 return
never executed: return 1;
1;
never executed: return 1;
0
234}-
235-
236int-
237EVP_PKEY_asn1_get0_info(int *ppkey_id, int *ppkey_base_id, int *ppkey_flags,-
238 const char **pinfo, const char **ppem_str,-
239 const EVP_PKEY_ASN1_METHOD *ameth)-
240{-
241 if (!ameth
!amethDescription
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
)
0-2
242 return
never executed: return 0;
0;
never executed: return 0;
0
243 if (ppkey_id
ppkey_idDescription
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
)
0-2
244 *
never executed: *ppkey_id = ameth->pkey_id;
ppkey_id = ameth->pkey_id;
never executed: *ppkey_id = ameth->pkey_id;
0
245 if (ppkey_base_id
ppkey_base_idDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
FALSEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
)
1
246 *
executed 1 time by 1 test: *ppkey_base_id = ameth->pkey_base_id;
Executed by:
  • libcrypto.so.44.0.1
ppkey_base_id = ameth->pkey_base_id;
executed 1 time by 1 test: *ppkey_base_id = ameth->pkey_base_id;
Executed by:
  • libcrypto.so.44.0.1
1
247 if (ppkey_flags
ppkey_flagsDescription
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
)
0-2
248 *
never executed: *ppkey_flags = ameth->pkey_flags;
ppkey_flags = ameth->pkey_flags;
never executed: *ppkey_flags = ameth->pkey_flags;
0
249 if (pinfo
pinfoDescription
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
)
0-2
250 *
never executed: *pinfo = ameth->info;
pinfo = ameth->info;
never executed: *pinfo = ameth->info;
0
251 if (ppem_str
ppem_strDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
FALSEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.44.0.1
)
1
252 *
executed 1 time by 1 test: *ppem_str = ameth->pem_str;
Executed by:
  • libcrypto.so.44.0.1
ppem_str = ameth->pem_str;
executed 1 time by 1 test: *ppem_str = ameth->pem_str;
Executed by:
  • libcrypto.so.44.0.1
1
253 return
executed 2 times by 1 test: return 1;
Executed by:
  • libcrypto.so.44.0.1
1;
executed 2 times by 1 test: return 1;
Executed by:
  • libcrypto.so.44.0.1
2
254}-
255-
256const EVP_PKEY_ASN1_METHOD*-
257EVP_PKEY_get0_asn1(const EVP_PKEY *pkey)-
258{-
259 return
never executed: return pkey->ameth;
pkey->ameth;
never executed: return pkey->ameth;
0
260}-
261-
262EVP_PKEY_ASN1_METHOD*-
263EVP_PKEY_asn1_new(int id, int flags, const char *pem_str, const char *info)-
264{-
265 EVP_PKEY_ASN1_METHOD *ameth;-
266-
267 if ((
(ameth = callo...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ameth = calloc(1, sizeof(EVP_PKEY_ASN1_METHOD))) ==
(ameth = callo...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
268 ((void *)0)
(ameth = callo...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
269 )-
270 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
271 ((void *)0)
never executed: return ((void *)0) ;
0
272 ;
never executed: return ((void *)0) ;
0
273-
274 ameth->pkey_id = id;-
275 ameth->pkey_base_id = id;-
276 ameth->pkey_flags = flags | 0x2;-
277-
278 if (info !=
info != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
279 ((void *)0)
info != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
280 ) {-
281 if ((
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ameth->info =
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
282 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( info )Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
283 info
__builtin_constant_p ( info )Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
284 )
__builtin_constant_p ( info )Description
TRUEnever evaluated
FALSEnever evaluated
&& ((
((size_t)(cons...( info ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
size_t)(const void *)((
((size_t)(cons...( info ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
285 info
((size_t)(cons...( info ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
286 ) + 1) - (size_t)(const void *)(
((size_t)(cons...( info ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
287 info
((size_t)(cons...( info ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
288 ) == 1)
((size_t)(cons...( info ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
? (((const
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
char *) (
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
289 info
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
290 ))[0] == '\0'
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen (
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
291 info
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
292 ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)
__retval != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
) __retval = (char *) memcpy (__retval,
never executed: __retval = (char *) memcpy (__retval, info , __len);
0
293 info
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __retval = (char *) memcpy (__retval, info , __len);
0
294 , __len); __retval; })) : __strdup (
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
295 info
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
296 )))
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
297 ) ==
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
298 ((void *)0)
(ameth->info =...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
299 )-
300 goto
never executed: goto err;
err;
never executed: goto err;
0
301 }
never executed: end of block
0
302-
303 if (pem_str !=
pem_str != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
304 ((void *)0)
pem_str != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
305 ) {-
306 if ((
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ameth->pem_str =
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
307 (__extension__ (__builtin_constant_p (
__builtin_cons..._p ( pem_str )Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
308 pem_str
__builtin_cons..._p ( pem_str )Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
309 )
__builtin_cons..._p ( pem_str )Description
TRUEnever evaluated
FALSEnever evaluated
&& ((
((size_t)(cons...em_str ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
size_t)(const void *)((
((size_t)(cons...em_str ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
310 pem_str
((size_t)(cons...em_str ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
311 ) + 1) - (size_t)(const void *)(
((size_t)(cons...em_str ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
312 pem_str
((size_t)(cons...em_str ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
313 ) == 1)
((size_t)(cons...em_str ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
? (((const
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
char *) (
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
314 pem_str
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
315 ))[0] == '\0'
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen (
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
316 pem_str
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
317 ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)
__retval != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
) __retval = (char *) memcpy (__retval,
never executed: __retval = (char *) memcpy (__retval, pem_str , __len);
0
318 pem_str
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __retval = (char *) memcpy (__retval, pem_str , __len);
0
319 , __len); __retval; })) : __strdup (
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
320 pem_str
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
321 )))
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
322 ) ==
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
323 ((void *)0)
(ameth->pem_st...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
324 )-
325 goto
never executed: goto err;
err;
never executed: goto err;
0
326 }
never executed: end of block
0
327-
328 return
never executed: return ameth;
ameth;
never executed: return ameth;
0
329-
330 err:-
331 EVP_PKEY_asn1_free(ameth);-
332 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
333 ((void *)0)
never executed: return ((void *)0) ;
0
334 ;
never executed: return ((void *)0) ;
0
335}-
336-
337void-
338EVP_PKEY_asn1_copy(EVP_PKEY_ASN1_METHOD *dst, const EVP_PKEY_ASN1_METHOD *src)-
339{-
340 dst->pub_decode = src->pub_decode;-
341 dst->pub_encode = src->pub_encode;-
342 dst->pub_cmp = src->pub_cmp;-
343 dst->pub_print = src->pub_print;-
344-
345 dst->priv_decode = src->priv_decode;-
346 dst->priv_encode = src->priv_encode;-
347 dst->priv_print = src->priv_print;-
348-
349 dst->old_priv_encode = src->old_priv_encode;-
350 dst->old_priv_decode = src->old_priv_decode;-
351-
352 dst->pkey_size = src->pkey_size;-
353 dst->pkey_bits = src->pkey_bits;-
354-
355 dst->param_decode = src->param_decode;-
356 dst->param_encode = src->param_encode;-
357 dst->param_missing = src->param_missing;-
358 dst->param_copy = src->param_copy;-
359 dst->param_cmp = src->param_cmp;-
360 dst->param_print = src->param_print;-
361 dst->sig_print = src->sig_print;-
362-
363 dst->pkey_free = src->pkey_free;-
364 dst->pkey_ctrl = src->pkey_ctrl;-
365-
366 dst->item_sign = src->item_sign;-
367 dst->item_verify = src->item_verify;-
368}
never executed: end of block
0
369-
370void-
371EVP_PKEY_asn1_free(EVP_PKEY_ASN1_METHOD *ameth)-
372{-
373 if (ameth
amethDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • freenull
&& (
(ameth->pkey_flags & 0x2)Description
TRUEnever evaluated
FALSEnever evaluated
ameth->pkey_flags & 0x2)
(ameth->pkey_flags & 0x2)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0-1
374 free(ameth->pem_str);-
375 free(ameth->info);-
376 free(ameth);-
377 }
never executed: end of block
0
378}
executed 1 time by 1 test: end of block
Executed by:
  • freenull
1
379-
380void-
381EVP_PKEY_asn1_set_public(EVP_PKEY_ASN1_METHOD *ameth,-
382 int (*pub_decode)(EVP_PKEY *pk, X509_PUBKEY *pub),-
383 int (*pub_encode)(X509_PUBKEY *pub, const EVP_PKEY *pk),-
384 int (*pub_cmp)(const EVP_PKEY *a, const EVP_PKEY *b),-
385 int (*pub_print)(BIO *out, const EVP_PKEY *pkey, int indent,-
386 ASN1_PCTX *pctx),-
387 int (*pkey_size)(const EVP_PKEY *pk),-
388 int (*pkey_bits)(const EVP_PKEY *pk))-
389{-
390 ameth->pub_decode = pub_decode;-
391 ameth->pub_encode = pub_encode;-
392 ameth->pub_cmp = pub_cmp;-
393 ameth->pub_print = pub_print;-
394 ameth->pkey_size = pkey_size;-
395 ameth->pkey_bits = pkey_bits;-
396}
never executed: end of block
0
397-
398void-
399EVP_PKEY_asn1_set_private(EVP_PKEY_ASN1_METHOD *ameth,-
400 int (*priv_decode)(EVP_PKEY *pk, const PKCS8_PRIV_KEY_INFO *p8inf),-
401 int (*priv_encode)(PKCS8_PRIV_KEY_INFO *p8, const EVP_PKEY *pk),-
402 int (*priv_print)(BIO *out, const EVP_PKEY *pkey, int indent,-
403 ASN1_PCTX *pctx))-
404{-
405 ameth->priv_decode = priv_decode;-
406 ameth->priv_encode = priv_encode;-
407 ameth->priv_print = priv_print;-
408}
never executed: end of block
0
409-
410void-
411EVP_PKEY_asn1_set_param(EVP_PKEY_ASN1_METHOD *ameth,-
412 int (*param_decode)(EVP_PKEY *pkey, const unsigned char **pder, int derlen),-
413 int (*param_encode)(const EVP_PKEY *pkey, unsigned char **pder),-
414 int (*param_missing)(const EVP_PKEY *pk),-
415 int (*param_copy)(EVP_PKEY *to, const EVP_PKEY *from),-
416 int (*param_cmp)(const EVP_PKEY *a, const EVP_PKEY *b),-
417 int (*param_print)(BIO *out, const EVP_PKEY *pkey, int indent,-
418 ASN1_PCTX *pctx))-
419{-
420 ameth->param_decode = param_decode;-
421 ameth->param_encode = param_encode;-
422 ameth->param_missing = param_missing;-
423 ameth->param_copy = param_copy;-
424 ameth->param_cmp = param_cmp;-
425 ameth->param_print = param_print;-
426}
never executed: end of block
0
427-
428void-
429EVP_PKEY_asn1_set_free(EVP_PKEY_ASN1_METHOD *ameth,-
430 void (*pkey_free)(EVP_PKEY *pkey))-
431{-
432 ameth->pkey_free = pkey_free;-
433}
never executed: end of block
0
434-
435void-
436EVP_PKEY_asn1_set_ctrl(EVP_PKEY_ASN1_METHOD *ameth,-
437 int (*pkey_ctrl)(EVP_PKEY *pkey, int op, long arg1, void *arg2))-
438{-
439 ameth->pkey_ctrl = pkey_ctrl;-
440}
never executed: end of block
0
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2