Index: openssl/crypto/x509/x509.h |
=================================================================== |
--- openssl/crypto/x509/x509.h (revision 105093) |
+++ openssl/crypto/x509/x509.h (working copy) |
@@ -157,12 +157,12 @@ |
ASN1_TIME *notAfter; |
} X509_VAL; |
-typedef struct X509_pubkey_st |
+struct X509_pubkey_st |
{ |
X509_ALGOR *algor; |
ASN1_BIT_STRING *public_key; |
EVP_PKEY *pkey; |
- } X509_PUBKEY; |
+ }; |
typedef struct X509_sig_st |
{ |
@@ -191,7 +191,9 @@ |
#else |
char *bytes; |
#endif |
- unsigned long hash; /* Keep the hash around for lookups */ |
+/* unsigned long hash; Keep the hash around for lookups */ |
+ unsigned char *canon_enc; |
+ int canon_enclen; |
} /* X509_NAME */; |
DECLARE_STACK_OF(X509_NAME) |
@@ -256,6 +258,7 @@ |
ASN1_BIT_STRING *issuerUID; /* [ 1 ] optional in v2 */ |
ASN1_BIT_STRING *subjectUID; /* [ 2 ] optional in v2 */ |
STACK_OF(X509_EXTENSION) *extensions; /* [ 3 ] optional in v3 */ |
+ ASN1_ENCODING enc; |
} X509_CINF; |
/* This stuff is certificate "auxiliary info" |
@@ -290,8 +293,11 @@ |
unsigned long ex_xkusage; |
unsigned long ex_nscert; |
ASN1_OCTET_STRING *skid; |
- struct AUTHORITY_KEYID_st *akid; |
+ AUTHORITY_KEYID *akid; |
X509_POLICY_CACHE *policy_cache; |
+ STACK_OF(DIST_POINT) *crldp; |
+ STACK_OF(GENERAL_NAME) *altname; |
+ NAME_CONSTRAINTS *nc; |
#ifndef OPENSSL_NO_RFC3779 |
STACK_OF(IPAddressFamily) *rfc3779_addr; |
struct ASIdentifiers_st *rfc3779_asid; |
@@ -334,10 +340,11 @@ |
#define X509_TRUST_OBJECT_SIGN 5 |
#define X509_TRUST_OCSP_SIGN 6 |
#define X509_TRUST_OCSP_REQUEST 7 |
+#define X509_TRUST_TSA 8 |
/* Keep these up to date! */ |
#define X509_TRUST_MIN 1 |
-#define X509_TRUST_MAX 7 |
+#define X509_TRUST_MAX 8 |
/* trust_flags values */ |
@@ -424,13 +431,17 @@ |
XN_FLAG_FN_LN | \ |
XN_FLAG_FN_ALIGN) |
-typedef struct X509_revoked_st |
+struct x509_revoked_st |
{ |
ASN1_INTEGER *serialNumber; |
ASN1_TIME *revocationDate; |
STACK_OF(X509_EXTENSION) /* optional */ *extensions; |
+ /* Set up if indirect CRL */ |
+ STACK_OF(GENERAL_NAME) *issuer; |
+ /* Revocation reason */ |
+ int reason; |
int sequence; /* load sequence */ |
- } X509_REVOKED; |
+ }; |
DECLARE_STACK_OF(X509_REVOKED) |
DECLARE_ASN1_SET_OF(X509_REVOKED) |
@@ -454,6 +465,22 @@ |
X509_ALGOR *sig_alg; |
ASN1_BIT_STRING *signature; |
int references; |
+ int flags; |
+ /* Copies of various extensions */ |
+ AUTHORITY_KEYID *akid; |
+ ISSUING_DIST_POINT *idp; |
+ /* Convenient breakdown of IDP */ |
+ int idp_flags; |
+ int idp_reasons; |
+ /* CRL and base CRL numbers for delta processing */ |
+ ASN1_INTEGER *crl_number; |
+ ASN1_INTEGER *base_crl_number; |
+#ifndef OPENSSL_NO_SHA |
+ unsigned char sha1_hash[SHA_DIGEST_LENGTH]; |
+#endif |
+ STACK_OF(GENERAL_NAMES) *issuers; |
+ const X509_CRL_METHOD *meth; |
+ void *meth_data; |
} /* X509_CRL */; |
DECLARE_STACK_OF(X509_CRL) |
@@ -552,18 +579,19 @@ |
/* PKCS#8 private key info structure */ |
-typedef struct pkcs8_priv_key_info_st |
+struct pkcs8_priv_key_info_st |
{ |
int broken; /* Flag for various broken formats */ |
#define PKCS8_OK 0 |
#define PKCS8_NO_OCTET 1 |
#define PKCS8_EMBEDDED_PARAM 2 |
#define PKCS8_NS_DB 3 |
+#define PKCS8_NEG_PRIVKEY 4 |
ASN1_INTEGER *version; |
X509_ALGOR *pkeyalg; |
ASN1_TYPE *pkey; /* Should be OCTET STRING but some are broken */ |
STACK_OF(X509_ATTRIBUTE) *attributes; |
- } PKCS8_PRIV_KEY_INFO; |
+ }; |
#ifdef __cplusplus |
} |
@@ -576,151 +604,6 @@ |
extern "C" { |
#endif |
-#ifdef SSLEAY_MACROS |
-#define X509_verify(a,r) ASN1_verify((int (*)())i2d_X509_CINF,a->sig_alg,\ |
- a->signature,(char *)a->cert_info,r) |
-#define X509_REQ_verify(a,r) ASN1_verify((int (*)())i2d_X509_REQ_INFO, \ |
- a->sig_alg,a->signature,(char *)a->req_info,r) |
-#define X509_CRL_verify(a,r) ASN1_verify((int (*)())i2d_X509_CRL_INFO, \ |
- a->sig_alg, a->signature,(char *)a->crl,r) |
- |
-#define X509_sign(x,pkey,md) \ |
- ASN1_sign((int (*)())i2d_X509_CINF, x->cert_info->signature, \ |
- x->sig_alg, x->signature, (char *)x->cert_info,pkey,md) |
-#define X509_REQ_sign(x,pkey,md) \ |
- ASN1_sign((int (*)())i2d_X509_REQ_INFO,x->sig_alg, NULL, \ |
- x->signature, (char *)x->req_info,pkey,md) |
-#define X509_CRL_sign(x,pkey,md) \ |
- ASN1_sign((int (*)())i2d_X509_CRL_INFO,x->crl->sig_alg,x->sig_alg, \ |
- x->signature, (char *)x->crl,pkey,md) |
-#define NETSCAPE_SPKI_sign(x,pkey,md) \ |
- ASN1_sign((int (*)())i2d_NETSCAPE_SPKAC, x->sig_algor,NULL, \ |
- x->signature, (char *)x->spkac,pkey,md) |
- |
-#define X509_dup(x509) (X509 *)ASN1_dup((int (*)())i2d_X509, \ |
- (char *(*)())d2i_X509,(char *)x509) |
-#define X509_ATTRIBUTE_dup(xa) (X509_ATTRIBUTE *)ASN1_dup(\ |
- (int (*)())i2d_X509_ATTRIBUTE, \ |
- (char *(*)())d2i_X509_ATTRIBUTE,(char *)xa) |
-#define X509_EXTENSION_dup(ex) (X509_EXTENSION *)ASN1_dup( \ |
- (int (*)())i2d_X509_EXTENSION, \ |
- (char *(*)())d2i_X509_EXTENSION,(char *)ex) |
-#define d2i_X509_fp(fp,x509) (X509 *)ASN1_d2i_fp((char *(*)())X509_new, \ |
- (char *(*)())d2i_X509, (fp),(unsigned char **)(x509)) |
-#define i2d_X509_fp(fp,x509) ASN1_i2d_fp(i2d_X509,fp,(unsigned char *)x509) |
-#define d2i_X509_bio(bp,x509) (X509 *)ASN1_d2i_bio((char *(*)())X509_new, \ |
- (char *(*)())d2i_X509, (bp),(unsigned char **)(x509)) |
-#define i2d_X509_bio(bp,x509) ASN1_i2d_bio(i2d_X509,bp,(unsigned char *)x509) |
- |
-#define X509_CRL_dup(crl) (X509_CRL *)ASN1_dup((int (*)())i2d_X509_CRL, \ |
- (char *(*)())d2i_X509_CRL,(char *)crl) |
-#define d2i_X509_CRL_fp(fp,crl) (X509_CRL *)ASN1_d2i_fp((char *(*)()) \ |
- X509_CRL_new,(char *(*)())d2i_X509_CRL, (fp),\ |
- (unsigned char **)(crl)) |
-#define i2d_X509_CRL_fp(fp,crl) ASN1_i2d_fp(i2d_X509_CRL,fp,\ |
- (unsigned char *)crl) |
-#define d2i_X509_CRL_bio(bp,crl) (X509_CRL *)ASN1_d2i_bio((char *(*)()) \ |
- X509_CRL_new,(char *(*)())d2i_X509_CRL, (bp),\ |
- (unsigned char **)(crl)) |
-#define i2d_X509_CRL_bio(bp,crl) ASN1_i2d_bio(i2d_X509_CRL,bp,\ |
- (unsigned char *)crl) |
- |
-#define PKCS7_dup(p7) (PKCS7 *)ASN1_dup((int (*)())i2d_PKCS7, \ |
- (char *(*)())d2i_PKCS7,(char *)p7) |
-#define d2i_PKCS7_fp(fp,p7) (PKCS7 *)ASN1_d2i_fp((char *(*)()) \ |
- PKCS7_new,(char *(*)())d2i_PKCS7, (fp),\ |
- (unsigned char **)(p7)) |
-#define i2d_PKCS7_fp(fp,p7) ASN1_i2d_fp(i2d_PKCS7,fp,\ |
- (unsigned char *)p7) |
-#define d2i_PKCS7_bio(bp,p7) (PKCS7 *)ASN1_d2i_bio((char *(*)()) \ |
- PKCS7_new,(char *(*)())d2i_PKCS7, (bp),\ |
- (unsigned char **)(p7)) |
-#define i2d_PKCS7_bio(bp,p7) ASN1_i2d_bio(i2d_PKCS7,bp,\ |
- (unsigned char *)p7) |
- |
-#define X509_REQ_dup(req) (X509_REQ *)ASN1_dup((int (*)())i2d_X509_REQ, \ |
- (char *(*)())d2i_X509_REQ,(char *)req) |
-#define d2i_X509_REQ_fp(fp,req) (X509_REQ *)ASN1_d2i_fp((char *(*)())\ |
- X509_REQ_new, (char *(*)())d2i_X509_REQ, (fp),\ |
- (unsigned char **)(req)) |
-#define i2d_X509_REQ_fp(fp,req) ASN1_i2d_fp(i2d_X509_REQ,fp,\ |
- (unsigned char *)req) |
-#define d2i_X509_REQ_bio(bp,req) (X509_REQ *)ASN1_d2i_bio((char *(*)())\ |
- X509_REQ_new, (char *(*)())d2i_X509_REQ, (bp),\ |
- (unsigned char **)(req)) |
-#define i2d_X509_REQ_bio(bp,req) ASN1_i2d_bio(i2d_X509_REQ,bp,\ |
- (unsigned char *)req) |
- |
-#define RSAPublicKey_dup(rsa) (RSA *)ASN1_dup((int (*)())i2d_RSAPublicKey, \ |
- (char *(*)())d2i_RSAPublicKey,(char *)rsa) |
-#define RSAPrivateKey_dup(rsa) (RSA *)ASN1_dup((int (*)())i2d_RSAPrivateKey, \ |
- (char *(*)())d2i_RSAPrivateKey,(char *)rsa) |
- |
-#define d2i_RSAPrivateKey_fp(fp,rsa) (RSA *)ASN1_d2i_fp((char *(*)())\ |
- RSA_new,(char *(*)())d2i_RSAPrivateKey, (fp), \ |
- (unsigned char **)(rsa)) |
-#define i2d_RSAPrivateKey_fp(fp,rsa) ASN1_i2d_fp(i2d_RSAPrivateKey,fp, \ |
- (unsigned char *)rsa) |
-#define d2i_RSAPrivateKey_bio(bp,rsa) (RSA *)ASN1_d2i_bio((char *(*)())\ |
- RSA_new,(char *(*)())d2i_RSAPrivateKey, (bp), \ |
- (unsigned char **)(rsa)) |
-#define i2d_RSAPrivateKey_bio(bp,rsa) ASN1_i2d_bio(i2d_RSAPrivateKey,bp, \ |
- (unsigned char *)rsa) |
- |
-#define d2i_RSAPublicKey_fp(fp,rsa) (RSA *)ASN1_d2i_fp((char *(*)())\ |
- RSA_new,(char *(*)())d2i_RSAPublicKey, (fp), \ |
- (unsigned char **)(rsa)) |
-#define i2d_RSAPublicKey_fp(fp,rsa) ASN1_i2d_fp(i2d_RSAPublicKey,fp, \ |
- (unsigned char *)rsa) |
-#define d2i_RSAPublicKey_bio(bp,rsa) (RSA *)ASN1_d2i_bio((char *(*)())\ |
- RSA_new,(char *(*)())d2i_RSAPublicKey, (bp), \ |
- (unsigned char **)(rsa)) |
-#define i2d_RSAPublicKey_bio(bp,rsa) ASN1_i2d_bio(i2d_RSAPublicKey,bp, \ |
- (unsigned char *)rsa) |
- |
-#define d2i_DSAPrivateKey_fp(fp,dsa) (DSA *)ASN1_d2i_fp((char *(*)())\ |
- DSA_new,(char *(*)())d2i_DSAPrivateKey, (fp), \ |
- (unsigned char **)(dsa)) |
-#define i2d_DSAPrivateKey_fp(fp,dsa) ASN1_i2d_fp(i2d_DSAPrivateKey,fp, \ |
- (unsigned char *)dsa) |
-#define d2i_DSAPrivateKey_bio(bp,dsa) (DSA *)ASN1_d2i_bio((char *(*)())\ |
- DSA_new,(char *(*)())d2i_DSAPrivateKey, (bp), \ |
- (unsigned char **)(dsa)) |
-#define i2d_DSAPrivateKey_bio(bp,dsa) ASN1_i2d_bio(i2d_DSAPrivateKey,bp, \ |
- (unsigned char *)dsa) |
- |
-#define d2i_ECPrivateKey_fp(fp,ecdsa) (EC_KEY *)ASN1_d2i_fp((char *(*)())\ |
- EC_KEY_new,(char *(*)())d2i_ECPrivateKey, (fp), \ |
- (unsigned char **)(ecdsa)) |
-#define i2d_ECPrivateKey_fp(fp,ecdsa) ASN1_i2d_fp(i2d_ECPrivateKey,fp, \ |
- (unsigned char *)ecdsa) |
-#define d2i_ECPrivateKey_bio(bp,ecdsa) (EC_KEY *)ASN1_d2i_bio((char *(*)())\ |
- EC_KEY_new,(char *(*)())d2i_ECPrivateKey, (bp), \ |
- (unsigned char **)(ecdsa)) |
-#define i2d_ECPrivateKey_bio(bp,ecdsa) ASN1_i2d_bio(i2d_ECPrivateKey,bp, \ |
- (unsigned char *)ecdsa) |
- |
-#define X509_ALGOR_dup(xn) (X509_ALGOR *)ASN1_dup((int (*)())i2d_X509_ALGOR,\ |
- (char *(*)())d2i_X509_ALGOR,(char *)xn) |
- |
-#define X509_NAME_dup(xn) (X509_NAME *)ASN1_dup((int (*)())i2d_X509_NAME, \ |
- (char *(*)())d2i_X509_NAME,(char *)xn) |
-#define X509_NAME_ENTRY_dup(ne) (X509_NAME_ENTRY *)ASN1_dup( \ |
- (int (*)())i2d_X509_NAME_ENTRY, \ |
- (char *(*)())d2i_X509_NAME_ENTRY,\ |
- (char *)ne) |
- |
-#define X509_digest(data,type,md,len) \ |
- ASN1_digest((int (*)())i2d_X509,type,(char *)data,md,len) |
-#define X509_NAME_digest(data,type,md,len) \ |
- ASN1_digest((int (*)())i2d_X509_NAME,type,(char *)data,md,len) |
-#ifndef PKCS7_ISSUER_AND_SERIAL_digest |
-#define PKCS7_ISSUER_AND_SERIAL_digest(data,type,md,len) \ |
- ASN1_digest((int (*)())i2d_PKCS7_ISSUER_AND_SERIAL,type,\ |
- (char *)data,md,len) |
-#endif |
-#endif |
- |
#define X509_EXT_PACK_UNKNOWN 1 |
#define X509_EXT_PACK_STRING 2 |
@@ -741,6 +624,18 @@ |
#define X509_CRL_get_issuer(x) ((x)->crl->issuer) |
#define X509_CRL_get_REVOKED(x) ((x)->crl->revoked) |
+void X509_CRL_set_default_method(const X509_CRL_METHOD *meth); |
+X509_CRL_METHOD *X509_CRL_METHOD_new( |
+ int (*crl_init)(X509_CRL *crl), |
+ int (*crl_free)(X509_CRL *crl), |
+ int (*crl_lookup)(X509_CRL *crl, X509_REVOKED **ret, |
+ ASN1_INTEGER *ser, X509_NAME *issuer), |
+ int (*crl_verify)(X509_CRL *crl, EVP_PKEY *pk)); |
+void X509_CRL_METHOD_free(X509_CRL_METHOD *m); |
+ |
+void X509_CRL_set_meth_data(X509_CRL *crl, void *dat); |
+void *X509_CRL_get_meth_data(X509_CRL *crl); |
+ |
/* This one is only used so that a binary form can output, as in |
* i2d_X509_NAME(X509_get_X509_PUBKEY(x),&buf) */ |
#define X509_get_X509_PUBKEY(x) ((x)->cert_info->key) |
@@ -748,7 +643,6 @@ |
const char *X509_verify_cert_error_string(long n); |
-#ifndef SSLEAY_MACROS |
#ifndef OPENSSL_NO_EVP |
int X509_verify(X509 *a, EVP_PKEY *r); |
@@ -873,11 +767,11 @@ |
X509_NAME *X509_NAME_dup(X509_NAME *xn); |
X509_NAME_ENTRY *X509_NAME_ENTRY_dup(X509_NAME_ENTRY *ne); |
-#endif /* !SSLEAY_MACROS */ |
- |
-int X509_cmp_time(ASN1_TIME *s, time_t *t); |
-int X509_cmp_current_time(ASN1_TIME *s); |
+int X509_cmp_time(const ASN1_TIME *s, time_t *t); |
+int X509_cmp_current_time(const ASN1_TIME *s); |
ASN1_TIME * X509_time_adj(ASN1_TIME *s, long adj, time_t *t); |
+ASN1_TIME * X509_time_adj_ex(ASN1_TIME *s, |
+ int offset_day, long offset_sec, time_t *t); |
ASN1_TIME * X509_gmtime_adj(ASN1_TIME *s, long adj); |
const char * X509_get_default_cert_area(void ); |
@@ -965,6 +859,9 @@ |
DECLARE_ASN1_FUNCTIONS(X509_CRL) |
int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev); |
+int X509_CRL_get0_by_serial(X509_CRL *crl, |
+ X509_REVOKED **ret, ASN1_INTEGER *serial); |
+int X509_CRL_get0_by_cert(X509_CRL *crl, X509_REVOKED **ret, X509 *x); |
X509_PKEY * X509_PKEY_new(void ); |
void X509_PKEY_free(X509_PKEY *a); |
@@ -1008,8 +905,8 @@ |
X509_NAME * X509_get_issuer_name(X509 *a); |
int X509_set_subject_name(X509 *x, X509_NAME *name); |
X509_NAME * X509_get_subject_name(X509 *a); |
-int X509_set_notBefore(X509 *x, ASN1_TIME *tm); |
-int X509_set_notAfter(X509 *x, ASN1_TIME *tm); |
+int X509_set_notBefore(X509 *x, const ASN1_TIME *tm); |
+int X509_set_notAfter(X509 *x, const ASN1_TIME *tm); |
int X509_set_pubkey(X509 *x, EVP_PKEY *pkey); |
EVP_PKEY * X509_get_pubkey(X509 *x); |
ASN1_BIT_STRING * X509_get0_pubkey_bitstr(const X509 *x); |
@@ -1046,8 +943,8 @@ |
int X509_CRL_set_version(X509_CRL *x, long version); |
int X509_CRL_set_issuer_name(X509_CRL *x, X509_NAME *name); |
-int X509_CRL_set_lastUpdate(X509_CRL *x, ASN1_TIME *tm); |
-int X509_CRL_set_nextUpdate(X509_CRL *x, ASN1_TIME *tm); |
+int X509_CRL_set_lastUpdate(X509_CRL *x, const ASN1_TIME *tm); |
+int X509_CRL_set_nextUpdate(X509_CRL *x, const ASN1_TIME *tm); |
int X509_CRL_sort(X509_CRL *crl); |
int X509_REVOKED_set_serialNumber(X509_REVOKED *x, ASN1_INTEGER *serial); |
@@ -1066,11 +963,18 @@ |
int X509_subject_name_cmp(const X509 *a, const X509 *b); |
unsigned long X509_subject_name_hash(X509 *x); |
+#ifndef OPENSSL_NO_MD5 |
+unsigned long X509_issuer_name_hash_old(X509 *a); |
+unsigned long X509_subject_name_hash_old(X509 *x); |
+#endif |
+ |
int X509_cmp(const X509 *a, const X509 *b); |
int X509_NAME_cmp(const X509_NAME *a, const X509_NAME *b); |
unsigned long X509_NAME_hash(X509_NAME *x); |
+unsigned long X509_NAME_hash_old(X509_NAME *x); |
int X509_CRL_cmp(const X509_CRL *a, const X509_CRL *b); |
+int X509_CRL_match(const X509_CRL *a, const X509_CRL *b); |
#ifndef OPENSSL_NO_FP_API |
int X509_print_ex_fp(FILE *bp,X509 *x, unsigned long nmflag, unsigned long cflag); |
int X509_print_fp(FILE *bp,X509 *x); |
@@ -1246,9 +1150,16 @@ |
DECLARE_ASN1_FUNCTIONS(PBE2PARAM) |
DECLARE_ASN1_FUNCTIONS(PBKDF2PARAM) |
-X509_ALGOR *PKCS5_pbe_set(int alg, int iter, unsigned char *salt, int saltlen); |
+int PKCS5_pbe_set0_algor(X509_ALGOR *algor, int alg, int iter, |
+ const unsigned char *salt, int saltlen); |
+ |
+X509_ALGOR *PKCS5_pbe_set(int alg, int iter, |
+ const unsigned char *salt, int saltlen); |
X509_ALGOR *PKCS5_pbe2_set(const EVP_CIPHER *cipher, int iter, |
unsigned char *salt, int saltlen); |
+X509_ALGOR *PKCS5_pbe2_set_iv(const EVP_CIPHER *cipher, int iter, |
+ unsigned char *salt, int saltlen, |
+ unsigned char *aiv, int prf_nid); |
/* PKCS#8 utilities */ |
@@ -1259,6 +1170,22 @@ |
PKCS8_PRIV_KEY_INFO *EVP_PKEY2PKCS8_broken(EVP_PKEY *pkey, int broken); |
PKCS8_PRIV_KEY_INFO *PKCS8_set_broken(PKCS8_PRIV_KEY_INFO *p8, int broken); |
+int PKCS8_pkey_set0(PKCS8_PRIV_KEY_INFO *priv, ASN1_OBJECT *aobj, |
+ int version, int ptype, void *pval, |
+ unsigned char *penc, int penclen); |
+int PKCS8_pkey_get0(ASN1_OBJECT **ppkalg, |
+ const unsigned char **pk, int *ppklen, |
+ X509_ALGOR **pa, |
+ PKCS8_PRIV_KEY_INFO *p8); |
+ |
+int X509_PUBKEY_set0_param(X509_PUBKEY *pub, ASN1_OBJECT *aobj, |
+ int ptype, void *pval, |
+ unsigned char *penc, int penclen); |
+int X509_PUBKEY_get0_param(ASN1_OBJECT **ppkalg, |
+ const unsigned char **pk, int *ppklen, |
+ X509_ALGOR **pa, |
+ X509_PUBKEY *pub); |
+ |
int X509_check_trust(X509 *x, int id, int flags); |
int X509_TRUST_get_count(void); |
X509_TRUST * X509_TRUST_get0(int idx); |
@@ -1338,7 +1265,10 @@ |
#define X509_R_KEY_VALUES_MISMATCH 116 |
#define X509_R_LOADING_CERT_DIR 103 |
#define X509_R_LOADING_DEFAULTS 104 |
+#define X509_R_METHOD_NOT_SUPPORTED 124 |
#define X509_R_NO_CERT_SET_FOR_US_TO_VERIFY 105 |
+#define X509_R_PUBLIC_KEY_DECODE_ERROR 125 |
+#define X509_R_PUBLIC_KEY_ENCODE_ERROR 126 |
#define X509_R_SHOULD_RETRY 106 |
#define X509_R_UNABLE_TO_FIND_PARAMETERS_IN_CHAIN 107 |
#define X509_R_UNABLE_TO_GET_CERTS_PUBLIC_KEY 108 |