From e7d0d2e9dcaa0ff1197fb7beee139b6a5bd35c79 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Fri, 1 Jan 2021 22:04:18 +0100 Subject: [PATCH] wolfssl: Fix hostapd build with wolfssl 4.6.0 This fixes the following build problem in hostapd: mipsel-openwrt-linux-musl/bin/ld: /builder/shared-workdir/build/tmp/ccN4Wwer.ltrans7.ltrans.o: in function `crypto_ec_point_add': :(.text.crypto_ec_point_add+0x170): undefined reference to `ecc_projective_add_point' mipsel-openwrt-linux-musl/bin/ld: :(.text.crypto_ec_point_add+0x18c): undefined reference to `ecc_map' mipsel-openwrt-linux-musl/bin/ld: /builder/shared-workdir/build/tmp/ccN4Wwer.ltrans7.ltrans.o: in function `crypto_ec_point_to_bin': :(.text.crypto_ec_point_to_bin+0x40): undefined reference to `ecc_map' Fixes: ba40da9045f7 ("wolfssl: Update to v4.6.0-stable") Signed-off-by: Hauke Mehrtens --- ...Fix-linking-against-hostapd-with-LTO.patch | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 package/libs/wolfssl/patches/110-Fix-linking-against-hostapd-with-LTO.patch diff --git a/package/libs/wolfssl/patches/110-Fix-linking-against-hostapd-with-LTO.patch b/package/libs/wolfssl/patches/110-Fix-linking-against-hostapd-with-LTO.patch new file mode 100644 index 0000000000..c24a15116f --- /dev/null +++ b/package/libs/wolfssl/patches/110-Fix-linking-against-hostapd-with-LTO.patch @@ -0,0 +1,25 @@ +From 391ecbd647c121300dc7dcf209e412ccb7b8d432 Mon Sep 17 00:00:00 2001 +From: Hauke Mehrtens +Date: Fri, 1 Jan 2021 21:57:56 +0100 +Subject: [PATCH] Fix linking against hostapd with LTO + +When running LTO on wolfssl the ecc_map() function is removed from the +binary by GCC 8.4.0. This function is used by multiple functions from +the crypto_wolfssl.c implementation of hostapd master. + +Fixes: 780e8a4619b6 ("Fixes for building `--enable-wpas=small` with WPA Supplicant v2.7.") +Signed-off-by: Hauke Mehrtens +--- + configure.ac | 1 + + 1 file changed, 1 insertion(+) + +--- a/configure.ac ++++ b/configure.ac +@@ -947,6 +947,7 @@ then + AM_CFLAGS="$AM_CFLAGS -DOPENSSL_EXTRA_X509_SMALL" + + AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_PUBLIC_MP" ++ AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_PUBLIC_ECC_ADD_DBL" + AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_DER_LOAD" + AM_CFLAGS="$AM_CFLAGS -DATOMIC_USER" + AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_KEY_GEN"