Re: [PATCH] Fix build with LibreSSL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jan 09, 2019 at 12:18:31PM +0200, Stefan Strogin wrote:
> 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.

Do you mean "there is no such function" instead of there now being such
a function? I did not see this in LibreSSL 2.9.0 either.

> Also SSL_OP_NO_TLSv1_3 was not defined till 2.9.0.

Sure, but why would that need a change in tls_openssl.c?

> diff --git 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"

So this makes sense if the "now" in the commit message was a typo.

> @@ -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

But I don't see why this would be needed. That #ifdef SSL_OP_NO_TLSv1_3
takes care of this without having to make the version check any more
complex. At least this builds fine for me against LibreSSL 2.8.3.
 
-- 
Jouni Malinen                                            PGP id EFC895FA

_______________________________________________
Hostap mailing list
Hostap@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/hostap



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux