From: Samuel Ortiz Date: Fri, 25 Feb 2011 14:32:56 +0000 (+0100) Subject: network: Remove gateway when network disconnects X-Git-Tag: 0.71~27 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=af62314caf469a2d87380c211b0308987065be07;p=platform%2Fupstream%2Fconnman.git network: Remove gateway when network disconnects --- diff --git a/src/connection.c b/src/connection.c index 793bc8f..fb2e431 100644 --- a/src/connection.c +++ b/src/connection.c @@ -352,6 +352,10 @@ void __connman_connection_gateway_remove(struct connman_service *service) CONNMAN_SERVICE_STATE_DISCONNECT, CONNMAN_IPCONFIG_TYPE_IPV4); + __connman_service_indicate_state(service, + CONNMAN_SERVICE_STATE_DISCONNECT, + CONNMAN_IPCONFIG_TYPE_IPV6); + data = g_hash_table_lookup(gateway_hash, service); if (data == NULL) return; diff --git a/src/network.c b/src/network.c index ae58347..2ad073b 100644 --- a/src/network.c +++ b/src/network.c @@ -923,17 +923,12 @@ static gboolean set_connected(gpointer user_data) service = __connman_service_lookup_from_network(network); + __connman_connection_gateway_remove(service); + __connman_service_indicate_state(service, CONNMAN_SERVICE_STATE_IDLE, CONNMAN_IPCONFIG_TYPE_IPV4); - /* TODO: eventually the IPv6 disconnect state should be handled - * in connection.c - */ - __connman_service_indicate_state(service, - CONNMAN_SERVICE_STATE_DISCONNECT, - CONNMAN_IPCONFIG_TYPE_IPV6); - __connman_service_indicate_state(service, CONNMAN_SERVICE_STATE_IDLE, CONNMAN_IPCONFIG_TYPE_IPV6);