aboutsummaryrefslogtreecommitdiffstats
path: root/package/network/utils/iwinfo
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2013-05-12 01:12:56 +0000
committerJo-Philipp Wich <jow@openwrt.org>2013-05-12 01:12:56 +0000
commit333261901ed8f48e604bc4c0924d9f43ab2078ce (patch)
tree096499243f4492a068a615fb3ad5ebb426c2d8ce /package/network/utils/iwinfo
parent941e53bb3550d6c35a78cf04207a2d23510d76d2 (diff)
downloadupstream-333261901ed8f48e604bc4c0924d9f43ab2078ce.tar.gz
upstream-333261901ed8f48e604bc4c0924d9f43ab2078ce.tar.bz2
upstream-333261901ed8f48e604bc4c0924d9f43ab2078ce.zip
iwinfo: only consider joined bss when finding current operating frequency, fixes spurious misreporting of frequencies in ad-hoc mode
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36604 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/network/utils/iwinfo')
-rw-r--r--package/network/utils/iwinfo/Makefile2
-rw-r--r--package/network/utils/iwinfo/src/iwinfo_nl80211.c3
2 files changed, 3 insertions, 2 deletions
diff --git a/package/network/utils/iwinfo/Makefile b/package/network/utils/iwinfo/Makefile
index e0090e0be5..018832fffc 100644
--- a/package/network/utils/iwinfo/Makefile
+++ b/package/network/utils/iwinfo/Makefile
@@ -7,7 +7,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libiwinfo
-PKG_RELEASE:=44
+PKG_RELEASE:=45
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
PKG_CONFIG_DEPENDS := \
diff --git a/package/network/utils/iwinfo/src/iwinfo_nl80211.c b/package/network/utils/iwinfo/src/iwinfo_nl80211.c
index dd619e2d6f..700410939d 100644
--- a/package/network/utils/iwinfo/src/iwinfo_nl80211.c
+++ b/package/network/utils/iwinfo/src/iwinfo_nl80211.c
@@ -918,13 +918,14 @@ static int nl80211_get_frequency_scan_cb(struct nl_msg *msg, void *arg)
static struct nla_policy bss_policy[NL80211_BSS_MAX + 1] = {
[NL80211_BSS_FREQUENCY] = { .type = NLA_U32 },
+ [NL80211_BSS_STATUS] = { .type = NLA_U32 },
};
if (attr[NL80211_ATTR_BSS] &&
!nla_parse_nested(binfo, NL80211_BSS_MAX,
attr[NL80211_ATTR_BSS], bss_policy))
{
- if (binfo[NL80211_BSS_FREQUENCY])
+ if (binfo[NL80211_BSS_STATUS] && binfo[NL80211_BSS_FREQUENCY])
*freq = nla_get_u32(binfo[NL80211_BSS_FREQUENCY]);
}