aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2021-01-01 22:04:18 +0100
committerHauke Mehrtens <hauke@hauke-m.de>2021-01-01 22:10:20 +0100
commite7d0d2e9dcaa0ff1197fb7beee139b6a5bd35c79 (patch)
treedf0c9835f8f25e20ce6773c616b4b3121151259b
parentac25b64350ef2b40bf975e617a3a1b33959a697e (diff)
downloadupstream-e7d0d2e9dcaa0ff1197fb7beee139b6a5bd35c79.tar.gz
upstream-e7d0d2e9dcaa0ff1197fb7beee139b6a5bd35c79.tar.bz2
upstream-e7d0d2e9dcaa0ff1197fb7beee139b6a5bd35c79.zip
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': <artificial>:(.text.crypto_ec_point_add+0x170): undefined reference to `ecc_projective_add_point' mipsel-openwrt-linux-musl/bin/ld: <artificial>:(.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': <artificial>:(.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 <hauke@hauke-m.de>
-rw-r--r--package/libs/wolfssl/patches/110-Fix-linking-against-hostapd-with-LTO.patch25
1 files changed, 25 insertions, 0 deletions
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 <hauke@hauke-m.de>
+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 <hauke@hauke-m.de>
+---
+ 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"