mirror of
https://github.com/torvalds/linux.git
synced 2024-12-25 12:21:37 +00:00
wifi: virt_wifi: don't use strlen() in const context
Looks like not all compilers allow strlen(constant) as
a constant, so don't do that. Instead, revert back to
defining the length as the first submission had it.
Fixes: b5d14b0c67
("wifi: virt_wifi: avoid reporting connection success with wrong SSID")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202407090934.NnR1TUbW-lkp@intel.com/
Closes: https://lore.kernel.org/oe-kbuild-all/202407090944.mpwLHGt9-lkp@intel.com/
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
b3603133d3
commit
6e909f4891
@ -137,6 +137,7 @@ static struct ieee80211_supported_band band_5ghz = {
|
||||
static u8 fake_router_bssid[ETH_ALEN] __ro_after_init = {};
|
||||
|
||||
#define VIRT_WIFI_SSID "VirtWifi"
|
||||
#define VIRT_WIFI_SSID_LEN 8
|
||||
|
||||
static void virt_wifi_inform_bss(struct wiphy *wiphy)
|
||||
{
|
||||
@ -148,7 +149,7 @@ static void virt_wifi_inform_bss(struct wiphy *wiphy)
|
||||
u8 ssid[8];
|
||||
} __packed ssid = {
|
||||
.tag = WLAN_EID_SSID,
|
||||
.len = strlen(VIRT_WIFI_SSID),
|
||||
.len = VIRT_WIFI_SSID_LEN,
|
||||
.ssid = VIRT_WIFI_SSID,
|
||||
};
|
||||
|
||||
@ -262,7 +263,7 @@ static void virt_wifi_connect_complete(struct work_struct *work)
|
||||
container_of(work, struct virt_wifi_netdev_priv, connect.work);
|
||||
u8 *requested_bss = priv->connect_requested_bss;
|
||||
bool right_addr = ether_addr_equal(requested_bss, fake_router_bssid);
|
||||
bool right_ssid = priv->connect_requested_ssid_len == strlen(VIRT_WIFI_SSID) &&
|
||||
bool right_ssid = priv->connect_requested_ssid_len == VIRT_WIFI_SSID_LEN &&
|
||||
!memcmp(priv->connect_requested_ssid, VIRT_WIFI_SSID,
|
||||
priv->connect_requested_ssid_len);
|
||||
u16 status = WLAN_STATUS_SUCCESS;
|
||||
|
Loading…
Reference in New Issue
Block a user