diff --git a/crypto/bio/b_sock.c b/crypto/bio/b_sock.c index 046de9919..e0038f018 100644 --- a/crypto/bio/b_sock.c +++ b/crypto/bio/b_sock.c @@ -205,7 +205,7 @@ int BIO_sock_init(void) return (1); } -void BIO_sock_cleanup(void) +void bio_sock_cleanup_intern(void) { # ifdef OPENSSL_SYS_WINDOWS if (wsa_init_done) { diff --git a/crypto/init.c b/crypto/init.c index 3bfe4502e..2d50d4deb 100644 --- a/crypto/init.c +++ b/crypto/init.c @@ -59,6 +59,7 @@ #include #include #include +#include #include #include #include @@ -463,7 +464,7 @@ void OPENSSL_cleanup(void) fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " "crypto_cleanup_all_ex_data_intern()\n"); fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " - "BIO_sock_cleanup()\n"); + "bio_sock_cleanup_intern()\n"); fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " "EVP_cleanup()\n"); fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " @@ -485,7 +486,7 @@ void OPENSSL_cleanup(void) #endif crypto_cleanup_all_ex_data_intern(); #ifndef OPENSSL_NO_SOCK - BIO_sock_cleanup(); + bio_sock_cleanup_intern(); #endif EVP_cleanup(); OBJ_cleanup(); diff --git a/include/internal/bio.h b/include/internal/bio.h index b3352ce80..bf5bc18c7 100644 --- a/include/internal/bio.h +++ b/include/internal/bio.h @@ -67,5 +67,4 @@ struct bio_method_st { long (*callback_ctrl) (BIO *, int, bio_info_cb *); }; - - +void bio_sock_cleanup_intern(void); diff --git a/include/openssl/bio.h b/include/openssl/bio.h index e0c638088..97a3d9d46 100644 --- a/include/openssl/bio.h +++ b/include/openssl/bio.h @@ -695,7 +695,9 @@ int BIO_sock_error(int sock); int BIO_socket_ioctl(int fd, long type, void *arg); int BIO_socket_nbio(int fd, int mode); int BIO_sock_init(void); -void BIO_sock_cleanup(void); +#if OPENSSL_API_COMPAT < 0x10100000L +# define BIO_sock_cleanup() +#endif int BIO_set_tcp_ndelay(int sock, int turn_on); DEPRECATEDIN_1_1_0(struct hostent *BIO_gethostbyname(const char *name))