RE: wpa-supplicant and scan sharing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: Ben Greear [mailto:greearb@xxxxxxxxxxxxxxx]
> Sent: Sunday, June 04, 2017 17:33
> To: Otcheretianski, Andrei <andrei.otcheretianski@xxxxxxxxx>;
> hostap@xxxxxxxxxxxxxxxxxxx
> Subject: Re: wpa-supplicant and scan sharing
> 
> 
> 
> On 06/04/2017 01:34 AM, Otcheretianski, Andrei wrote:
> >> -----Original Message-----
> >> From: Hostap [mailto:hostap-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of
> >> Ben Greear
> >> Sent: Wednesday, May 31, 2017 00:45
> >> To: hostap@xxxxxxxxxxxxxxxxxxx
> >> Subject: wpa-supplicant and scan sharing
> >>
> >> [Sorry for previous email with bogus subject.]
> >>
> >> Hello,
> >>
> >> In wpa_supplicant/events.c, there is code similar to this below.
> >>
> >> Is there any reason 'ret = 1' other than some drivers may have issues
> >> with multiple association attempts?  I am pretty sure that I used to
> >> bring up many ath9k and ath10k station vdevs at once, so maybe this
> >> is just for Intel NICs (based on the comitter that changed that code last)?
> >
> > This is the same behavior as it was there before this patch. Previously if scan
> results triggered an operation, other interfaces wouldn't be updated at all.
> > The patch you mention changed it to update scan results on other interfaces,
> but still prevents starting any operation.
> > Anyway, in the "if" you mention wpa_s->scan_res_handler != NULL - so
> > it's not an association flow - the association is happening in
> > wpas_select_network_from_last_scan()
> > I'm not sure what do you mean by "multiple association attempts" - concurrent
> connections on the same radio are serialized using radio_works anyway, and on
> different radios there is no scan results update from sibling.
> > So, here is the flow when you connect multiple interfaces: the first one will
> trigger scan and connect + update the siblings. Other sibling interfaces will
> connect directly without scant through wpa_supplicant_fast_associate().
> 
> In my case, until I relaxed this, all station vdevs would scan before connecting.
> Possibly this is due to other patches I have in my supplicant...but I would be
> curious to see 'iw events' output if you could get multiple station vdevs to
> associate w/out each of them scanning.

Tried it with hwsim and it works for me - second connection is without scan

Something like this:
def test_wpas_multi_sta_connect(dev, apdev):
    """wpa_supplicant connect 2 STA interfaces"""
    hapd = hostapd.add_ap(apdev[0], { "ssid": "open" })
    ifname = "test-" + dev[0].ifname
    dev[0].interface_add(ifname, create=True)
    dev[0].connect("open", key_mgmt="NONE", scan_freq="2412")
    hwsim_utils.test_connectivity(dev[0], hapd)

    wpas = WpaSupplicant(ifname=ifname)
    wpas.connect("open", key_mgmt="NONE", scan_freq="2412")
    hwsim_utils.test_connectivity(wpas, hapd)
    hwsim_utils.test_connectivity(dev[0], hapd)
    dev[0].global_request("INTERFACE_REMOVE " + ifname)
    hwsim_utils.test_connectivity(dev[0], hapd)

Andrei
> 
> Thanks,
> Ben
> 
> --
> Ben Greear <greearb@xxxxxxxxxxxxxxx>
> Candela Technologies Inc  http://www.candelatech.com

_______________________________________________
Hostap mailing list
Hostap@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/hostap



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux