commit | 217c61dfafa2ddc800daa227d032d84daf668382 | [log] [tgz] |
---|---|---|
author | Paul Stewart <pstew@chromium.org> | Thu Jun 13 15:12:02 2013 -0700 |
committer | ChromeBot <chrome-bot@google.com> | Mon Jun 17 12:20:13 2013 -0700 |
tree | bf9a3e8854331ae1c730544747a4aa7d16f89d3c | |
parent | 4ef02fd4a941c3ad89d1f2215b0cc0ab9bcb206d [diff] |
shill: Device: Release lease if using static IP If we are using a statically configured IP address instead of a leased IP address, release any acquired lease so it may be used by others. This allows us to merge other non-leased parameters (like DNS) when they're available from a DHCP server and not overridden by static parameters, but at the same time we avoid taking up a dynamic IP address the DHCP server could assign to someone else who might actually use it. The only downside to this approach is that we will no longer perform lease renewals via the DHCP client, so if other parameters of the lease (default gateway, DNS servers) change while we are connected, they will not automatically refresh at the client. BUG=chromium:249399 TEST=Unit tests + network_DhcpNegotiationSuccess autotest + manual: tcpdump eth0 while connecting to a network with a static IP address. Ensure lease is acquired, then released, and the device is using the statically-configured address. Without a static IP configuration, ensure that the lease is retained and the host uses the DHCP supplied address. Change-Id: Ifdc1a1b9f2e55bead3bc2ed6e58b0fcac91bcbcd Reviewed-on: https://gerrit.chromium.org/gerrit/58592 Commit-Queue: Paul Stewart <pstew@chromium.org> Tested-by: Paul Stewart <pstew@chromium.org> Reviewed-by: Christopher Wiley <wiley@chromium.org>