From 041b94c0ab1981c35f4294afc3f9e4f73ba9056c Mon Sep 17 00:00:00 2001 From: Steffan Karger Date: Thu, 14 Dec 2017 11:21:37 +0100 Subject: [PATCH] ssl_openssl: fix compiler warning by removing getbio() wrapper An API change in openssl 1.1 made the BIO_METHOD * returned by BIO_f_ssl() and BIO_s_mem() const, as well as the BIO_METHOD * argment of BIO_new() const. This meant that our getbio() function would either have an API inconsistent with 1.0 or 1.1. The wrapper was basically an ASSERT, so fix this by replacing the wrapper with an ASSERT. Signed-off-by: Steffan Karger Acked-by: Arne Schwabe Message-Id: <1513246897-28171-1-git-send-email-steffan@karger.me> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg16083.html Signed-off-by: Gert Doering (cherry picked from commit 006d6a57b8835c15222359bfb42c95005723394c) --- src/openvpn/ssl_openssl.c | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/src/openvpn/ssl_openssl.c b/src/openvpn/ssl_openssl.c index dc599becd..5c865c2df 100644 --- a/src/openvpn/ssl_openssl.c +++ b/src/openvpn/ssl_openssl.c @@ -1418,23 +1418,6 @@ bio_debug_oc(const char *mode, BIO *bio) #endif /* ifdef BIO_DEBUG */ -/* - * OpenVPN's interface to SSL/TLS authentication, - * encryption, and decryption is exclusively - * through "memory BIOs". - */ -static BIO * -getbio(BIO_METHOD *type, const char *desc) -{ - BIO *ret; - ret = BIO_new(type); - if (!ret) - { - crypto_msg(M_FATAL, "Error creating %s BIO", desc); - } - return ret; -} - /* * Write to an OpenSSL BIO in non-blocking mode. */ @@ -1576,9 +1559,9 @@ key_state_ssl_init(struct key_state_ssl *ks_ssl, const struct tls_root_ctx *ssl_ * from verify callback*/ SSL_set_ex_data(ks_ssl->ssl, mydata_index, session); - ks_ssl->ssl_bio = getbio(BIO_f_ssl(), "ssl_bio"); - ks_ssl->ct_in = getbio(BIO_s_mem(), "ct_in"); - ks_ssl->ct_out = getbio(BIO_s_mem(), "ct_out"); + ASSERT((ks_ssl->ssl_bio = BIO_new(BIO_f_ssl()))); + ASSERT((ks_ssl->ct_in = BIO_new(BIO_s_mem()))); + ASSERT((ks_ssl->ct_out = BIO_new(BIO_s_mem()))); #ifdef BIO_DEBUG bio_debug_oc("open ssl_bio", ks_ssl->ssl_bio); -- 2.47.2