diff options
-rw-r--r-- | src/lib/libcrypto/cms/cms.h | 629 |
1 files changed, 294 insertions, 335 deletions
diff --git a/src/lib/libcrypto/cms/cms.h b/src/lib/libcrypto/cms/cms.h index 6385e214e7..b524cd7c9c 100644 --- a/src/lib/libcrypto/cms/cms.h +++ b/src/lib/libcrypto/cms/cms.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: cms.h,v 1.11 2019/08/10 16:22:09 jsing Exp $ */ | 1 | /* $OpenBSD: cms.h,v 1.12 2019/08/10 18:24:33 jsing Exp $ */ |
2 | /* | 2 | /* |
3 | * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 3 | * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
4 | * project. | 4 | * project. |
@@ -53,16 +53,16 @@ | |||
53 | */ | 53 | */ |
54 | 54 | ||
55 | #ifndef HEADER_CMS_H | 55 | #ifndef HEADER_CMS_H |
56 | # define HEADER_CMS_H | 56 | #define HEADER_CMS_H |
57 | 57 | ||
58 | # include <openssl/opensslconf.h> | 58 | #include <openssl/opensslconf.h> |
59 | 59 | ||
60 | # ifndef OPENSSL_NO_CMS | 60 | #ifndef OPENSSL_NO_CMS |
61 | # include <openssl/x509.h> | 61 | #include <openssl/x509.h> |
62 | # include <openssl/x509v3.h> | 62 | #include <openssl/x509v3.h> |
63 | # ifdef __cplusplus | 63 | #ifdef __cplusplus |
64 | extern "C" { | 64 | extern "C" { |
65 | # endif | 65 | #endif |
66 | 66 | ||
67 | typedef struct CMS_ContentInfo_st CMS_ContentInfo; | 67 | typedef struct CMS_ContentInfo_st CMS_ContentInfo; |
68 | typedef struct CMS_SignerInfo_st CMS_SignerInfo; | 68 | typedef struct CMS_SignerInfo_st CMS_SignerInfo; |
@@ -82,41 +82,41 @@ DECLARE_ASN1_FUNCTIONS(CMS_ContentInfo) | |||
82 | DECLARE_ASN1_FUNCTIONS(CMS_ReceiptRequest) | 82 | DECLARE_ASN1_FUNCTIONS(CMS_ReceiptRequest) |
83 | DECLARE_ASN1_PRINT_FUNCTION(CMS_ContentInfo) | 83 | DECLARE_ASN1_PRINT_FUNCTION(CMS_ContentInfo) |
84 | 84 | ||
85 | # define CMS_SIGNERINFO_ISSUER_SERIAL 0 | 85 | #define CMS_SIGNERINFO_ISSUER_SERIAL 0 |
86 | # define CMS_SIGNERINFO_KEYIDENTIFIER 1 | 86 | #define CMS_SIGNERINFO_KEYIDENTIFIER 1 |
87 | 87 | ||
88 | # define CMS_RECIPINFO_NONE -1 | 88 | #define CMS_RECIPINFO_NONE -1 |
89 | # define CMS_RECIPINFO_TRANS 0 | 89 | #define CMS_RECIPINFO_TRANS 0 |
90 | # define CMS_RECIPINFO_AGREE 1 | 90 | #define CMS_RECIPINFO_AGREE 1 |
91 | # define CMS_RECIPINFO_KEK 2 | 91 | #define CMS_RECIPINFO_KEK 2 |
92 | # define CMS_RECIPINFO_PASS 3 | 92 | #define CMS_RECIPINFO_PASS 3 |
93 | # define CMS_RECIPINFO_OTHER 4 | 93 | #define CMS_RECIPINFO_OTHER 4 |
94 | 94 | ||
95 | /* S/MIME related flags */ | 95 | /* S/MIME related flags */ |
96 | 96 | ||
97 | # define CMS_TEXT 0x1 | 97 | #define CMS_TEXT 0x1 |
98 | # define CMS_NOCERTS 0x2 | 98 | #define CMS_NOCERTS 0x2 |
99 | # define CMS_NO_CONTENT_VERIFY 0x4 | 99 | #define CMS_NO_CONTENT_VERIFY 0x4 |
100 | # define CMS_NO_ATTR_VERIFY 0x8 | 100 | #define CMS_NO_ATTR_VERIFY 0x8 |
101 | # define CMS_NOSIGS \ | 101 | #define CMS_NOSIGS \ |
102 | (CMS_NO_CONTENT_VERIFY|CMS_NO_ATTR_VERIFY) | 102 | (CMS_NO_CONTENT_VERIFY|CMS_NO_ATTR_VERIFY) |
103 | # define CMS_NOINTERN 0x10 | 103 | #define CMS_NOINTERN 0x10 |
104 | # define CMS_NO_SIGNER_CERT_VERIFY 0x20 | 104 | #define CMS_NO_SIGNER_CERT_VERIFY 0x20 |
105 | # define CMS_NOVERIFY 0x20 | 105 | #define CMS_NOVERIFY 0x20 |
106 | # define CMS_DETACHED 0x40 | 106 | #define CMS_DETACHED 0x40 |
107 | # define CMS_BINARY 0x80 | 107 | #define CMS_BINARY 0x80 |
108 | # define CMS_NOATTR 0x100 | 108 | #define CMS_NOATTR 0x100 |
109 | # define CMS_NOSMIMECAP 0x200 | 109 | #define CMS_NOSMIMECAP 0x200 |
110 | # define CMS_NOOLDMIMETYPE 0x400 | 110 | #define CMS_NOOLDMIMETYPE 0x400 |
111 | # define CMS_CRLFEOL 0x800 | 111 | #define CMS_CRLFEOL 0x800 |
112 | # define CMS_STREAM 0x1000 | 112 | #define CMS_STREAM 0x1000 |
113 | # define CMS_NOCRL 0x2000 | 113 | #define CMS_NOCRL 0x2000 |
114 | # define CMS_PARTIAL 0x4000 | 114 | #define CMS_PARTIAL 0x4000 |
115 | # define CMS_REUSE_DIGEST 0x8000 | 115 | #define CMS_REUSE_DIGEST 0x8000 |
116 | # define CMS_USE_KEYID 0x10000 | 116 | #define CMS_USE_KEYID 0x10000 |
117 | # define CMS_DEBUG_DECRYPT 0x20000 | 117 | #define CMS_DEBUG_DECRYPT 0x20000 |
118 | # define CMS_KEY_PARAM 0x40000 | 118 | #define CMS_KEY_PARAM 0x40000 |
119 | # define CMS_ASCIICRLF 0x80000 | 119 | #define CMS_ASCIICRLF 0x80000 |
120 | 120 | ||
121 | const ASN1_OBJECT *CMS_get0_type(const CMS_ContentInfo *cms); | 121 | const ASN1_OBJECT *CMS_get0_type(const CMS_ContentInfo *cms); |
122 | 122 | ||
@@ -127,9 +127,9 @@ ASN1_OCTET_STRING **CMS_get0_content(CMS_ContentInfo *cms); | |||
127 | int CMS_is_detached(CMS_ContentInfo *cms); | 127 | int CMS_is_detached(CMS_ContentInfo *cms); |
128 | int CMS_set_detached(CMS_ContentInfo *cms, int detached); | 128 | int CMS_set_detached(CMS_ContentInfo *cms, int detached); |
129 | 129 | ||
130 | # ifdef HEADER_PEM_H | 130 | #ifdef HEADER_PEM_H |
131 | DECLARE_PEM_rw_const(CMS, CMS_ContentInfo) | 131 | DECLARE_PEM_rw_const(CMS, CMS_ContentInfo) |
132 | # endif | 132 | #endif |
133 | int CMS_stream(unsigned char ***boundary, CMS_ContentInfo *cms); | 133 | int CMS_stream(unsigned char ***boundary, CMS_ContentInfo *cms); |
134 | CMS_ContentInfo *d2i_CMS_bio(BIO *bp, CMS_ContentInfo **cms); | 134 | CMS_ContentInfo *d2i_CMS_bio(BIO *bp, CMS_ContentInfo **cms); |
135 | int i2d_CMS_bio(BIO *bp, CMS_ContentInfo *cms); | 135 | int i2d_CMS_bio(BIO *bp, CMS_ContentInfo *cms); |
@@ -137,114 +137,94 @@ int i2d_CMS_bio(BIO *bp, CMS_ContentInfo *cms); | |||
137 | BIO *BIO_new_CMS(BIO *out, CMS_ContentInfo *cms); | 137 | BIO *BIO_new_CMS(BIO *out, CMS_ContentInfo *cms); |
138 | int i2d_CMS_bio_stream(BIO *out, CMS_ContentInfo *cms, BIO *in, int flags); | 138 | int i2d_CMS_bio_stream(BIO *out, CMS_ContentInfo *cms, BIO *in, int flags); |
139 | int PEM_write_bio_CMS_stream(BIO *out, CMS_ContentInfo *cms, BIO *in, | 139 | int PEM_write_bio_CMS_stream(BIO *out, CMS_ContentInfo *cms, BIO *in, |
140 | int flags); | 140 | int flags); |
141 | CMS_ContentInfo *SMIME_read_CMS(BIO *bio, BIO **bcont); | 141 | CMS_ContentInfo *SMIME_read_CMS(BIO *bio, BIO **bcont); |
142 | int SMIME_write_CMS(BIO *bio, CMS_ContentInfo *cms, BIO *data, int flags); | 142 | int SMIME_write_CMS(BIO *bio, CMS_ContentInfo *cms, BIO *data, int flags); |
143 | 143 | ||
144 | int CMS_final(CMS_ContentInfo *cms, BIO *data, BIO *dcont, | 144 | int CMS_final(CMS_ContentInfo *cms, BIO *data, BIO *dcont, unsigned int flags); |
145 | unsigned int flags); | ||
146 | 145 | ||
147 | CMS_ContentInfo *CMS_sign(X509 *signcert, EVP_PKEY *pkey, | 146 | CMS_ContentInfo *CMS_sign(X509 *signcert, EVP_PKEY *pkey, STACK_OF(X509) *certs, |
148 | STACK_OF(X509) *certs, BIO *data, | 147 | BIO *data, unsigned int flags); |
149 | unsigned int flags); | ||
150 | 148 | ||
151 | CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si, | 149 | CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si, X509 *signcert, |
152 | X509 *signcert, EVP_PKEY *pkey, | 150 | EVP_PKEY *pkey, STACK_OF(X509) *certs, unsigned int flags); |
153 | STACK_OF(X509) *certs, unsigned int flags); | ||
154 | 151 | ||
155 | int CMS_data(CMS_ContentInfo *cms, BIO *out, unsigned int flags); | 152 | int CMS_data(CMS_ContentInfo *cms, BIO *out, unsigned int flags); |
156 | CMS_ContentInfo *CMS_data_create(BIO *in, unsigned int flags); | 153 | CMS_ContentInfo *CMS_data_create(BIO *in, unsigned int flags); |
157 | 154 | ||
158 | int CMS_digest_verify(CMS_ContentInfo *cms, BIO *dcont, BIO *out, | 155 | int CMS_digest_verify(CMS_ContentInfo *cms, BIO *dcont, BIO *out, |
159 | unsigned int flags); | 156 | unsigned int flags); |
160 | CMS_ContentInfo *CMS_digest_create(BIO *in, const EVP_MD *md, | 157 | CMS_ContentInfo *CMS_digest_create(BIO *in, const EVP_MD *md, |
161 | unsigned int flags); | 158 | unsigned int flags); |
162 | 159 | ||
163 | int CMS_EncryptedData_decrypt(CMS_ContentInfo *cms, | 160 | int CMS_EncryptedData_decrypt(CMS_ContentInfo *cms, const unsigned char *key, |
164 | const unsigned char *key, size_t keylen, | 161 | size_t keylen, BIO *dcont, BIO *out, unsigned int flags); |
165 | BIO *dcont, BIO *out, unsigned int flags); | ||
166 | 162 | ||
167 | CMS_ContentInfo *CMS_EncryptedData_encrypt(BIO *in, const EVP_CIPHER *cipher, | 163 | CMS_ContentInfo *CMS_EncryptedData_encrypt(BIO *in, const EVP_CIPHER *cipher, |
168 | const unsigned char *key, | 164 | const unsigned char *key, size_t keylen, unsigned int flags); |
169 | size_t keylen, unsigned int flags); | ||
170 | 165 | ||
171 | int CMS_EncryptedData_set1_key(CMS_ContentInfo *cms, const EVP_CIPHER *ciph, | 166 | int CMS_EncryptedData_set1_key(CMS_ContentInfo *cms, const EVP_CIPHER *ciph, |
172 | const unsigned char *key, size_t keylen); | 167 | const unsigned char *key, size_t keylen); |
173 | 168 | ||
174 | int CMS_verify(CMS_ContentInfo *cms, STACK_OF(X509) *certs, | 169 | int CMS_verify(CMS_ContentInfo *cms, STACK_OF(X509) *certs, |
175 | X509_STORE *store, BIO *dcont, BIO *out, unsigned int flags); | 170 | X509_STORE *store, BIO *dcont, BIO *out, unsigned int flags); |
176 | 171 | ||
177 | int CMS_verify_receipt(CMS_ContentInfo *rcms, CMS_ContentInfo *ocms, | 172 | int CMS_verify_receipt(CMS_ContentInfo *rcms, CMS_ContentInfo *ocms, |
178 | STACK_OF(X509) *certs, | 173 | STACK_OF(X509) *certs, X509_STORE *store, unsigned int flags); |
179 | X509_STORE *store, unsigned int flags); | ||
180 | 174 | ||
181 | STACK_OF(X509) *CMS_get0_signers(CMS_ContentInfo *cms); | 175 | STACK_OF(X509) *CMS_get0_signers(CMS_ContentInfo *cms); |
182 | 176 | ||
183 | CMS_ContentInfo *CMS_encrypt(STACK_OF(X509) *certs, BIO *in, | 177 | CMS_ContentInfo *CMS_encrypt(STACK_OF(X509) *certs, BIO *in, |
184 | const EVP_CIPHER *cipher, unsigned int flags); | 178 | const EVP_CIPHER *cipher, unsigned int flags); |
185 | 179 | ||
186 | int CMS_decrypt(CMS_ContentInfo *cms, EVP_PKEY *pkey, X509 *cert, | 180 | int CMS_decrypt(CMS_ContentInfo *cms, EVP_PKEY *pkey, X509 *cert, |
187 | BIO *dcont, BIO *out, unsigned int flags); | 181 | BIO *dcont, BIO *out, unsigned int flags); |
188 | 182 | ||
189 | int CMS_decrypt_set1_pkey(CMS_ContentInfo *cms, EVP_PKEY *pk, X509 *cert); | 183 | int CMS_decrypt_set1_pkey(CMS_ContentInfo *cms, EVP_PKEY *pk, X509 *cert); |
190 | int CMS_decrypt_set1_key(CMS_ContentInfo *cms, | 184 | int CMS_decrypt_set1_key(CMS_ContentInfo *cms, unsigned char *key, |
191 | unsigned char *key, size_t keylen, | 185 | size_t keylen, const unsigned char *id, size_t idlen); |
192 | const unsigned char *id, size_t idlen); | 186 | int CMS_decrypt_set1_password(CMS_ContentInfo *cms, unsigned char *pass, |
193 | int CMS_decrypt_set1_password(CMS_ContentInfo *cms, | 187 | ossl_ssize_t passlen); |
194 | unsigned char *pass, ossl_ssize_t passlen); | ||
195 | 188 | ||
196 | STACK_OF(CMS_RecipientInfo) *CMS_get0_RecipientInfos(CMS_ContentInfo *cms); | 189 | STACK_OF(CMS_RecipientInfo) *CMS_get0_RecipientInfos(CMS_ContentInfo *cms); |
197 | int CMS_RecipientInfo_type(CMS_RecipientInfo *ri); | 190 | int CMS_RecipientInfo_type(CMS_RecipientInfo *ri); |
198 | EVP_PKEY_CTX *CMS_RecipientInfo_get0_pkey_ctx(CMS_RecipientInfo *ri); | 191 | EVP_PKEY_CTX *CMS_RecipientInfo_get0_pkey_ctx(CMS_RecipientInfo *ri); |
199 | CMS_ContentInfo *CMS_EnvelopedData_create(const EVP_CIPHER *cipher); | 192 | CMS_ContentInfo *CMS_EnvelopedData_create(const EVP_CIPHER *cipher); |
200 | CMS_RecipientInfo *CMS_add1_recipient_cert(CMS_ContentInfo *cms, | 193 | CMS_RecipientInfo *CMS_add1_recipient_cert(CMS_ContentInfo *cms, X509 *recip, |
201 | X509 *recip, unsigned int flags); | 194 | unsigned int flags); |
202 | int CMS_RecipientInfo_set0_pkey(CMS_RecipientInfo *ri, EVP_PKEY *pkey); | 195 | int CMS_RecipientInfo_set0_pkey(CMS_RecipientInfo *ri, EVP_PKEY *pkey); |
203 | int CMS_RecipientInfo_ktri_cert_cmp(CMS_RecipientInfo *ri, X509 *cert); | 196 | int CMS_RecipientInfo_ktri_cert_cmp(CMS_RecipientInfo *ri, X509 *cert); |
204 | int CMS_RecipientInfo_ktri_get0_algs(CMS_RecipientInfo *ri, | 197 | int CMS_RecipientInfo_ktri_get0_algs(CMS_RecipientInfo *ri, EVP_PKEY **pk, |
205 | EVP_PKEY **pk, X509 **recip, | 198 | X509 **recip, X509_ALGOR **palg); |
206 | X509_ALGOR **palg); | ||
207 | int CMS_RecipientInfo_ktri_get0_signer_id(CMS_RecipientInfo *ri, | 199 | int CMS_RecipientInfo_ktri_get0_signer_id(CMS_RecipientInfo *ri, |
208 | ASN1_OCTET_STRING **keyid, | 200 | ASN1_OCTET_STRING **keyid, X509_NAME **issuer, ASN1_INTEGER **sno); |
209 | X509_NAME **issuer, | ||
210 | ASN1_INTEGER **sno); | ||
211 | 201 | ||
212 | CMS_RecipientInfo *CMS_add0_recipient_key(CMS_ContentInfo *cms, int nid, | 202 | CMS_RecipientInfo *CMS_add0_recipient_key(CMS_ContentInfo *cms, int nid, |
213 | unsigned char *key, size_t keylen, | 203 | unsigned char *key, size_t keylen, unsigned char *id, size_t idlen, |
214 | unsigned char *id, size_t idlen, | 204 | ASN1_GENERALIZEDTIME *date, ASN1_OBJECT *otherTypeId, ASN1_TYPE *otherType); |
215 | ASN1_GENERALIZEDTIME *date, | 205 | |
216 | ASN1_OBJECT *otherTypeId, | 206 | int CMS_RecipientInfo_kekri_get0_id(CMS_RecipientInfo *ri, X509_ALGOR **palg, |
217 | ASN1_TYPE *otherType); | 207 | ASN1_OCTET_STRING **pid, ASN1_GENERALIZEDTIME **pdate, |
218 | 208 | ASN1_OBJECT **potherid, ASN1_TYPE **pothertype); | |
219 | int CMS_RecipientInfo_kekri_get0_id(CMS_RecipientInfo *ri, | 209 | |
220 | X509_ALGOR **palg, | 210 | int CMS_RecipientInfo_set0_key(CMS_RecipientInfo *ri, unsigned char *key, |
221 | ASN1_OCTET_STRING **pid, | 211 | size_t keylen); |
222 | ASN1_GENERALIZEDTIME **pdate, | ||
223 | ASN1_OBJECT **potherid, | ||
224 | ASN1_TYPE **pothertype); | ||
225 | |||
226 | int CMS_RecipientInfo_set0_key(CMS_RecipientInfo *ri, | ||
227 | unsigned char *key, size_t keylen); | ||
228 | 212 | ||
229 | int CMS_RecipientInfo_kekri_id_cmp(CMS_RecipientInfo *ri, | 213 | int CMS_RecipientInfo_kekri_id_cmp(CMS_RecipientInfo *ri, |
230 | const unsigned char *id, size_t idlen); | 214 | const unsigned char *id, size_t idlen); |
231 | 215 | ||
232 | int CMS_RecipientInfo_set0_password(CMS_RecipientInfo *ri, | 216 | int CMS_RecipientInfo_set0_password(CMS_RecipientInfo *ri, unsigned char *pass, |
233 | unsigned char *pass, | 217 | ossl_ssize_t passlen); |
234 | ossl_ssize_t passlen); | ||
235 | 218 | ||
236 | CMS_RecipientInfo *CMS_add0_recipient_password(CMS_ContentInfo *cms, | 219 | CMS_RecipientInfo *CMS_add0_recipient_password(CMS_ContentInfo *cms, int iter, |
237 | int iter, int wrap_nid, | 220 | int wrap_nid, int pbe_nid, unsigned char *pass, ossl_ssize_t passlen, |
238 | int pbe_nid, | 221 | const EVP_CIPHER *kekciph); |
239 | unsigned char *pass, | ||
240 | ossl_ssize_t passlen, | ||
241 | const EVP_CIPHER *kekciph); | ||
242 | 222 | ||
243 | int CMS_RecipientInfo_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri); | 223 | int CMS_RecipientInfo_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri); |
244 | int CMS_RecipientInfo_encrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri); | 224 | int CMS_RecipientInfo_encrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri); |
245 | 225 | ||
246 | int CMS_uncompress(CMS_ContentInfo *cms, BIO *dcont, BIO *out, | 226 | int CMS_uncompress(CMS_ContentInfo *cms, BIO *dcont, BIO *out, |
247 | unsigned int flags); | 227 | unsigned int flags); |
248 | CMS_ContentInfo *CMS_compress(BIO *in, int comp_nid, unsigned int flags); | 228 | CMS_ContentInfo *CMS_compress(BIO *in, int comp_nid, unsigned int flags); |
249 | 229 | ||
250 | int CMS_set1_eContentType(CMS_ContentInfo *cms, const ASN1_OBJECT *oid); | 230 | int CMS_set1_eContentType(CMS_ContentInfo *cms, const ASN1_OBJECT *oid); |
@@ -261,122 +241,101 @@ int CMS_add1_crl(CMS_ContentInfo *cms, X509_CRL *crl); | |||
261 | STACK_OF(X509_CRL) *CMS_get1_crls(CMS_ContentInfo *cms); | 241 | STACK_OF(X509_CRL) *CMS_get1_crls(CMS_ContentInfo *cms); |
262 | 242 | ||
263 | int CMS_SignedData_init(CMS_ContentInfo *cms); | 243 | int CMS_SignedData_init(CMS_ContentInfo *cms); |
264 | CMS_SignerInfo *CMS_add1_signer(CMS_ContentInfo *cms, | 244 | CMS_SignerInfo *CMS_add1_signer(CMS_ContentInfo *cms, X509 *signer, |
265 | X509 *signer, EVP_PKEY *pk, const EVP_MD *md, | 245 | EVP_PKEY *pk, const EVP_MD *md, unsigned int flags); |
266 | unsigned int flags); | ||
267 | EVP_PKEY_CTX *CMS_SignerInfo_get0_pkey_ctx(CMS_SignerInfo *si); | 246 | EVP_PKEY_CTX *CMS_SignerInfo_get0_pkey_ctx(CMS_SignerInfo *si); |
268 | EVP_MD_CTX *CMS_SignerInfo_get0_md_ctx(CMS_SignerInfo *si); | 247 | EVP_MD_CTX *CMS_SignerInfo_get0_md_ctx(CMS_SignerInfo *si); |
269 | STACK_OF(CMS_SignerInfo) *CMS_get0_SignerInfos(CMS_ContentInfo *cms); | 248 | STACK_OF(CMS_SignerInfo) *CMS_get0_SignerInfos(CMS_ContentInfo *cms); |
270 | 249 | ||
271 | void CMS_SignerInfo_set1_signer_cert(CMS_SignerInfo *si, X509 *signer); | 250 | void CMS_SignerInfo_set1_signer_cert(CMS_SignerInfo *si, X509 *signer); |
272 | int CMS_SignerInfo_get0_signer_id(CMS_SignerInfo *si, | 251 | int CMS_SignerInfo_get0_signer_id(CMS_SignerInfo *si, ASN1_OCTET_STRING **keyid, |
273 | ASN1_OCTET_STRING **keyid, | 252 | X509_NAME **issuer, ASN1_INTEGER **sno); |
274 | X509_NAME **issuer, ASN1_INTEGER **sno); | ||
275 | int CMS_SignerInfo_cert_cmp(CMS_SignerInfo *si, X509 *cert); | 253 | int CMS_SignerInfo_cert_cmp(CMS_SignerInfo *si, X509 *cert); |
276 | int CMS_set1_signers_certs(CMS_ContentInfo *cms, STACK_OF(X509) *certs, | 254 | int CMS_set1_signers_certs(CMS_ContentInfo *cms, STACK_OF(X509) *certs, |
277 | unsigned int flags); | 255 | unsigned int flags); |
278 | void CMS_SignerInfo_get0_algs(CMS_SignerInfo *si, EVP_PKEY **pk, | 256 | void CMS_SignerInfo_get0_algs(CMS_SignerInfo *si, EVP_PKEY **pk, X509 **signer, |
279 | X509 **signer, X509_ALGOR **pdig, | 257 | X509_ALGOR **pdig, X509_ALGOR **psig); |
280 | X509_ALGOR **psig); | ||
281 | ASN1_OCTET_STRING *CMS_SignerInfo_get0_signature(CMS_SignerInfo *si); | 258 | ASN1_OCTET_STRING *CMS_SignerInfo_get0_signature(CMS_SignerInfo *si); |
282 | int CMS_SignerInfo_sign(CMS_SignerInfo *si); | 259 | int CMS_SignerInfo_sign(CMS_SignerInfo *si); |
283 | int CMS_SignerInfo_verify(CMS_SignerInfo *si); | 260 | int CMS_SignerInfo_verify(CMS_SignerInfo *si); |
284 | int CMS_SignerInfo_verify_content(CMS_SignerInfo *si, BIO *chain); | 261 | int CMS_SignerInfo_verify_content(CMS_SignerInfo *si, BIO *chain); |
285 | 262 | ||
286 | int CMS_add_smimecap(CMS_SignerInfo *si, STACK_OF(X509_ALGOR) *algs); | 263 | int CMS_add_smimecap(CMS_SignerInfo *si, STACK_OF(X509_ALGOR) *algs); |
287 | int CMS_add_simple_smimecap(STACK_OF(X509_ALGOR) **algs, | 264 | int CMS_add_simple_smimecap(STACK_OF(X509_ALGOR) **algs, int algnid, |
288 | int algnid, int keysize); | 265 | int keysize); |
289 | int CMS_add_standard_smimecap(STACK_OF(X509_ALGOR) **smcap); | 266 | int CMS_add_standard_smimecap(STACK_OF(X509_ALGOR) **smcap); |
290 | 267 | ||
291 | int CMS_signed_get_attr_count(const CMS_SignerInfo *si); | 268 | int CMS_signed_get_attr_count(const CMS_SignerInfo *si); |
292 | int CMS_signed_get_attr_by_NID(const CMS_SignerInfo *si, int nid, | 269 | int CMS_signed_get_attr_by_NID(const CMS_SignerInfo *si, int nid, int lastpos); |
293 | int lastpos); | ||
294 | int CMS_signed_get_attr_by_OBJ(const CMS_SignerInfo *si, const ASN1_OBJECT *obj, | 270 | int CMS_signed_get_attr_by_OBJ(const CMS_SignerInfo *si, const ASN1_OBJECT *obj, |
295 | int lastpos); | 271 | int lastpos); |
296 | X509_ATTRIBUTE *CMS_signed_get_attr(const CMS_SignerInfo *si, int loc); | 272 | X509_ATTRIBUTE *CMS_signed_get_attr(const CMS_SignerInfo *si, int loc); |
297 | X509_ATTRIBUTE *CMS_signed_delete_attr(CMS_SignerInfo *si, int loc); | 273 | X509_ATTRIBUTE *CMS_signed_delete_attr(CMS_SignerInfo *si, int loc); |
298 | int CMS_signed_add1_attr(CMS_SignerInfo *si, X509_ATTRIBUTE *attr); | 274 | int CMS_signed_add1_attr(CMS_SignerInfo *si, X509_ATTRIBUTE *attr); |
299 | int CMS_signed_add1_attr_by_OBJ(CMS_SignerInfo *si, | 275 | int CMS_signed_add1_attr_by_OBJ(CMS_SignerInfo *si, const ASN1_OBJECT *obj, |
300 | const ASN1_OBJECT *obj, int type, | 276 | int type, const void *bytes, int len); |
301 | const void *bytes, int len); | 277 | int CMS_signed_add1_attr_by_NID(CMS_SignerInfo *si, int nid, int type, |
302 | int CMS_signed_add1_attr_by_NID(CMS_SignerInfo *si, | 278 | const void *bytes, int len); |
303 | int nid, int type, | ||
304 | const void *bytes, int len); | ||
305 | int CMS_signed_add1_attr_by_txt(CMS_SignerInfo *si, | 279 | int CMS_signed_add1_attr_by_txt(CMS_SignerInfo *si, |
306 | const char *attrname, int type, | 280 | const char *attrname, int type, const void *bytes, int len); |
307 | const void *bytes, int len); | ||
308 | void *CMS_signed_get0_data_by_OBJ(CMS_SignerInfo *si, const ASN1_OBJECT *oid, | 281 | void *CMS_signed_get0_data_by_OBJ(CMS_SignerInfo *si, const ASN1_OBJECT *oid, |
309 | int lastpos, int type); | 282 | int lastpos, int type); |
310 | 283 | ||
311 | int CMS_unsigned_get_attr_count(const CMS_SignerInfo *si); | 284 | int CMS_unsigned_get_attr_count(const CMS_SignerInfo *si); |
312 | int CMS_unsigned_get_attr_by_NID(const CMS_SignerInfo *si, int nid, | 285 | int CMS_unsigned_get_attr_by_NID(const CMS_SignerInfo *si, int nid, |
313 | int lastpos); | 286 | int lastpos); |
314 | int CMS_unsigned_get_attr_by_OBJ(const CMS_SignerInfo *si, | 287 | int CMS_unsigned_get_attr_by_OBJ(const CMS_SignerInfo *si, |
315 | const ASN1_OBJECT *obj, int lastpos); | 288 | const ASN1_OBJECT *obj, int lastpos); |
316 | X509_ATTRIBUTE *CMS_unsigned_get_attr(const CMS_SignerInfo *si, int loc); | 289 | X509_ATTRIBUTE *CMS_unsigned_get_attr(const CMS_SignerInfo *si, int loc); |
317 | X509_ATTRIBUTE *CMS_unsigned_delete_attr(CMS_SignerInfo *si, int loc); | 290 | X509_ATTRIBUTE *CMS_unsigned_delete_attr(CMS_SignerInfo *si, int loc); |
318 | int CMS_unsigned_add1_attr(CMS_SignerInfo *si, X509_ATTRIBUTE *attr); | 291 | int CMS_unsigned_add1_attr(CMS_SignerInfo *si, X509_ATTRIBUTE *attr); |
319 | int CMS_unsigned_add1_attr_by_OBJ(CMS_SignerInfo *si, | 292 | int CMS_unsigned_add1_attr_by_OBJ(CMS_SignerInfo *si, |
320 | const ASN1_OBJECT *obj, int type, | 293 | const ASN1_OBJECT *obj, int type, const void *bytes, int len); |
321 | const void *bytes, int len); | 294 | int CMS_unsigned_add1_attr_by_NID(CMS_SignerInfo *si, int nid, int type, |
322 | int CMS_unsigned_add1_attr_by_NID(CMS_SignerInfo *si, | 295 | const void *bytes, int len); |
323 | int nid, int type, | 296 | int CMS_unsigned_add1_attr_by_txt(CMS_SignerInfo *si, const char *attrname, |
324 | const void *bytes, int len); | 297 | int type, const void *bytes, int len); |
325 | int CMS_unsigned_add1_attr_by_txt(CMS_SignerInfo *si, | ||
326 | const char *attrname, int type, | ||
327 | const void *bytes, int len); | ||
328 | void *CMS_unsigned_get0_data_by_OBJ(CMS_SignerInfo *si, ASN1_OBJECT *oid, | 298 | void *CMS_unsigned_get0_data_by_OBJ(CMS_SignerInfo *si, ASN1_OBJECT *oid, |
329 | int lastpos, int type); | 299 | int lastpos, int type); |
330 | 300 | ||
331 | # ifdef HEADER_X509V3_H | 301 | #ifdef HEADER_X509V3_H |
332 | 302 | ||
333 | int CMS_get1_ReceiptRequest(CMS_SignerInfo *si, CMS_ReceiptRequest **prr); | 303 | int CMS_get1_ReceiptRequest(CMS_SignerInfo *si, CMS_ReceiptRequest **prr); |
334 | CMS_ReceiptRequest *CMS_ReceiptRequest_create0(unsigned char *id, int idlen, | 304 | CMS_ReceiptRequest *CMS_ReceiptRequest_create0(unsigned char *id, int idlen, |
335 | int allorfirst, | 305 | int allorfirst, STACK_OF(GENERAL_NAMES) *receiptList, |
336 | STACK_OF(GENERAL_NAMES) | 306 | STACK_OF(GENERAL_NAMES) *receiptsTo); |
337 | *receiptList, STACK_OF(GENERAL_NAMES) | ||
338 | *receiptsTo); | ||
339 | int CMS_add1_ReceiptRequest(CMS_SignerInfo *si, CMS_ReceiptRequest *rr); | 307 | int CMS_add1_ReceiptRequest(CMS_SignerInfo *si, CMS_ReceiptRequest *rr); |
340 | void CMS_ReceiptRequest_get0_values(CMS_ReceiptRequest *rr, | 308 | void CMS_ReceiptRequest_get0_values(CMS_ReceiptRequest *rr, ASN1_STRING **pcid, |
341 | ASN1_STRING **pcid, | 309 | int *pallorfirst, STACK_OF(GENERAL_NAMES) **plist, |
342 | int *pallorfirst, | 310 | STACK_OF(GENERAL_NAMES) **prto); |
343 | STACK_OF(GENERAL_NAMES) **plist, | 311 | #endif |
344 | STACK_OF(GENERAL_NAMES) **prto); | 312 | int CMS_RecipientInfo_kari_get0_alg(CMS_RecipientInfo *ri, X509_ALGOR **palg, |
345 | # endif | 313 | ASN1_OCTET_STRING **pukm); |
346 | int CMS_RecipientInfo_kari_get0_alg(CMS_RecipientInfo *ri, | 314 | STACK_OF(CMS_RecipientEncryptedKey) * |
347 | X509_ALGOR **palg, | 315 | CMS_RecipientInfo_kari_get0_reks(CMS_RecipientInfo *ri); |
348 | ASN1_OCTET_STRING **pukm); | ||
349 | STACK_OF(CMS_RecipientEncryptedKey) | ||
350 | *CMS_RecipientInfo_kari_get0_reks(CMS_RecipientInfo *ri); | ||
351 | 316 | ||
352 | int CMS_RecipientInfo_kari_get0_orig_id(CMS_RecipientInfo *ri, | 317 | int CMS_RecipientInfo_kari_get0_orig_id(CMS_RecipientInfo *ri, |
353 | X509_ALGOR **pubalg, | 318 | X509_ALGOR **pubalg, ASN1_BIT_STRING **pubkey, ASN1_OCTET_STRING **keyid, |
354 | ASN1_BIT_STRING **pubkey, | 319 | X509_NAME **issuer, ASN1_INTEGER **sno); |
355 | ASN1_OCTET_STRING **keyid, | ||
356 | X509_NAME **issuer, | ||
357 | ASN1_INTEGER **sno); | ||
358 | 320 | ||
359 | int CMS_RecipientInfo_kari_orig_id_cmp(CMS_RecipientInfo *ri, X509 *cert); | 321 | int CMS_RecipientInfo_kari_orig_id_cmp(CMS_RecipientInfo *ri, X509 *cert); |
360 | 322 | ||
361 | int CMS_RecipientEncryptedKey_get0_id(CMS_RecipientEncryptedKey *rek, | 323 | int CMS_RecipientEncryptedKey_get0_id(CMS_RecipientEncryptedKey *rek, |
362 | ASN1_OCTET_STRING **keyid, | 324 | ASN1_OCTET_STRING **keyid, ASN1_GENERALIZEDTIME **tm, |
363 | ASN1_GENERALIZEDTIME **tm, | 325 | CMS_OtherKeyAttribute **other, X509_NAME **issuer, ASN1_INTEGER **sno); |
364 | CMS_OtherKeyAttribute **other, | ||
365 | X509_NAME **issuer, ASN1_INTEGER **sno); | ||
366 | int CMS_RecipientEncryptedKey_cert_cmp(CMS_RecipientEncryptedKey *rek, | 326 | int CMS_RecipientEncryptedKey_cert_cmp(CMS_RecipientEncryptedKey *rek, |
367 | X509 *cert); | 327 | X509 *cert); |
368 | int CMS_RecipientInfo_kari_set0_pkey(CMS_RecipientInfo *ri, EVP_PKEY *pk); | 328 | int CMS_RecipientInfo_kari_set0_pkey(CMS_RecipientInfo *ri, EVP_PKEY *pk); |
369 | EVP_CIPHER_CTX *CMS_RecipientInfo_kari_get0_ctx(CMS_RecipientInfo *ri); | 329 | EVP_CIPHER_CTX *CMS_RecipientInfo_kari_get0_ctx(CMS_RecipientInfo *ri); |
370 | int CMS_RecipientInfo_kari_decrypt(CMS_ContentInfo *cms, | 330 | int CMS_RecipientInfo_kari_decrypt(CMS_ContentInfo *cms, |
371 | CMS_RecipientInfo *ri, | 331 | CMS_RecipientInfo *ri, CMS_RecipientEncryptedKey *rek); |
372 | CMS_RecipientEncryptedKey *rek); | ||
373 | 332 | ||
374 | int CMS_SharedInfo_encode(unsigned char **pder, X509_ALGOR *kekalg, | 333 | int CMS_SharedInfo_encode(unsigned char **pder, X509_ALGOR *kekalg, |
375 | ASN1_OCTET_STRING *ukm, int keylen); | 334 | ASN1_OCTET_STRING *ukm, int keylen); |
376 | 335 | ||
377 | /* Backward compatibility for spelling errors. */ | 336 | /* Backward compatibility for spelling errors. */ |
378 | # define CMS_R_UNKNOWN_DIGEST_ALGORITM CMS_R_UNKNOWN_DIGEST_ALGORITHM | 337 | #define CMS_R_UNKNOWN_DIGEST_ALGORITM CMS_R_UNKNOWN_DIGEST_ALGORITHM |
379 | # define CMS_R_UNSUPPORTED_RECPIENTINFO_TYPE \ | 338 | #define CMS_R_UNSUPPORTED_RECPIENTINFO_TYPE \ |
380 | CMS_R_UNSUPPORTED_RECIPIENTINFO_TYPE | 339 | CMS_R_UNSUPPORTED_RECIPIENTINFO_TYPE |
381 | 340 | ||
382 | int ERR_load_CMS_strings(void); | 341 | int ERR_load_CMS_strings(void); |
@@ -384,177 +343,177 @@ int ERR_load_CMS_strings(void); | |||
384 | /* | 343 | /* |
385 | * CMS function codes. | 344 | * CMS function codes. |
386 | */ | 345 | */ |
387 | # define CMS_F_CHECK_CONTENT 99 | 346 | #define CMS_F_CHECK_CONTENT 99 |
388 | # define CMS_F_CMS_ADD0_CERT 164 | 347 | #define CMS_F_CMS_ADD0_CERT 164 |
389 | # define CMS_F_CMS_ADD0_RECIPIENT_KEY 100 | 348 | #define CMS_F_CMS_ADD0_RECIPIENT_KEY 100 |
390 | # define CMS_F_CMS_ADD0_RECIPIENT_PASSWORD 165 | 349 | #define CMS_F_CMS_ADD0_RECIPIENT_PASSWORD 165 |
391 | # define CMS_F_CMS_ADD1_RECEIPTREQUEST 158 | 350 | #define CMS_F_CMS_ADD1_RECEIPTREQUEST 158 |
392 | # define CMS_F_CMS_ADD1_RECIPIENT_CERT 101 | 351 | #define CMS_F_CMS_ADD1_RECIPIENT_CERT 101 |
393 | # define CMS_F_CMS_ADD1_SIGNER 102 | 352 | #define CMS_F_CMS_ADD1_SIGNER 102 |
394 | # define CMS_F_CMS_ADD1_SIGNINGTIME 103 | 353 | #define CMS_F_CMS_ADD1_SIGNINGTIME 103 |
395 | # define CMS_F_CMS_COMPRESS 104 | 354 | #define CMS_F_CMS_COMPRESS 104 |
396 | # define CMS_F_CMS_COMPRESSEDDATA_CREATE 105 | 355 | #define CMS_F_CMS_COMPRESSEDDATA_CREATE 105 |
397 | # define CMS_F_CMS_COMPRESSEDDATA_INIT_BIO 106 | 356 | #define CMS_F_CMS_COMPRESSEDDATA_INIT_BIO 106 |
398 | # define CMS_F_CMS_COPY_CONTENT 107 | 357 | #define CMS_F_CMS_COPY_CONTENT 107 |
399 | # define CMS_F_CMS_COPY_MESSAGEDIGEST 108 | 358 | #define CMS_F_CMS_COPY_MESSAGEDIGEST 108 |
400 | # define CMS_F_CMS_DATA 109 | 359 | #define CMS_F_CMS_DATA 109 |
401 | # define CMS_F_CMS_DATAFINAL 110 | 360 | #define CMS_F_CMS_DATAFINAL 110 |
402 | # define CMS_F_CMS_DATAINIT 111 | 361 | #define CMS_F_CMS_DATAINIT 111 |
403 | # define CMS_F_CMS_DECRYPT 112 | 362 | #define CMS_F_CMS_DECRYPT 112 |
404 | # define CMS_F_CMS_DECRYPT_SET1_KEY 113 | 363 | #define CMS_F_CMS_DECRYPT_SET1_KEY 113 |
405 | # define CMS_F_CMS_DECRYPT_SET1_PASSWORD 166 | 364 | #define CMS_F_CMS_DECRYPT_SET1_PASSWORD 166 |
406 | # define CMS_F_CMS_DECRYPT_SET1_PKEY 114 | 365 | #define CMS_F_CMS_DECRYPT_SET1_PKEY 114 |
407 | # define CMS_F_CMS_DIGESTALGORITHM_FIND_CTX 115 | 366 | #define CMS_F_CMS_DIGESTALGORITHM_FIND_CTX 115 |
408 | # define CMS_F_CMS_DIGESTALGORITHM_INIT_BIO 116 | 367 | #define CMS_F_CMS_DIGESTALGORITHM_INIT_BIO 116 |
409 | # define CMS_F_CMS_DIGESTEDDATA_DO_FINAL 117 | 368 | #define CMS_F_CMS_DIGESTEDDATA_DO_FINAL 117 |
410 | # define CMS_F_CMS_DIGEST_VERIFY 118 | 369 | #define CMS_F_CMS_DIGEST_VERIFY 118 |
411 | # define CMS_F_CMS_ENCODE_RECEIPT 161 | 370 | #define CMS_F_CMS_ENCODE_RECEIPT 161 |
412 | # define CMS_F_CMS_ENCRYPT 119 | 371 | #define CMS_F_CMS_ENCRYPT 119 |
413 | # define CMS_F_CMS_ENCRYPTEDCONTENT_INIT 179 | 372 | #define CMS_F_CMS_ENCRYPTEDCONTENT_INIT 179 |
414 | # define CMS_F_CMS_ENCRYPTEDCONTENT_INIT_BIO 120 | 373 | #define CMS_F_CMS_ENCRYPTEDCONTENT_INIT_BIO 120 |
415 | # define CMS_F_CMS_ENCRYPTEDDATA_DECRYPT 121 | 374 | #define CMS_F_CMS_ENCRYPTEDDATA_DECRYPT 121 |
416 | # define CMS_F_CMS_ENCRYPTEDDATA_ENCRYPT 122 | 375 | #define CMS_F_CMS_ENCRYPTEDDATA_ENCRYPT 122 |
417 | # define CMS_F_CMS_ENCRYPTEDDATA_SET1_KEY 123 | 376 | #define CMS_F_CMS_ENCRYPTEDDATA_SET1_KEY 123 |
418 | # define CMS_F_CMS_ENVELOPEDDATA_CREATE 124 | 377 | #define CMS_F_CMS_ENVELOPEDDATA_CREATE 124 |
419 | # define CMS_F_CMS_ENVELOPEDDATA_INIT_BIO 125 | 378 | #define CMS_F_CMS_ENVELOPEDDATA_INIT_BIO 125 |
420 | # define CMS_F_CMS_ENVELOPED_DATA_INIT 126 | 379 | #define CMS_F_CMS_ENVELOPED_DATA_INIT 126 |
421 | # define CMS_F_CMS_ENV_ASN1_CTRL 171 | 380 | #define CMS_F_CMS_ENV_ASN1_CTRL 171 |
422 | # define CMS_F_CMS_FINAL 127 | 381 | #define CMS_F_CMS_FINAL 127 |
423 | # define CMS_F_CMS_GET0_CERTIFICATE_CHOICES 128 | 382 | #define CMS_F_CMS_GET0_CERTIFICATE_CHOICES 128 |
424 | # define CMS_F_CMS_GET0_CONTENT 129 | 383 | #define CMS_F_CMS_GET0_CONTENT 129 |
425 | # define CMS_F_CMS_GET0_ECONTENT_TYPE 130 | 384 | #define CMS_F_CMS_GET0_ECONTENT_TYPE 130 |
426 | # define CMS_F_CMS_GET0_ENVELOPED 131 | 385 | #define CMS_F_CMS_GET0_ENVELOPED 131 |
427 | # define CMS_F_CMS_GET0_REVOCATION_CHOICES 132 | 386 | #define CMS_F_CMS_GET0_REVOCATION_CHOICES 132 |
428 | # define CMS_F_CMS_GET0_SIGNED 133 | 387 | #define CMS_F_CMS_GET0_SIGNED 133 |
429 | # define CMS_F_CMS_MSGSIGDIGEST_ADD1 162 | 388 | #define CMS_F_CMS_MSGSIGDIGEST_ADD1 162 |
430 | # define CMS_F_CMS_RECEIPTREQUEST_CREATE0 159 | 389 | #define CMS_F_CMS_RECEIPTREQUEST_CREATE0 159 |
431 | # define CMS_F_CMS_RECEIPT_VERIFY 160 | 390 | #define CMS_F_CMS_RECEIPT_VERIFY 160 |
432 | # define CMS_F_CMS_RECIPIENTINFO_DECRYPT 134 | 391 | #define CMS_F_CMS_RECIPIENTINFO_DECRYPT 134 |
433 | # define CMS_F_CMS_RECIPIENTINFO_ENCRYPT 169 | 392 | #define CMS_F_CMS_RECIPIENTINFO_ENCRYPT 169 |
434 | # define CMS_F_CMS_RECIPIENTINFO_KARI_ENCRYPT 178 | 393 | #define CMS_F_CMS_RECIPIENTINFO_KARI_ENCRYPT 178 |
435 | # define CMS_F_CMS_RECIPIENTINFO_KARI_GET0_ALG 175 | 394 | #define CMS_F_CMS_RECIPIENTINFO_KARI_GET0_ALG 175 |
436 | # define CMS_F_CMS_RECIPIENTINFO_KARI_GET0_ORIG_ID 173 | 395 | #define CMS_F_CMS_RECIPIENTINFO_KARI_GET0_ORIG_ID 173 |
437 | # define CMS_F_CMS_RECIPIENTINFO_KARI_GET0_REKS 172 | 396 | #define CMS_F_CMS_RECIPIENTINFO_KARI_GET0_REKS 172 |
438 | # define CMS_F_CMS_RECIPIENTINFO_KARI_ORIG_ID_CMP 174 | 397 | #define CMS_F_CMS_RECIPIENTINFO_KARI_ORIG_ID_CMP 174 |
439 | # define CMS_F_CMS_RECIPIENTINFO_KEKRI_DECRYPT 135 | 398 | #define CMS_F_CMS_RECIPIENTINFO_KEKRI_DECRYPT 135 |
440 | # define CMS_F_CMS_RECIPIENTINFO_KEKRI_ENCRYPT 136 | 399 | #define CMS_F_CMS_RECIPIENTINFO_KEKRI_ENCRYPT 136 |
441 | # define CMS_F_CMS_RECIPIENTINFO_KEKRI_GET0_ID 137 | 400 | #define CMS_F_CMS_RECIPIENTINFO_KEKRI_GET0_ID 137 |
442 | # define CMS_F_CMS_RECIPIENTINFO_KEKRI_ID_CMP 138 | 401 | #define CMS_F_CMS_RECIPIENTINFO_KEKRI_ID_CMP 138 |
443 | # define CMS_F_CMS_RECIPIENTINFO_KTRI_CERT_CMP 139 | 402 | #define CMS_F_CMS_RECIPIENTINFO_KTRI_CERT_CMP 139 |
444 | # define CMS_F_CMS_RECIPIENTINFO_KTRI_DECRYPT 140 | 403 | #define CMS_F_CMS_RECIPIENTINFO_KTRI_DECRYPT 140 |
445 | # define CMS_F_CMS_RECIPIENTINFO_KTRI_ENCRYPT 141 | 404 | #define CMS_F_CMS_RECIPIENTINFO_KTRI_ENCRYPT 141 |
446 | # define CMS_F_CMS_RECIPIENTINFO_KTRI_GET0_ALGS 142 | 405 | #define CMS_F_CMS_RECIPIENTINFO_KTRI_GET0_ALGS 142 |
447 | # define CMS_F_CMS_RECIPIENTINFO_KTRI_GET0_SIGNER_ID 143 | 406 | #define CMS_F_CMS_RECIPIENTINFO_KTRI_GET0_SIGNER_ID 143 |
448 | # define CMS_F_CMS_RECIPIENTINFO_PWRI_CRYPT 167 | 407 | #define CMS_F_CMS_RECIPIENTINFO_PWRI_CRYPT 167 |
449 | # define CMS_F_CMS_RECIPIENTINFO_SET0_KEY 144 | 408 | #define CMS_F_CMS_RECIPIENTINFO_SET0_KEY 144 |
450 | # define CMS_F_CMS_RECIPIENTINFO_SET0_PASSWORD 168 | 409 | #define CMS_F_CMS_RECIPIENTINFO_SET0_PASSWORD 168 |
451 | # define CMS_F_CMS_RECIPIENTINFO_SET0_PKEY 145 | 410 | #define CMS_F_CMS_RECIPIENTINFO_SET0_PKEY 145 |
452 | # define CMS_F_CMS_SD_ASN1_CTRL 170 | 411 | #define CMS_F_CMS_SD_ASN1_CTRL 170 |
453 | # define CMS_F_CMS_SET1_IAS 176 | 412 | #define CMS_F_CMS_SET1_IAS 176 |
454 | # define CMS_F_CMS_SET1_KEYID 177 | 413 | #define CMS_F_CMS_SET1_KEYID 177 |
455 | # define CMS_F_CMS_SET1_SIGNERIDENTIFIER 146 | 414 | #define CMS_F_CMS_SET1_SIGNERIDENTIFIER 146 |
456 | # define CMS_F_CMS_SET_DETACHED 147 | 415 | #define CMS_F_CMS_SET_DETACHED 147 |
457 | # define CMS_F_CMS_SIGN 148 | 416 | #define CMS_F_CMS_SIGN 148 |
458 | # define CMS_F_CMS_SIGNED_DATA_INIT 149 | 417 | #define CMS_F_CMS_SIGNED_DATA_INIT 149 |
459 | # define CMS_F_CMS_SIGNERINFO_CONTENT_SIGN 150 | 418 | #define CMS_F_CMS_SIGNERINFO_CONTENT_SIGN 150 |
460 | # define CMS_F_CMS_SIGNERINFO_SIGN 151 | 419 | #define CMS_F_CMS_SIGNERINFO_SIGN 151 |
461 | # define CMS_F_CMS_SIGNERINFO_VERIFY 152 | 420 | #define CMS_F_CMS_SIGNERINFO_VERIFY 152 |
462 | # define CMS_F_CMS_SIGNERINFO_VERIFY_CERT 153 | 421 | #define CMS_F_CMS_SIGNERINFO_VERIFY_CERT 153 |
463 | # define CMS_F_CMS_SIGNERINFO_VERIFY_CONTENT 154 | 422 | #define CMS_F_CMS_SIGNERINFO_VERIFY_CONTENT 154 |
464 | # define CMS_F_CMS_SIGN_RECEIPT 163 | 423 | #define CMS_F_CMS_SIGN_RECEIPT 163 |
465 | # define CMS_F_CMS_STREAM 155 | 424 | #define CMS_F_CMS_STREAM 155 |
466 | # define CMS_F_CMS_UNCOMPRESS 156 | 425 | #define CMS_F_CMS_UNCOMPRESS 156 |
467 | # define CMS_F_CMS_VERIFY 157 | 426 | #define CMS_F_CMS_VERIFY 157 |
468 | # define CMS_F_KEK_UNWRAP_KEY 180 | 427 | #define CMS_F_KEK_UNWRAP_KEY 180 |
469 | 428 | ||
470 | /* | 429 | /* |
471 | * CMS reason codes. | 430 | * CMS reason codes. |
472 | */ | 431 | */ |
473 | # define CMS_R_ADD_SIGNER_ERROR 99 | 432 | #define CMS_R_ADD_SIGNER_ERROR 99 |
474 | # define CMS_R_CERTIFICATE_ALREADY_PRESENT 175 | 433 | #define CMS_R_CERTIFICATE_ALREADY_PRESENT 175 |
475 | # define CMS_R_CERTIFICATE_HAS_NO_KEYID 160 | 434 | #define CMS_R_CERTIFICATE_HAS_NO_KEYID 160 |
476 | # define CMS_R_CERTIFICATE_VERIFY_ERROR 100 | 435 | #define CMS_R_CERTIFICATE_VERIFY_ERROR 100 |
477 | # define CMS_R_CIPHER_INITIALISATION_ERROR 101 | 436 | #define CMS_R_CIPHER_INITIALISATION_ERROR 101 |
478 | # define CMS_R_CIPHER_PARAMETER_INITIALISATION_ERROR 102 | 437 | #define CMS_R_CIPHER_PARAMETER_INITIALISATION_ERROR 102 |
479 | # define CMS_R_CMS_DATAFINAL_ERROR 103 | 438 | #define CMS_R_CMS_DATAFINAL_ERROR 103 |
480 | # define CMS_R_CMS_LIB 104 | 439 | #define CMS_R_CMS_LIB 104 |
481 | # define CMS_R_CONTENTIDENTIFIER_MISMATCH 170 | 440 | #define CMS_R_CONTENTIDENTIFIER_MISMATCH 170 |
482 | # define CMS_R_CONTENT_NOT_FOUND 105 | 441 | #define CMS_R_CONTENT_NOT_FOUND 105 |
483 | # define CMS_R_CONTENT_TYPE_MISMATCH 171 | 442 | #define CMS_R_CONTENT_TYPE_MISMATCH 171 |
484 | # define CMS_R_CONTENT_TYPE_NOT_COMPRESSED_DATA 106 | 443 | #define CMS_R_CONTENT_TYPE_NOT_COMPRESSED_DATA 106 |
485 | # define CMS_R_CONTENT_TYPE_NOT_ENVELOPED_DATA 107 | 444 | #define CMS_R_CONTENT_TYPE_NOT_ENVELOPED_DATA 107 |
486 | # define CMS_R_CONTENT_TYPE_NOT_SIGNED_DATA 108 | 445 | #define CMS_R_CONTENT_TYPE_NOT_SIGNED_DATA 108 |
487 | # define CMS_R_CONTENT_VERIFY_ERROR 109 | 446 | #define CMS_R_CONTENT_VERIFY_ERROR 109 |
488 | # define CMS_R_CTRL_ERROR 110 | 447 | #define CMS_R_CTRL_ERROR 110 |
489 | # define CMS_R_CTRL_FAILURE 111 | 448 | #define CMS_R_CTRL_FAILURE 111 |
490 | # define CMS_R_DECRYPT_ERROR 112 | 449 | #define CMS_R_DECRYPT_ERROR 112 |
491 | # define CMS_R_ERROR_GETTING_PUBLIC_KEY 113 | 450 | #define CMS_R_ERROR_GETTING_PUBLIC_KEY 113 |
492 | # define CMS_R_ERROR_READING_MESSAGEDIGEST_ATTRIBUTE 114 | 451 | #define CMS_R_ERROR_READING_MESSAGEDIGEST_ATTRIBUTE 114 |
493 | # define CMS_R_ERROR_SETTING_KEY 115 | 452 | #define CMS_R_ERROR_SETTING_KEY 115 |
494 | # define CMS_R_ERROR_SETTING_RECIPIENTINFO 116 | 453 | #define CMS_R_ERROR_SETTING_RECIPIENTINFO 116 |
495 | # define CMS_R_INVALID_ENCRYPTED_KEY_LENGTH 117 | 454 | #define CMS_R_INVALID_ENCRYPTED_KEY_LENGTH 117 |
496 | # define CMS_R_INVALID_KEY_ENCRYPTION_PARAMETER 176 | 455 | #define CMS_R_INVALID_KEY_ENCRYPTION_PARAMETER 176 |
497 | # define CMS_R_INVALID_KEY_LENGTH 118 | 456 | #define CMS_R_INVALID_KEY_LENGTH 118 |
498 | # define CMS_R_MD_BIO_INIT_ERROR 119 | 457 | #define CMS_R_MD_BIO_INIT_ERROR 119 |
499 | # define CMS_R_MESSAGEDIGEST_ATTRIBUTE_WRONG_LENGTH 120 | 458 | #define CMS_R_MESSAGEDIGEST_ATTRIBUTE_WRONG_LENGTH 120 |
500 | # define CMS_R_MESSAGEDIGEST_WRONG_LENGTH 121 | 459 | #define CMS_R_MESSAGEDIGEST_WRONG_LENGTH 121 |
501 | # define CMS_R_MSGSIGDIGEST_ERROR 172 | 460 | #define CMS_R_MSGSIGDIGEST_ERROR 172 |
502 | # define CMS_R_MSGSIGDIGEST_VERIFICATION_FAILURE 162 | 461 | #define CMS_R_MSGSIGDIGEST_VERIFICATION_FAILURE 162 |
503 | # define CMS_R_MSGSIGDIGEST_WRONG_LENGTH 163 | 462 | #define CMS_R_MSGSIGDIGEST_WRONG_LENGTH 163 |
504 | # define CMS_R_NEED_ONE_SIGNER 164 | 463 | #define CMS_R_NEED_ONE_SIGNER 164 |
505 | # define CMS_R_NOT_A_SIGNED_RECEIPT 165 | 464 | #define CMS_R_NOT_A_SIGNED_RECEIPT 165 |
506 | # define CMS_R_NOT_ENCRYPTED_DATA 122 | 465 | #define CMS_R_NOT_ENCRYPTED_DATA 122 |
507 | # define CMS_R_NOT_KEK 123 | 466 | #define CMS_R_NOT_KEK 123 |
508 | # define CMS_R_NOT_KEY_AGREEMENT 181 | 467 | #define CMS_R_NOT_KEY_AGREEMENT 181 |
509 | # define CMS_R_NOT_KEY_TRANSPORT 124 | 468 | #define CMS_R_NOT_KEY_TRANSPORT 124 |
510 | # define CMS_R_NOT_PWRI 177 | 469 | #define CMS_R_NOT_PWRI 177 |
511 | # define CMS_R_NOT_SUPPORTED_FOR_THIS_KEY_TYPE 125 | 470 | #define CMS_R_NOT_SUPPORTED_FOR_THIS_KEY_TYPE 125 |
512 | # define CMS_R_NO_CIPHER 126 | 471 | #define CMS_R_NO_CIPHER 126 |
513 | # define CMS_R_NO_CONTENT 127 | 472 | #define CMS_R_NO_CONTENT 127 |
514 | # define CMS_R_NO_CONTENT_TYPE 173 | 473 | #define CMS_R_NO_CONTENT_TYPE 173 |
515 | # define CMS_R_NO_DEFAULT_DIGEST 128 | 474 | #define CMS_R_NO_DEFAULT_DIGEST 128 |
516 | # define CMS_R_NO_DIGEST_SET 129 | 475 | #define CMS_R_NO_DIGEST_SET 129 |
517 | # define CMS_R_NO_KEY 130 | 476 | #define CMS_R_NO_KEY 130 |
518 | # define CMS_R_NO_KEY_OR_CERT 174 | 477 | #define CMS_R_NO_KEY_OR_CERT 174 |
519 | # define CMS_R_NO_MATCHING_DIGEST 131 | 478 | #define CMS_R_NO_MATCHING_DIGEST 131 |
520 | # define CMS_R_NO_MATCHING_RECIPIENT 132 | 479 | #define CMS_R_NO_MATCHING_RECIPIENT 132 |
521 | # define CMS_R_NO_MATCHING_SIGNATURE 166 | 480 | #define CMS_R_NO_MATCHING_SIGNATURE 166 |
522 | # define CMS_R_NO_MSGSIGDIGEST 167 | 481 | #define CMS_R_NO_MSGSIGDIGEST 167 |
523 | # define CMS_R_NO_PASSWORD 178 | 482 | #define CMS_R_NO_PASSWORD 178 |
524 | # define CMS_R_NO_PRIVATE_KEY 133 | 483 | #define CMS_R_NO_PRIVATE_KEY 133 |
525 | # define CMS_R_NO_PUBLIC_KEY 134 | 484 | #define CMS_R_NO_PUBLIC_KEY 134 |
526 | # define CMS_R_NO_RECEIPT_REQUEST 168 | 485 | #define CMS_R_NO_RECEIPT_REQUEST 168 |
527 | # define CMS_R_NO_SIGNERS 135 | 486 | #define CMS_R_NO_SIGNERS 135 |
528 | # define CMS_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 136 | 487 | #define CMS_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 136 |
529 | # define CMS_R_RECEIPT_DECODE_ERROR 169 | 488 | #define CMS_R_RECEIPT_DECODE_ERROR 169 |
530 | # define CMS_R_RECIPIENT_ERROR 137 | 489 | #define CMS_R_RECIPIENT_ERROR 137 |
531 | # define CMS_R_SIGNER_CERTIFICATE_NOT_FOUND 138 | 490 | #define CMS_R_SIGNER_CERTIFICATE_NOT_FOUND 138 |
532 | # define CMS_R_SIGNFINAL_ERROR 139 | 491 | #define CMS_R_SIGNFINAL_ERROR 139 |
533 | # define CMS_R_SMIME_TEXT_ERROR 140 | 492 | #define CMS_R_SMIME_TEXT_ERROR 140 |
534 | # define CMS_R_STORE_INIT_ERROR 141 | 493 | #define CMS_R_STORE_INIT_ERROR 141 |
535 | # define CMS_R_TYPE_NOT_COMPRESSED_DATA 142 | 494 | #define CMS_R_TYPE_NOT_COMPRESSED_DATA 142 |
536 | # define CMS_R_TYPE_NOT_DATA 143 | 495 | #define CMS_R_TYPE_NOT_DATA 143 |
537 | # define CMS_R_TYPE_NOT_DIGESTED_DATA 144 | 496 | #define CMS_R_TYPE_NOT_DIGESTED_DATA 144 |
538 | # define CMS_R_TYPE_NOT_ENCRYPTED_DATA 145 | 497 | #define CMS_R_TYPE_NOT_ENCRYPTED_DATA 145 |
539 | # define CMS_R_TYPE_NOT_ENVELOPED_DATA 146 | 498 | #define CMS_R_TYPE_NOT_ENVELOPED_DATA 146 |
540 | # define CMS_R_UNABLE_TO_FINALIZE_CONTEXT 147 | 499 | #define CMS_R_UNABLE_TO_FINALIZE_CONTEXT 147 |
541 | # define CMS_R_UNKNOWN_CIPHER 148 | 500 | #define CMS_R_UNKNOWN_CIPHER 148 |
542 | # define CMS_R_UNKNOWN_DIGEST_ALGORITHM 149 | 501 | #define CMS_R_UNKNOWN_DIGEST_ALGORITHM 149 |
543 | # define CMS_R_UNKNOWN_ID 150 | 502 | #define CMS_R_UNKNOWN_ID 150 |
544 | # define CMS_R_UNSUPPORTED_COMPRESSION_ALGORITHM 151 | 503 | #define CMS_R_UNSUPPORTED_COMPRESSION_ALGORITHM 151 |
545 | # define CMS_R_UNSUPPORTED_CONTENT_TYPE 152 | 504 | #define CMS_R_UNSUPPORTED_CONTENT_TYPE 152 |
546 | # define CMS_R_UNSUPPORTED_KEK_ALGORITHM 153 | 505 | #define CMS_R_UNSUPPORTED_KEK_ALGORITHM 153 |
547 | # define CMS_R_UNSUPPORTED_KEY_ENCRYPTION_ALGORITHM 179 | 506 | #define CMS_R_UNSUPPORTED_KEY_ENCRYPTION_ALGORITHM 179 |
548 | # define CMS_R_UNSUPPORTED_RECIPIENTINFO_TYPE 155 | 507 | #define CMS_R_UNSUPPORTED_RECIPIENTINFO_TYPE 155 |
549 | # define CMS_R_UNSUPPORTED_RECIPIENT_TYPE 154 | 508 | #define CMS_R_UNSUPPORTED_RECIPIENT_TYPE 154 |
550 | # define CMS_R_UNSUPPORTED_TYPE 156 | 509 | #define CMS_R_UNSUPPORTED_TYPE 156 |
551 | # define CMS_R_UNWRAP_ERROR 157 | 510 | #define CMS_R_UNWRAP_ERROR 157 |
552 | # define CMS_R_UNWRAP_FAILURE 180 | 511 | #define CMS_R_UNWRAP_FAILURE 180 |
553 | # define CMS_R_VERIFICATION_FAILURE 158 | 512 | #define CMS_R_VERIFICATION_FAILURE 158 |
554 | # define CMS_R_WRAP_ERROR 159 | 513 | #define CMS_R_WRAP_ERROR 159 |
555 | 514 | ||
556 | # ifdef __cplusplus | 515 | #ifdef __cplusplus |
557 | } | 516 | } |
558 | # endif | 517 | #endif |
559 | # endif | 518 | #endif |
560 | #endif | 519 | #endif |