WifiStateTracker: add support for overriding DCHP max retry count in an overlay

Bug: 5551068

Signed-off-by: Mike Lockwood <lockwood@google.com>

Conflicts:

	packages/SettingsProvider/res/values/defaults.xml

Change-Id: I6a6519316a87bd1af39ea9dc51e0d312011135ef
diff --git a/framework/java/android/net/wifi/WifiStateMachine.java b/framework/java/android/net/wifi/WifiStateMachine.java
index 0134456..1b64f3e 100644
--- a/framework/java/android/net/wifi/WifiStateMachine.java
+++ b/framework/java/android/net/wifi/WifiStateMachine.java
@@ -1754,7 +1754,9 @@
          * If we've exceeded the maximum number of retries for DHCP
          * to a given network, disable the network
          */
-        if (++mReconnectCount > getMaxDhcpRetries()) {
+        int maxRetries = getMaxDhcpRetries();
+        // maxRetries == 0 means keep trying forever
+        if (maxRetries > 0 && ++mReconnectCount > maxRetries) {
             loge("Failed " +
                     mReconnectCount + " times, Disabling " + mLastNetworkId);
             mWifiConfigStore.disableNetwork(mLastNetworkId,