diff options
Diffstat (limited to '')
| -rw-r--r-- | src/lib/libcrypto/x509/x509.h | 166 |
1 files changed, 133 insertions, 33 deletions
diff --git a/src/lib/libcrypto/x509/x509.h b/src/lib/libcrypto/x509/x509.h index cf00ea5ebe..1c4c44b588 100644 --- a/src/lib/libcrypto/x509/x509.h +++ b/src/lib/libcrypto/x509/x509.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: x509.h,v 1.23 2015/04/12 15:15:51 doug Exp $ */ | 1 | /* $OpenBSD: x509.h,v 1.24 2016/09/04 16:49:24 jsing Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -776,11 +776,25 @@ const char * X509_get_default_private_dir(void ); | |||
| 776 | X509_REQ * X509_to_X509_REQ(X509 *x, EVP_PKEY *pkey, const EVP_MD *md); | 776 | X509_REQ * X509_to_X509_REQ(X509 *x, EVP_PKEY *pkey, const EVP_MD *md); |
| 777 | X509 * X509_REQ_to_X509(X509_REQ *r, int days,EVP_PKEY *pkey); | 777 | X509 * X509_REQ_to_X509(X509_REQ *r, int days,EVP_PKEY *pkey); |
| 778 | 778 | ||
| 779 | DECLARE_ASN1_FUNCTIONS(X509_ALGOR) | 779 | X509_ALGOR *X509_ALGOR_new(void); |
| 780 | DECLARE_ASN1_ENCODE_FUNCTIONS(X509_ALGORS, X509_ALGORS, X509_ALGORS) | 780 | void X509_ALGOR_free(X509_ALGOR *a); |
| 781 | DECLARE_ASN1_FUNCTIONS(X509_VAL) | 781 | X509_ALGOR *d2i_X509_ALGOR(X509_ALGOR **a, const unsigned char **in, long len); |
| 782 | 782 | int i2d_X509_ALGOR(X509_ALGOR *a, unsigned char **out); | |
| 783 | DECLARE_ASN1_FUNCTIONS(X509_PUBKEY) | 783 | extern const ASN1_ITEM X509_ALGOR_it; |
| 784 | X509_ALGORS *d2i_X509_ALGORS(X509_ALGORS **a, const unsigned char **in, long len); | ||
| 785 | int i2d_X509_ALGORS(X509_ALGORS *a, unsigned char **out); | ||
| 786 | extern const ASN1_ITEM X509_ALGORS_it; | ||
| 787 | X509_VAL *X509_VAL_new(void); | ||
| 788 | void X509_VAL_free(X509_VAL *a); | ||
| 789 | X509_VAL *d2i_X509_VAL(X509_VAL **a, const unsigned char **in, long len); | ||
| 790 | int i2d_X509_VAL(X509_VAL *a, unsigned char **out); | ||
| 791 | extern const ASN1_ITEM X509_VAL_it; | ||
| 792 | |||
| 793 | X509_PUBKEY *X509_PUBKEY_new(void); | ||
| 794 | void X509_PUBKEY_free(X509_PUBKEY *a); | ||
| 795 | X509_PUBKEY *d2i_X509_PUBKEY(X509_PUBKEY **a, const unsigned char **in, long len); | ||
| 796 | int i2d_X509_PUBKEY(X509_PUBKEY *a, unsigned char **out); | ||
| 797 | extern const ASN1_ITEM X509_PUBKEY_it; | ||
| 784 | 798 | ||
| 785 | int X509_PUBKEY_set(X509_PUBKEY **x, EVP_PKEY *pkey); | 799 | int X509_PUBKEY_set(X509_PUBKEY **x, EVP_PKEY *pkey); |
| 786 | EVP_PKEY * X509_PUBKEY_get(X509_PUBKEY *key); | 800 | EVP_PKEY * X509_PUBKEY_get(X509_PUBKEY *key); |
| @@ -805,28 +819,74 @@ EC_KEY *d2i_EC_PUBKEY(EC_KEY **a, const unsigned char **pp, | |||
| 805 | long length); | 819 | long length); |
| 806 | #endif | 820 | #endif |
| 807 | 821 | ||
| 808 | DECLARE_ASN1_FUNCTIONS(X509_SIG) | 822 | X509_SIG *X509_SIG_new(void); |
| 809 | DECLARE_ASN1_FUNCTIONS(X509_REQ_INFO) | 823 | void X509_SIG_free(X509_SIG *a); |
| 810 | DECLARE_ASN1_FUNCTIONS(X509_REQ) | 824 | X509_SIG *d2i_X509_SIG(X509_SIG **a, const unsigned char **in, long len); |
| 811 | 825 | int i2d_X509_SIG(X509_SIG *a, unsigned char **out); | |
| 812 | DECLARE_ASN1_FUNCTIONS(X509_ATTRIBUTE) | 826 | extern const ASN1_ITEM X509_SIG_it; |
| 827 | X509_REQ_INFO *X509_REQ_INFO_new(void); | ||
| 828 | void X509_REQ_INFO_free(X509_REQ_INFO *a); | ||
| 829 | X509_REQ_INFO *d2i_X509_REQ_INFO(X509_REQ_INFO **a, const unsigned char **in, long len); | ||
| 830 | int i2d_X509_REQ_INFO(X509_REQ_INFO *a, unsigned char **out); | ||
| 831 | extern const ASN1_ITEM X509_REQ_INFO_it; | ||
| 832 | X509_REQ *X509_REQ_new(void); | ||
| 833 | void X509_REQ_free(X509_REQ *a); | ||
| 834 | X509_REQ *d2i_X509_REQ(X509_REQ **a, const unsigned char **in, long len); | ||
| 835 | int i2d_X509_REQ(X509_REQ *a, unsigned char **out); | ||
| 836 | extern const ASN1_ITEM X509_REQ_it; | ||
| 837 | |||
| 838 | X509_ATTRIBUTE *X509_ATTRIBUTE_new(void); | ||
| 839 | void X509_ATTRIBUTE_free(X509_ATTRIBUTE *a); | ||
| 840 | X509_ATTRIBUTE *d2i_X509_ATTRIBUTE(X509_ATTRIBUTE **a, const unsigned char **in, long len); | ||
| 841 | int i2d_X509_ATTRIBUTE(X509_ATTRIBUTE *a, unsigned char **out); | ||
| 842 | extern const ASN1_ITEM X509_ATTRIBUTE_it; | ||
| 813 | X509_ATTRIBUTE *X509_ATTRIBUTE_create(int nid, int atrtype, void *value); | 843 | X509_ATTRIBUTE *X509_ATTRIBUTE_create(int nid, int atrtype, void *value); |
| 814 | 844 | ||
| 815 | DECLARE_ASN1_FUNCTIONS(X509_EXTENSION) | 845 | X509_EXTENSION *X509_EXTENSION_new(void); |
| 816 | DECLARE_ASN1_ENCODE_FUNCTIONS(X509_EXTENSIONS, X509_EXTENSIONS, X509_EXTENSIONS) | 846 | void X509_EXTENSION_free(X509_EXTENSION *a); |
| 817 | 847 | X509_EXTENSION *d2i_X509_EXTENSION(X509_EXTENSION **a, const unsigned char **in, long len); | |
| 818 | DECLARE_ASN1_FUNCTIONS(X509_NAME_ENTRY) | 848 | int i2d_X509_EXTENSION(X509_EXTENSION *a, unsigned char **out); |
| 819 | 849 | extern const ASN1_ITEM X509_EXTENSION_it; | |
| 820 | DECLARE_ASN1_FUNCTIONS(X509_NAME) | 850 | X509_EXTENSIONS *d2i_X509_EXTENSIONS(X509_EXTENSIONS **a, const unsigned char **in, long len); |
| 851 | int i2d_X509_EXTENSIONS(X509_EXTENSIONS *a, unsigned char **out); | ||
| 852 | extern const ASN1_ITEM X509_EXTENSIONS_it; | ||
| 853 | |||
| 854 | X509_NAME_ENTRY *X509_NAME_ENTRY_new(void); | ||
| 855 | void X509_NAME_ENTRY_free(X509_NAME_ENTRY *a); | ||
| 856 | X509_NAME_ENTRY *d2i_X509_NAME_ENTRY(X509_NAME_ENTRY **a, const unsigned char **in, long len); | ||
| 857 | int i2d_X509_NAME_ENTRY(X509_NAME_ENTRY *a, unsigned char **out); | ||
| 858 | extern const ASN1_ITEM X509_NAME_ENTRY_it; | ||
| 859 | |||
| 860 | X509_NAME *X509_NAME_new(void); | ||
| 861 | void X509_NAME_free(X509_NAME *a); | ||
| 862 | X509_NAME *d2i_X509_NAME(X509_NAME **a, const unsigned char **in, long len); | ||
| 863 | int i2d_X509_NAME(X509_NAME *a, unsigned char **out); | ||
| 864 | extern const ASN1_ITEM X509_NAME_it; | ||
| 821 | 865 | ||
| 822 | int X509_NAME_set(X509_NAME **xn, X509_NAME *name); | 866 | int X509_NAME_set(X509_NAME **xn, X509_NAME *name); |
| 823 | 867 | ||
| 824 | DECLARE_ASN1_FUNCTIONS(X509_CINF) | 868 | X509_CINF *X509_CINF_new(void); |
| 825 | 869 | void X509_CINF_free(X509_CINF *a); | |
| 826 | DECLARE_ASN1_FUNCTIONS(X509) | 870 | X509_CINF *d2i_X509_CINF(X509_CINF **a, const unsigned char **in, long len); |
| 827 | DECLARE_ASN1_FUNCTIONS(X509_CERT_AUX) | 871 | int i2d_X509_CINF(X509_CINF *a, unsigned char **out); |
| 828 | 872 | extern const ASN1_ITEM X509_CINF_it; | |
| 829 | DECLARE_ASN1_FUNCTIONS(X509_CERT_PAIR) | 873 | |
| 874 | X509 *X509_new(void); | ||
| 875 | void X509_free(X509 *a); | ||
| 876 | X509 *d2i_X509(X509 **a, const unsigned char **in, long len); | ||
| 877 | int i2d_X509(X509 *a, unsigned char **out); | ||
| 878 | extern const ASN1_ITEM X509_it; | ||
| 879 | X509_CERT_AUX *X509_CERT_AUX_new(void); | ||
| 880 | void X509_CERT_AUX_free(X509_CERT_AUX *a); | ||
| 881 | X509_CERT_AUX *d2i_X509_CERT_AUX(X509_CERT_AUX **a, const unsigned char **in, long len); | ||
| 882 | int i2d_X509_CERT_AUX(X509_CERT_AUX *a, unsigned char **out); | ||
| 883 | extern const ASN1_ITEM X509_CERT_AUX_it; | ||
| 884 | |||
| 885 | X509_CERT_PAIR *X509_CERT_PAIR_new(void); | ||
| 886 | void X509_CERT_PAIR_free(X509_CERT_PAIR *a); | ||
| 887 | X509_CERT_PAIR *d2i_X509_CERT_PAIR(X509_CERT_PAIR **a, const unsigned char **in, long len); | ||
| 888 | int i2d_X509_CERT_PAIR(X509_CERT_PAIR *a, unsigned char **out); | ||
| 889 | extern const ASN1_ITEM X509_CERT_PAIR_it; | ||
| 830 | 890 | ||
| 831 | int X509_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, | 891 | int X509_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, |
| 832 | CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func); | 892 | CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func); |
| @@ -846,9 +906,21 @@ int X509_add1_reject_object(X509 *x, ASN1_OBJECT *obj); | |||
| 846 | void X509_trust_clear(X509 *x); | 906 | void X509_trust_clear(X509 *x); |
| 847 | void X509_reject_clear(X509 *x); | 907 | void X509_reject_clear(X509 *x); |
| 848 | 908 | ||
| 849 | DECLARE_ASN1_FUNCTIONS(X509_REVOKED) | 909 | X509_REVOKED *X509_REVOKED_new(void); |
| 850 | DECLARE_ASN1_FUNCTIONS(X509_CRL_INFO) | 910 | void X509_REVOKED_free(X509_REVOKED *a); |
| 851 | DECLARE_ASN1_FUNCTIONS(X509_CRL) | 911 | X509_REVOKED *d2i_X509_REVOKED(X509_REVOKED **a, const unsigned char **in, long len); |
| 912 | int i2d_X509_REVOKED(X509_REVOKED *a, unsigned char **out); | ||
| 913 | extern const ASN1_ITEM X509_REVOKED_it; | ||
| 914 | X509_CRL_INFO *X509_CRL_INFO_new(void); | ||
| 915 | void X509_CRL_INFO_free(X509_CRL_INFO *a); | ||
| 916 | X509_CRL_INFO *d2i_X509_CRL_INFO(X509_CRL_INFO **a, const unsigned char **in, long len); | ||
| 917 | int i2d_X509_CRL_INFO(X509_CRL_INFO *a, unsigned char **out); | ||
| 918 | extern const ASN1_ITEM X509_CRL_INFO_it; | ||
| 919 | X509_CRL *X509_CRL_new(void); | ||
| 920 | void X509_CRL_free(X509_CRL *a); | ||
| 921 | X509_CRL *d2i_X509_CRL(X509_CRL **a, const unsigned char **in, long len); | ||
| 922 | int i2d_X509_CRL(X509_CRL *a, unsigned char **out); | ||
| 923 | extern const ASN1_ITEM X509_CRL_it; | ||
| 852 | 924 | ||
| 853 | int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev); | 925 | int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev); |
| 854 | int X509_CRL_get0_by_serial(X509_CRL *crl, | 926 | int X509_CRL_get0_by_serial(X509_CRL *crl, |
| @@ -858,9 +930,21 @@ int X509_CRL_get0_by_cert(X509_CRL *crl, X509_REVOKED **ret, X509 *x); | |||
| 858 | X509_PKEY * X509_PKEY_new(void ); | 930 | X509_PKEY * X509_PKEY_new(void ); |
| 859 | void X509_PKEY_free(X509_PKEY *a); | 931 | void X509_PKEY_free(X509_PKEY *a); |
| 860 | 932 | ||
| 861 | DECLARE_ASN1_FUNCTIONS(NETSCAPE_SPKI) | 933 | NETSCAPE_SPKI *NETSCAPE_SPKI_new(void); |
| 862 | DECLARE_ASN1_FUNCTIONS(NETSCAPE_SPKAC) | 934 | void NETSCAPE_SPKI_free(NETSCAPE_SPKI *a); |
| 863 | DECLARE_ASN1_FUNCTIONS(NETSCAPE_CERT_SEQUENCE) | 935 | NETSCAPE_SPKI *d2i_NETSCAPE_SPKI(NETSCAPE_SPKI **a, const unsigned char **in, long len); |
| 936 | int i2d_NETSCAPE_SPKI(NETSCAPE_SPKI *a, unsigned char **out); | ||
| 937 | extern const ASN1_ITEM NETSCAPE_SPKI_it; | ||
| 938 | NETSCAPE_SPKAC *NETSCAPE_SPKAC_new(void); | ||
| 939 | void NETSCAPE_SPKAC_free(NETSCAPE_SPKAC *a); | ||
| 940 | NETSCAPE_SPKAC *d2i_NETSCAPE_SPKAC(NETSCAPE_SPKAC **a, const unsigned char **in, long len); | ||
| 941 | int i2d_NETSCAPE_SPKAC(NETSCAPE_SPKAC *a, unsigned char **out); | ||
| 942 | extern const ASN1_ITEM NETSCAPE_SPKAC_it; | ||
| 943 | NETSCAPE_CERT_SEQUENCE *NETSCAPE_CERT_SEQUENCE_new(void); | ||
| 944 | void NETSCAPE_CERT_SEQUENCE_free(NETSCAPE_CERT_SEQUENCE *a); | ||
| 945 | NETSCAPE_CERT_SEQUENCE *d2i_NETSCAPE_CERT_SEQUENCE(NETSCAPE_CERT_SEQUENCE **a, const unsigned char **in, long len); | ||
| 946 | int i2d_NETSCAPE_CERT_SEQUENCE(NETSCAPE_CERT_SEQUENCE *a, unsigned char **out); | ||
| 947 | extern const ASN1_ITEM NETSCAPE_CERT_SEQUENCE_it; | ||
| 864 | 948 | ||
| 865 | #ifndef OPENSSL_NO_EVP | 949 | #ifndef OPENSSL_NO_EVP |
| 866 | X509_INFO * X509_INFO_new(void); | 950 | X509_INFO * X509_INFO_new(void); |
| @@ -1127,9 +1211,21 @@ X509 *X509_find_by_issuer_and_serial(STACK_OF(X509) *sk,X509_NAME *name, | |||
| 1127 | ASN1_INTEGER *serial); | 1211 | ASN1_INTEGER *serial); |
| 1128 | X509 *X509_find_by_subject(STACK_OF(X509) *sk,X509_NAME *name); | 1212 | X509 *X509_find_by_subject(STACK_OF(X509) *sk,X509_NAME *name); |
| 1129 | 1213 | ||
| 1130 | DECLARE_ASN1_FUNCTIONS(PBEPARAM) | 1214 | PBEPARAM *PBEPARAM_new(void); |
| 1131 | DECLARE_ASN1_FUNCTIONS(PBE2PARAM) | 1215 | void PBEPARAM_free(PBEPARAM *a); |
| 1132 | DECLARE_ASN1_FUNCTIONS(PBKDF2PARAM) | 1216 | PBEPARAM *d2i_PBEPARAM(PBEPARAM **a, const unsigned char **in, long len); |
| 1217 | int i2d_PBEPARAM(PBEPARAM *a, unsigned char **out); | ||
| 1218 | extern const ASN1_ITEM PBEPARAM_it; | ||
| 1219 | PBE2PARAM *PBE2PARAM_new(void); | ||
| 1220 | void PBE2PARAM_free(PBE2PARAM *a); | ||
| 1221 | PBE2PARAM *d2i_PBE2PARAM(PBE2PARAM **a, const unsigned char **in, long len); | ||
| 1222 | int i2d_PBE2PARAM(PBE2PARAM *a, unsigned char **out); | ||
| 1223 | extern const ASN1_ITEM PBE2PARAM_it; | ||
| 1224 | PBKDF2PARAM *PBKDF2PARAM_new(void); | ||
| 1225 | void PBKDF2PARAM_free(PBKDF2PARAM *a); | ||
| 1226 | PBKDF2PARAM *d2i_PBKDF2PARAM(PBKDF2PARAM **a, const unsigned char **in, long len); | ||
| 1227 | int i2d_PBKDF2PARAM(PBKDF2PARAM *a, unsigned char **out); | ||
| 1228 | extern const ASN1_ITEM PBKDF2PARAM_it; | ||
| 1133 | 1229 | ||
| 1134 | int PKCS5_pbe_set0_algor(X509_ALGOR *algor, int alg, int iter, | 1230 | int PKCS5_pbe_set0_algor(X509_ALGOR *algor, int alg, int iter, |
| 1135 | const unsigned char *salt, int saltlen); | 1231 | const unsigned char *salt, int saltlen); |
| @@ -1147,7 +1243,11 @@ X509_ALGOR *PKCS5_pbkdf2_set(int iter, unsigned char *salt, int saltlen, | |||
| 1147 | 1243 | ||
| 1148 | /* PKCS#8 utilities */ | 1244 | /* PKCS#8 utilities */ |
| 1149 | 1245 | ||
| 1150 | DECLARE_ASN1_FUNCTIONS(PKCS8_PRIV_KEY_INFO) | 1246 | PKCS8_PRIV_KEY_INFO *PKCS8_PRIV_KEY_INFO_new(void); |
| 1247 | void PKCS8_PRIV_KEY_INFO_free(PKCS8_PRIV_KEY_INFO *a); | ||
| 1248 | PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO(PKCS8_PRIV_KEY_INFO **a, const unsigned char **in, long len); | ||
| 1249 | int i2d_PKCS8_PRIV_KEY_INFO(PKCS8_PRIV_KEY_INFO *a, unsigned char **out); | ||
| 1250 | extern const ASN1_ITEM PKCS8_PRIV_KEY_INFO_it; | ||
| 1151 | 1251 | ||
| 1152 | EVP_PKEY *EVP_PKCS82PKEY(PKCS8_PRIV_KEY_INFO *p8); | 1252 | EVP_PKEY *EVP_PKCS82PKEY(PKCS8_PRIV_KEY_INFO *p8); |
| 1153 | PKCS8_PRIV_KEY_INFO *EVP_PKEY2PKCS8(EVP_PKEY *pkey); | 1253 | PKCS8_PRIV_KEY_INFO *EVP_PKEY2PKCS8(EVP_PKEY *pkey); |
