[Bisected] Connection failures when using wl driver (Broadcom) since rev. f2a6ad01

Jouni Malinen j at w1.fi
Mon Dec 19 03:00:53 PST 2016

On Mon, Dec 19, 2016 at 12:28:45PM +0300, Evgenii Shatokhin wrote:
> After update of wpa_supplicant from v.2.4 to v2.6, the system can no
> longer connect to WiFi networks. The problem persists from the
> current version of wpa_supplicant from git (rev. aaa9c60b) as well.
> NetworkManager shows "Configuring interface" for the chosen SSID and
> after some time just tells that the connection failed
> ("disconnected")
> The problem only happens when I use the proprietary driver (wl) from
> Broadcom for the WiFi adapter. Everything seems to be OK with the
> opensource driver though.
> The log of wpa_supplicant is attached.

What kind of changes are there in wpa_supplicant on top of the actually
released versions? This logs show following line:

properties_get_or_set: Set(PreassocMacAddr)

while PreassocMacAddr does not seem to exist in hostap.git version at
all.. Please also note that this configures random MAC address use which
is failing in the debug log apparently due to driver not supporting it.

> Version 2.4 worked OK with both drivers.

Using random MAC addresses?

> git bisect pointed to the following commit as the first "bad" one:
> commit f2a6ad01a943103c658de5721c2d7f7e91ee7fa4
> Author: Jouni Malinen <j at w1.fi>
> Date:   Sun Nov 29 18:59:27 2015 +0200
>     TLS client: Add support for server certificate probing

I would find it very unlikely for this commit to have anything to do
with this issue.. Are you even building in the code this touches (i.e.,
CONFIG_TLS=internal)? In any case, that functionality is not used before
the association is established.

> dbus: org.freedesktop.DBus.Properties.Set (/fi/w1/wpa_supplicant1/Interfaces/1) [ssv]
> properties_get_or_set: Set(PreassocMacAddr)
> preassoc_mac_addr=1

This functionality does not exist in upstream version over D-Bus

> wlan0: Starting radio work 'scan'@0x1fb5440 after 0.000057 second wait
> Could not set interface wlan0 hwaddr: Too many open files in system
> nl80211: failed to set_mac_addr for wlan0 to 96:a4:b3:79:fd:89
> wlan0: Failed to set random MAC address
> wlan0: Failed to assign random MAC address for a scan

and this is where that operation enabled by preassoc_mac_addr=1 is
failing in the driver..

> dbus: org.freedesktop.DBus.Properties.Set (/fi/w1/wpa_supplicant1/Interfaces/1) [ssv]
> properties_get_or_set: Set(MacAddr)
> mac_addr=0

and that one does not exists either in upstream..

In other words, it looks like there are some custom changes in
wpa_supplicant and those changes are in the area that the used driver
does not support. I'd test what happens with that functionality (random
MAC address) disabled.

Jouni Malinen                                            PGP id EFC895FA

More information about the Hostap mailing list