---
src/ipconfig.c | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/src/ipconfig.c b/src/ipconfig.c
index 7a53689..6196a03 100644
--- a/src/ipconfig.c
+++ b/src/ipconfig.c
@@ -616,6 +616,14 @@ void __connman_ipconfig_deladdr(int index, int family,
const char *label,
ipdevice->address_list = g_slist_remove(ipdevice->address_list,
ipaddress);
+ if (family == AF_INET6 && ipdevice->config_ipv6->system &&
+ ipdevice->config_ipv6->system->prefixlen ==
+ ipaddress->prefixlen &&
+ g_strcmp0(ipdevice->config_ipv6->system->local,
+ ipaddress->local) == 0) {
+ connman_ipaddress_clear(ipdevice->config_ipv6->system);
+ }
+
connman_ipaddress_free(ipaddress);
connman_info("%s {del} address %s/%u label %s", ipdevice->ifname,
--
1.7.0.4
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman