OpenCoverage

dsa_key.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/dsa/dsa_key.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2static int dsa_builtin_keygen(DSA *dsa);-
3-
4int DSA_generate_key(DSA *dsa)-
5{-
6 if (dsa->meth->dsa_keygen
dsa->meth->dsa_keygenDescription
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-3
7 return
never executed: return dsa->meth->dsa_keygen(dsa);
dsa->meth->dsa_keygen(dsa);
never executed: return dsa->meth->dsa_keygen(dsa);
0
8 return
executed 3 times by 1 test: return dsa_builtin_keygen(dsa);
Executed by:
  • libcrypto.so.1.1
dsa_builtin_keygen(dsa);
executed 3 times by 1 test: return dsa_builtin_keygen(dsa);
Executed by:
  • libcrypto.so.1.1
3
9}-
10-
11static int dsa_builtin_keygen(DSA *dsa)-
12{-
13 int ok = 0;-
14 BN_CTX *ctx = -
15 ((void *)0)-
16 ;-
17 BIGNUM *pub_key = -
18 ((void *)0)-
19 , *priv_key = -
20 ((void *)0)-
21 ;-
22-
23 if ((
(ctx = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
ctx = BN_CTX_new()) ==
(ctx = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-3
24 ((void *)0)
(ctx = BN_CTX_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-3
25 )-
26 goto
never executed: goto err;
err;
never executed: goto err;
0
27-
28 if (dsa->priv_key ==
dsa->priv_key == ((void *)0)Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-3
29 ((void *)0)
dsa->priv_key == ((void *)0)Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-3
30 ) {-
31 if ((
(priv_key = BN...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
priv_key = BN_secure_new()) ==
(priv_key = BN...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-3
32 ((void *)0)
(priv_key = BN...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-3
33 )-
34 goto
never executed: goto err;
err;
never executed: goto err;
0
35 }
executed 3 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
else
3
36 priv_key = dsa->priv_key;
never executed: priv_key = dsa->priv_key;
0
37-
38 do-
39 if (!BN_priv_rand_range(priv_key, dsa->q)
!BN_priv_rand_...v_key, dsa->q)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-3
40 goto
never executed: goto err;
err;
never executed: goto err;
0
41 while (BN_is_zero(priv_key)
BN_is_zero(priv_key)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) ;
0-3
42-
43 if (dsa->pub_key ==
dsa->pub_key == ((void *)0)Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-3
44 ((void *)0)
dsa->pub_key == ((void *)0)Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-3
45 ) {-
46 if ((
(pub_key = BN_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
pub_key = BN_new()) ==
(pub_key = BN_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-3
47 ((void *)0)
(pub_key = BN_...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-3
48 )-
49 goto
never executed: goto err;
err;
never executed: goto err;
0
50 }
executed 3 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
else
3
51 pub_key = dsa->pub_key;
never executed: pub_key = dsa->pub_key;
0
52-
53 {-
54 BIGNUM *prk = BN_new();-
55-
56 if (prk ==
prk == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-3
57 ((void *)0)
prk == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-3
58 )-
59 goto
never executed: goto err;
err;
never executed: goto err;
0
60 BN_with_flags(prk, priv_key, 0x04);-
61-
62 if (!BN_mod_exp(pub_key, dsa->g, prk, dsa->p, ctx)
!BN_mod_exp(pu..., dsa->p, ctx)Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-3
63 BN_free(prk);-
64 goto
never executed: goto err;
err;
never executed: goto err;
0
65 }-
66-
67 BN_free(prk);-
68 }-
69-
70 dsa->priv_key = priv_key;-
71 dsa->pub_key = pub_key;-
72 ok = 1;-
73-
74 err:
code before this statement executed 3 times by 1 test: err:
Executed by:
  • libcrypto.so.1.1
3
75 if (pub_key != dsa->pub_key
pub_key != dsa->pub_keyDescription
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-3
76 BN_free(pub_key);
never executed: BN_free(pub_key);
0
77 if (priv_key != dsa->priv_key
priv_key != dsa->priv_keyDescription
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-3
78 BN_free(priv_key);
never executed: BN_free(priv_key);
0
79 BN_CTX_free(ctx);-
80 return
executed 3 times by 1 test: return ok;
Executed by:
  • libcrypto.so.1.1
ok;
executed 3 times by 1 test: return ok;
Executed by:
  • libcrypto.so.1.1
3
81}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2