From: Jukka Rissanen Date: Wed, 22 Jun 2011 10:37:45 +0000 (+0300) Subject: network: Set manual IPv6 state and gateway. X-Git-Tag: 2.0_alpha~1362 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3d761a0d18626e1ac8610a73d1cccf74af8988b2;p=framework%2Fconnectivity%2Fconnman.git network: Set manual IPv6 state and gateway. --- diff --git a/src/network.c b/src/network.c index acc374f..4abcb09 100644 --- a/src/network.c +++ b/src/network.c @@ -960,6 +960,8 @@ static int manual_ipv6_set(struct connman_network *network, struct connman_service *service; int err; + DBG("network %p ipv6 %p", network, ipconfig_ipv6); + service = __connman_service_lookup_from_network(network); if (service == NULL) return -EINVAL; @@ -971,10 +973,23 @@ static int manual_ipv6_set(struct connman_network *network, return err; } - /* - * READY state will be indicated by IPV4 setting - * gateway will be set by IPV4 setting - */ + err = __connman_ipconfig_gateway_add(ipconfig_ipv6); + if (err < 0) + return err; + + __connman_connection_gateway_activate(service, + CONNMAN_IPCONFIG_TYPE_IPV6); + + __connman_device_increase_connections(network->device); + + __connman_device_set_network(network->device, network); + + connman_device_set_disconnected(network->device, FALSE); + + network->connecting = FALSE; + + __connman_service_set_ipconfig_ready(service, + CONNMAN_IPCONFIG_TYPE_IPV6); return 0; }