0

Straight forward wifi client to infra AP connectivity from debian by using wpa_supplicant

wpa_cli -iwlan0 add_network
1
wpa_cli -iwlan0 set_network 1 ssid '"myssid"'
OK
wpa_cli -iwlan0 set_network 1 psk '"mypwd"'
OK
wpa_cli -iwlan0 enable_network 1

As result "Association request to the driver failed" in syslog strange entries

nl80211: MLME connect failed: ret=-1 (Operation not permitted)

wlan0: Association request to the driver failed

SSID and PSK are correct obviously. Tearing my hairs out - what is the problem? The same problem with any other ssid.

dmesg output

brcmfmac: brcmf_c_set_joinpref_default: Set join_pref error (-1) brcmfmac: brcmf_cfg80211_connect: BRCMF_C_SET_SSID failed (-1)

Ideas? Direction? Where to look?

UPDATE: the issue was solved It is related to interesting side effect of driver initialization optimization. I have one physical wireless adapter with two virtual interfaces: client (managed) and hotspot (access point). The correct order of load is AP and then Managed (this is another issue, not sure where it comes from). When both interfaces are brought up at the same time or close enough one to another, later interface tries to reuse already loaded instance of device driver, which is obviously impossible (and this is where "Operation not permitted" comes from), so wpa_supplicant is not being initialized properly.

The solution is make AP to be loaded automatically at early stage, while leave Managed to manual mode. Then modify rc.local (or any other late running trigger) to enable Managed interface. For me (sleep 20 || sudo ifup wlan1) & works perfectly, so problem is solved.

Having said that, i think that it is required to open ticket for Debian to fix this issue, since, it is clearly OS bug.

3
  • I see here a possible solution here : google.ro/… -- basically try to stop network-manager, see if it helps.
    – schaiba
    Oct 4, 2017 at 12:55
  • network manager is not installed
    – Tamir
    Oct 4, 2017 at 13:01
  • The solution is make AP to be loaded automatically, while Managed leave to manual mode. Then modify rc.local (or any other late running trigger) to enable Managed interface. For me (sleep 20 || sudo ifup wlan1) & works perfectly, so problem is solved. Having said that, i think that it is required to open ticket for Debian to fix this issue, since, it is clearly OS bug.
    – Tamir
    Oct 5, 2017 at 22:23

1 Answer 1

1

It is related to interesting side effect of driver initialization optimization. I have one physical wireless adapter with two virtual interfaces: client (managed) and hotspot (access point). The correct order of load is AP and then Managed (this is another issue, not sure where it comes from). When both interfaces are brought up at the same time or close enough one to another, later interface tries to reuse already loaded instance of device driver, which is obviously impossible (and this is where "Operation not permitted" comes from), so wpa_supplicant is not being initialized properly.

The solution is make AP to be loaded automatically at early stage, while leave Managed to manual mode. Then modify rc.local (or any other late running trigger) to enable Managed interface. For me (sleep 20 || sudo ifup wlan1) & works perfectly, so problem is solved.

Having said that, i think that it is required to open ticket for Debian to fix this issue, since, it is clearly OS bug.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .