OpenCoverage

ts_asn1.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/ts/ts_asn1.c
Source codeSwitch to Preprocessed file
LineSourceCount
1/*-
2 * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved.-
3 *-
4 * Licensed under the OpenSSL license (the "License"). You may not use-
5 * this file except in compliance with the License. You can obtain a copy-
6 * in the file LICENSE in the source distribution or at-
7 * https://www.openssl.org/source/license.html-
8 */-
9-
10#include <openssl/ts.h>-
11#include <openssl/err.h>-
12#include <openssl/asn1t.h>-
13#include "ts_lcl.h"-
14-
15ASN1_SEQUENCE(TS_MSG_IMPRINT) = {-
16 ASN1_SIMPLE(TS_MSG_IMPRINT, hash_algo, X509_ALGOR),-
17 ASN1_SIMPLE(TS_MSG_IMPRINT, hashed_msg, ASN1_OCTET_STRING)-
18} static_ASN1_SEQUENCE_END(TS_MSG_IMPRINT)-
19-
20IMPLEMENT_ASN1_FUNCTIONS_const(TS_MSG_IMPRINT)
executed 2 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
executed 3323 times by 1 test: return (TS_MSG_IMPRINT *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(TS_MSG_IMPRINT_it)));
Executed by:
  • libcrypto.so.1.1
executed 2 times by 1 test: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(TS_MSG_IMPRINT_it)));
Executed by:
  • libcrypto.so.1.1
