Hi Arjuna, >We are currently investigating an issue with IPv6 getting disabled during a >sequence when a user switches WIFi networks.
Noticed the same thing yesterday and was about to look into it today. ;) >The sequence of events from the client perspective is: >2. The user disconnects from NetworkA and connects to NetworkB I can reproduce the problem if switch to another wifi while being connected to another. However if especially disconnect from the wifi I'm being connected currently and then connect to another wifi-network the ipv6 does not get disabled. >As a potential fix/workaround, I've made the following change to enable >IPv6 if IPv6 is not idle to service_lower_up(): >--- a/connman/src/service.c >+++ b/connman/src/service.c >@@ -6038,6 +6038,9 @@ static void service_lower_up(struct connman_ipconfig >*ipconfig) > > DBG("%s lower up", __connman_ipconfig_get_ifname(ipconfig)); > >+ if (is_idle_state(service,service->state_ipv6) == FALSE) >+ __connman_ipconfig_enable_ipv6(service->ipconfig_ipv6); >+ > stats_start(service); >} >Thoughts? I suspect there is a more elegant way of doing this, and would >appreciate any feedback. Looks fine to me but I'm not the one to decide if it's good. ;) Br, Pasi _______________________________________________ connman mailing list connman@connman.net https://lists.connman.net/mailman/listinfo/connman