summaryrefslogtreecommitdiff
path: root/src/streams/openssl_legacy.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/streams/openssl_legacy.h')
-rw-r--r--src/streams/openssl_legacy.h57
1 files changed, 39 insertions, 18 deletions
diff --git a/src/streams/openssl_legacy.h b/src/streams/openssl_legacy.h
index 7ccc13838..1f74fd95a 100644
--- a/src/streams/openssl_legacy.h
+++ b/src/streams/openssl_legacy.h
@@ -7,7 +7,9 @@
#ifndef INCLUDE_streams_openssl_legacy_h__
#define INCLUDE_streams_openssl_legacy_h__
-#ifdef GIT_OPENSSL
+#include "streams/openssl_dynamic.h"
+
+#if defined(GIT_OPENSSL) && !defined(GIT_OPENSSL_DYNAMIC)
# include <openssl/ssl.h>
# include <openssl/err.h>
# include <openssl/x509v3.h>
@@ -19,23 +21,42 @@
# endif
#endif
-#ifdef GIT_OPENSSL_LEGACY
-
-extern int OPENSSL_init_ssl(int opts, void *settings);
-extern BIO_METHOD* BIO_meth_new(int type, const char *name);
-extern void BIO_meth_free(BIO_METHOD *biom);
-extern int BIO_meth_set_write(BIO_METHOD *biom, int (*write) (BIO *, const char *, int));
-extern int BIO_meth_set_read(BIO_METHOD *biom, int (*read) (BIO *, char *, int));
-extern int BIO_meth_set_puts(BIO_METHOD *biom, int (*puts) (BIO *, const char *));
-extern int BIO_meth_set_gets(BIO_METHOD *biom, int (*gets) (BIO *, char *, int));
-extern int BIO_meth_set_ctrl(BIO_METHOD *biom, long (*ctrl) (BIO *, int, long, void *));
-extern int BIO_meth_set_create(BIO_METHOD *biom, int (*create) (BIO *));
-extern int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy) (BIO *));
-extern int BIO_get_new_index(void);
-extern void BIO_set_data(BIO *a, void *ptr);
-extern void BIO_set_init(BIO *b, int init);
-extern void *BIO_get_data(BIO *a);
-extern const unsigned char *ASN1_STRING_get0_data(const ASN1_STRING *x);
+#if defined(GIT_OPENSSL_LEGACY) && !defined(GIT_OPENSSL_DYNAMIC)
+# define OPENSSL_init_ssl OPENSSL_init_ssl__legacy
+# define BIO_meth_new BIO_meth_new__legacy
+# define BIO_meth_free BIO_meth_free__legacy
+# define BIO_meth_set_write BIO_meth_set_write__legacy
+# define BIO_meth_set_read BIO_meth_set_read__legacy
+# define BIO_meth_set_puts BIO_meth_set_puts__legacy
+# define BIO_meth_set_gets BIO_meth_set_gets__legacy
+# define BIO_meth_set_ctrl BIO_meth_set_ctrl__legacy
+# define BIO_meth_set_create BIO_meth_set_create__legacy
+# define BIO_meth_set_destroy BIO_meth_set_destroy__legacy
+# define BIO_get_new_index BIO_get_new_index__legacy
+# define BIO_set_data BIO_set_data__legacy
+# define BIO_set_init BIO_set_init__legacy
+# define BIO_get_data BIO_get_data__legacy
+# define ASN1_STRING_get0_data ASN1_STRING_get0_data__legacy
+#endif
+
+#if defined(GIT_OPENSSL_LEGACY) || defined(GIT_OPENSSL_DYNAMIC)
+
+extern int OPENSSL_init_ssl__legacy(uint64_t opts, const void *settings);
+extern BIO_METHOD* BIO_meth_new__legacy(int type, const char *name);
+extern void BIO_meth_free__legacy(BIO_METHOD *biom);
+extern int BIO_meth_set_write__legacy(BIO_METHOD *biom, int (*write) (BIO *, const char *, int));
+extern int BIO_meth_set_read__legacy(BIO_METHOD *biom, int (*read) (BIO *, char *, int));
+extern int BIO_meth_set_puts__legacy(BIO_METHOD *biom, int (*puts) (BIO *, const char *));
+extern int BIO_meth_set_gets__legacy(BIO_METHOD *biom, int (*gets) (BIO *, char *, int));
+extern int BIO_meth_set_ctrl__legacy(BIO_METHOD *biom, long (*ctrl) (BIO *, int, long, void *));
+extern int BIO_meth_set_create__legacy(BIO_METHOD *biom, int (*create) (BIO *));
+extern int BIO_meth_set_destroy__legacy(BIO_METHOD *biom, int (*destroy) (BIO *));
+extern int BIO_get_new_index__legacy(void);
+extern void BIO_set_data__legacy(BIO *a, void *ptr);
+extern void BIO_set_init__legacy(BIO *b, int init);
+extern void *BIO_get_data__legacy(BIO *a);
+extern const unsigned char *ASN1_STRING_get0_data__legacy(const ASN1_STRING *x);
+extern long SSL_CTX_set_options__legacy(SSL_CTX *ctx, long op);
#endif