OpenCoverage

cms_lib.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/cms/cms_lib.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4CMS_ContentInfo *d2i_CMS_ContentInfo(CMS_ContentInfo **a, const unsigned char **in, long len) { return
executed 11 times by 1 test: return (CMS_ContentInfo *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(CMS_ContentInfo_it)));
Executed by:
  • libcrypto.so.1.1
(CMS_ContentInfo *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(CMS_ContentInfo_it)));
executed 11 times by 1 test: return (CMS_ContentInfo *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(CMS_ContentInfo_it)));
Executed by:
  • libcrypto.so.1.1
} int i2d_CMS_ContentInfo(CMS_ContentInfo *a, unsigned char **out) { return
never executed: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(CMS_ContentInfo_it)));
ASN1_item_i2d((ASN1_VALUE *)a, out, (&(CMS_ContentInfo_it)));
never executed: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(CMS_ContentInfo_it)));
} CMS_ContentInfo *CMS_ContentInfo_new(void) { return
executed 54 times by 1 test: return (CMS_ContentInfo *)ASN1_item_new((&(CMS_ContentInfo_it)));
Executed by:
  • libcrypto.so.1.1
(CMS_ContentInfo *)ASN1_item_new((&(CMS_ContentInfo_it)));
executed 54 times by 1 test: return (CMS_ContentInfo *)ASN1_item_new((&(CMS_ContentInfo_it)));
Executed by:
  • libcrypto.so.1.1
} void CMS_ContentInfo_free(CMS_ContentInfo *a) { ASN1_item_free((ASN1_VALUE *)a, (&(CMS_ContentInfo_it))); }
executed 502 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
0-502
5int CMS_ContentInfo_print_ctx(BIO *out, CMS_ContentInfo *x, int indent, const ASN1_PCTX *pctx) { return
never executed: return ASN1_item_print(out, (ASN1_VALUE *)x, indent, (&(CMS_ContentInfo_it)), pctx);
ASN1_item_print(out, (ASN1_VALUE *)x, indent, (&(CMS_ContentInfo_it)), pctx);
never executed: return ASN1_item_print(out, (ASN1_VALUE *)x, indent, (&(CMS_ContentInfo_it)), pctx);
}
0
6-
7const ASN1_OBJECT *CMS_get0_type(const CMS_ContentInfo *cms)-
8{-
9 return
executed 25 times by 1 test: return cms->contentType;
Executed by:
  • libcrypto.so.1.1
cms->contentType;
executed 25 times by 1 test: return cms->contentType;
Executed by:
  • libcrypto.so.1.1
25
10}-
11-
12CMS_ContentInfo *cms_Data_create(void)-
13{-
14 CMS_ContentInfo *cms;-
15 cms = CMS_ContentInfo_new();-
16 if (cms !=
cms != ((void *)0)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-1
17 ((void *)0)
cms != ((void *)0)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-1
18 ) {-
19 cms->contentType = OBJ_nid2obj(21);-
20-
21 CMS_set_detached(cms, 0);-
22 }
executed 1 time by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
1
23 return
executed 1 time by 1 test: return cms;
Executed by:
  • libcrypto.so.1.1
cms;
executed 1 time by 1 test: return cms;
Executed by:
  • libcrypto.so.1.1
1
24}-
25-
26BIO *cms_content_bio(CMS_ContentInfo *cms)-
27{-
28 ASN1_OCTET_STRING **pos = CMS_get0_content(cms);-
29 if (!pos
!posDescription
TRUEnever evaluated
FALSEevaluated 60 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-60
30 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
31 ((void *)0)
never executed: return ((void *)0) ;
0
32 ;
never executed: return ((void *)0) ;
0
33-
34 if (!*pos
!*posDescription
TRUEevaluated 5 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 55 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
5-55
35 return
executed 5 times by 1 test: return BIO_new(BIO_s_null());
Executed by:
  • libcrypto.so.1.1
BIO_new(BIO_s_null());
executed 5 times by 1 test: return BIO_new(BIO_s_null());
Executed by:
  • libcrypto.so.1.1
5
36-
37-
38-
39 if (!*pos
!*posDescription
TRUEnever evaluated
FALSEevaluated 55 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
|| ((*
((*pos)->flags == 0x020)Description
TRUEevaluated 9 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 46 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
pos)->flags == 0x020)
((*pos)->flags == 0x020)Description
TRUEevaluated 9 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 46 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-55
40 return
executed 9 times by 1 test: return BIO_new(BIO_s_mem());
Executed by:
  • libcrypto.so.1.1
BIO_new(BIO_s_mem());
executed 9 times by 1 test: return BIO_new(BIO_s_mem());
Executed by:
  • libcrypto.so.1.1
9
41-
42 return
executed 46 times by 1 test: return BIO_new_mem_buf((*pos)->data, (*pos)->length);
Executed by:
  • libcrypto.so.1.1
BIO_new_mem_buf((*pos)->data, (*pos)->length);
executed 46 times by 1 test: return BIO_new_mem_buf((*pos)->data, (*pos)->length);
Executed by:
  • libcrypto.so.1.1
46
43}-
44-
45BIO *CMS_dataInit(CMS_ContentInfo *cms, BIO *icont)-
46{-
47 BIO *cmsbio, *cont;-
48 if (icont
icontDescription
TRUEevaluated 50 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 60 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
50-60
49 cont = icont;
executed 50 times by 1 test: cont = icont;
Executed by:
  • libcrypto.so.1.1
50
50 else-
51 cont = cms_content_bio(cms);
executed 60 times by 1 test: cont = cms_content_bio(cms);
Executed by:
  • libcrypto.so.1.1
60
52 if (!cont
!contDescription
TRUEnever evaluated
FALSEevaluated 110 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-110
53 ERR_put_error(46,(111),(127),__FILE__,64);-
54 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
55 ((void *)0)
never executed: return ((void *)0) ;
0
56 ;
never executed: return ((void *)0) ;
0
57 }-
58 switch (OBJ_obj2nid(cms->contentType)) {-
59-
60 case
executed 2 times by 1 test: case 21:
Executed by:
  • libcrypto.so.1.1
21:
executed 2 times by 1 test: case 21:
Executed by:
  • libcrypto.so.1.1
2
61 return
executed 2 times by 1 test: return cont;
Executed by:
  • libcrypto.so.1.1
cont;
executed 2 times by 1 test: return cont;
Executed by:
  • libcrypto.so.1.1
2
62-
63 case
executed 60 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
22:
executed 60 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
60
64 cmsbio = cms_SignedData_init_bio(cms);-
65 break;
executed 60 times by 1 test: break;
Executed by:
  • libcrypto.so.1.1
60
66-
67 case
never executed: case 25:
25:
never executed: case 25:
0
68 cmsbio = cms_DigestedData_init_bio(cms);-
69 break;
never executed: break;
0
70-
71-
72-
73-
74-
75-
76 case
executed 8 times by 1 test: case 26:
Executed by:
  • libcrypto.so.1.1
26:
executed 8 times by 1 test: case 26:
Executed by:
  • libcrypto.so.1.1
8
77 cmsbio = cms_EncryptedData_init_bio(cms);-
78 break;
executed 8 times by 1 test: break;
Executed by:
  • libcrypto.so.1.1
8
79-
80 case
executed 40 times by 1 test: case 23:
Executed by:
  • libcrypto.so.1.1
23:
executed 40 times by 1 test: case 23:
Executed by:
  • libcrypto.so.1.1
40
81 cmsbio = cms_EnvelopedData_init_bio(cms);-
82 break;
executed 40 times by 1 test: break;
Executed by:
  • libcrypto.so.1.1
40
83-
84 default
never executed: default:
:
never executed: default:
0
85 ERR_put_error(46,(111),(156),__FILE__,94);-
86 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
87 ((void *)0)
never executed: return ((void *)0) ;
0
88 ;
never executed: return ((void *)0) ;
0
89 }-
90-
91 if (cmsbio
cmsbioDescription
TRUEevaluated 108 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
)
0-108
92 return
executed 108 times by 1 test: return BIO_push(cmsbio, cont);
Executed by:
  • libcrypto.so.1.1
BIO_push(cmsbio, cont);
executed 108 times by 1 test: return BIO_push(cmsbio, cont);
Executed by:
  • libcrypto.so.1.1
108
93-
94 if (!icont
!icontDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
95 BIO_free(cont);
never executed: BIO_free(cont);
0
96 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
97 ((void *)0)
never executed: return ((void *)0) ;
0
98 ;
never executed: return ((void *)0) ;
0
99-
100}-
101-
102int CMS_dataFinal(CMS_ContentInfo *cms, BIO *cmsbio)-
103{-
104 ASN1_OCTET_STRING **pos = CMS_get0_content(cms);-
105 if (!pos
!posDescription
TRUEnever evaluated
FALSEevaluated 54 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-54
106 return
never executed: return 0;
0;
never executed: return 0;
0
107-
108 if (*
*posDescription
TRUEevaluated 45 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 9 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
pos
*posDescription
TRUEevaluated 45 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 9 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
&& ((*
((*pos)->flags & 0x020)Description
TRUEevaluated 9 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 36 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
pos)->flags & 0x020)
((*pos)->flags & 0x020)Description
TRUEevaluated 9 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 36 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
9-45
109 BIO *mbio;-
110 unsigned char *cont;-
111 long contlen;-
112 mbio = BIO_find_type(cmsbio, ( 1|0x0400));-
113 if (!mbio
!mbioDescription
TRUEnever evaluated
FALSEevaluated 9 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-9
114 ERR_put_error(46,(110),(105),__FILE__,119);-
115 return
never executed: return 0;
0;
never executed: return 0;
0
116 }-
117 contlen = BIO_ctrl(mbio,3,0,(char *)(&cont));-
118-
119 BIO_set_flags(mbio, 0x200);-
120 BIO_ctrl(mbio,130,0,-
121 ((void *)0)-
122 );-
123 ASN1_STRING_set0(*pos, cont, contlen);-
124 (*pos)->flags &= ~0x020;-
125 }
executed 9 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
9
126-
127 switch (OBJ_obj2nid(cms->contentType)) {-
128-
129 case
executed 1 time by 1 test: case 21:
Executed by:
  • libcrypto.so.1.1
21:
executed 1 time by 1 test: case 21:
Executed by:
  • libcrypto.so.1.1
1
130 case
executed 20 times by 1 test: case 23:
Executed by:
  • libcrypto.so.1.1
23:
executed 20 times by 1 test: case 23:
Executed by:
  • libcrypto.so.1.1
20
131 case
executed 4 times by 1 test: case 26:
Executed by:
  • libcrypto.so.1.1
26:
executed 4 times by 1 test: case 26:
Executed by:
  • libcrypto.so.1.1
4
132 case
never executed: case 786:
786:
never executed: case 786:
0
133-
134 return
executed 25 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1;
executed 25 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
25
135-
136 case
executed 29 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
22:
executed 29 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
29
137 return
executed 29 times by 1 test: return cms_SignedData_final(cms, cmsbio);
Executed by:
  • libcrypto.so.1.1
cms_SignedData_final(cms, cmsbio);
executed 29 times by 1 test: return cms_SignedData_final(cms, cmsbio);
Executed by:
  • libcrypto.so.1.1
29
138-
139 case
never executed: case 25:
25:
never executed: case 25:
0
140 return
never executed: return cms_DigestedData_do_final(cms, cmsbio, 0);
cms_DigestedData_do_final(cms, cmsbio, 0);
never executed: return cms_DigestedData_do_final(cms, cmsbio, 0);
0
141-
142 default
never executed: default:
:
never executed: default:
0
143 ERR_put_error(46,(110),(156),__FILE__,146);-
144 return
never executed: return 0;
0;
never executed: return 0;
0
145 }-
146}-
147-
148-
149-
150-
151-
152-
153ASN1_OCTET_STRING **CMS_get0_content(CMS_ContentInfo *cms)-
154{-
155 switch (OBJ_obj2nid(cms->contentType)) {-
156-
157 case
executed 4 times by 1 test: case 21:
Executed by:
  • libcrypto.so.1.1
21:
executed 4 times by 1 test: case 21:
Executed by:
  • libcrypto.so.1.1
4
158 return
executed 4 times by 1 test: return &cms->d.data;
Executed by:
  • libcrypto.so.1.1
&cms->d.data;
executed 4 times by 1 test: return &cms->d.data;
Executed by:
  • libcrypto.so.1.1
4
159-
160 case
executed 118 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
22:
executed 118 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
118
161 return
executed 118 times by 1 test: return &cms->d.signedData->encapContentInfo->eContent;
Executed by:
  • libcrypto.so.1.1
&cms->d.signedData->encapContentInfo->eContent;
executed 118 times by 1 test: return &cms->d.signedData->encapContentInfo->eContent;
Executed by:
  • libcrypto.so.1.1
118
162-
163 case
executed 100 times by 1 test: case 23:
Executed by:
  • libcrypto.so.1.1
23:
executed 100 times by 1 test: case 23:
Executed by:
  • libcrypto.so.1.1
100
164 return
executed 100 times by 1 test: return &cms->d.envelopedData->encryptedContentInfo->encryptedContent;
Executed by:
  • libcrypto.so.1.1
&cms->d.envelopedData->encryptedContentInfo->encryptedContent;
executed 100 times by 1 test: return &cms->d.envelopedData->encryptedContentInfo->encryptedContent;
Executed by:
  • libcrypto.so.1.1
100
165-
166 case
never executed: case 25:
25:
never executed: case 25:
0
167 return
never executed: return &cms->d.digestedData->encapContentInfo->eContent;
&cms->d.digestedData->encapContentInfo->eContent;
never executed: return &cms->d.digestedData->encapContentInfo->eContent;
0
168-
169 case
executed 20 times by 1 test: case 26:
Executed by:
  • libcrypto.so.1.1
26:
executed 20 times by 1 test: case 26:
Executed by:
  • libcrypto.so.1.1
20
170 return
executed 20 times by 1 test: return &cms->d.encryptedData->encryptedContentInfo->encryptedContent;
Executed by:
  • libcrypto.so.1.1
&cms->d.encryptedData->encryptedContentInfo->encryptedContent;
executed 20 times by 1 test: return &cms->d.encryptedData->encryptedContentInfo->encryptedContent;
Executed by:
  • libcrypto.so.1.1
20
171-
172 case
never executed: case 205:
205:
never executed: case 205:
0
173 return
never executed: return &cms->d.authenticatedData->encapContentInfo->eContent;
&cms->d.authenticatedData->encapContentInfo->eContent;
never executed: return &cms->d.authenticatedData->encapContentInfo->eContent;
0
174-
175 case
never executed: case 786:
786:
never executed: case 786:
0
176 return
never executed: return &cms->d.compressedData->encapContentInfo->eContent;
&cms->d.compressedData->encapContentInfo->eContent;
never executed: return &cms->d.compressedData->encapContentInfo->eContent;
0
177-
178 default
never executed: default:
:
never executed: default:
0
179 if (cms->d.other->type == 4
cms->d.other->type == 4Description
TRUEnever evaluated
FALSEnever evaluated
)
0
180 return
never executed: return &cms->d.other->value.octet_string;
&cms->d.other->value.octet_string;
never executed: return &cms->d.other->value.octet_string;
0
181 ERR_put_error(46,(129),(152),__FILE__,184);-
182 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
183 ((void *)0)
never executed: return ((void *)0) ;
0
184 ;
never executed: return ((void *)0) ;
0
185-
186 }-
187}-
188-
189-
190-
191-
192-
193-
194static ASN1_OBJECT **cms_get0_econtent_type(CMS_ContentInfo *cms)-
195{-
196 switch (OBJ_obj2nid(cms->contentType)) {-
197-
198 case
executed 20 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
22:
executed 20 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
20
199 return
executed 20 times by 1 test: return &cms->d.signedData->encapContentInfo->eContentType;
Executed by:
  • libcrypto.so.1.1
&cms->d.signedData->encapContentInfo->eContentType;
executed 20 times by 1 test: return &cms->d.signedData->encapContentInfo->eContentType;
Executed by:
  • libcrypto.so.1.1
20
200-
201 case
executed 17 times by 1 test: case 23:
Executed by:
  • libcrypto.so.1.1
23:
executed 17 times by 1 test: case 23:
Executed by:
  • libcrypto.so.1.1
17
202 return
executed 17 times by 1 test: return &cms->d.envelopedData->encryptedContentInfo->contentType;
Executed by:
  • libcrypto.so.1.1
&cms->d.envelopedData->encryptedContentInfo->contentType;
executed 17 times by 1 test: return &cms->d.envelopedData->encryptedContentInfo->contentType;
Executed by:
  • libcrypto.so.1.1
17
203-
204 case
never executed: case 25:
25:
never executed: case 25:
0
205 return
never executed: return &cms->d.digestedData->encapContentInfo->eContentType;
&cms->d.digestedData->encapContentInfo->eContentType;
never executed: return &cms->d.digestedData->encapContentInfo->eContentType;
0
206-
207 case
never executed: case 26:
26:
never executed: case 26:
0
208 return
never executed: return &cms->d.encryptedData->encryptedContentInfo->contentType;
&cms->d.encryptedData->encryptedContentInfo->contentType;
never executed: return &cms->d.encryptedData->encryptedContentInfo->contentType;
0
209-
210 case
never executed: case 205:
205:
never executed: case 205:
0
211 return
never executed: return &cms->d.authenticatedData->encapContentInfo->eContentType;
&cms->d.authenticatedData->encapContentInfo->eContentType;
never executed: return &cms->d.authenticatedData->encapContentInfo->eContentType;
0
212-
213 case
never executed: case 786:
786:
never executed: case 786:
0
214 return
never executed: return &cms->d.compressedData->encapContentInfo->eContentType;
&cms->d.compressedData->encapContentInfo->eContentType;
never executed: return &cms->d.compressedData->encapContentInfo->eContentType;
0
215-
216 default
never executed: default:
:
never executed: default:
0
217 ERR_put_error(46,(130),(152),__FILE__,218);-
218 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
219 ((void *)0)
never executed: return ((void *)0) ;
0
220 ;
never executed: return ((void *)0) ;
0
221-
222 }-
223}-
224-
225const ASN1_OBJECT *CMS_get0_eContentType(CMS_ContentInfo *cms)-
226{-
227 ASN1_OBJECT **petype;-
228 petype = cms_get0_econtent_type(cms);-
229 if (petype
petypeDescription
TRUEevaluated 36 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
)
0-36
230 return
executed 36 times by 1 test: return *petype;
Executed by:
  • libcrypto.so.1.1
*petype;
executed 36 times by 1 test: return *petype;
Executed by:
  • libcrypto.so.1.1
36
231 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
232 ((void *)0)
never executed: return ((void *)0) ;
0
233 ;
never executed: return ((void *)0) ;
0
234}-
235-
236int CMS_set1_eContentType(CMS_ContentInfo *cms, const ASN1_OBJECT *oid)-
237{-
238 ASN1_OBJECT **petype, *etype;-
239 petype = cms_get0_econtent_type(cms);-
240 if (!petype
!petypeDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-1
241 return
never executed: return 0;
0;
never executed: return 0;
0
242 if (!oid
!oidDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-1
243 return
never executed: return 1;
1;
never executed: return 1;
0
244 etype = OBJ_dup(oid);-
245 if (!etype
!etypeDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-1
246 return
never executed: return 0;
0;
never executed: return 0;
0
247 ASN1_OBJECT_free(*petype);-
248 *petype = etype;-
249 return
executed 1 time by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1;
executed 1 time by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1
250}-
251-
252int CMS_is_detached(CMS_ContentInfo *cms)-
253{-
254 ASN1_OCTET_STRING **pos;-
255 pos = CMS_get0_content(cms);-
256 if (!pos
!posDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
257 return
never executed: return -1;
-1;
never executed: return -1;
0
258 if (*
*posDescription
TRUEnever evaluated
FALSEnever evaluated
pos
*posDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
259 return
never executed: return 0;
0;
never executed: return 0;
0
260 return
never executed: return 1;
1;
never executed: return 1;
0
261}-
262-
263int CMS_set_detached(CMS_ContentInfo *cms, int detached)-
264{-
265 ASN1_OCTET_STRING **pos;-
266 pos = CMS_get0_content(cms);-
267 if (!pos
!posDescription
TRUEnever evaluated
FALSEevaluated 45 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-45
268 return
never executed: return 0;
0;
never executed: return 0;
0
269 if (detached
detachedDescription
TRUEnever evaluated
FALSEevaluated 45 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-45
270 ASN1_OCTET_STRING_free(*pos);-
271 *pos = -
272 ((void *)0)-
273 ;-
274 return
never executed: return 1;
1;
never executed: return 1;
0
275 }-
276 if (*
*pos == ((void *)0)Description
TRUEevaluated 45 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
pos ==
*pos == ((void *)0)Description
TRUEevaluated 45 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-45
277 ((void *)0)
*pos == ((void *)0)Description
TRUEevaluated 45 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-45
278 )-
279 *
executed 45 times by 1 test: *pos = ASN1_OCTET_STRING_new();
Executed by:
  • libcrypto.so.1.1
pos = ASN1_OCTET_STRING_new();
executed 45 times by 1 test: *pos = ASN1_OCTET_STRING_new();
Executed by:
  • libcrypto.so.1.1
45
280 if (*
*pos != ((void *)0)Description
TRUEevaluated 45 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
pos !=
*pos != ((void *)0)Description
TRUEevaluated 45 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-45
281 ((void *)0)
*pos != ((void *)0)Description
TRUEevaluated 45 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-45
282 ) {-
283-
284-
285-
286 (*pos)->flags |= 0x020;-
287 return
executed 45 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1;
executed 45 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
45
288 }-
289 ERR_put_error(46,(147),((1|64)),__FILE__,280);-
290 return
never executed: return 0;
0;
never executed: return 0;
0
291}-
292-
293-
294-
295BIO *cms_DigestAlgorithm_init_bio(X509_ALGOR *digestAlgorithm)-
296{-
297 BIO *mdbio = -
298 ((void *)0)-
299 ;-
300 const ASN1_OBJECT *digestoid;-
301 const EVP_MD *digest;-
302 X509_ALGOR_get0(&digestoid, -
303 ((void *)0)-
304 , -
305 ((void *)0)-
306 , digestAlgorithm);-
307 digest = EVP_get_digestbyname(OBJ_nid2sn(OBJ_obj2nid(digestoid)));-
308 if (!digest
!digestDescription
TRUEnever evaluated
FALSEevaluated 60 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-60
309 ERR_put_error(46,(116),(149),__FILE__,295)-
310 ;-
311 goto
never executed: goto err;
err;
never executed: goto err;
0
312 }-
313 mdbio = BIO_new(BIO_f_md());-
314 if (mdbio ==
mdbio == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 60 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-60
315 ((void *)0)
mdbio == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 60 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-60
316 || !BIO_ctrl(mdbio,111,0,(char *)(digest))
!BIO_ctrl(mdbi...ar *)(digest))Description
TRUEnever evaluated
FALSEevaluated 60 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-60
317 ERR_put_error(46,(116),(119),__FILE__,300);-
318 goto
never executed: goto err;
err;
never executed: goto err;
0
319 }-
320 return
executed 60 times by 1 test: return mdbio;
Executed by:
  • libcrypto.so.1.1
mdbio;
executed 60 times by 1 test: return mdbio;
Executed by:
  • libcrypto.so.1.1
60
321 err:-
322 BIO_free(mdbio);-
323 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
324 ((void *)0)
never executed: return ((void *)0) ;
0
325 ;
never executed: return ((void *)0) ;
0
326}-
327-
328-
329-
330int cms_DigestAlgorithm_find_ctx(EVP_MD_CTX *mctx, BIO *chain,-
331 X509_ALGOR *mdalg)-
332{-
333 int nid;-
334 const ASN1_OBJECT *mdoid;-
335 X509_ALGOR_get0(&mdoid, -
336 ((void *)0)-
337 , -
338 ((void *)0)-
339 , mdalg);-
340 nid = OBJ_obj2nid(mdoid);-
341-
342 for (;;) {-
343 EVP_MD_CTX *mtmp;-
344 chain = BIO_find_type(chain, ( 8|0x0200));-
345 if (chain ==
chain == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 122 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-122
346 ((void *)0)
chain == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 122 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-122
347 ) {-
348 ERR_put_error(46,(115),(131),__FILE__,324)-
349 ;-
350 return
never executed: return 0;
0;
never executed: return 0;
0
351 }-
352 BIO_ctrl(chain,120,0, (char *)(&mtmp));-
353 if (EVP_MD_type(EVP_MD_CTX_md(mtmp)) == nid
EVP_MD_type(EV...(mtmp)) == nidDescription
TRUEevaluated 122 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-122
354-
355-
356-
357-
358 || EVP_MD_pkey_type(EVP_MD_CTX_md(mtmp)) == nid
EVP_MD_pkey_ty...(mtmp)) == nidDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
359 return
executed 122 times by 1 test: return EVP_MD_CTX_copy_ex(mctx, mtmp);
Executed by:
  • libcrypto.so.1.1
EVP_MD_CTX_copy_ex(mctx, mtmp);
executed 122 times by 1 test: return EVP_MD_CTX_copy_ex(mctx, mtmp);
Executed by:
  • libcrypto.so.1.1
122
360 chain = BIO_next(chain);-
361 }
never executed: end of block
0
362}
never executed: end of block
0
363-
364static struct stack_st_CMS_CertificateChoices-
365**cms_get0_certificate_choices(CMS_ContentInfo *cms)-
366{-
367 switch (OBJ_obj2nid(cms->contentType)) {-
368-
369 case
executed 161 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
22:
executed 161 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
161
370 return
executed 161 times by 1 test: return &cms->d.signedData->certificates;
Executed by:
  • libcrypto.so.1.1
&cms->d.signedData->certificates;
executed 161 times by 1 test: return &cms->d.signedData->certificates;
Executed by:
  • libcrypto.so.1.1
161
371-
372 case
never executed: case 23:
23:
never executed: case 23:
0
373 if (cms->d.envelopedData->originatorInfo ==
cms->d.envelop...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
374 ((void *)0)
cms->d.envelop...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
375 )-
376 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
377 ((void *)0)
never executed: return ((void *)0) ;
0
378 ;
never executed: return ((void *)0) ;
0
379 return
never executed: return &cms->d.envelopedData->originatorInfo->certificates;
&cms->d.envelopedData->originatorInfo->certificates;
never executed: return &cms->d.envelopedData->originatorInfo->certificates;
0
380-
381 default
never executed: default:
:
never executed: default:
0
382 ERR_put_error(46,(128),(152),__FILE__,354)-
383 ;-
384 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
385 ((void *)0)
never executed: return ((void *)0) ;
0
386 ;
never executed: return ((void *)0) ;
0
387-
388 }-
389}-
390-
391CMS_CertificateChoices *CMS_add0_CertificateChoices(CMS_ContentInfo *cms)-
392{-
393 struct stack_st_CMS_CertificateChoices **pcerts;-
394 CMS_CertificateChoices *cch;-
395 pcerts = cms_get0_certificate_choices(cms);-
396 if (!pcerts
!pcertsDescription
TRUEnever evaluated
FALSEevaluated 65 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-65
397 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
398 ((void *)0)
never executed: return ((void *)0) ;
0
399 ;
never executed: return ((void *)0) ;
0
400 if (!*pcerts
!*pcertsDescription
TRUEevaluated 29 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 36 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
29-36
401 *
executed 29 times by 1 test: *pcerts = sk_CMS_CertificateChoices_new_null();
Executed by:
  • libcrypto.so.1.1
pcerts = sk_CMS_CertificateChoices_new_null();
executed 29 times by 1 test: *pcerts = sk_CMS_CertificateChoices_new_null();
Executed by:
  • libcrypto.so.1.1
29
402 if (!*pcerts
!*pcertsDescription
TRUEnever evaluated
FALSEevaluated 65 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-65
403 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
404 ((void *)0)
never executed: return ((void *)0) ;
0
405 ;
never executed: return ((void *)0) ;
0
406 cch = (CMS_CertificateChoices *)ASN1_item_new((&(CMS_CertificateChoices_it)));-
407 if (!cch
!cchDescription
TRUEnever evaluated
FALSEevaluated 65 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-65
408 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
409 ((void *)0)
never executed: return ((void *)0) ;
0
410 ;
never executed: return ((void *)0) ;
0
411 if (!sk_CMS_CertificateChoices_push(*pcerts, cch)
!sk_CMS_Certif...(*pcerts, cch)Description
TRUEnever evaluated
FALSEevaluated 65 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-65
412 ASN1_item_free(((void*) (1 ? cch : (CMS_CertificateChoices*)0)), (&(CMS_CertificateChoices_it)));-
413 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
414 ((void *)0)
never executed: return ((void *)0) ;
0
415 ;
never executed: return ((void *)0) ;
0
416 }-
417 return
executed 65 times by 1 test: return cch;
Executed by:
  • libcrypto.so.1.1
cch;
executed 65 times by 1 test: return cch;
Executed by:
  • libcrypto.so.1.1
65
418}-
419-
420int CMS_add0_cert(CMS_ContentInfo *cms, X509 *cert)-
421{-
422 CMS_CertificateChoices *cch;-
423 struct stack_st_CMS_CertificateChoices **pcerts;-
424 int i;-
425 pcerts = cms_get0_certificate_choices(cms);-
426 if (!pcerts
!pcertsDescription
TRUEnever evaluated
FALSEevaluated 65 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-65
427 return
never executed: return 0;
0;
never executed: return 0;
0
428 for (i = 0; i < sk_CMS_CertificateChoices_num(*pcerts)
i < sk_CMS_Cer...s_num(*pcerts)Description
TRUEevaluated 66 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 65 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
; i++) {
65-66
429 cch = sk_CMS_CertificateChoices_value(*pcerts, i);-
430 if (cch->type == 0
cch->type == 0Description
TRUEevaluated 66 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
) {
0-66
431 if (!X509_cmp(cch->d.certificate, cert)
!X509_cmp(cch-...ificate, cert)Description
TRUEnever evaluated
FALSEevaluated 66 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-66
432 ERR_put_error(46,(164),(175),__FILE__,394)-
433 ;-
434 return
never executed: return 0;
0;
never executed: return 0;
0
435 }-
436 }
executed 66 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
66
437 }
executed 66 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
66
438 cch = CMS_add0_CertificateChoices(cms);-
439 if (!cch
!cchDescription
TRUEnever evaluated
FALSEevaluated 65 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-65
440 return
never executed: return 0;
0;
never executed: return 0;
0
441 cch->type = 0;-
442 cch->d.certificate = cert;-
443 return
executed 65 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1;
executed 65 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
65
444}-
445-
446int CMS_add1_cert(CMS_ContentInfo *cms, X509 *cert)-
447{-
448 int r;-
449 r = CMS_add0_cert(cms, cert);-
450 if (r > 0
r > 0Description
TRUEevaluated 65 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
)
0-65
451 X509_up_ref(cert);
executed 65 times by 1 test: X509_up_ref(cert);
Executed by:
  • libcrypto.so.1.1
65
452 return
executed 65 times by 1 test: return r;
Executed by:
  • libcrypto.so.1.1
r;
executed 65 times by 1 test: return r;
Executed by:
  • libcrypto.so.1.1
65
453}-
454-
455static struct stack_st_CMS_RevocationInfoChoice-
456**cms_get0_revocation_choices(CMS_ContentInfo *cms)-
457{-
458 switch (OBJ_obj2nid(cms->contentType)) {-
459-
460 case
executed 31 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
22:
executed 31 times by 1 test: case 22:
Executed by:
  • libcrypto.so.1.1
31
461 return
executed 31 times by 1 test: return &cms->d.signedData->crls;
Executed by:
  • libcrypto.so.1.1
&cms->d.signedData->crls;
executed 31 times by 1 test: return &cms->d.signedData->crls;
Executed by:
  • libcrypto.so.1.1
31
462-
463 case
never executed: case 23:
23:
never executed: case 23:
0
464 if (cms->d.envelopedData->originatorInfo ==
cms->d.envelop...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
465 ((void *)0)
cms->d.envelop...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
466 )-
467 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
468 ((void *)0)
never executed: return ((void *)0) ;
0
469 ;
never executed: return ((void *)0) ;
0
470 return
never executed: return &cms->d.envelopedData->originatorInfo->crls;
&cms->d.envelopedData->originatorInfo->crls;
never executed: return &cms->d.envelopedData->originatorInfo->crls;
0
471-
472 default
never executed: default:
:
never executed: default:
0
473 ERR_put_error(46,(132),(152),__FILE__,431)-
474 ;-
475 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
476 ((void *)0)
never executed: return ((void *)0) ;
0
477 ;
never executed: return ((void *)0) ;
0
478-
479 }-
480}-
481-
482CMS_RevocationInfoChoice *CMS_add0_RevocationInfoChoice(CMS_ContentInfo *cms)-
483{-
484 struct stack_st_CMS_RevocationInfoChoice **pcrls;-
485 CMS_RevocationInfoChoice *rch;-
486 pcrls = cms_get0_revocation_choices(cms);-
487 if (!pcrls
!pcrlsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
488 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
489 ((void *)0)
never executed: return ((void *)0) ;
0
490 ;
never executed: return ((void *)0) ;
0
491 if (!*pcrls
!*pcrlsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
492 *
never executed: *pcrls = sk_CMS_RevocationInfoChoice_new_null();
pcrls = sk_CMS_RevocationInfoChoice_new_null();
never executed: *pcrls = sk_CMS_RevocationInfoChoice_new_null();
0
493 if (!*pcrls
!*pcrlsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
494 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
495 ((void *)0)
never executed: return ((void *)0) ;
0
496 ;
never executed: return ((void *)0) ;
0
497 rch = (CMS_RevocationInfoChoice *)ASN1_item_new((&(CMS_RevocationInfoChoice_it)));-
498 if (!rch
!rchDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
499 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
500 ((void *)0)
never executed: return ((void *)0) ;
0
501 ;
never executed: return ((void *)0) ;
0
502 if (!sk_CMS_RevocationInfoChoice_push(*pcrls, rch)
!sk_CMS_Revoca...h(*pcrls, rch)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
503 ASN1_item_free(((void*) (1 ? rch : (CMS_RevocationInfoChoice*)0)), (&(CMS_RevocationInfoChoice_it)));-
504 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
505 ((void *)0)
never executed: return ((void *)0) ;
0
506 ;
never executed: return ((void *)0) ;
0
507 }-
508 return
never executed: return rch;
rch;
never executed: return rch;
0
509}-
510-
511int CMS_add0_crl(CMS_ContentInfo *cms, X509_CRL *crl)-
512{-
513 CMS_RevocationInfoChoice *rch;-
514 rch = CMS_add0_RevocationInfoChoice(cms);-
515 if (!rch
!rchDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
516 return
never executed: return 0;
0;
never executed: return 0;
0
517 rch->type = 0;-
518 rch->d.crl = crl;-
519 return
never executed: return 1;
1;
never executed: return 1;
0
520}-
521-
522int CMS_add1_crl(CMS_ContentInfo *cms, X509_CRL *crl)-
523{-
524 int r;-
525 r = CMS_add0_crl(cms, crl);-
526 if (r > 0
r > 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
527 X509_CRL_up_ref(crl);
never executed: X509_CRL_up_ref(crl);
0
528 return
never executed: return r;
r;
never executed: return r;
0
529}-
530-
531struct stack_st_X509 *CMS_get1_certs(CMS_ContentInfo *cms)-
532{-
533 struct stack_st_X509 *certs = -
534 ((void *)0)-
535 ;-
536 CMS_CertificateChoices *cch;-
537 struct stack_st_CMS_CertificateChoices **pcerts;-
538 int i;-
539 pcerts = cms_get0_certificate_choices(cms);-
540 if (!pcerts
!pcertsDescription
TRUEnever evaluated
FALSEevaluated 31 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-31
541 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
542 ((void *)0)
never executed: return ((void *)0) ;
0
543 ;
never executed: return ((void *)0) ;
0
544 for (i = 0; i < sk_CMS_CertificateChoices_num(*pcerts)
i < sk_CMS_Cer...s_num(*pcerts)Description
TRUEevaluated 67 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 31 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
; i++) {
31-67
545 cch = sk_CMS_CertificateChoices_value(*pcerts, i);-
546 if (cch->type == 0
cch->type == 0Description
TRUEevaluated 67 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
) {
0-67
547 if (!certs
!certsDescription
TRUEevaluated 31 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 36 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
31-36
548 certs = sk_X509_new_null();-
549 if (!certs
!certsDescription
TRUEnever evaluated
FALSEevaluated 31 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-31
550 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
551 ((void *)0)
never executed: return ((void *)0) ;
0
552 ;
never executed: return ((void *)0) ;
0
553 }
executed 31 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
31
554 if (!sk_X509_push(certs, cch->d.certificate)
!sk_X509_push(...d.certificate)Description
TRUEnever evaluated
FALSEevaluated 67 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-67
555 sk_X509_pop_free(certs, X509_free);-
556 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
557 ((void *)0)
never executed: return ((void *)0) ;
0
558 ;
never executed: return ((void *)0) ;
0
559 }-
560 X509_up_ref(cch->d.certificate);-
561 }
executed 67 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
67
562 }
executed 67 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
67
563 return
executed 31 times by 1 test: return certs;
Executed by:
  • libcrypto.so.1.1
certs;
executed 31 times by 1 test: return certs;
Executed by:
  • libcrypto.so.1.1
31
564-
565}-
566-
567struct stack_st_X509_CRL *CMS_get1_crls(CMS_ContentInfo *cms)-
568{-
569 struct stack_st_X509_CRL *crls = -
570 ((void *)0)-
571 ;-
572 struct stack_st_CMS_RevocationInfoChoice **pcrls;-
573 CMS_RevocationInfoChoice *rch;-
574 int i;-
575 pcrls = cms_get0_revocation_choices(cms);-
576 if (!pcrls
!pcrlsDescription
TRUEnever evaluated
FALSEevaluated 31 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-31
577 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
578 ((void *)0)
never executed: return ((void *)0) ;
0
579 ;
never executed: return ((void *)0) ;
0
580 for (i = 0; i < sk_CMS_RevocationInfoChoice_num(*pcrls)
i < sk_CMS_Rev...ce_num(*pcrls)Description
TRUEnever evaluated
FALSEevaluated 31 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
; i++) {
0-31
581 rch = sk_CMS_RevocationInfoChoice_value(*pcrls, i);-
582 if (rch->type == 0
rch->type == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
583 if (!crls
!crlsDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
584 crls = sk_X509_CRL_new_null();-
585 if (!crls
!crlsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
586 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
587 ((void *)0)
never executed: return ((void *)0) ;
0
588 ;
never executed: return ((void *)0) ;
0
589 }
never executed: end of block
0
590 if (!sk_X509_CRL_push(crls, rch->d.crl)
!sk_X509_CRL_p...s, rch->d.crl)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
591 sk_X509_CRL_pop_free(crls, X509_CRL_free);-
592 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
593 ((void *)0)
never executed: return ((void *)0) ;
0
594 ;
never executed: return ((void *)0) ;
0
595 }-
596 X509_CRL_up_ref(rch->d.crl);-
597 }
never executed: end of block
0
598 }
never executed: end of block
0
599 return
executed 31 times by 1 test: return crls;
Executed by:
  • libcrypto.so.1.1
crls;
executed 31 times by 1 test: return crls;
Executed by:
  • libcrypto.so.1.1
31
600}-
601-
602int cms_ias_cert_cmp(CMS_IssuerAndSerialNumber *ias, X509 *cert)-
603{-
604 int ret;-
605 ret = X509_NAME_cmp(ias->issuer, X509_get_issuer_name(cert));-
606 if (ret
retDescription
TRUEnever evaluated
FALSEevaluated 134 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-134
607 return
never executed: return ret;
ret;
never executed: return ret;
0
608 return
executed 134 times by 1 test: return ASN1_INTEGER_cmp(ias->serialNumber, X509_get_serialNumber(cert));
Executed by:
  • libcrypto.so.1.1
ASN1_INTEGER_cmp(ias->serialNumber, X509_get_serialNumber(cert));
executed 134 times by 1 test: return ASN1_INTEGER_cmp(ias->serialNumber, X509_get_serialNumber(cert));
Executed by:
  • libcrypto.so.1.1
134
609}-
610-
611int cms_keyid_cert_cmp(ASN1_OCTET_STRING *keyid, X509 *cert)-
612{-
613 const ASN1_OCTET_STRING *cert_keyid = X509_get0_subject_key_id(cert);-
614-
615 if (cert_keyid ==
cert_keyid == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 13 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-13
616 ((void *)0)
cert_keyid == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 13 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-13
617 )-
618 return
never executed: return -1;
-1;
never executed: return -1;
0
619 return
executed 13 times by 1 test: return ASN1_OCTET_STRING_cmp(keyid, cert_keyid);
Executed by:
  • libcrypto.so.1.1
ASN1_OCTET_STRING_cmp(keyid, cert_keyid);
executed 13 times by 1 test: return ASN1_OCTET_STRING_cmp(keyid, cert_keyid);
Executed by:
  • libcrypto.so.1.1
13
620}-
621-
622int cms_set1_ias(CMS_IssuerAndSerialNumber **pias, X509 *cert)-
623{-
624 CMS_IssuerAndSerialNumber *ias;-
625 ias = (CMS_IssuerAndSerialNumber *)ASN1_item_new((&(CMS_IssuerAndSerialNumber_it)));-
626 if (!ias
!iasDescription
TRUEnever evaluated
FALSEevaluated 90 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-90
627 goto
never executed: goto err;
err;
never executed: goto err;
0
628 if (!X509_NAME_set(&ias->issuer, X509_get_issuer_name(cert))
!X509_NAME_set...er_name(cert))Description
TRUEnever evaluated
FALSEevaluated 90 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-90
629 goto
never executed: goto err;
err;
never executed: goto err;
0
630 if (!ASN1_STRING_copy(ias->serialNumber, X509_get_serialNumber(cert))
!ASN1_STRING_c...lNumber(cert))Description
TRUEnever evaluated
FALSEevaluated 90 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-90
631 goto
never executed: goto err;
err;
never executed: goto err;
0
632 ASN1_item_free(((void*) (1 ? *pias : (CMS_IssuerAndSerialNumber*)0)), (&(CMS_IssuerAndSerialNumber_it)));-
633 *pias = ias;-
634 return
executed 90 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1;
executed 90 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
90
635 err:-
636 ASN1_item_free(((void*) (1 ? ias : (CMS_IssuerAndSerialNumber*)0)), (&(CMS_IssuerAndSerialNumber_it)));-
637 ERR_put_error(46,(176),((1|64)),__FILE__,566);-
638 return
never executed: return 0;
0;
never executed: return 0;
0
639}-
640-
641int cms_set1_keyid(ASN1_OCTET_STRING **pkeyid, X509 *cert)-
642{-
643 ASN1_OCTET_STRING *keyid = -
644 ((void *)0)-
645 ;-
646 const ASN1_OCTET_STRING *cert_keyid;-
647 cert_keyid = X509_get0_subject_key_id(cert);-
648 if (cert_keyid ==
cert_keyid == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-8
649 ((void *)0)
cert_keyid == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-8
650 ) {-
651 ERR_put_error(46,(177),(160),__FILE__,576);-
652 return
never executed: return 0;
0;
never executed: return 0;
0
653 }-
654 keyid = ASN1_STRING_dup(cert_keyid);-
655 if (!keyid
!keyidDescription
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-8
656 ERR_put_error(46,(177),((1|64)),__FILE__,581);-
657 return
never executed: return 0;
0;
never executed: return 0;
0
658 }-
659 ASN1_OCTET_STRING_free(*pkeyid);-
660 *pkeyid = keyid;-
661 return
executed 8 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1;
executed 8 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
8
662}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2