telephony/resiprocate: fix upcoming build breakage
In libssl SSL_CTX and other structs will be made opaque. Take the code path using accessors instead of reaching directly into some structs to fix the resulting build breakage. ok feinerer (maintainer)
This commit is contained in:
parent
df3c9db7fb
commit
72d3876ab4
@ -1,4 +1,4 @@
|
||||
# $OpenBSD: Makefile,v 1.2 2020/06/04 20:50:39 naddy Exp $
|
||||
# $OpenBSD: Makefile,v 1.3 2021/05/09 10:52:44 tb Exp $
|
||||
|
||||
COMMENT-main = reSIProcate SIP stack
|
||||
COMMENT-repro = reSIProcate SIP proxy/registrar server
|
||||
@ -6,7 +6,7 @@ COMMENT-return = reSIProcate STUN/TURN client and server
|
||||
|
||||
V = 1.12.0
|
||||
DISTNAME = resiprocate-${V}
|
||||
REVISION = 0
|
||||
REVISION = 1
|
||||
PKGNAME-main = resiprocate-${V}
|
||||
PKGNAME-repro = resiprocate-repro-${V}
|
||||
PKGNAME-return = resiprocate-return-${V}
|
||||
|
@ -0,0 +1,71 @@
|
||||
$OpenBSD: patch-contrib_asio_include_asio_ssl_impl_context_ipp,v 1.1 2021/05/09 10:52:44 tb Exp $
|
||||
|
||||
Use accessors instead of reaching into structs. LibreSSL 3.4.x will
|
||||
make SSL_CTX and other structs opaque.
|
||||
|
||||
Index: contrib/asio/include/asio/ssl/impl/context.ipp
|
||||
--- contrib/asio/include/asio/ssl/impl/context.ipp.orig
|
||||
+++ contrib/asio/include/asio/ssl/impl/context.ipp
|
||||
@@ -386,7 +386,7 @@ context::~context()
|
||||
{
|
||||
if (handle_)
|
||||
{
|
||||
-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
+#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
void* cb_userdata = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
|
||||
#else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
void* cb_userdata = handle_->default_passwd_callback_userdata;
|
||||
@@ -397,7 +397,7 @@ context::~context()
|
||||
static_cast<detail::password_callback_base*>(
|
||||
cb_userdata);
|
||||
delete callback;
|
||||
-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
+#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
::SSL_CTX_set_default_passwd_cb_userdata(handle_, 0);
|
||||
#else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
handle_->default_passwd_callback_userdata = 0;
|
||||
@@ -734,7 +734,7 @@ ASIO_SYNC_OP_VOID context::use_certificate_chain(
|
||||
bio_cleanup bio = { make_buffer_bio(chain) };
|
||||
if (bio.p)
|
||||
{
|
||||
-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
+#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
pem_password_cb* callback = ::SSL_CTX_get_default_passwd_cb(handle_);
|
||||
void* cb_userdata = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
|
||||
#else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
@@ -761,7 +761,7 @@ ASIO_SYNC_OP_VOID context::use_certificate_chain(
|
||||
ASIO_SYNC_OP_VOID_RETURN(ec);
|
||||
}
|
||||
|
||||
-#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
+#if (OPENSSL_VERSION_NUMBER >= 0x10002000L)
|
||||
::SSL_CTX_clear_chain_certs(handle_);
|
||||
#else
|
||||
if (handle_->extra_certs)
|
||||
@@ -838,7 +838,7 @@ ASIO_SYNC_OP_VOID context::use_private_key(
|
||||
{
|
||||
::ERR_clear_error();
|
||||
|
||||
-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
+#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
pem_password_cb* callback = ::SSL_CTX_get_default_passwd_cb(handle_);
|
||||
void* cb_userdata = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
|
||||
#else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
@@ -905,7 +905,7 @@ ASIO_SYNC_OP_VOID context::use_rsa_private_key(
|
||||
{
|
||||
::ERR_clear_error();
|
||||
|
||||
-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
+#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
pem_password_cb* callback = ::SSL_CTX_get_default_passwd_cb(handle_);
|
||||
void* cb_userdata = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
|
||||
#else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
@@ -1144,7 +1144,7 @@ int context::verify_callback_function(int preverified,
|
||||
ASIO_SYNC_OP_VOID context::do_set_password_callback(
|
||||
detail::password_callback_base* callback, asio::error_code& ec)
|
||||
{
|
||||
-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
+#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
||||
void* old_callback = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
|
||||
::SSL_CTX_set_default_passwd_cb_userdata(handle_, callback);
|
||||
#else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
|
Loading…
Reference in New Issue
Block a user