Adding a vendor Information Element to beacon / probe response frames
Etan Kissling
kissling at oberon.ch
Wed Sep 7 07:41:55 PDT 2016
Got the full trace with the help based on this thread: https://github.com/raspberrypi/linux/issues/1342
It seems that as long as the IE is at least length 5, that it is properly forwarded to brcmfmac.
brcmf_vif_set_mgmt_ie ADDED ID : 221, Len: 5, OUI:11:22:33
Seems like I should go ask the brcmfmac guys for further assistance :-)
Thanks for the help here!
Etan
> On 6 Sep 2016, at 17:04, Etan Kissling <kissling at oberon.ch> wrote:
>
> Thanks again and sorry for taking so long to respond :-) Your comment helped pushing one step further – seems like brcmfmac doesn't like short IEs.
>
> Checking dmesg reveals:
> [ 162.001873] brcmfmac: brcmf_parse_vndr_ies: invalid vndr ie. length is too small 4
>
> Seems like there is an issue when the IE has the minimal length.
> With length larger than 4, this goes away. The IE still doesn't show up, though.
>
> http://lxr.free-electrons.com/source/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c#L4165
>
> I don't see the additional message that you referenced in my log.
>
> At least another line should be printed, though:
> http://lxr.free-electrons.com/source/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c#L4247
> But I also don't see that one.
>
> Seems like I don't quite get yet how to enable debugging.
>
> What I tried so far is
> $ sudo reboot
> $ sudo ifdown wlan0
> $ sudo modprobe -r brcmfmac
> $ sudo modprobe brcmfmac debug=6 //< doesn't matter 0xFFFFFF or 6 or whatever, everyone uses different levels.
> $ sudo dmesg -n 7
> $ sudo hostapd -dd /etc/hostapd/hostapd.conf
> $ dmesg
>
> I'm new to the kernel world, and finding info on enabling brcmfmac debugging is difficult.
> Maybe I used the wrong search terms – would appreciate it if one could assist with this.
> Do I need to set the flag in source and recompile?
>
> Thanks
>
> Etan
>
>
>
>> On 18 Jun 2016, at 07:22, Arend van Spriel <arend.vanspriel at broadcom.com> wrote:
>>
>>
>>
>> On 17-06-16 22:53, Etan Kissling wrote:
>>> Thanks for the response.
>>>
>>> Good to hear that there are no known issues about this topic from the hostap front.
>>>
>>> The Raspberry 3 chip is Broadcom BCM43438.
>>> The chip I've used with Raspberry 1 in the dongle is Broadcom BCM43143.
>>>
>>> I'll check the driver. Can't imagine that the hardware doesn't support it,
>>> as appending static data to a packet shouldn't be a difficult to implement feature.
>>
>> Difficulty is hardly ever a reason for not implementing a feature. The
>> firmware for these broadcom chips is running a 802.11 stack and as such
>> it determines most part of the beacon, proberesp, etc.
>>
>> That being said there is a firmware api to add vendor IEs. You can check
>> the function brcmf_vif_set_mgmt_ie() which you find in cfg80211.c of the
>> brcmfmac driver. Loading the driver with debug=6 should make the
>> following debug print show up:
>>
>> brcmf_dbg(TRACE, "ADDED ID : %d, Len: %d, OUI:%02x:%02x:%02x\n",
>> vndrie_info->vndrie.id,
>> vndrie_info->vndrie.len,
>> vndrie_info->vndrie.oui[0],
>> vndrie_info->vndrie.oui[1],
>> vndrie_info->vndrie.oui[2]);
>>
>> There are also a couple of error prints, but those would show up anyway.
>> Hope this helps.
>>
>> Regards,
>> Arend
>>> Etan
>>>
>>>> On 17 Jun 2016, at 22:40, Jouni Malinen <j at w1.fi> wrote:
>>>>
>>>> On Wed, Jun 15, 2016 at 02:13:14PM +0000, Etan Kissling wrote:
>>>>> I've retried with the latest hostapd release, but same result: The vendor IE is not being broadcast, although it is specified in hostapd.conf.
>>>>
>>>>> These were my complete steps, from a clean Raspbian Jessie Lite 2016-05-27 installation on a Raspberry Pi 3 Model B.
>>>>
>>>> It sounds like the driver used on that device does not support this.
>>>> hostapd is requesting it to be added, as shown here:
>>>>
>>>>> + vendor_elements=DD0401020300
>>>>
>>>>> nl80211: Set beacon (beacon_set=0)
>>>>> nl80211: Beacon tail - hexdump(len=15): 2a 01 04 32 04 30 48 60 6c dd 04 01 02 03 00
>>>>
>>>> The extra element is there at the end of the Beacon tail..
>>>>
>>>>> nl80211: beacon_ies - hexdump(len=6): dd 04 01 02 03 00
>>>>> nl80211: proberesp_ies - hexdump(len=6): dd 04 01 02 03 00
>>>>
>>>> And also in the specific IE lists for Beacon and Probe Response frames..
>>>>
>>>> In other words, this question should be directed to whoever supports the
>>>> specific Wi-Fi hardware/driver.
>>>>
>>>> --
>>>> Jouni Malinen PGP id EFC895FA
>>>
>>>
>>> _______________________________________________
>>> Hostap mailing list
>>> Hostap at lists.infradead.org
>>> http://lists.infradead.org/mailman/listinfo/hostap
>
> _______________________________________________
> Hostap mailing list
> Hostap at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/hostap
More information about the Hostap
mailing list