From 746026f897643111b4ca26bcad132de4e27d30fc Mon Sep 17 00:00:00 2001 From: Jukka Rissanen Date: Thu, 1 Nov 2012 14:16:24 +0200 Subject: dhcp: Clear ipaddresses from ipconfig before starting DHCP This is needed if manually configured addresses were used and later DHCP was taken into use. If the manually configured IP information (address, netmask and gateway) and the information given by DHCP is the same, DHCP will not set the IP address to the interface. --- src/dhcp.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/dhcp.c') diff --git a/src/dhcp.c b/src/dhcp.c index 1dbe1baa..e64c975a 100644 --- a/src/dhcp.c +++ b/src/dhcp.c @@ -449,6 +449,12 @@ static int dhcp_request(struct connman_dhcp *dhcp) service = connman_service_lookup_from_network(dhcp->network); ipconfig = __connman_service_get_ip4config(service); + /* + * Clear the addresses at startup so that lease callback will + * take the lease and set ip address properly. + */ + __connman_ipconfig_clear_address(ipconfig); + return g_dhcp_client_start(dhcp_client, __connman_ipconfig_get_dhcp_address(ipconfig)); } -- cgit v1.2.3