Respect PEX_LIBS and EX_LIBS when building binaries
[oweals/openssl.git] / crypto / x509 / x509_vfy.h
index faacb01fb83c05e8fd42edfd6464c5a115a4e34a..ecfd4cf9edac31cc03faf5e12ca0543dab71804f 100644 (file)
@@ -127,6 +127,8 @@ typedef struct x509_object_st
 
 typedef struct x509_lookup_st X509_LOOKUP;
 
+DECLARE_STACK_OF(X509_LOOKUP)
+
 /* This is a static that defines the function interface */
 typedef struct x509_lookup_method_st
        {
@@ -164,7 +166,7 @@ typedef struct x509_store_st
 #endif
 
        /* These are external lookup methods */
-       STACK *get_cert_methods;/* X509_LOOKUP */
+       STACK_OF(X509_LOOKUP) *get_cert_methods;
        int (*verify)(X509_STORE_CTX *ctx);     /* called to verify a certificate */
        int (*verify_cb)(int ok,X509_STORE_CTX *ctx);   /* error callback */
 
@@ -205,7 +207,7 @@ struct x509_store_state_st      /* X509_STORE_CTX */
        int depth;              /* how far to go looking up certs */
        int valid;              /* if 0, rebuild chain */
        int last_untrusted;     /* index of last untrusted cert */
-       STACK *chain;           /* chain of X509s - built up and trusted */
+       STACK_OF(X509) *chain;          /* chain of X509s - built up and trusted */
 
        /* When something goes wrong, this is why */
        int error_depth;
@@ -259,6 +261,21 @@ struct x509_store_state_st      /* X509_STORE_CTX */
 /* The application is not happy */
 #define                X509_V_ERR_APPLICATION_VERIFICATION             50
 
+                 /* These functions are being redefined in another directory,
+                    and clash when the linker is case-insensitive, so let's
+                    hide them a little, by giving them an extra 'o' at the
+                    beginning of the name... */
+#ifdef VMS
+#undef X509v3_cleanup_extensions
+#define X509v3_cleanup_extensions oX509v3_cleanup_extensions
+#undef X509v3_add_extension
+#define X509v3_add_extension oX509v3_add_extension
+#undef X509v3_add_netscape_extensions
+#define X509v3_add_netscape_extensions oX509v3_add_netscape_extensions
+#undef X509v3_add_standard_extensions
+#define X509v3_add_standard_extensions oX509v3_add_standard_extensions
+#endif
+
 #ifdef HEADER_LHASH_H
 X509_OBJECT *X509_OBJECT_retrieve_by_subject(LHASH *h,int type,X509_NAME *name);
 #endif
@@ -318,7 +335,7 @@ int X509_STORE_CTX_get_error(X509_STORE_CTX *ctx);
 void   X509_STORE_CTX_set_error(X509_STORE_CTX *ctx,int s);
 int    X509_STORE_CTX_get_error_depth(X509_STORE_CTX *ctx);
 X509 * X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx);
-STACK *        X509_STORE_CTX_get_chain(X509_STORE_CTX *ctx);
+STACK_OF(X509) *X509_STORE_CTX_get_chain(X509_STORE_CTX *ctx);
 void   X509_STORE_CTX_set_cert(X509_STORE_CTX *c,X509 *x);
 void   X509_STORE_CTX_set_chain(X509_STORE_CTX *c,STACK_OF(X509) *sk);