0001-use-a-less-generic-name-for-IEEE802.11-CRC-32-routin.patch 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. From 9896d8c116f054cebc49928404018a75c9b892cb Mon Sep 17 00:00:00 2001
  2. From: Sergey Matyukevich <geomatsi@gmail.com>
  3. Date: Fri, 16 Sep 2022 23:18:50 +0300
  4. Subject: [PATCH] hostapd: use a less generic name for IEEE802.11 CRC-32 routine
  5. Hostapd uses 'crc32' name for IEEE802.11 CRC-32 routine. This name is
  6. too generic. Buildroot autobuilder detected build configuration that
  7. failed to build due to the naming conflict: static linking with openssl
  8. using zlib-ng as a zlib provider, e.g. see:
  9. - http://autobuild.buildroot.net/results/9901df820d3afa4cde78e8ad6d62cb8ce7e69fdb/
  10. - http://autobuild.buildroot.net/results/ac19975f0bf77f4a8ca574c374092ba81cd5a332/
  11. Use a less generic name ieee80211_crc32 for IEEE802.11 CRC-32 routine
  12. to avoid such naming conflicts.
  13. Upstream: https://w1.fi/cgit/hostap/commit/?id=0c7b3814ca6070a8e930dea09fde08b4058a4ca6
  14. Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
  15. ---
  16. hostapd/config_file.c | 4 ++--
  17. src/ap/hostapd.c | 3 ++-
  18. src/ap/neighbor_db.c | 2 +-
  19. src/utils/crc32.c | 2 +-
  20. src/utils/crc32.h | 2 +-
  21. 5 files changed, 7 insertions(+), 6 deletions(-)
  22. diff --git a/hostapd/config_file.c b/hostapd/config_file.c
  23. index b14728d1b..b38a84647 100644
  24. --- a/hostapd/config_file.c
  25. +++ b/hostapd/config_file.c
  26. @@ -2407,7 +2407,7 @@ static int hostapd_config_fill(struct hostapd_config *conf,
  27. }
  28. os_memcpy(ssid->ssid, pos, ssid->ssid_len);
  29. ssid->ssid_set = 1;
  30. - ssid->short_ssid = crc32(ssid->ssid, ssid->ssid_len);
  31. + ssid->short_ssid = ieee80211_crc32(ssid->ssid, ssid->ssid_len);
  32. } else if (os_strcmp(buf, "ssid2") == 0) {
  33. struct hostapd_ssid *ssid = &bss->ssid;
  34. size_t slen;
  35. @@ -2421,7 +2421,7 @@ static int hostapd_config_fill(struct hostapd_config *conf,
  36. os_memcpy(ssid->ssid, str, slen);
  37. ssid->ssid_len = slen;
  38. ssid->ssid_set = 1;
  39. - ssid->short_ssid = crc32(ssid->ssid, ssid->ssid_len);
  40. + ssid->short_ssid = ieee80211_crc32(ssid->ssid, ssid->ssid_len);
  41. os_free(str);
  42. } else if (os_strcmp(buf, "utf8_ssid") == 0) {
  43. bss->ssid.utf8_ssid = atoi(pos) > 0;
  44. diff --git a/src/ap/hostapd.c b/src/ap/hostapd.c
  45. index 4b88641a2..56c8fb90e 100644
  46. --- a/src/ap/hostapd.c
  47. +++ b/src/ap/hostapd.c
  48. @@ -1230,7 +1230,8 @@ static int hostapd_setup_bss(struct hostapd_data *hapd, int first)
  49. * Short SSID calculation is identical to FCS and it is defined in
  50. * IEEE P802.11-REVmd/D3.0, 9.4.2.170.3 (Calculating the Short-SSID).
  51. */
  52. - conf->ssid.short_ssid = crc32(conf->ssid.ssid, conf->ssid.ssid_len);
  53. + conf->ssid.short_ssid = ieee80211_crc32(conf->ssid.ssid,
  54. + conf->ssid.ssid_len);
  55. if (!hostapd_drv_none(hapd)) {
  56. wpa_printf(MSG_DEBUG, "Using interface %s with hwaddr " MACSTR
  57. diff --git a/src/ap/neighbor_db.c b/src/ap/neighbor_db.c
  58. index 229edd2a9..ef17634c3 100644
  59. --- a/src/ap/neighbor_db.c
  60. +++ b/src/ap/neighbor_db.c
  61. @@ -136,7 +136,7 @@ int hostapd_neighbor_set(struct hostapd_data *hapd, const u8 *bssid,
  62. os_memcpy(entry->bssid, bssid, ETH_ALEN);
  63. os_memcpy(&entry->ssid, ssid, sizeof(entry->ssid));
  64. - entry->short_ssid = crc32(ssid->ssid, ssid->ssid_len);
  65. + entry->short_ssid = ieee80211_crc32(ssid->ssid, ssid->ssid_len);
  66. entry->nr = wpabuf_dup(nr);
  67. if (!entry->nr)
  68. diff --git a/src/utils/crc32.c b/src/utils/crc32.c
  69. index 12d9e2a70..371254994 100644
  70. --- a/src/utils/crc32.c
  71. +++ b/src/utils/crc32.c
  72. @@ -72,7 +72,7 @@ static const u32 crc32_table[256] = {
  73. };
  74. -u32 crc32(const u8 *frame, size_t frame_len)
  75. +u32 ieee80211_crc32(const u8 *frame, size_t frame_len)
  76. {
  77. size_t i;
  78. u32 crc;
  79. diff --git a/src/utils/crc32.h b/src/utils/crc32.h
  80. index dc31399be..71a19dc5f 100644
  81. --- a/src/utils/crc32.h
  82. +++ b/src/utils/crc32.h
  83. @@ -9,6 +9,6 @@
  84. #ifndef CRC32_H
  85. #define CRC32_H
  86. -u32 crc32(const u8 *frame, size_t frame_len);
  87. +u32 ieee80211_crc32(const u8 *frame, size_t frame_len);
  88. #endif /* CRC32_H */
  89. --
  90. 2.37.1