OpenCoverage

rsa_saos.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/rsa/rsa_saos.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3int-
4RSA_sign_ASN1_OCTET_STRING(int type, const unsigned char *m, unsigned int m_len,-
5 unsigned char *sigret, unsigned int *siglen, RSA *rsa)-
6{-
7 ASN1_OCTET_STRING sig;-
8 int i, j, ret = 1;-
9 unsigned char *p, *s;-
10-
11 sig.type = 4;-
12 sig.length = m_len;-
13 sig.data = (unsigned char *)m;-
14-
15 i = i2d_ASN1_OCTET_STRING(&sig, -
16 ((void *)0)-
17 );-
18 j = RSA_size(rsa);-
19 if (i > (j - 11)
i > (j - 11)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
20 ERR_put_error(4,(0xfff),(112),__FILE__,83);-
21 return
never executed: return 0;
0;
never executed: return 0;
0
22 }-
23 s = malloc(j + 1);-
24 if (s ==
s == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
25 ((void *)0)
s == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
26 ) {-
27 ERR_put_error(4,(0xfff),((1|64)),__FILE__,88);-
28 return
never executed: return 0;
0;
never executed: return 0;
0
29 }-
30 p = s;-
31 i2d_ASN1_OCTET_STRING(&sig, &p);-
32 i = RSA_private_encrypt(i, s, sigret, rsa, 1);-
33 if (i <= 0
i <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
34 ret = 0;
never executed: ret = 0;
0
35 else-
36 *
never executed: *siglen = i;
siglen = i;
never executed: *siglen = i;
0
37-
38 freezero(s, (unsigned int)j + 1);-
39 return
never executed: return ret;
ret;
never executed: return ret;
0
40}-
41-
42int-
43RSA_verify_ASN1_OCTET_STRING(int dtype, const unsigned char *m,-
44 unsigned int m_len, unsigned char *sigbuf, unsigned int siglen, RSA *rsa)-
45{-
46 int i, ret = 0;-
47 unsigned char *s;-
48 const unsigned char *p;-
49 ASN1_OCTET_STRING *sig = -
50 ((void *)0)-
51 ;-
52-
53 if (siglen != (unsigned int)RSA_size(rsa)
siglen != (uns...)RSA_size(rsa)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
54 ERR_put_error(4,(0xfff),(119),__FILE__,113);-
55 return
never executed: return 0;
0;
never executed: return 0;
0
56 }-
57-
58 s = malloc(siglen);-
59 if (s ==
s == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
60 ((void *)0)
s == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
61 ) {-
62 ERR_put_error(4,(0xfff),((1|64)),__FILE__,119);-
63 goto
never executed: goto err;
err;
never executed: goto err;
0
64 }-
65 i = RSA_public_decrypt((int)siglen, sigbuf, s, rsa, 1);-
66-
67 if (i <= 0
i <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
68 goto
never executed: goto err;
err;
never executed: goto err;
0
69-
70 p = s;-
71 sig = d2i_ASN1_OCTET_STRING(-
72 ((void *)0)-
73 , &p, (long)i);-
74 if (sig ==
sig == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
75 ((void *)0)
sig == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
76 )-
77 goto
never executed: goto err;
err;
never executed: goto err;
0
78-
79 if ((
(unsigned int)...ength != m_lenDescription
TRUEnever evaluated
FALSEnever evaluated
unsigned int)sig->length != m_len
(unsigned int)...ength != m_lenDescription
TRUEnever evaluated
FALSEnever evaluated
||
0
80 timingsafe_bcmp(m, sig->data, m_len) != 0
timingsafe_bcm...a, m_len) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
81 ERR_put_error(4,(0xfff),(104),__FILE__,134);-
82 }
never executed: end of block
else
0
83 ret = 1;
never executed: ret = 1;
0
84err:
code before this statement never executed: err:
0
85 ASN1_OCTET_STRING_free(sig);-
86 freezero(s, (unsigned int)siglen);-
87 return
never executed: return ret;
ret;
never executed: return ret;
0
88}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2