never executed: return (TS_MSG_IMPRINT *)ASN1_item_new((&(TS_MSG_IMPRINT_it)));
0-3323
21IMPLEMENT_ASN1_DUP_FUNCTION(TS_MSG_IMPRINT)
never executed: return ASN1_item_dup((&(TS_MSG_IMPRINT_it)), x);
0
22TS_MSG_IMPRINT *d2i_TS_MSG_IMPRINT_bio(BIO *bp, TS_MSG_IMPRINT **a)-
23{-
24 return ASN1_d2i_bio_of(TS_MSG_IMPRINT, TS_MSG_IMPRINT_new,
never executed: return ((TS_MSG_IMPRINT*)ASN1_d2i_bio( ((void *(*)(void)) (1 ? TS_MSG_IMPRINT_new : ((TS_MSG_IMPRINT *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_MSG_IMPRINT : ((TS_MSG_IMPRINT *(*)(TS_MSG_IMPRINT **,const unsigned char **,long))0))), bp, ((void**) (1 ? a : (TS_MSG_IMPRINT**)0)))) ;
0
25 d2i_TS_MSG_IMPRINT, bp, a);
never executed: return ((TS_MSG_IMPRINT*)ASN1_d2i_bio( ((void *(*)(void)) (1 ? TS_MSG_IMPRINT_new : ((TS_MSG_IMPRINT *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_MSG_IMPRINT : ((TS_MSG_IMPRINT *(*)(TS_MSG_IMPRINT **,const unsigned char **,long))0))), bp, ((void**) (1 ? a : (TS_MSG_IMPRINT**)0)))) ;
0
26}-
27-
28int i2d_TS_MSG_IMPRINT_bio(BIO *bp, TS_MSG_IMPRINT *a)-
29{-
30 return ASN1_i2d_bio_of_const(TS_MSG_IMPRINT, i2d_TS_MSG_IMPRINT, bp, a);
never executed: return (ASN1_i2d_bio(((i2d_of_void*) (1 ? i2d_TS_MSG_IMPRINT : ((int (*)(const TS_MSG_IMPRINT *,unsigned char **))0))), bp, ((void*) (1 ? a : (const TS_MSG_IMPRINT*)0))));
0
31}-
32#ifndef OPENSSL_NO_STDIO-
33TS_MSG_IMPRINT *d2i_TS_MSG_IMPRINT_fp(FILE *fp, TS_MSG_IMPRINT **a)-
34{-
35 return ASN1_d2i_fp_of(TS_MSG_IMPRINT, TS_MSG_IMPRINT_new,
never executed: return ((TS_MSG_IMPRINT*)ASN1_d2i_fp(((void *(*)(void)) (1 ? TS_MSG_IMPRINT_new : ((TS_MSG_IMPRINT *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_MSG_IMPRINT : ((TS_MSG_IMPRINT *(*)(TS_MSG_IMPRINT **,const unsigned char **,long))0))), fp, ((void**) (1 ? a : (TS_MSG_IMPRINT**)0)))) ;
0
36 d2i_TS_MSG_IMPRINT, fp, a);
never executed: return ((TS_MSG_IMPRINT*)ASN1_d2i_fp(((void *(*)(void)) (1 ? TS_MSG_IMPRINT_new : ((TS_MSG_IMPRINT *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_MSG_IMPRINT : ((TS_MSG_IMPRINT *(*)(TS_MSG_IMPRINT **,const unsigned char **,long))0))), fp, ((void**) (1 ? a : (TS_MSG_IMPRINT**)0)))) ;
0
37}-
38-
39int i2d_TS_MSG_IMPRINT_fp(FILE *fp, TS_MSG_IMPRINT *a)-
40{-
41 return ASN1_i2d_fp_of_const(TS_MSG_IMPRINT, i2d_TS_MSG_IMPRINT, fp, a);
never executed: return (ASN1_i2d_fp(((i2d_of_void*) (1 ? i2d_TS_MSG_IMPRINT : ((int (*)(const TS_MSG_IMPRINT *,unsigned char **))0))), fp, ((void*) (1 ? a : (const TS_MSG_IMPRINT*)0))));
0
42}-
43#endif-
44-
45ASN1_SEQUENCE(TS_REQ) = {-
46 ASN1_SIMPLE(TS_REQ, version, ASN1_INTEGER),-
47 ASN1_SIMPLE(TS_REQ, msg_imprint, TS_MSG_IMPRINT),-
48 ASN1_OPT(TS_REQ, policy_id, ASN1_OBJECT),-
49 ASN1_OPT(TS_REQ, nonce, ASN1_INTEGER),-
50 ASN1_OPT(TS_REQ, cert_req, ASN1_FBOOLEAN),-
51 ASN1_IMP_SEQUENCE_OF_OPT(TS_REQ, extensions, X509_EXTENSION, 0)-
52} static_ASN1_SEQUENCE_END(TS_REQ)-
53-
54IMPLEMENT_ASN1_FUNCTIONS_const(TS_REQ)
executed 446 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
executed 3323 times by 1 test: return (TS_REQ *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(TS_REQ_it)));
Executed by:
  • libcrypto.so.1.1
executed 446 times by 1 test: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(TS_REQ_it)));
Executed by:
  • libcrypto.so.1.1
never executed: return (TS_REQ *)ASN1_item_new((&(TS_REQ_it)));
0-3323
55IMPLEMENT_ASN1_DUP_FUNCTION(TS_REQ)
never executed: return ASN1_item_dup((&(TS_REQ_it)), x);
0
56TS_REQ *d2i_TS_REQ_bio(BIO *bp, TS_REQ **a)-
57{-
58 return ASN1_d2i_bio_of(TS_REQ, TS_REQ_new, d2i_TS_REQ, bp, a);
never executed: return ((TS_REQ*)ASN1_d2i_bio( ((void *(*)(void)) (1 ? TS_REQ_new : ((TS_REQ *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_REQ : ((TS_REQ *(*)(TS_REQ **,const unsigned char **,long))0))), bp, ((void**) (1 ? a : (TS_REQ**)0))));
0
59}-
60-
61int i2d_TS_REQ_bio(BIO *bp, TS_REQ *a)-
62{-
63 return ASN1_i2d_bio_of_const(TS_REQ, i2d_TS_REQ, bp, a);
never executed: return (ASN1_i2d_bio(((i2d_of_void*) (1 ? i2d_TS_REQ : ((int (*)(const TS_REQ *,unsigned char **))0))), bp, ((void*) (1 ? a : (const TS_REQ*)0))));
0
64}-
65#ifndef OPENSSL_NO_STDIO-
66TS_REQ *d2i_TS_REQ_fp(FILE *fp, TS_REQ **a)-
67{-
68 return ASN1_d2i_fp_of(TS_REQ, TS_REQ_new, d2i_TS_REQ, fp, a);
never executed: return ((TS_REQ*)ASN1_d2i_fp(((void *(*)(void)) (1 ? TS_REQ_new : ((TS_REQ *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_REQ : ((TS_REQ *(*)(TS_REQ **,const unsigned char **,long))0))), fp, ((void**) (1 ? a : (TS_REQ**)0))));
0
69}-
70-
71int i2d_TS_REQ_fp(FILE *fp, TS_REQ *a)-
72{-
73 return ASN1_i2d_fp_of_const(TS_REQ, i2d_TS_REQ, fp, a);
never executed: return (ASN1_i2d_fp(((i2d_of_void*) (1 ? i2d_TS_REQ : ((int (*)(const TS_REQ *,unsigned char **))0))), fp, ((void*) (1 ? a : (const TS_REQ*)0))));
0
74}-
75#endif-
76-
77ASN1_SEQUENCE(TS_ACCURACY) = {-
78 ASN1_OPT(TS_ACCURACY, seconds, ASN1_INTEGER),-
79 ASN1_IMP_OPT(TS_ACCURACY, millis, ASN1_INTEGER, 0),-
80 ASN1_IMP_OPT(TS_ACCURACY, micros, ASN1_INTEGER, 1)-
81} static_ASN1_SEQUENCE_END(TS_ACCURACY)-
82-
83IMPLEMENT_ASN1_FUNCTIONS_const(TS_ACCURACY)
executed 7 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
executed 3323 times by 1 test: return (TS_ACCURACY *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(TS_ACCURACY_it)));
Executed by:
  • libcrypto.so.1.1
executed 7 times by 1 test: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(TS_ACCURACY_it)));
Executed by:
  • libcrypto.so.1.1
never executed: return (TS_ACCURACY *)ASN1_item_new((&(TS_ACCURACY_it)));
0-3323
84IMPLEMENT_ASN1_DUP_FUNCTION(TS_ACCURACY)
never executed: return ASN1_item_dup((&(TS_ACCURACY_it)), x);
0
85-
86ASN1_SEQUENCE(TS_TST_INFO) = {-
87 ASN1_SIMPLE(TS_TST_INFO, version, ASN1_INTEGER),-
88 ASN1_SIMPLE(TS_TST_INFO, policy_id, ASN1_OBJECT),-
89 ASN1_SIMPLE(TS_TST_INFO, msg_imprint, TS_MSG_IMPRINT),-
90 ASN1_SIMPLE(TS_TST_INFO, serial, ASN1_INTEGER),-
91 ASN1_SIMPLE(TS_TST_INFO, time, ASN1_GENERALIZEDTIME),-
92 ASN1_OPT(TS_TST_INFO, accuracy, TS_ACCURACY),-
93 ASN1_OPT(TS_TST_INFO, ordering, ASN1_FBOOLEAN),-
94 ASN1_OPT(TS_TST_INFO, nonce, ASN1_INTEGER),-
95 ASN1_EXP_OPT(TS_TST_INFO, tsa, GENERAL_NAME, 0),-
96 ASN1_IMP_SEQUENCE_OF_OPT(TS_TST_INFO, extensions, X509_EXTENSION, 1)-
97} static_ASN1_SEQUENCE_END(TS_TST_INFO)-
98-
99IMPLEMENT_ASN1_FUNCTIONS_const(TS_TST_INFO)
executed 2965 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
executed 3323 times by 1 test: return (TS_TST_INFO *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(TS_TST_INFO_it)));
Executed by:
  • libcrypto.so.1.1
never executed: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(TS_TST_INFO_it)));
never executed: return (TS_TST_INFO *)ASN1_item_new((&(TS_TST_INFO_it)));
0-3323
100IMPLEMENT_ASN1_DUP_FUNCTION(TS_TST_INFO)
never executed: return ASN1_item_dup((&(TS_TST_INFO_it)), x);
0
101TS_TST_INFO *d2i_TS_TST_INFO_bio(BIO *bp, TS_TST_INFO **a)-
102{-
103 return ASN1_d2i_bio_of(TS_TST_INFO, TS_TST_INFO_new, d2i_TS_TST_INFO, bp,
never executed: return ((TS_TST_INFO*)ASN1_d2i_bio( ((void *(*)(void)) (1 ? TS_TST_INFO_new : ((TS_TST_INFO *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_TST_INFO : ((TS_TST_INFO *(*)(TS_TST_INFO **,const unsigned char **,long))0))), bp, ((void**) (1 ? a : (TS_TST_INFO**)0)))) ;
0
104 a);
never executed: return ((TS_TST_INFO*)ASN1_d2i_bio( ((void *(*)(void)) (1 ? TS_TST_INFO_new : ((TS_TST_INFO *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_TST_INFO : ((TS_TST_INFO *(*)(TS_TST_INFO **,const unsigned char **,long))0))), bp, ((void**) (1 ? a : (TS_TST_INFO**)0)))) ;
0
105}-
106-
107int i2d_TS_TST_INFO_bio(BIO *bp, TS_TST_INFO *a)-
108{-
109 return ASN1_i2d_bio_of_const(TS_TST_INFO, i2d_TS_TST_INFO, bp, a);
never executed: return (ASN1_i2d_bio(((i2d_of_void*) (1 ? i2d_TS_TST_INFO : ((int (*)(const TS_TST_INFO *,unsigned char **))0))), bp, ((void*) (1 ? a : (const TS_TST_INFO*)0))));
0
110}-
111#ifndef OPENSSL_NO_STDIO-
112TS_TST_INFO *d2i_TS_TST_INFO_fp(FILE *fp, TS_TST_INFO **a)-
113{-
114 return ASN1_d2i_fp_of(TS_TST_INFO, TS_TST_INFO_new, d2i_TS_TST_INFO, fp,
never executed: return ((TS_TST_INFO*)ASN1_d2i_fp(((void *(*)(void)) (1 ? TS_TST_INFO_new : ((TS_TST_INFO *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_TST_INFO : ((TS_TST_INFO *(*)(TS_TST_INFO **,const unsigned char **,long))0))), fp, ((void**) (1 ? a : (TS_TST_INFO**)0)))) ;
0
115 a);
never executed: return ((TS_TST_INFO*)ASN1_d2i_fp(((void *(*)(void)) (1 ? TS_TST_INFO_new : ((TS_TST_INFO *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_TST_INFO : ((TS_TST_INFO *(*)(TS_TST_INFO **,const unsigned char **,long))0))), fp, ((void**) (1 ? a : (TS_TST_INFO**)0)))) ;
0
116}-
117-
118int i2d_TS_TST_INFO_fp(FILE *fp, TS_TST_INFO *a)-
119{-
120 return ASN1_i2d_fp_of_const(TS_TST_INFO, i2d_TS_TST_INFO, fp, a);
never executed: return (ASN1_i2d_fp(((i2d_of_void*) (1 ? i2d_TS_TST_INFO : ((int (*)(const TS_TST_INFO *,unsigned char **))0))), fp, ((void*) (1 ? a : (const TS_TST_INFO*)0))));
0
121}-
122#endif-
123-
124ASN1_SEQUENCE(TS_STATUS_INFO) = {-
125 ASN1_SIMPLE(TS_STATUS_INFO, status, ASN1_INTEGER),-
126 ASN1_SEQUENCE_OF_OPT(TS_STATUS_INFO, text, ASN1_UTF8STRING),-
127 ASN1_OPT(TS_STATUS_INFO, failure_info, ASN1_BIT_STRING)-
128} static_ASN1_SEQUENCE_END(TS_STATUS_INFO)-
129-
130IMPLEMENT_ASN1_FUNCTIONS_const(TS_STATUS_INFO)
executed 168 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
executed 3323 times by 1 test: return (TS_STATUS_INFO *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(TS_STATUS_INFO_it)));
Executed by:
  • libcrypto.so.1.1
executed 168 times by 1 test: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(TS_STATUS_INFO_it)));
Executed by:
  • libcrypto.so.1.1
never executed: return (TS_STATUS_INFO *)ASN1_item_new((&(TS_STATUS_INFO_it)));
0-3323
131IMPLEMENT_ASN1_DUP_FUNCTION(TS_STATUS_INFO)
never executed: return ASN1_item_dup((&(TS_STATUS_INFO_it)), x);
0
132-
133static int ts_resp_set_tst_info(TS_RESP *a)-
134{-
135 long status;-
136-
137 status = ASN1_INTEGER_get(a->status_info->status);-
138-
139 if (a->token) {
a->tokenDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 5 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
4-5
140 if (status != 0 && status != 1) {
status != 0Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
status != 1Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.1.1
1-2
141 TSerr(TS_F_TS_RESP_SET_TST_INFO, TS_R_TOKEN_PRESENT);-
142 return 0;
executed 1 time by 1 test: return 0;
Executed by:
  • libcrypto.so.1.1
1
143 }-
144 TS_TST_INFO_free(a->tst_info);-
145 a->tst_info = PKCS7_to_TS_TST_INFO(a->token);-
146 if (!a->tst_info) {
!a->tst_infoDescription
TRUEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-3
147 TSerr(TS_F_TS_RESP_SET_TST_INFO,-
148 TS_R_PKCS7_TO_TS_TST_INFO_FAILED);-
149 return 0;
executed 3 times by 1 test: return 0;
Executed by:
  • libcrypto.so.1.1
3
150 }-
151 } else if (status == 0 || status == 1) {
never executed: end of block
status == 0Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 4 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
status == 1Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-4
152 TSerr(TS_F_TS_RESP_SET_TST_INFO, TS_R_TOKEN_NOT_PRESENT);-
153 return 0;
executed 2 times by 1 test: return 0;
Executed by:
  • libcrypto.so.1.1
2
154 }-
155-
156 return 1;
executed 3 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
3
157}-
158-
159static int ts_resp_cb(int op, ASN1_VALUE **pval, const ASN1_ITEM *it,-
160 void *exarg)-
161{-
162 TS_RESP *ts_resp = (TS_RESP *)*pval;-
163 if (op == ASN1_OP_NEW_POST) {
op == 1Description
TRUEevaluated 2962 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 11866 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
2962-11866
164 ts_resp->tst_info = NULL;-
165 } else if (op == ASN1_OP_FREE_POST) {
executed 2962 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
op == 3Description
TRUEevaluated 2962 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 8904 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
2962-8904
166 TS_TST_INFO_free(ts_resp->tst_info);-
167 } else if (op == ASN1_OP_D2I_POST) {
executed 2962 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
op == 5Description
TRUEevaluated 9 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 8895 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
9-8895
168 if (ts_resp_set_tst_info(ts_resp) == 0)
ts_resp_set_ts...(ts_resp) == 0Description
TRUEevaluated 6 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 3 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
3-6
169 return 0;
executed 6 times by 1 test: return 0;
Executed by:
  • libcrypto.so.1.1
6
170 }
executed 3 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
3
171 return 1;
executed 14822 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
14822
172}-
173-
174ASN1_SEQUENCE_cb(TS_RESP, ts_resp_cb) = {-
175 ASN1_SIMPLE(TS_RESP, status_info, TS_STATUS_INFO),-
176 ASN1_OPT(TS_RESP, token, PKCS7),-
177} static_ASN1_SEQUENCE_END_cb(TS_RESP, TS_RESP)-
178-
179IMPLEMENT_ASN1_FUNCTIONS_const(TS_RESP)
executed 3 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
executed 3323 times by 1 test: return (TS_RESP *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(TS_RESP_it)));
Executed by:
  • libcrypto.so.1.1
executed 3 times by 1 test: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(TS_RESP_it)));
Executed by:
  • libcrypto.so.1.1
never executed: return (TS_RESP *)ASN1_item_new((&(TS_RESP_it)));
0-3323
180-
181IMPLEMENT_ASN1_DUP_FUNCTION(TS_RESP)
never executed: return ASN1_item_dup((&(TS_RESP_it)), x);
0
182-
183TS_RESP *d2i_TS_RESP_bio(BIO *bp, TS_RESP **a)-
184{-
185 return ASN1_d2i_bio_of(TS_RESP, TS_RESP_new, d2i_TS_RESP, bp, a);
never executed: return ((TS_RESP*)ASN1_d2i_bio( ((void *(*)(void)) (1 ? TS_RESP_new : ((TS_RESP *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_RESP : ((TS_RESP *(*)(TS_RESP **,const unsigned char **,long))0))), bp, ((void**) (1 ? a : (TS_RESP**)0))));
0
186}-
187-
188int i2d_TS_RESP_bio(BIO *bp, TS_RESP *a)-
189{-
190 return ASN1_i2d_bio_of_const(TS_RESP, i2d_TS_RESP, bp, a);
never executed: return (ASN1_i2d_bio(((i2d_of_void*) (1 ? i2d_TS_RESP : ((int (*)(const TS_RESP *,unsigned char **))0))), bp, ((void*) (1 ? a : (const TS_RESP*)0))));
0
191}-
192#ifndef OPENSSL_NO_STDIO-
193TS_RESP *d2i_TS_RESP_fp(FILE *fp, TS_RESP **a)-
194{-
195 return ASN1_d2i_fp_of(TS_RESP, TS_RESP_new, d2i_TS_RESP, fp, a);
never executed: return ((TS_RESP*)ASN1_d2i_fp(((void *(*)(void)) (1 ? TS_RESP_new : ((TS_RESP *(*)(void))0))), ((d2i_of_void*) (1 ? d2i_TS_RESP : ((TS_RESP *(*)(TS_RESP **,const unsigned char **,long))0))), fp, ((void**) (1 ? a : (TS_RESP**)0))));
0
196}-
197-
198int i2d_TS_RESP_fp(FILE *fp, TS_RESP *a)-
199{-
200 return ASN1_i2d_fp_of_const(TS_RESP, i2d_TS_RESP, fp, a);
never executed: return (ASN1_i2d_fp(((i2d_of_void*) (1 ? i2d_TS_RESP : ((int (*)(const TS_RESP *,unsigned char **))0))), fp, ((void*) (1 ? a : (const TS_RESP*)0))));
0
201}-
202#endif-
203-
204ASN1_SEQUENCE(ESS_ISSUER_SERIAL) = {-
205 ASN1_SEQUENCE_OF(ESS_ISSUER_SERIAL, issuer, GENERAL_NAME),-
206 ASN1_SIMPLE(ESS_ISSUER_SERIAL, serial, ASN1_INTEGER)-
207} static_ASN1_SEQUENCE_END(ESS_ISSUER_SERIAL)-
208-
209IMPLEMENT_ASN1_FUNCTIONS_const(ESS_ISSUER_SERIAL)
executed 1 time by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
executed 3323 times by 1 test: return (ESS_ISSUER_SERIAL *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(ESS_ISSUER_SERIAL_it)));
Executed by:
  • libcrypto.so.1.1
executed 1 time by 1 test: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(ESS_ISSUER_SERIAL_it)));
Executed by:
  • libcrypto.so.1.1
never executed: return (ESS_ISSUER_SERIAL *)ASN1_item_new((&(ESS_ISSUER_SERIAL_it)));
0-3323
210IMPLEMENT_ASN1_DUP_FUNCTION(ESS_ISSUER_SERIAL)
never executed: return ASN1_item_dup((&(ESS_ISSUER_SERIAL_it)), x);
0
211-
212ASN1_SEQUENCE(ESS_CERT_ID) = {-
213 ASN1_SIMPLE(ESS_CERT_ID, hash, ASN1_OCTET_STRING),-
214 ASN1_OPT(ESS_CERT_ID, issuer_serial, ESS_ISSUER_SERIAL)-
215} static_ASN1_SEQUENCE_END(ESS_CERT_ID)-
216-
217IMPLEMENT_ASN1_FUNCTIONS_const(ESS_CERT_ID)
executed 5 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
executed 3323 times by 1 test: return (ESS_CERT_ID *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(ESS_CERT_ID_it)));
Executed by:
  • libcrypto.so.1.1
executed 5 times by 1 test: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(ESS_CERT_ID_it)));
Executed by:
  • libcrypto.so.1.1
never executed: return (ESS_CERT_ID *)ASN1_item_new((&(ESS_CERT_ID_it)));
0-3323
218IMPLEMENT_ASN1_DUP_FUNCTION(ESS_CERT_ID)
never executed: return ASN1_item_dup((&(ESS_CERT_ID_it)), x);
0
219-
220ASN1_SEQUENCE(ESS_SIGNING_CERT) = {-
221 ASN1_SEQUENCE_OF(ESS_SIGNING_CERT, cert_ids, ESS_CERT_ID),-
222 ASN1_SEQUENCE_OF_OPT(ESS_SIGNING_CERT, policy_info, POLICYINFO)-
223} static_ASN1_SEQUENCE_END(ESS_SIGNING_CERT)-
224-
225IMPLEMENT_ASN1_FUNCTIONS_const(ESS_SIGNING_CERT)
executed 1 time by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
executed 3323 times by 1 test: return (ESS_SIGNING_CERT *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(ESS_SIGNING_CERT_it)));
Executed by:
  • libcrypto.so.1.1
