mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-25 01:19:23 +01:00
wiphy: Remove basename() use
basename use is considered harmful. There are two versions of basename (see man 3 basename for details). The more intuitive version, which is currently being used inside wiphy.c, is not supported by musl libc implementation. Use of the libgen version is not preferred, so drop use of basename entirely. Since wiphy.c is the only call site of basename() inside iwd, open code the required logic.
This commit is contained in:
parent
6315b42861
commit
ba5a6df2d1
@ -1896,6 +1896,7 @@ static bool wiphy_get_driver_name(struct wiphy *wiphy)
|
||||
unsigned int j;
|
||||
const struct l_settings *config = iwd_get_config();
|
||||
char **flag_list;
|
||||
char *driver;
|
||||
|
||||
driver_link = l_strdup_printf("/sys/class/ieee80211/%s/device/driver",
|
||||
wiphy->name);
|
||||
@ -1907,7 +1908,9 @@ static bool wiphy_get_driver_name(struct wiphy *wiphy)
|
||||
}
|
||||
|
||||
driver_path[len] = '\0';
|
||||
wiphy->driver_str = l_strdup(basename(driver_path));
|
||||
|
||||
driver = memrchr(driver_path, '/', len);
|
||||
wiphy->driver_str = l_strdup(driver ? driver + 1 : driver_path);
|
||||
|
||||
for (i = 0; i < L_ARRAY_SIZE(driver_infos); i++)
|
||||
if (!fnmatch(driver_infos[i].prefix, wiphy->driver_str, 0))
|
||||
|
Loading…
Reference in New Issue
Block a user