[PATCH] nl80211: report new station / assoc event for the correct BSS

Rafał Miłecki zajec5 at gmail.com
Sun Dec 14 15:11:12 EST 2014


On 14 December 2014 at 10:25, Arend van Spriel <arend at broadcom.com> wrote:
> On 12/13/14 23:31, Rafał Miłecki wrote:
>>
>> On 6 December 2014 at 16:06, Rafał Miłecki<zajec5 at gmail.com>  wrote:
>>>
>>> drv->ctx always points to the first BSS and we should report event using
>>> BSS related to the interface we got NL80211_CMD_NEW_STATION from.
>>> This fixes STA association for drivers using NL80211_CMD_NEW_STATION and
>>> multiple virtual interfaces.
>>>
>>> Before:
>>> nl80211: Drv Event 19 (NL80211_CMD_NEW_STATION) received for wlan0-1
>>> (ifindex:7)
>>> nl80211: New station 02:00:00:00:01:00
>>> wlan0: STA 02:00:00:00:01:00 IEEE 802.11: associated
>>>
>>> After:
>>> nl80211: Drv Event 19 (NL80211_CMD_NEW_STATION) received for wlan0-1
>>> (ifindex:7)
>>> nl80211: New station 02:00:00:00:01:00
>>> wlan0-1: STA 02:00:00:00:01:00 IEEE 802.11: associated
>>>
>>> Signed-off-by: Rafał Miłecki<zajec5 at gmail.com>
>>> ---
>>> Hi guys :)
>>>
>>> I recently heard about possible problems with handling BSS-es from Arend
>>> and was
>>> working with nl80211 / hostapd anyway, so decided to take a look at this.
>>>
>>> I think I found some bug in handling events that can be exposed when
>>> using
>>> multiple virtual interfaces, hardware authentication and cfg80211_new_sta
>>> (which
>>> gets translated into NL80211_CMD_NEW_STATION).
>>>
>>> As you can see in the log called "Before", hostapd was getting event from
>>> wlan0-1 but then association was happening on the wlan0. This was
>>> breaking AP
>>> mode on virtual interfaces (BSS other than the first one).
>>>
>>> Please note, that this bug (I believe it's a bug) won't be exposed when
>>> running
>>> mac80211_hwsim. In such case authentication is handled in hostapd and
>>> assoc
>>> happens in handle_assoc_cb (not hostapd_notif_assoc) which handles BSS-es
>>> correctly.
>>>
>>> If you review this patch and it appears to be OK, I guess we will need
>>> similar
>>> modification for other events.
>>
>>
>> Any opinions on this?
>
>
> I would say you are right in your analysis. I have not tried this patch. I
> will ask Hante as he added Multiple-BSSID support. I assume this bug is not
> visible to any mac80211-based driver, right?

Yes. What I wrote about mac80211_hwsim applies to (almost?) all
mac80211 drivers (they usually don't handle authentication in
hardware).

-- 
Rafał


More information about the HostAP mailing list