📄 pkcs7.h
字号:
#define PKCS7_NOVERIFY 0x20#define PKCS7_DETACHED 0x40#define PKCS7_BINARY 0x80#define PKCS7_NOATTR 0x100#define PKCS7_NOSMIMECAP 0x200/* Flags: for compatibility with older code */#define SMIME_TEXT PKCS7_TEXT#define SMIME_NOCERTS PKCS7_NOCERTS#define SMIME_NOSIGS PKCS7_NOSIGS#define SMIME_NOCHAIN PKCS7_NOCHAIN#define SMIME_NOINTERN PKCS7_NOINTERN#define SMIME_NOVERIFY PKCS7_NOVERIFY#define SMIME_DETACHED PKCS7_DETACHED#define SMIME_BINARY PKCS7_BINARY#define SMIME_NOATTR PKCS7_NOATTRPKCS7_ISSUER_AND_SERIAL *PKCS7_ISSUER_AND_SERIAL_new(void );void PKCS7_ISSUER_AND_SERIAL_free( PKCS7_ISSUER_AND_SERIAL *a);int i2d_PKCS7_ISSUER_AND_SERIAL( PKCS7_ISSUER_AND_SERIAL *a,unsigned char **pp);PKCS7_ISSUER_AND_SERIAL *d2i_PKCS7_ISSUER_AND_SERIAL( PKCS7_ISSUER_AND_SERIAL **a, unsigned char **pp, long length);#ifndef SSLEAY_MACROSint PKCS7_ISSUER_AND_SERIAL_digest(PKCS7_ISSUER_AND_SERIAL *data,const EVP_MD *type, unsigned char *md,unsigned int *len);#ifndef NO_FP_APIPKCS7 *d2i_PKCS7_fp(FILE *fp,PKCS7 **p7);int i2d_PKCS7_fp(FILE *fp,PKCS7 *p7);#endifPKCS7 *PKCS7_dup(PKCS7 *p7);PKCS7 *d2i_PKCS7_bio(BIO *bp,PKCS7 **p7);int i2d_PKCS7_bio(BIO *bp,PKCS7 *p7);#endifPKCS7_SIGNER_INFO *PKCS7_SIGNER_INFO_new(void);void PKCS7_SIGNER_INFO_free(PKCS7_SIGNER_INFO *a);int i2d_PKCS7_SIGNER_INFO(PKCS7_SIGNER_INFO *a, unsigned char **pp);PKCS7_SIGNER_INFO *d2i_PKCS7_SIGNER_INFO(PKCS7_SIGNER_INFO **a, unsigned char **pp,long length);PKCS7_RECIP_INFO *PKCS7_RECIP_INFO_new(void);void PKCS7_RECIP_INFO_free(PKCS7_RECIP_INFO *a);int i2d_PKCS7_RECIP_INFO(PKCS7_RECIP_INFO *a, unsigned char **pp);PKCS7_RECIP_INFO *d2i_PKCS7_RECIP_INFO(PKCS7_RECIP_INFO **a, unsigned char **pp,long length);PKCS7_SIGNED *PKCS7_SIGNED_new(void);void PKCS7_SIGNED_free(PKCS7_SIGNED *a);int i2d_PKCS7_SIGNED(PKCS7_SIGNED *a, unsigned char **pp);PKCS7_SIGNED *d2i_PKCS7_SIGNED(PKCS7_SIGNED **a, unsigned char **pp,long length);PKCS7_ENC_CONTENT *PKCS7_ENC_CONTENT_new(void);void PKCS7_ENC_CONTENT_free(PKCS7_ENC_CONTENT *a);int i2d_PKCS7_ENC_CONTENT(PKCS7_ENC_CONTENT *a, unsigned char **pp);PKCS7_ENC_CONTENT *d2i_PKCS7_ENC_CONTENT(PKCS7_ENC_CONTENT **a, unsigned char **pp,long length);PKCS7_ENVELOPE *PKCS7_ENVELOPE_new(void);void PKCS7_ENVELOPE_free(PKCS7_ENVELOPE *a);int i2d_PKCS7_ENVELOPE(PKCS7_ENVELOPE *a, unsigned char **pp);PKCS7_ENVELOPE *d2i_PKCS7_ENVELOPE(PKCS7_ENVELOPE **a, unsigned char **pp,long length);PKCS7_SIGN_ENVELOPE *PKCS7_SIGN_ENVELOPE_new(void);void PKCS7_SIGN_ENVELOPE_free(PKCS7_SIGN_ENVELOPE *a);int i2d_PKCS7_SIGN_ENVELOPE(PKCS7_SIGN_ENVELOPE *a, unsigned char **pp);PKCS7_SIGN_ENVELOPE *d2i_PKCS7_SIGN_ENVELOPE(PKCS7_SIGN_ENVELOPE **a, unsigned char **pp,long length);PKCS7_DIGEST *PKCS7_DIGEST_new(void);void PKCS7_DIGEST_free(PKCS7_DIGEST *a);int i2d_PKCS7_DIGEST(PKCS7_DIGEST *a, unsigned char **pp);PKCS7_DIGEST *d2i_PKCS7_DIGEST(PKCS7_DIGEST **a, unsigned char **pp,long length);PKCS7_ENCRYPT *PKCS7_ENCRYPT_new(void);void PKCS7_ENCRYPT_free(PKCS7_ENCRYPT *a);int i2d_PKCS7_ENCRYPT(PKCS7_ENCRYPT *a, unsigned char **pp);PKCS7_ENCRYPT *d2i_PKCS7_ENCRYPT(PKCS7_ENCRYPT **a, unsigned char **pp,long length);PKCS7 *PKCS7_new(void);void PKCS7_free(PKCS7 *a);void PKCS7_content_free(PKCS7 *a);int i2d_PKCS7(PKCS7 *a, unsigned char **pp);PKCS7 *d2i_PKCS7(PKCS7 **a, unsigned char **pp,long length);long PKCS7_ctrl(PKCS7 *p7, int cmd, long larg, char *parg);int PKCS7_set_type(PKCS7 *p7, int type);int PKCS7_set_content(PKCS7 *p7, PKCS7 *p7_data);int PKCS7_SIGNER_INFO_set(PKCS7_SIGNER_INFO *p7i, X509 *x509, EVP_PKEY *pkey, EVP_MD *dgst);int PKCS7_add_signer(PKCS7 *p7, PKCS7_SIGNER_INFO *p7i);int PKCS7_add_certificate(PKCS7 *p7, X509 *x509);int PKCS7_add_crl(PKCS7 *p7, X509_CRL *x509);int PKCS7_content_new(PKCS7 *p7, int nid);int PKCS7_dataVerify(X509_STORE *cert_store, X509_STORE_CTX *ctx, BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si); int PKCS7_signatureVerify(BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si, X509 *x509);BIO *PKCS7_dataInit(PKCS7 *p7, BIO *bio);int PKCS7_dataFinal(PKCS7 *p7, BIO *bio);BIO *PKCS7_dataDecode(PKCS7 *p7, EVP_PKEY *pkey, BIO *in_bio, X509 *pcert);PKCS7_SIGNER_INFO *PKCS7_add_signature(PKCS7 *p7, X509 *x509, EVP_PKEY *pkey, EVP_MD *dgst);X509 *PKCS7_cert_from_signer_info(PKCS7 *p7, PKCS7_SIGNER_INFO *si);STACK_OF(PKCS7_SIGNER_INFO) *PKCS7_get_signer_info(PKCS7 *p7);PKCS7_RECIP_INFO *PKCS7_add_recipient(PKCS7 *p7, X509 *x509);int PKCS7_add_recipient_info(PKCS7 *p7, PKCS7_RECIP_INFO *ri);int PKCS7_RECIP_INFO_set(PKCS7_RECIP_INFO *p7i, X509 *x509);int PKCS7_set_cipher(PKCS7 *p7, const EVP_CIPHER *cipher);PKCS7_ISSUER_AND_SERIAL *PKCS7_get_issuer_and_serial(PKCS7 *p7, int idx);ASN1_OCTET_STRING *PKCS7_digest_from_attributes(STACK_OF(X509_ATTRIBUTE) *sk);int PKCS7_add_signed_attribute(PKCS7_SIGNER_INFO *p7si,int nid,int type, void *data);int PKCS7_add_attribute (PKCS7_SIGNER_INFO *p7si, int nid, int atrtype, void *value);ASN1_TYPE *PKCS7_get_attribute(PKCS7_SIGNER_INFO *si, int nid);ASN1_TYPE *PKCS7_get_signed_attribute(PKCS7_SIGNER_INFO *si, int nid);int PKCS7_set_signed_attributes(PKCS7_SIGNER_INFO *p7si, STACK_OF(X509_ATTRIBUTE) *sk);int PKCS7_set_attributes(PKCS7_SIGNER_INFO *p7si,STACK_OF(X509_ATTRIBUTE) *sk);PKCS7 *PKCS7_sign(X509 *signcert, EVP_PKEY *pkey, STACK_OF(X509) *certs, BIO *data, int flags);int PKCS7_verify(PKCS7 *p7, STACK_OF(X509) *certs, X509_STORE *store, BIO *indata, BIO *out, int flags);STACK_OF(X509) *PKCS7_get0_signers(PKCS7 *p7, STACK_OF(X509) *certs, int flags);PKCS7 *PKCS7_encrypt(STACK_OF(X509) *certs, BIO *in, EVP_CIPHER *cipher, int flags);int PKCS7_decrypt(PKCS7 *p7, EVP_PKEY *pkey, X509 *cert, BIO *data, int flags);int PKCS7_add_attrib_smimecap(PKCS7_SIGNER_INFO *si, STACK_OF(X509_ALGOR) *cap);STACK_OF(X509_ALGOR) *PKCS7_get_smimecap(PKCS7_SIGNER_INFO *si);int PKCS7_simple_smimecap(STACK_OF(X509_ALGOR) *sk, int nid, int arg);int SMIME_write_PKCS7(BIO *bio, PKCS7 *p7, BIO *data, int flags);PKCS7 *SMIME_read_PKCS7(BIO *bio, BIO **bcont);int SMIME_crlf_copy(BIO *in, BIO *out, int flags);int SMIME_text(BIO *in, BIO *out);/* BEGIN ERROR CODES *//* The following lines are auto generated by the script mkerr.pl. Any changes * made after this point may be overwritten when the script is next run. */void ERR_load_PKCS7_strings(void);/* Error codes for the PKCS7 functions. *//* Function codes. */#define PKCS7_F_B64_READ_PKCS7 120#define PKCS7_F_B64_WRITE_PKCS7 121#define PKCS7_F_PKCS7_ADD_ATTRIB_SMIMECAP 118#define PKCS7_F_PKCS7_ADD_CERTIFICATE 100#define PKCS7_F_PKCS7_ADD_CRL 101#define PKCS7_F_PKCS7_ADD_RECIPIENT_INFO 102#define PKCS7_F_PKCS7_ADD_SIGNER 103#define PKCS7_F_PKCS7_CTRL 104#define PKCS7_F_PKCS7_DATADECODE 112#define PKCS7_F_PKCS7_DATAINIT 105#define PKCS7_F_PKCS7_DATASIGN 106#define PKCS7_F_PKCS7_DATAVERIFY 107#define PKCS7_F_PKCS7_DECRYPT 114#define PKCS7_F_PKCS7_ENCRYPT 115#define PKCS7_F_PKCS7_GET0_SIGNERS 124#define PKCS7_F_PKCS7_SET_CIPHER 108#define PKCS7_F_PKCS7_SET_CONTENT 109#define PKCS7_F_PKCS7_SET_TYPE 110#define PKCS7_F_PKCS7_SIGN 116#define PKCS7_F_PKCS7_SIGNATUREVERIFY 113#define PKCS7_F_PKCS7_SIMPLE_SMIMECAP 119#define PKCS7_F_PKCS7_VERIFY 117#define PKCS7_F_SMIME_READ_PKCS7 122#define PKCS7_F_SMIME_TEXT 123/* Reason codes. */#define PKCS7_R_CERTIFICATE_VERIFY_ERROR 117#define PKCS7_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER 144#define PKCS7_R_CIPHER_NOT_INITIALIZED 116#define PKCS7_R_CONTENT_AND_DATA_PRESENT 118#define PKCS7_R_DECODE_ERROR 130#define PKCS7_R_DECRYPTED_KEY_IS_WRONG_LENGTH 100#define PKCS7_R_DECRYPT_ERROR 119#define PKCS7_R_DIGEST_FAILURE 101#define PKCS7_R_ERROR_ADDING_RECIPIENT 120#define PKCS7_R_ERROR_SETTING_CIPHER 121#define PKCS7_R_INTERNAL_ERROR 102#define PKCS7_R_INVALID_MIME_TYPE 131#define PKCS7_R_INVALID_NULL_POINTER 143#define PKCS7_R_MIME_NO_CONTENT_TYPE 132#define PKCS7_R_MIME_PARSE_ERROR 133#define PKCS7_R_MIME_SIG_PARSE_ERROR 134#define PKCS7_R_MISSING_CERIPEND_INFO 103#define PKCS7_R_NO_CONTENT 122#define PKCS7_R_NO_CONTENT_TYPE 135#define PKCS7_R_NO_MULTIPART_BODY_FAILURE 136#define PKCS7_R_NO_MULTIPART_BOUNDARY 137#define PKCS7_R_NO_RECIPIENT_MATCHES_CERTIFICATE 115#define PKCS7_R_NO_SIGNATURES_ON_DATA 123#define PKCS7_R_NO_SIGNERS 142#define PKCS7_R_NO_SIG_CONTENT_TYPE 138#define PKCS7_R_OPERATION_NOT_SUPPORTED_ON_THIS_TYPE 104#define PKCS7_R_PKCS7_ADD_SIGNATURE_ERROR 124#define PKCS7_R_PKCS7_DATAFINAL_ERROR 125#define PKCS7_R_PKCS7_DATASIGN 126#define PKCS7_R_PKCS7_PARSE_ERROR 139#define PKCS7_R_PKCS7_SIG_PARSE_ERROR 140#define PKCS7_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 127#define PKCS7_R_SIGNATURE_FAILURE 105#define PKCS7_R_SIGNER_CERTIFICATE_NOT_FOUND 128#define PKCS7_R_SIG_INVALID_MIME_TYPE 141#define PKCS7_R_SMIME_TEXT_ERROR 129#define PKCS7_R_UNABLE_TO_FIND_CERTIFICATE 106#define PKCS7_R_UNABLE_TO_FIND_MEM_BIO 107#define PKCS7_R_UNABLE_TO_FIND_MESSAGE_DIGEST 108#define PKCS7_R_UNKNOWN_DIGEST_TYPE 109#define PKCS7_R_UNKNOWN_OPERATION 110#define PKCS7_R_UNSUPPORTED_CIPHER_TYPE 111#define PKCS7_R_UNSUPPORTED_CONTENT_TYPE 112#define PKCS7_R_WRONG_CONTENT_TYPE 113#define PKCS7_R_WRONG_PKCS7_TYPE 114#ifdef __cplusplus}#endif#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -