forked from OpenDingux/buildroot
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
package/wpa_supplicant: fix static build issue with zlib-ng
Hostapd/wpa_s uses 'crc32' name for IEEE802.11 CRC-32 routine. This name is too generic. Buildroot autobuilder detected configurations that failed to build due to the naming conflict with zlib-ng. Add wpa_supplicant part of the upstream patch that renames 'crc32' function to a less generic 'ieee80211_crc32' name. Fixes: http://autobuild.buildroot.net/results/ac19975f0bf77f4a8ca574c374092ba81cd5a332/ Signed-off-by: Sergey Matyukevich <[email protected]> Signed-off-by: Thomas Petazzoni <[email protected]>
- Loading branch information
1 parent
7d920f9
commit 27e66d7
Showing
1 changed file
with
79 additions
and
0 deletions.
There are no files selected for viewing
79 changes: 79 additions & 0 deletions
79
package/wpa_supplicant/0002-wpa_supplicant-use-a-less-generic-name-for-IEEE802.1.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
From c8af2e431b47d7d900e0c7359705aaa1096d302a Mon Sep 17 00:00:00 2001 | ||
From: Sergey Matyukevich <[email protected]> | ||
Date: Fri, 16 Sep 2022 23:18:50 +0300 | ||
Subject: [PATCH] wpa_supplicant: use a less generic name for IEEE802.11 CRC-32 routine | ||
|
||
Hostapd uses 'crc32' name for IEEE802.11 CRC-32 routine. This name is | ||
too generic. Buildroot autobuilder detected build configuration that | ||
failed to build due to the naming conflict: static linking with openssl | ||
using zlib-ng as a zlib provider, e.g. see: | ||
- http://autobuild.buildroot.net/results/9901df820d3afa4cde78e8ad6d62cb8ce7e69fdb/ | ||
- http://autobuild.buildroot.net/results/ac19975f0bf77f4a8ca574c374092ba81cd5a332/ | ||
|
||
Use a less generic name ieee80211_crc32 for IEEE802.11 CRC-32 routine | ||
to avoid such naming conflicts. | ||
|
||
Upstream: https://w1.fi/cgit/hostap/commit/?id=0c7b3814ca6070a8e930dea09fde08b4058a4ca6 | ||
Signed-off-by: Sergey Matyukevich <[email protected]> | ||
--- | ||
src/ap/hostapd.c | 3 ++- | ||
src/ap/neighbor_db.c | 2 +- | ||
src/utils/crc32.c | 2 +- | ||
src/utils/crc32.h | 2 +- | ||
4 files changed, 5 insertions(+), 4 deletions(-) | ||
|
||
diff --git a/src/ap/hostapd.c b/src/ap/hostapd.c | ||
index 4b88641a2..56c8fb90e 100644 | ||
--- a/src/ap/hostapd.c | ||
+++ b/src/ap/hostapd.c | ||
@@ -1230,7 +1230,8 @@ static int hostapd_setup_bss(struct hostapd_data *hapd, int first) | ||
* Short SSID calculation is identical to FCS and it is defined in | ||
* IEEE P802.11-REVmd/D3.0, 9.4.2.170.3 (Calculating the Short-SSID). | ||
*/ | ||
- conf->ssid.short_ssid = crc32(conf->ssid.ssid, conf->ssid.ssid_len); | ||
+ conf->ssid.short_ssid = ieee80211_crc32(conf->ssid.ssid, | ||
+ conf->ssid.ssid_len); | ||
|
||
if (!hostapd_drv_none(hapd)) { | ||
wpa_printf(MSG_DEBUG, "Using interface %s with hwaddr " MACSTR | ||
diff --git a/src/ap/neighbor_db.c b/src/ap/neighbor_db.c | ||
index 229edd2a9..ef17634c3 100644 | ||
--- a/src/ap/neighbor_db.c | ||
+++ b/src/ap/neighbor_db.c | ||
@@ -136,7 +136,7 @@ int hostapd_neighbor_set(struct hostapd_data *hapd, const u8 *bssid, | ||
|
||
os_memcpy(entry->bssid, bssid, ETH_ALEN); | ||
os_memcpy(&entry->ssid, ssid, sizeof(entry->ssid)); | ||
- entry->short_ssid = crc32(ssid->ssid, ssid->ssid_len); | ||
+ entry->short_ssid = ieee80211_crc32(ssid->ssid, ssid->ssid_len); | ||
|
||
entry->nr = wpabuf_dup(nr); | ||
if (!entry->nr) | ||
diff --git a/src/utils/crc32.c b/src/utils/crc32.c | ||
index 12d9e2a70..371254994 100644 | ||
--- a/src/utils/crc32.c | ||
+++ b/src/utils/crc32.c | ||
@@ -72,7 +72,7 @@ static const u32 crc32_table[256] = { | ||
}; | ||
|
||
|
||
-u32 crc32(const u8 *frame, size_t frame_len) | ||
+u32 ieee80211_crc32(const u8 *frame, size_t frame_len) | ||
{ | ||
size_t i; | ||
u32 crc; | ||
diff --git a/src/utils/crc32.h b/src/utils/crc32.h | ||
index dc31399be..71a19dc5f 100644 | ||
--- a/src/utils/crc32.h | ||
+++ b/src/utils/crc32.h | ||
@@ -9,6 +9,6 @@ | ||
#ifndef CRC32_H | ||
#define CRC32_H | ||
|
||
-u32 crc32(const u8 *frame, size_t frame_len); | ||
+u32 ieee80211_crc32(const u8 *frame, size_t frame_len); | ||
|
||
#endif /* CRC32_H */ | ||
-- | ||
2.37.1 | ||
|