OpenCoverage

cms_dd.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/cms/cms_dd.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5CMS_ContentInfo *cms_DigestedData_create(const EVP_MD *md)-
6{-
7 CMS_ContentInfo *cms;-
8 CMS_DigestedData *dd;-
9 cms = CMS_ContentInfo_new();-
10 if (cms ==
cms == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
11 ((void *)0)
cms == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
12 )-
13 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
14 ((void *)0)
never executed: return ((void *)0) ;
0
15 ;
never executed: return ((void *)0) ;
0
16-
17 dd = (CMS_DigestedData *)ASN1_item_new((&(CMS_DigestedData_it)));-
18-
19 if (dd ==
dd == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
20 ((void *)0)
dd == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
21 )-
22 goto
never executed: goto err;
err;
never executed: goto err;
0
23-
24 cms->contentType = OBJ_nid2obj(25);-
25 cms->d.digestedData = dd;-
26-
27 dd->version = 0;-
28 dd->encapContentInfo->eContentType = OBJ_nid2obj(21);-
29-
30 X509_ALGOR_set_md(dd->digestAlgorithm, md);-
31-
32 return
never executed: return cms;
cms;
never executed: return cms;
0
33-
34 err:-
35 CMS_ContentInfo_free(cms);-
36 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
37 ((void *)0)
never executed: return ((void *)0) ;
0
38 ;
never executed: return ((void *)0) ;
0
39}-
40-
41BIO *cms_DigestedData_init_bio(CMS_ContentInfo *cms)-
42{-
43 CMS_DigestedData *dd;-
44 dd = cms->d.digestedData;-
45 return
never executed: return cms_DigestAlgorithm_init_bio(dd->digestAlgorithm);
cms_DigestAlgorithm_init_bio(dd->digestAlgorithm);
never executed: return cms_DigestAlgorithm_init_bio(dd->digestAlgorithm);
0
46}-
47-
48int cms_DigestedData_do_final(CMS_ContentInfo *cms, BIO *chain, int verify)-
49{-
50 EVP_MD_CTX *mctx = EVP_MD_CTX_new();-
51 unsigned char md[64];-
52 unsigned int mdlen;-
53 int r = 0;-
54 CMS_DigestedData *dd;-
55-
56 if (mctx ==
mctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
57 ((void *)0)
mctx == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
58 ) {-
59 ERR_put_error(46,(117),((1|64)),__FILE__,64);-
60 goto
never executed: goto err;
err;
never executed: goto err;
0
61 }-
62-
63 dd = cms->d.digestedData;-
64-
65 if (!cms_DigestAlgorithm_find_ctx(mctx, chain, dd->digestAlgorithm)
!cms_DigestAlg...gestAlgorithm)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
66 goto
never executed: goto err;
err;
never executed: goto err;
0
67-
68 if (EVP_DigestFinal_ex(mctx, md, &mdlen) <= 0
EVP_DigestFina..., &mdlen) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
69 goto
never executed: goto err;
err;
never executed: goto err;
0
70-
71 if (verify
verifyDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
72 if (mdlen != (unsigned int)dd->digest->length
mdlen != (unsi...digest->lengthDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
73 ERR_put_error(46,(117),(121),__FILE__,79)-
74 ;-
75 goto
never executed: goto err;
err;
never executed: goto err;
0
76 }-
77-
78 if (memcmp(md, dd->digest->data, mdlen)
memcmp(md, dd-...->data, mdlen)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
79 ERR_put_error(46,(117),(158),__FILE__,85)
never executed: ERR_put_error(46,(117),(158),__FILE__,85) ;
0
80 ;
never executed: ERR_put_error(46,(117),(158),__FILE__,85) ;
0
81 else-
82 r = 1;
never executed: r = 1;
0
83 } else {-
84 if (!ASN1_STRING_set(dd->digest, md, mdlen)
!ASN1_STRING_s...st, md, mdlen)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
85 goto
never executed: goto err;
err;
never executed: goto err;
0
86 r = 1;-
87 }
never executed: end of block
0
88-
89 err:
code before this statement never executed: err:
0
90 EVP_MD_CTX_free(mctx);-
91-
92 return
never executed: return r;
r;
never executed: return r;
0
93-
94}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2