mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-11 19:04:23 +08:00
iwinfo: support nl80211 hardware identification against radioX pseudo interfaces, useful if radio is not up yet
SVN-Revision: 29462
This commit is contained in:
parent
62d8009cdd
commit
8434527305
@ -7,7 +7,7 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=libiwinfo
|
||||
PKG_RELEASE:=20
|
||||
PKG_RELEASE:=21
|
||||
|
||||
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
|
||||
|
||||
|
@ -1631,6 +1631,27 @@ int nl80211_get_mbssid_support(const char *ifname, int *buf)
|
||||
|
||||
int nl80211_get_hardware_id(const char *ifname, char *buf)
|
||||
{
|
||||
int rv;
|
||||
char *res;
|
||||
|
||||
/* Got a radioX pseudo interface, find some interface on it or create one */
|
||||
if (!strncmp(ifname, "radio", 5))
|
||||
{
|
||||
/* Reuse existing interface */
|
||||
if ((res = nl80211_phy2ifname(ifname)) != NULL)
|
||||
{
|
||||
return wext_get_hardware_id(res, buf);
|
||||
}
|
||||
|
||||
/* Need to spawn a temporary iface for finding IDs */
|
||||
else if ((res = nl80211_ifadd(ifname)) != NULL)
|
||||
{
|
||||
rv = wext_get_hardware_id(res, buf);
|
||||
nl80211_ifdel(res);
|
||||
return rv;
|
||||
}
|
||||
}
|
||||
|
||||
return wext_get_hardware_id(ifname, buf);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user