mirror of https://github.com/FreeRDP/FreeRDP
Fix build for upcoming LibreSSL version
SSL will become opaque in LibreSSL 3.4.x, hence the code reaching inside it will result in build breakage. This was done at the time for lack of BIO_up_ref() support, which has been available since LibreSSL 2.7.0, so adjust the relevant #ifdefs accordingly.
This commit is contained in:
parent
c0c9eb5908
commit
9914dbc770
|
@ -323,7 +323,8 @@ static long bio_rdp_tls_ctrl(BIO* bio, int cmd, long num, void* ptr)
|
|||
case BIO_CTRL_PUSH:
|
||||
if (next_bio && (next_bio != ssl_rbio))
|
||||
{
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
|
||||
(defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL)
|
||||
SSL_set_bio(tls->ssl, next_bio, next_bio);
|
||||
CRYPTO_add(&(bio->next_bio->references), 1, CRYPTO_LOCK_BIO);
|
||||
#else
|
||||
|
@ -347,7 +348,8 @@ static long bio_rdp_tls_ctrl(BIO* bio, int cmd, long num, void* ptr)
|
|||
if (ssl_rbio != ssl_wbio)
|
||||
BIO_free_all(ssl_wbio);
|
||||
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
|
||||
(defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL)
|
||||
|
||||
if (next_bio)
|
||||
CRYPTO_add(&(bio->next_bio->references), -1, CRYPTO_LOCK_BIO);
|
||||
|
@ -387,7 +389,8 @@ static long bio_rdp_tls_ctrl(BIO* bio, int cmd, long num, void* ptr)
|
|||
BIO_push(ssl_rbio, next_bio);
|
||||
|
||||
BIO_set_next(bio, ssl_rbio);
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
|
||||
(defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL)
|
||||
CRYPTO_add(&(ssl_rbio->references), 1, CRYPTO_LOCK_BIO);
|
||||
#else
|
||||
BIO_up_ref(ssl_rbio);
|
||||
|
|
Loading…
Reference in New Issue