Stop DHCP if it times out.

This was not necessary in L, but it is necessary after
https://partner-android-review.googlesource.com/#/c/205415/ .

Bug: 22936203
Change-Id: I24a96c33e5bb375f36217a1c2cec2076eb5ac8b4
This commit is contained in:
Lorenzo Colitti
2015-08-04 13:27:28 +09:00
parent c438fea3b8
commit 9830ae6d92

View File

@@ -262,7 +262,7 @@ class EthernetNetworkFactory {
// TODO: Handle DHCP renew.
Thread dhcpThread = new Thread(new Runnable() {
public void run() {
if (DBG) Log.i(TAG, "dhcpThread(+" + mIface + "): mNetworkInfo=" + mNetworkInfo);
if (DBG) Log.i(TAG, "dhcpThread(" + mIface + "): mNetworkInfo=" + mNetworkInfo);
LinkProperties linkProperties;
IpConfiguration config = mEthernetManager.getConfiguration();
@@ -287,6 +287,9 @@ class EthernetNetworkFactory {
// set our score lower than any network could go
// so we get dropped.
mFactory.setScoreFilter(-1);
// If DHCP timed out (as opposed to failing), the DHCP client will still be
// running, because in M we changed its timeout to infinite. Stop it now.
NetworkUtils.stopDhcp(mIface);
return;
}
linkProperties = dhcpResults.toLinkProperties(mIface);