OpenCoverage

dh_check.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/dh/dh_check.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2int-
3DH_check(const DH *dh, int *ret)-
4{-
5 int ok = 0;-
6 BN_CTX *ctx = -
7 ((void *)0)-
8 ;-
9 unsigned long l;-
10 BIGNUM *q = -
11 ((void *)0)-
12 ;-
13-
14 *ret = 0;-
15 ctx = BN_CTX_new();-
16 if (ctx ==
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
0-1
17 ((void *)0)
ctx == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
0-1
18 )-
19 goto
never executed: goto err;
err;
never executed: goto err;
0
20 q = BN_new();-
21 if (q ==
q == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
0-1
22 ((void *)0)
q == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
0-1
23 )-
24 goto
never executed: goto err;
err;
never executed: goto err;
0
25-
26 if (((((((
(((dh->g))->top == 1)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
FALSEnever evaluated
dh->g))->top == 1)
(((dh->g))->top == 1)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
FALSEnever evaluated
&& (((
(((dh->g))->d[...ed long)((2)))Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
dh->g))->d[0] == (unsigned long)((2)))
(((dh->g))->d[...ed long)((2)))Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
) || ((((
(((2)) == 0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
2)) == 0)
(((2)) == 0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
&& (((
(((dh->g))->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
dh->g))->top == 0)
(((dh->g))->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
)) && (!(2) || !(dh->g)->neg
!(dh->g)->negDescription
TRUEnever evaluated
FALSEnever evaluated
))) {
0-1
27 l = BN_mod_word(dh->p, 24);-
28 if (l == (unsigned long)-1
l == (unsigned long)-1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
29 goto
never executed: goto err;
err;
never executed: goto err;
0
30 if (l != 11
l != 11Description
TRUEnever evaluated
FALSEnever evaluated
)
0
31 *
never executed: *ret |= 0x08;
ret |= 0x08;
never executed: *ret |= 0x08;
0
32 }
never executed: end of block
else if (((((((
(((dh->g))->top == 1)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
FALSEnever evaluated
dh->g))->top == 1)
(((dh->g))->top == 1)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
FALSEnever evaluated
&& (((
(((dh->g))->d[...ed long)((5)))Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
FALSEnever evaluated
dh->g))->d[0] == (unsigned long)((5)))
(((dh->g))->d[...ed long)((5)))Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
FALSEnever evaluated
) || ((((
(((5)) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
5)) == 0)
(((5)) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
&& (((
(((dh->g))->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
dh->g))->top == 0)
(((dh->g))->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
)) && (!(5) || !(dh->g)->neg
!(dh->g)->negDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
FALSEnever evaluated
))) {
0-1
33 l = BN_mod_word(dh->p, 10);-
34 if (l == (unsigned long)-1
l == (unsigned long)-1Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
)
0-1
35 goto
never executed: goto err;
err;
never executed: goto err;
0
36 if (l != 3
l != 3Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
&& l != 7
l != 7Description
TRUEnever evaluated
FALSEnever evaluated
)
0-1
37 *
never executed: *ret |= 0x08;
ret |= 0x08;
never executed: *ret |= 0x08;
0
38 }
executed 1 time by 1 test: end of block
Executed by:
  • dhtest
else
1
39 *
never executed: *ret |= 0x04;
ret |= 0x04;
never executed: *ret |= 0x04;
0
40-
41 if (!BN_is_prime_ex(dh->p, 0, ctx,
!BN_is_prime_e... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
0-1
42 ((void *)0)
!BN_is_prime_e... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
0-1
43 )
!BN_is_prime_e... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
)
0-1
44 *
never executed: *ret |= 0x01;
ret |= 0x01;
never executed: *ret |= 0x01;
0
45 else {-
46 if (!BN_rshift1(q, dh->p)
!BN_rshift1(q, dh->p)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
)
0-1
47 goto
never executed: goto err;
err;
never executed: goto err;
0
48 if (!BN_is_prime_ex(q, 0, ctx,
!BN_is_prime_e... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
0-1
49 ((void *)0)
!BN_is_prime_e... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
0-1
50 )
!BN_is_prime_e... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • dhtest
)
0-1
51 *
never executed: *ret |= 0x02;
ret |= 0x02;
never executed: *ret |= 0x02;
0
52 }
executed 1 time by 1 test: end of block
Executed by:
  • dhtest
1
53 ok = 1;-
54err:
code before this statement executed 1 time by 1 test: err:
Executed by:
  • dhtest
1
55 BN_CTX_free(ctx);-
56 BN_free(q);-
57 return
executed 1 time by 1 test: return ok;
Executed by:
  • dhtest
ok;
executed 1 time by 1 test: return ok;
Executed by:
  • dhtest
1
58}-
59-
60int-
61DH_check_pub_key(const DH *dh, const BIGNUM *pub_key, int *ret)-
62{-
63 BIGNUM *q = -
64 ((void *)0)-
65 ;-
66-
67 *ret = 0;-
68 q = BN_new();-
69 if (q ==
q == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 60 times by 3 tests
Evaluated by:
  • dhtest
  • mont
  • ssltest
0-60
70 ((void *)0)
q == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 60 times by 3 tests
Evaluated by:
  • dhtest
  • mont
  • ssltest
0-60
71 )-
72 return
never executed: return 0;
0;
never executed: return 0;
0
73 BN_set_word(q, 1);-
74 if (BN_cmp(pub_key, q) <= 0
BN_cmp(pub_key, q) <= 0Description
TRUEnever evaluated
FALSEevaluated 60 times by 3 tests
Evaluated by:
  • dhtest
  • mont
  • ssltest
)
0-60
75 *
never executed: *ret |= 0x01;
ret |= 0x01;
never executed: *ret |= 0x01;
0
76 BN_copy(q, dh->p);-
77 BN_sub_word(q, 1);-
78 if (BN_cmp(pub_key, q) >= 0
BN_cmp(pub_key, q) >= 0Description
TRUEnever evaluated
FALSEevaluated 60 times by 3 tests
Evaluated by:
  • dhtest
  • mont
  • ssltest
)
0-60
79 *
never executed: *ret |= 0x02;
ret |= 0x02;
never executed: *ret |= 0x02;
0
80-
81 BN_free(q);-
82 return
executed 60 times by 3 tests: return 1;
Executed by:
  • dhtest
  • mont
  • ssltest
1;
executed 60 times by 3 tests: return 1;
Executed by:
  • dhtest
  • mont
  • ssltest
60
83}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2