diff options
author | Marcel Raad <Marcel.Raad@teamviewer.com> | 2020-08-01 11:51:59 +0200 |
---|---|---|
committer | Marcel Raad <Marcel.Raad@teamviewer.com> | 2020-08-01 17:47:32 +0200 |
commit | c71d8bb56d43405d7fa1f6d9cf4af2c3cdf4cdf1 (patch) | |
tree | f35104aa066da140d004646ff819fe7ce5606dd4 | |
parent | d5bb459ccf1fc5980ae4b95c05b4ecf6454a7599 (diff) | |
download | curl-c71d8bb56d43405d7fa1f6d9cf4af2c3cdf4cdf1.tar.gz |
openssl: fix build with LibreSSL < 2.9.1
`SSL_CTX_add0_chain_cert` and `SSL_CTX_clear_chain_certs` were
introduced in LibreSSL 2.9.1 [0].
[0] https://github.com/libressl-portable/openbsd/commit/0db809ee178457c8170abfae3931d7bd13abf3ef
Closes https://github.com/curl/curl/pull/5757
-rw-r--r-- | lib/vtls/openssl.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/vtls/openssl.c b/lib/vtls/openssl.c index cc18b8c81..1685a4aa4 100644 --- a/lib/vtls/openssl.c +++ b/lib/vtls/openssl.c @@ -619,7 +619,9 @@ SSL_CTX_use_certificate_chain_bio(SSL_CTX *ctx, BIO* in, const char *key_passwd) { /* SSL_CTX_add1_chain_cert introduced in OpenSSL 1.0.2 */ -#if (OPENSSL_VERSION_NUMBER >= 0x1000200fL) /* 1.0.2 or later */ +#if (OPENSSL_VERSION_NUMBER >= 0x1000200fL) && /* OpenSSL 1.0.2 or later */ \ + !(defined(LIBRESSL_VERSION_NUMBER) && \ + (LIBRESSL_VERSION_NUMBER < 0x2090100fL)) /* LibreSSL 2.9.1 or later */ int ret = 0; X509 *x = NULL; void *passwd_callback_userdata = (void *)key_passwd; |