executed 1 time by 1 test: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(ESS_SIGNING_CERT_it)));
Executed by:
  • libcrypto.so.1.1
never executed: return (ESS_SIGNING_CERT *)ASN1_item_new((&(ESS_SIGNING_CERT_it)));
0-3323
226IMPLEMENT_ASN1_DUP_FUNCTION(ESS_SIGNING_CERT)
never executed: return ASN1_item_dup((&(ESS_SIGNING_CERT_it)), x);
0
227-
228ASN1_SEQUENCE(ESS_CERT_ID_V2) = {-
229 ASN1_OPT(ESS_CERT_ID_V2, hash_alg, X509_ALGOR),-
230 ASN1_SIMPLE(ESS_CERT_ID_V2, hash, ASN1_OCTET_STRING),-
231 ASN1_OPT(ESS_CERT_ID_V2, issuer_serial, ESS_ISSUER_SERIAL)-
232} static_ASN1_SEQUENCE_END(ESS_CERT_ID_V2)-
233-
234IMPLEMENT_ASN1_FUNCTIONS_const(ESS_CERT_ID_V2)
never executed: end of block
never executed: return (ESS_CERT_ID_V2 *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(ESS_CERT_ID_V2_it)));
never executed: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(ESS_CERT_ID_V2_it)));
never executed: return (ESS_CERT_ID_V2 *)ASN1_item_new((&(ESS_CERT_ID_V2_it)));
0
235IMPLEMENT_ASN1_DUP_FUNCTION(ESS_CERT_ID_V2)
never executed: return ASN1_item_dup((&(ESS_CERT_ID_V2_it)), x);
0
236-
237ASN1_SEQUENCE(ESS_SIGNING_CERT_V2) = {-
238 ASN1_SEQUENCE_OF(ESS_SIGNING_CERT_V2, cert_ids, ESS_CERT_ID_V2),-
239 ASN1_SEQUENCE_OF_OPT(ESS_SIGNING_CERT_V2, policy_info, POLICYINFO)-
240} static_ASN1_SEQUENCE_END(ESS_SIGNING_CERT_V2)-
241-
242IMPLEMENT_ASN1_FUNCTIONS_const(ESS_SIGNING_CERT_V2)
never executed: end of block
never executed: return (ESS_SIGNING_CERT_V2 *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, (&(ESS_SIGNING_CERT_V2_it)));
never executed: return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(ESS_SIGNING_CERT_V2_it)));
never executed: return (ESS_SIGNING_CERT_V2 *)ASN1_item_new((&(ESS_SIGNING_CERT_V2_it)));
0
243IMPLEMENT_ASN1_DUP_FUNCTION(ESS_SIGNING_CERT_V2)
never executed: return ASN1_item_dup((&(ESS_SIGNING_CERT_V2_it)), x);
0
244-
245/* Getting encapsulated TS_TST_INFO object from PKCS7. */-
246TS_TST_INFO *PKCS7_to_TS_TST_INFO(PKCS7 *token)-
247{-
248 PKCS7_SIGNED *pkcs7_signed;-
249 PKCS7 *enveloped;-
250 ASN1_TYPE *tst_info_wrapper;-
251 ASN1_OCTET_STRING *tst_info_der;-
252 const unsigned char *p;-
253-
254 if (!PKCS7_type_is_signed(token)) {
!(OBJ_obj2nid(...->type) == 22)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
1-2
255 TSerr(TS_F_PKCS7_TO_TS_TST_INFO, TS_R_BAD_PKCS7_TYPE);-
256 return NULL;
executed 1 time by 1 test: return ((void *)0) ;
Executed by:
  • libcrypto.so.1.1
1
257 }-
258 if (PKCS7_get_detached(token)) {
PKCS7_ctrl(tok... ((void *)0) )Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-2
259 TSerr(TS_F_PKCS7_TO_TS_TST_INFO, TS_R_DETACHED_CONTENT);-
260 return NULL;
executed 2 times by 1 test: return ((void *)0) ;
Executed by:
  • libcrypto.so.1.1
2
261 }-
262 pkcs7_signed = token->d.sign;-
263 enveloped = pkcs7_signed->contents;-
264 if (OBJ_obj2nid(enveloped->type) != NID_id_smime_ct_TSTInfo) {
OBJ_obj2nid(en...->type) != 207Description
TRUEnever evaluated
FALSEnever evaluated
0
265 TSerr(TS_F_PKCS7_TO_TS_TST_INFO, TS_R_BAD_PKCS7_TYPE);-
266 return NULL;
never executed: return ((void *)0) ;
0
267 }-
268 tst_info_wrapper = enveloped->d.other;-
269 if (tst_info_wrapper->type != V_ASN1_OCTET_STRING) {
tst_info_wrapper->type != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
270 TSerr(TS_F_PKCS7_TO_TS_TST_INFO, TS_R_BAD_TYPE);-
271 return NULL;
never executed: return ((void *)0) ;
0
272 }-
273 tst_info_der = tst_info_wrapper->value.octet_string;-
274 p = tst_info_der->data;-
275 return d2i_TS_TST_INFO(NULL, &p, tst_info_der->length);
never executed: return d2i_TS_TST_INFO( ((void *)0) , &p, tst_info_der->length);
0
276}-
Source codeSwitch to Preprocessed file

Generated by Squish Coco 4.2.2