---
 src/dhcp.c    |    4 ++++
 src/service.c |    2 ++
 2 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/src/dhcp.c b/src/dhcp.c
index 3106c3d..03a2b90 100644
--- a/src/dhcp.c
+++ b/src/dhcp.c
@@ -73,6 +73,8 @@ static void dhcp_invalid(struct connman_dhcp *dhcp)
        if (ipconfig == NULL)
                return;
 
+       __connman_6to4_remove(ipconfig);
+
        __connman_service_set_domainname(service, NULL);
        __connman_service_set_pac(service, NULL);
        __connman_service_timeserver_remove(service, dhcp->timeserver);
@@ -289,6 +291,8 @@ static void lease_available_cb(GDHCPClient *dhcp_client, 
gpointer user_data)
        if (ip_change == TRUE)
                dhcp_valid(dhcp);
 
+       __connman_6to4_probe(service);
+
        g_free(address);
        g_free(netmask);
        g_free(gateway);
diff --git a/src/service.c b/src/service.c
index f4b15f0..b147551 100644
--- a/src/service.c
+++ b/src/service.c
@@ -3887,6 +3887,8 @@ int __connman_service_disconnect(struct connman_service 
*service)
        if (err < 0 && err != -EINPROGRESS)
                return err;
 
+       __connman_6to4_remove(service->ipconfig_ipv4);
+
        if (service->ipconfig_ipv4)
                __connman_ipconfig_set_proxy_autoconfig(service->ipconfig_ipv4,
                                                        NULL);
-- 
1.7.0.4

_______________________________________________
connman mailing list
connman@connman.net
http://lists.connman.net/listinfo/connman

Reply via email to