nl80211: Fix SIGNAL_POLL in IBSS and mesh

NL80211_CMD_GET_STATION does not work with the IBSS/mesh BSSID, so clear
the signal strength instead of returning failure when SIGNAL_POLL is
used in an IBSS/mesh.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
Jouni Malinen 2015-11-26 17:47:36 +02:00 committed by Jouni Malinen
parent 0f29bc68d1
commit 1d6955e668

View file

@ -6560,8 +6560,12 @@ static int nl80211_signal_poll(void *priv, struct wpa_signal_info *si)
os_memset(si, 0, sizeof(*si));
res = nl80211_get_link_signal(drv, si);
if (res != 0)
return res;
if (res) {
if (drv->nlmode != NL80211_IFTYPE_ADHOC &&
drv->nlmode != NL80211_IFTYPE_MESH_POINT)
return res;
si->current_signal = 0;
}
res = nl80211_get_channel_width(drv, si);
if (res != 0)