OpenCoverage

pmeth_gn.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/evp/pmeth_gn.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5int-
6EVP_PKEY_paramgen_init(EVP_PKEY_CTX *ctx)-
7{-
8 int ret;-
9-
10 if (!ctx
!ctxDescription
TRUEnever evaluated
FALSEnever evaluated
|| !ctx->pmeth
!ctx->pmethDescription
TRUEnever evaluated
FALSEnever evaluated
|| !ctx->pmeth->paramgen
!ctx->pmeth->paramgenDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
11 ERR_put_error(6,(0xfff),(150),__FILE__,75);-
12 return
never executed: return -2;
-2;
never executed: return -2;
0
13 }-
14 ctx->operation = (1<<1);-
15 if (!ctx->pmeth->paramgen_init
!ctx->pmeth->paramgen_initDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
16 return
never executed: return 1;
1;
never executed: return 1;
0
17 ret = ctx->pmeth->paramgen_init(ctx);-
18 if (ret <= 0
ret <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
19 ctx->operation = 0;
never executed: ctx->operation = 0;
0
20 return
never executed: return ret;
ret;
never executed: return ret;
0
21}-
22-
23int-
24EVP_PKEY_paramgen(EVP_PKEY_CTX *ctx, EVP_PKEY **ppkey)-
25{-
26 int ret;-
27-
28 if (!ctx
!ctxDescription
TRUEnever evaluated
FALSEnever evaluated
|| !ctx->pmeth
!ctx->pmethDescription
TRUEnever evaluated
FALSEnever evaluated
|| !ctx->pmeth->paramgen
!ctx->pmeth->paramgenDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
29 ERR_put_error(6,(0xfff),(150),__FILE__,93);-
30 return
never executed: return -2;
-2;
never executed: return -2;
0
31 }-
32-
33 if (ctx->operation != (1<<1)
ctx->operation != (1<<1)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
34 ERR_put_error(6,(0xfff),(151),__FILE__,98);-
35 return
never executed: return -1;
-1;
never executed: return -1;
0
36 }-
37-
38 if (!ppkey
!ppkeyDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
39 return
never executed: return -1;
-1;
never executed: return -1;
0
40-
41 if (!*ppkey
!*ppkeyDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
42 *
never executed: *ppkey = EVP_PKEY_new();
ppkey = EVP_PKEY_new();
never executed: *ppkey = EVP_PKEY_new();
0
43-
44 ret = ctx->pmeth->paramgen(ctx, *ppkey);-
45 if (ret <= 0
ret <= 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
46 EVP_PKEY_free(*ppkey);-
47 *ppkey = -
48 ((void *)0)-
49 ;-
50 }
never executed: end of block
0
51 return
never executed: return ret;
ret;
never executed: return ret;
0
52}-
53-
54int-
55EVP_PKEY_keygen_init(EVP_PKEY_CTX *ctx)-
56{-
57 int ret;-
58-
59 if (!ctx
!ctxDescription
TRUEnever evaluated
FALSEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
|| !ctx->pmeth
!ctx->pmethDescription
TRUEnever evaluated
FALSEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
|| !ctx->pmeth->keygen
!ctx->pmeth->keygenDescription
TRUEnever evaluated
FALSEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
) {
0-1813
60 ERR_put_error(6,(0xfff),(150),__FILE__,122);-
61 return
never executed: return -2;
-2;
never executed: return -2;
0
62 }-
63 ctx->operation = (1<<2);-
64 if (!ctx->pmeth->keygen_init
!ctx->pmeth->keygen_initDescription
TRUEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
FALSEnever evaluated
)
0-1813
65 return
executed 1813 times by 5 tests: return 1;
Executed by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
1;
executed 1813 times by 5 tests: return 1;
Executed by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
1813
66 ret = ctx->pmeth->keygen_init(ctx);-
67 if (ret <= 0
ret <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
68 ctx->operation = 0;
never executed: ctx->operation = 0;
0
69 return
never executed: return ret;
ret;
never executed: return ret;
0
70}-
71-
72int-
73EVP_PKEY_keygen(EVP_PKEY_CTX *ctx, EVP_PKEY **ppkey)-
74{-
75 int ret;-
76-
77 if (!ctx
!ctxDescription
TRUEnever evaluated
FALSEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
|| !ctx->pmeth
!ctx->pmethDescription
TRUEnever evaluated
FALSEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
|| !ctx->pmeth->keygen
!ctx->pmeth->keygenDescription
TRUEnever evaluated
FALSEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
) {
0-1813
78 ERR_put_error(6,(0xfff),(150),__FILE__,140);-
79 return
never executed: return -2;
-2;
never executed: return -2;
0
80 }-
81 if (ctx->operation != (1<<2)
ctx->operation != (1<<2)Description
TRUEnever evaluated
FALSEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
) {
0-1813
82 ERR_put_error(6,(0xfff),(151),__FILE__,144);-
83 return
never executed: return -1;
-1;
never executed: return -1;
0
84 }-
85-
86 if (!ppkey
!ppkeyDescription
TRUEnever evaluated
FALSEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
)
0-1813
87 return
never executed: return -1;
-1;
never executed: return -1;
0
88-
89 if (!*ppkey
!*ppkeyDescription
TRUEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
FALSEnever evaluated
)
0-1813
90 *
executed 1813 times by 5 tests: *ppkey = EVP_PKEY_new();
Executed by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
ppkey = EVP_PKEY_new();
executed 1813 times by 5 tests: *ppkey = EVP_PKEY_new();
Executed by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
1813
91-
92 ret = ctx->pmeth->keygen(ctx, *ppkey);-
93 if (ret <= 0
ret <= 0Description
TRUEnever evaluated
FALSEevaluated 1813 times by 5 tests
Evaluated by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
) {
0-1813
94 EVP_PKEY_free(*ppkey);-
95 *ppkey = -
96 ((void *)0)-
97 ;-
98 }
never executed: end of block
0
99 return
executed 1813 times by 5 tests: return ret;
Executed by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
ret;
executed 1813 times by 5 tests: return ret;
Executed by:
  • gost2814789t
  • libcrypto.so.44.0.1
  • ssltest
  • tls_prf
  • tlstest
1813
100}-
101-
102void-
103EVP_PKEY_CTX_set_cb(EVP_PKEY_CTX *ctx, EVP_PKEY_gen_cb *cb)-
104{-
105 ctx->pkey_gencb = cb;-
106}
executed 1 time by 1 test: end of block
Executed by:
  • libcrypto.so.44.0.1
1
107-
108EVP_PKEY_gen_cb *-
109EVP_PKEY_CTX_get_cb(EVP_PKEY_CTX *ctx)-
110{-
111 return
never executed: return ctx->pkey_gencb;
ctx->pkey_gencb;
never executed: return ctx->pkey_gencb;
0
112}-
113-
114-
115-
116-
117-
118static int-
119trans_cb(int a, int b, BN_GENCB *gcb)-
120{-
121 EVP_PKEY_CTX *ctx = gcb->arg;-
122 ctx->keygen_info[0] = a;-
123 ctx->keygen_info[1] = b;-
124 return
never executed: return ctx->pkey_gencb(ctx);
ctx->pkey_gencb(ctx);
never executed: return ctx->pkey_gencb(ctx);
0
125}-
126-
127void-
128evp_pkey_set_cb_translate(BN_GENCB *cb, EVP_PKEY_CTX *ctx)-
129{-
130 { BN_GENCB *tmp_gencb = (cb); tmp_gencb->ver = 2; tmp_gencb->arg = (ctx); tmp_gencb->cb.cb_2 = (trans_cb); }-
131}
never executed: end of block
0
132-
133int-
134EVP_PKEY_CTX_get_keygen_info(EVP_PKEY_CTX *ctx, int idx)-
135{-
136 if (idx == -1
idx == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
137 return
never executed: return ctx->keygen_info_count;
ctx->keygen_info_count;
never executed: return ctx->keygen_info_count;
0
138 if (idx < 0
idx < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| idx > ctx->keygen_info_count
idx > ctx->keygen_info_countDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
139 return
never executed: return 0;
0;
never executed: return 0;
0
140 return
never executed: return ctx->keygen_info[idx];
ctx->keygen_info[idx];
never executed: return ctx->keygen_info[idx];
0
141}-
142-
143EVP_PKEY *-
144EVP_PKEY_new_mac_key(int type, ENGINE *e, const unsigned char *key, int keylen)-
145{-
146 EVP_PKEY_CTX *mac_ctx = -
147 ((void *)0)-
148 ;-
149 EVP_PKEY *mac_key = -
150 ((void *)0)-
151 ;-
152-
153 mac_ctx = EVP_PKEY_CTX_new_id(type, e);-
154 if (!mac_ctx
!mac_ctxDescription
TRUEnever evaluated
FALSEevaluated 1812 times by 4 tests
Evaluated by:
  • gost2814789t
  • ssltest
  • tls_prf
  • tlstest
)
0-1812
155 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
156 ((void *)0)
never executed: return ((void *)0) ;
0
157 ;
never executed: return ((void *)0) ;
0
158 if (EVP_PKEY_keygen_init(mac_ctx) <= 0
EVP_PKEY_keyge...(mac_ctx) <= 0Description
TRUEnever evaluated
FALSEevaluated 1812 times by 4 tests
Evaluated by:
  • gost2814789t
  • ssltest
  • tls_prf
  • tlstest
)
0-1812
159 goto
never executed: goto merr;
merr;
never executed: goto merr;
0
160 if (EVP_PKEY_CTX_ctrl(mac_ctx, -1, (1<<2),
EVP_PKEY_CTX_c...id *)key) <= 0Description
TRUEnever evaluated
FALSEevaluated 1812 times by 4 tests
Evaluated by:
  • gost2814789t
  • ssltest
  • tls_prf
  • tlstest
0-1812
161 6, keylen, (void *)key) <= 0
EVP_PKEY_CTX_c...id *)key) <= 0Description
TRUEnever evaluated
FALSEevaluated 1812 times by 4 tests
Evaluated by:
  • gost2814789t
  • ssltest
  • tls_prf
  • tlstest
)
0-1812
162 goto
never executed: goto merr;
merr;
never executed: goto merr;
0
163 if (EVP_PKEY_keygen(mac_ctx, &mac_key) <= 0
EVP_PKEY_keyge...&mac_key) <= 0Description
TRUEnever evaluated
FALSEevaluated 1812 times by 4 tests
Evaluated by:
  • gost2814789t
  • ssltest
  • tls_prf
  • tlstest
)
0-1812
164 goto
never executed: goto merr;
merr;
never executed: goto merr;
0
165-
166merr:
code before this statement executed 1812 times by 4 tests: merr:
Executed by:
  • gost2814789t
  • ssltest
  • tls_prf
  • tlstest
1812
167 EVP_PKEY_CTX_free(mac_ctx);-
168 return
executed 1812 times by 4 tests: return mac_key;
Executed by:
  • gost2814789t
  • ssltest
  • tls_prf
  • tlstest
mac_key;
executed 1812 times by 4 tests: return mac_key;
Executed by:
  • gost2814789t
  • ssltest
  • tls_prf
  • tlstest
1812
169}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2