69
69
ASN1_ADB_TEMPLATE(p7default) = ASN1_EXP_OPT(PKCS7, d.other, ASN1_ANY, 0);
71
71
ASN1_ADB(PKCS7) = {
72
ADB_ENTRY(NID_pkcs7_data, ASN1_EXP_OPT(PKCS7, d.data, ASN1_OCTET_STRING, 0)),
73
ADB_ENTRY(NID_pkcs7_signed, ASN1_EXP_OPT(PKCS7, d.sign, PKCS7_SIGNED, 0)),
74
ADB_ENTRY(NID_pkcs7_enveloped, ASN1_EXP_OPT(PKCS7, d.enveloped, PKCS7_ENVELOPE, 0)),
75
ADB_ENTRY(NID_pkcs7_signedAndEnveloped, ASN1_EXP_OPT(PKCS7, d.signed_and_enveloped, PKCS7_SIGN_ENVELOPE, 0)),
76
ADB_ENTRY(NID_pkcs7_digest, ASN1_EXP_OPT(PKCS7, d.digest, PKCS7_DIGEST, 0)),
77
ADB_ENTRY(NID_pkcs7_encrypted, ASN1_EXP_OPT(PKCS7, d.encrypted, PKCS7_ENCRYPT, 0))
72
ADB_ENTRY(NID_pkcs7_data, ASN1_NDEF_EXP_OPT(PKCS7, d.data, ASN1_OCTET_STRING_NDEF, 0)),
73
ADB_ENTRY(NID_pkcs7_signed, ASN1_NDEF_EXP_OPT(PKCS7, d.sign, PKCS7_SIGNED, 0)),
74
ADB_ENTRY(NID_pkcs7_enveloped, ASN1_NDEF_EXP_OPT(PKCS7, d.enveloped, PKCS7_ENVELOPE, 0)),
75
ADB_ENTRY(NID_pkcs7_signedAndEnveloped, ASN1_NDEF_EXP_OPT(PKCS7, d.signed_and_enveloped, PKCS7_SIGN_ENVELOPE, 0)),
76
ADB_ENTRY(NID_pkcs7_digest, ASN1_NDEF_EXP_OPT(PKCS7, d.digest, PKCS7_DIGEST, 0)),
77
ADB_ENTRY(NID_pkcs7_encrypted, ASN1_NDEF_EXP_OPT(PKCS7, d.encrypted, PKCS7_ENCRYPT, 0))
78
78
} ASN1_ADB_END(PKCS7, 0, type, 0, &p7default_tt, NULL);
80
ASN1_SEQUENCE(PKCS7) = {
80
ASN1_NDEF_SEQUENCE(PKCS7) = {
81
81
ASN1_SIMPLE(PKCS7, type, ASN1_OBJECT),
82
82
ASN1_ADB_OBJECT(PKCS7)
83
}ASN1_SEQUENCE_END(PKCS7)
83
}ASN1_NDEF_SEQUENCE_END(PKCS7)
85
85
IMPLEMENT_ASN1_FUNCTIONS(PKCS7)
86
IMPLEMENT_ASN1_NDEF_FUNCTION(PKCS7)
86
87
IMPLEMENT_ASN1_DUP_FUNCTION(PKCS7)
88
ASN1_SEQUENCE(PKCS7_SIGNED) = {
89
ASN1_NDEF_SEQUENCE(PKCS7_SIGNED) = {
89
90
ASN1_SIMPLE(PKCS7_SIGNED, version, ASN1_INTEGER),
90
91
ASN1_SET_OF(PKCS7_SIGNED, md_algs, X509_ALGOR),
91
92
ASN1_SIMPLE(PKCS7_SIGNED, contents, PKCS7),
92
93
ASN1_IMP_SEQUENCE_OF_OPT(PKCS7_SIGNED, cert, X509, 0),
93
94
ASN1_IMP_SET_OF_OPT(PKCS7_SIGNED, crl, X509_CRL, 1),
94
95
ASN1_SET_OF(PKCS7_SIGNED, signer_info, PKCS7_SIGNER_INFO)
95
} ASN1_SEQUENCE_END(PKCS7_SIGNED)
96
} ASN1_NDEF_SEQUENCE_END(PKCS7_SIGNED)
97
98
IMPLEMENT_ASN1_FUNCTIONS(PKCS7_SIGNED)
131
132
IMPLEMENT_ASN1_FUNCTIONS(PKCS7_ISSUER_AND_SERIAL)
133
ASN1_SEQUENCE(PKCS7_ENVELOPE) = {
134
ASN1_NDEF_SEQUENCE(PKCS7_ENVELOPE) = {
134
135
ASN1_SIMPLE(PKCS7_ENVELOPE, version, ASN1_INTEGER),
135
136
ASN1_SET_OF(PKCS7_ENVELOPE, recipientinfo, PKCS7_RECIP_INFO),
136
137
ASN1_SIMPLE(PKCS7_ENVELOPE, enc_data, PKCS7_ENC_CONTENT)
137
} ASN1_SEQUENCE_END(PKCS7_ENVELOPE)
138
} ASN1_NDEF_SEQUENCE_END(PKCS7_ENVELOPE)
139
140
IMPLEMENT_ASN1_FUNCTIONS(PKCS7_ENVELOPE)
158
159
IMPLEMENT_ASN1_FUNCTIONS(PKCS7_RECIP_INFO)
160
ASN1_SEQUENCE(PKCS7_ENC_CONTENT) = {
161
ASN1_NDEF_SEQUENCE(PKCS7_ENC_CONTENT) = {
161
162
ASN1_SIMPLE(PKCS7_ENC_CONTENT, content_type, ASN1_OBJECT),
162
163
ASN1_SIMPLE(PKCS7_ENC_CONTENT, algorithm, X509_ALGOR),
163
164
ASN1_IMP_OPT(PKCS7_ENC_CONTENT, enc_data, ASN1_OCTET_STRING, 0)
164
} ASN1_SEQUENCE_END(PKCS7_ENC_CONTENT)
165
} ASN1_NDEF_SEQUENCE_END(PKCS7_ENC_CONTENT)
166
167
IMPLEMENT_ASN1_FUNCTIONS(PKCS7_ENC_CONTENT)
168
ASN1_SEQUENCE(PKCS7_SIGN_ENVELOPE) = {
169
ASN1_NDEF_SEQUENCE(PKCS7_SIGN_ENVELOPE) = {
169
170
ASN1_SIMPLE(PKCS7_SIGN_ENVELOPE, version, ASN1_INTEGER),
170
171
ASN1_SET_OF(PKCS7_SIGN_ENVELOPE, recipientinfo, PKCS7_RECIP_INFO),
171
172
ASN1_SET_OF(PKCS7_SIGN_ENVELOPE, md_algs, X509_ALGOR),
173
174
ASN1_IMP_SET_OF_OPT(PKCS7_SIGN_ENVELOPE, cert, X509, 0),
174
175
ASN1_IMP_SET_OF_OPT(PKCS7_SIGN_ENVELOPE, crl, X509_CRL, 1),
175
176
ASN1_SET_OF(PKCS7_SIGN_ENVELOPE, signer_info, PKCS7_SIGNER_INFO)
176
} ASN1_SEQUENCE_END(PKCS7_SIGN_ENVELOPE)
177
} ASN1_NDEF_SEQUENCE_END(PKCS7_SIGN_ENVELOPE)
178
179
IMPLEMENT_ASN1_FUNCTIONS(PKCS7_SIGN_ENVELOPE)
180
ASN1_SEQUENCE(PKCS7_ENCRYPT) = {
181
ASN1_NDEF_SEQUENCE(PKCS7_ENCRYPT) = {
181
182
ASN1_SIMPLE(PKCS7_ENCRYPT, version, ASN1_INTEGER),
182
183
ASN1_SIMPLE(PKCS7_ENCRYPT, enc_data, PKCS7_ENC_CONTENT)
183
} ASN1_SEQUENCE_END(PKCS7_ENCRYPT)
184
} ASN1_NDEF_SEQUENCE_END(PKCS7_ENCRYPT)
185
186
IMPLEMENT_ASN1_FUNCTIONS(PKCS7_ENCRYPT)
187
ASN1_SEQUENCE(PKCS7_DIGEST) = {
188
ASN1_NDEF_SEQUENCE(PKCS7_DIGEST) = {
188
189
ASN1_SIMPLE(PKCS7_DIGEST, version, ASN1_INTEGER),
189
190
ASN1_SIMPLE(PKCS7_DIGEST, md, X509_ALGOR),
190
191
ASN1_SIMPLE(PKCS7_DIGEST, contents, PKCS7),
191
192
ASN1_SIMPLE(PKCS7_DIGEST, digest, ASN1_OCTET_STRING)
192
} ASN1_SEQUENCE_END(PKCS7_DIGEST)
193
} ASN1_NDEF_SEQUENCE_END(PKCS7_DIGEST)
194
195
IMPLEMENT_ASN1_FUNCTIONS(PKCS7_DIGEST)