When using LibreSSL build fails with: ../src/crypto/tls_openssl.o: in function `tls_connection_client_cert': ../src/crypto/tls_openssl.c:2817: undefined reference to `SSL_use_certificate_chain_file' collect2: error: ld returned 1 exit status make: *** [Makefile:1901: wpa_supplicant] Error 1 There is now such function in LibreSSL. Also SSL_OP_NO_TLSv1_3 was not defined till 2.9.0. Signed-off-by: Stefan Strogin <stefan.strogin@xxxxxxxxx> --- src/crypto/tls_openssl.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/crypto/tls_openssl.c b/src/crypto/tls_openssl.c index cb70e2c47..72e655b85 100644 --- a/src/crypto/tls_openssl.c +++ b/src/crypto/tls_openssl.c @@ -2804,7 +2804,7 @@ static int tls_connection_client_cert(struct tls_connection *conn, return 0; } -#if OPENSSL_VERSION_NUMBER >= 0x10100000L +#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) if (SSL_use_certificate_chain_file(conn->ssl, client_cert) == 1) { ERR_clear_error(); wpa_printf(MSG_DEBUG, "OpenSSL: SSL_use_certificate_chain_file" @@ -4486,7 +4486,10 @@ int tls_connection_set_params(void *tls_ctx, struct tls_connection *conn, } } #endif -#if OPENSSL_VERSION_NUMBER >= 0x10101000L +#if (!defined(LIBRESSL_VERSION_NUMBER) && \ + OPENSSL_VERSION_NUMBER >= 0x10100000L) || \ + (defined(LIBRESSL_VERSION_NUMBER) && \ + LIBRESSL_VERSION_NUMBER >= 0x20900000L) #ifdef SSL_OP_NO_TLSv1_3 if (params->flags & TLS_CONN_EAP_FAST) { /* Need to disable TLS v1.3 at least for now since OpenSSL 1.1.1 -- 2.20.1 _______________________________________________ Hostap mailing list Hostap@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/hostap