The other log message should have read "Note the DSA change".
[openssl.git] / crypto / x509 / x509.h
index ef7213541410c616a6fbc1ebece39ac4f5756292..813c8adffd7a93eb00c0cdf1593b81d2939ced63 100644 (file)
 #ifndef HEADER_X509_H
 #define HEADER_X509_H
 
-#ifdef VMS
-#undef X509_REVOKED_get_ext_by_critical
-#define X509_REVOKED_get_ext_by_critical X509_REVOKED_get_ext_by_critic
-#endif
-
+#include <openssl/symhacks.h>
 #ifndef NO_BUFFER
 #include <openssl/buffer.h>
 #endif
@@ -213,6 +209,8 @@ DECLARE_ASN1_SET_OF(X509_ATTRIBUTE)
 
 typedef struct X509_req_info_st
        {
+       unsigned char *asn1;
+       int length;
        ASN1_INTEGER *version;
        X509_NAME *subject;
        X509_PUBKEY *pubkey;
@@ -273,6 +271,8 @@ typedef struct x509_st
        unsigned long ex_kusage;
        unsigned long ex_xkusage;
        unsigned long ex_nscert;
+       ASN1_OCTET_STRING *skid;
+       struct AUTHORITY_KEYID_st *akid;
 #ifndef NO_SHA
        unsigned char sha1_hash[SHA_DIGEST_LENGTH];
 #endif
@@ -338,10 +338,10 @@ DECLARE_STACK_OF(X509_TRUST)
 
 #define XN_FLAG_FN_MASK                (0x3 << 21)
 
-#define XN_FLAG_FN_NONE                0               /* No field names */
-#define XN_FLAG_FN_SN          (1 << 21)       /* Object short name */
-#define XN_FLAG_FN_LN          (2 << 21)       /* Object long name */
-#define XN_FLAG_FN_OID         (3 << 21)       /* Always use OIDs */
+#define XN_FLAG_FN_SN          0               /* Object short name */
+#define XN_FLAG_FN_LN          (1 << 21)       /* Object long name */
+#define XN_FLAG_FN_OID         (2 << 21)       /* Always use OIDs */
+#define XN_FLAG_FN_NONE                (3 << 21)       /* No field names */
 
 #define XN_FLAG_SPC_EQ         (1 << 23)       /* Put spaces round '=' */
 
@@ -744,6 +744,8 @@ int i2d_PKCS8_PRIV_KEY_INFO_fp(FILE *fp,PKCS8_PRIV_KEY_INFO *p8inf);
 int i2d_PKCS8PrivateKeyInfo_fp(FILE *fp, EVP_PKEY *key);
 int i2d_PrivateKey_fp(FILE *fp, EVP_PKEY *pkey);
 EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a);
+int i2d_PUBKEY_fp(FILE *fp, EVP_PKEY *pkey);
+EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a);
 #endif
 
 #ifndef NO_BIO
@@ -775,6 +777,8 @@ int i2d_PKCS8_PRIV_KEY_INFO_bio(BIO *bp,PKCS8_PRIV_KEY_INFO *p8inf);
 int i2d_PKCS8PrivateKeyInfo_bio(BIO *bp, EVP_PKEY *key);
 int i2d_PrivateKey_bio(BIO *bp, EVP_PKEY *pkey);
 EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a);
+int i2d_PUBKEY_bio(BIO *bp, EVP_PKEY *pkey);
+EVP_PKEY *d2i_PUBKEY_bio(BIO *bp, EVP_PKEY **a);
 #endif
 
 X509 *X509_dup(X509 *x509);
@@ -792,7 +796,9 @@ RSA *RSAPrivateKey_dup(RSA *rsa);
 
 #endif /* !SSLEAY_MACROS */
 
+int            X509_cmp_time(ASN1_TIME *s, time_t *t);
 int            X509_cmp_current_time(ASN1_TIME *s);
+ASN1_TIME *    X509_time_adj(ASN1_TIME *s, long adj, time_t *t);
 ASN1_TIME *    X509_gmtime_adj(ASN1_TIME *s, long adj);
 
 const char *   X509_get_default_cert_area(void );
@@ -906,6 +912,7 @@ int         i2d_X509_CERT_AUX(X509_CERT_AUX *a,unsigned char **pp);
 X509_CERT_AUX *        d2i_X509_CERT_AUX(X509_CERT_AUX **a,unsigned char **pp,
                                                                long length);
 int X509_alias_set1(X509 *x, unsigned char *name, int len);
+int X509_keyid_set1(X509 *x, unsigned char *id, int len);
 unsigned char * X509_alias_get0(X509 *x, int *len);
 int (*X509_TRUST_set_default(int (*trust)(int , X509 *, int)))(int, X509 *, int);
 int X509_add1_trust_object(X509 *x, ASN1_OBJECT *obj);