diff options
author | Rafał Miłecki <zajec5@gmail.com> | 2015-01-12 22:10:00 +0000 |
---|---|---|
committer | Rafał Miłecki <zajec5@gmail.com> | 2015-01-12 22:10:00 +0000 |
commit | adaac86c7fb1f81ac602f7eeba8fdd97313dd024 (patch) | |
tree | 019d970ed65e61f1dc593823be0ec275027b6476 /package/network | |
parent | c3c00c4286b21f4d10496821d85d4b331dd78a97 (diff) | |
download | mtk-20170518-adaac86c7fb1f81ac602f7eeba8fdd97313dd024.zip mtk-20170518-adaac86c7fb1f81ac602f7eeba8fdd97313dd024.tar.gz mtk-20170518-adaac86c7fb1f81ac602f7eeba8fdd97313dd024.tar.bz2 |
hostapd: backport patch fixing handling new stations
This patch fixes adding new stations for some specific drivers when
using more than 1 BSS.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 43951
Diffstat (limited to 'package/network')
-rw-r--r-- | package/network/services/hostapd/patches/000-nl80211-Report-new-station-assoc-event-for-the-corre.patch | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/package/network/services/hostapd/patches/000-nl80211-Report-new-station-assoc-event-for-the-corre.patch b/package/network/services/hostapd/patches/000-nl80211-Report-new-station-assoc-event-for-the-corre.patch new file mode 100644 index 0000000..8fe4a0e --- /dev/null +++ b/package/network/services/hostapd/patches/000-nl80211-Report-new-station-assoc-event-for-the-corre.patch @@ -0,0 +1,37 @@ +--- a/src/drivers/driver_nl80211.c ++++ b/src/drivers/driver_nl80211.c +@@ -2640,6 +2640,7 @@ static void nl80211_new_peer_candidate(s + + + static void nl80211_new_station_event(struct wpa_driver_nl80211_data *drv, ++ struct i802_bss *bss, + struct nlattr **tb) + { + u8 *addr; +@@ -2658,7 +2659,7 @@ static void nl80211_new_station_event(st + ies_len = nla_len(tb[NL80211_ATTR_IE]); + } + wpa_hexdump(MSG_DEBUG, "nl80211: Assoc Req IEs", ies, ies_len); +- drv_event_assoc(drv->ctx, addr, ies, ies_len, 0); ++ drv_event_assoc(bss->ctx, addr, ies, ies_len, 0); + return; + } + +@@ -2667,7 +2668,7 @@ static void nl80211_new_station_event(st + + os_memset(&data, 0, sizeof(data)); + os_memcpy(data.ibss_rsn_start.peer, addr, ETH_ALEN); +- wpa_supplicant_event(drv->ctx, EVENT_IBSS_RSN_START, &data); ++ wpa_supplicant_event(bss->ctx, EVENT_IBSS_RSN_START, &data); + } + + +@@ -3309,7 +3310,7 @@ static void do_process_drv_event(struct + &data); + break; + case NL80211_CMD_NEW_STATION: +- nl80211_new_station_event(drv, tb); ++ nl80211_new_station_event(drv, bss, tb); + break; + case NL80211_CMD_DEL_STATION: + nl80211_del_station_event(drv, tb); |