X-Git-Url: http://git.archive.openwrt.org/?a=blobdiff_plain;f=iwinfo_nl80211.c;h=e0900525eb91004cfa815aaeddb58f622cff8223;hb=40f2844fadc05f4a4de7699dbc12fee295b7057b;hp=be58c56118c66bbfac82949711fdff79305e6cd3;hpb=c9fd399316003040825dfbd9700488b621bd990e;p=project%2Fiwinfo.git diff --git a/iwinfo_nl80211.c b/iwinfo_nl80211.c index be58c56..e090052 100644 --- a/iwinfo_nl80211.c +++ b/iwinfo_nl80211.c @@ -2383,13 +2383,6 @@ static int nl80211_get_hwmodelist_cb(struct nl_msg *msg, void *arg) if (caps > 0) *modes |= IWINFO_80211_N; - if (bands[NL80211_BAND_ATTR_VHT_CAPA]) - vht_caps = nla_get_u32(bands[NL80211_BAND_ATTR_VHT_CAPA]); - - /* Treat any nonzero capability as 11ac */ - if (vht_caps > 0) - *modes |= IWINFO_80211_AC; - nla_for_each_nested(freq, bands[NL80211_BAND_ATTR_FREQS], freqs_remain) { @@ -2404,6 +2397,14 @@ static int nl80211_get_hwmodelist_cb(struct nl_msg *msg, void *arg) *modes |= IWINFO_80211_B; *modes |= IWINFO_80211_G; } + else if (bands[NL80211_BAND_ATTR_VHT_CAPA]) + { + vht_caps = nla_get_u32(bands[NL80211_BAND_ATTR_VHT_CAPA]); + + /* Treat any nonzero capability as 11ac */ + if (vht_caps > 0) + *modes |= IWINFO_80211_AC; + } else if (!(*modes & IWINFO_80211_AC)) { *modes |= IWINFO_80211_A;