Hi Tomasz,

Will still need to modify the patch a bit because start_autoscan()
checks for wifi->connected and will not start if it's true. Therefore
moving start_autoscan() after the wifi->connected has been set to false
in the end of the interface_state()-function.

Br,
Pasi

On 06.05.2015 11:51, Tomasz Bursztyka wrote:
> Hi Pasi,
> 
> Nice catch!
> 
> ACK from me.
> 
> Tomasz
> 
>> From: Pasi Sjöholm <pasi.sjoh...@jollamobile.com>
>> 
>> It's possible from wpa_s to change the state from completed to
>> scanning without going through disconnected state if interface
>> signals that the carrier went off and on (IFF_LOWER_UP flag).
>> 
>> This will cause dead lock similar in 
>> c810464828d6764bea304de3e9b6b151aa05e313 if the wifi gets into
>> associating state as the network->connected is still true but
>> wifi->connected is not. --- plugins/wifi.c | 5 +++++ 1 file
>> changed, 5 insertions(+)
>> 
>> diff --git a/plugins/wifi.c b/plugins/wifi.c index
>> d0d7917..47df08e 100755 --- a/plugins/wifi.c +++
>> b/plugins/wifi.c @@ -2341,6 +2341,11 @@ static void 
>> interface_state(GSupplicantInterface *interface) switch (state)
>> { case G_SUPPLICANT_STATE_SCANNING: +        if (wifi->connected)
>> { +            connman_network_set_connected(network, false); +
>> start_autoscan(device); +        } + break; case
>> G_SUPPLICANT_STATE_AUTHENTICATING:
> 
> _______________________________________________ connman mailing
> list connman@connman.net 
> https://lists.connman.net/mailman/listinfo/connman
_______________________________________________
connman mailing list
connman@connman.net
https://lists.connman.net/mailman/listinfo/connman

Reply via email to