diff options
author | Kanchanapally, Vidyullatha <vkanchan@qti.qualcomm.com> | 2016-04-11 15:16:01 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-08-29 01:45:00 -0700 |
commit | 9f28983d4e1b093e5daa0f4a59d6faeff8520da4 (patch) | |
tree | c4f1a2d174dd7e04398d53c7ab593981d5fb1fbc /net/wireless/util.c | |
parent | bc2630b4c908d45b24398acb45d7f912de3bf338 (diff) |
cfg80211: Add option to report the bss entry in connect result
Since cfg80211 maintains separate BSS table entries for APs if the same
BSSID, SSID pair is seen on multiple channels, it is possible that it
can map the current_bss to a BSS entry on the wrong channel. This
current_bss will not get flushed unless disconnected and cfg80211
reports a wrong channel as the associated channel.
Fix this by introducing a new cfg80211_connect_bss() function which is
similar to cfg80211_connect_result(), but it includes an additional
parameter: the bss the STA is connected to. This allows drivers to
provide the exact bss entry that matches the BSS to which the connection
was completed.
Reviewed-by: Jouni Malinen <jouni@qca.qualcomm.com>
Signed-off-by: Vidyullatha Kanchanapally <vkanchan@qti.qualcomm.com>
Signed-off-by: Sunil Dutt <usdutt@qti.qualcomm.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Git-commit: 81948527fce52c73c9a0742b8ec8d26b97f6c3c0
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
Change-Id: I5dc58b360b2bbce53493466a0bcd5363276c302a
CRs-fixed: 1008791
Signed-off-by: Vidyullatha Kanchanapally <vidyullatha@codeaurora.org>
Diffstat (limited to 'net/wireless/util.c')
-rw-r--r-- | net/wireless/util.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/wireless/util.c b/net/wireless/util.c index a2532f46169d..a5b20d75017e 100644 --- a/net/wireless/util.c +++ b/net/wireless/util.c @@ -877,7 +877,7 @@ void cfg80211_process_wdev_events(struct wireless_dev *wdev) ev->cr.resp_ie, ev->cr.resp_ie_len, ev->cr.status, ev->cr.status == WLAN_STATUS_SUCCESS, - NULL); + ev->cr.bss); break; case EVENT_ROAMED: __cfg80211_roamed(wdev, ev->rm.bss, ev->rm.req_ie, |