Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0c13d479 authored by Irfan Sheriff's avatar Irfan Sheriff
Browse files

Clear IP configuration on lost network

Bug: 4391449
Change-Id: I574128083a5612f13fcccaf5ed091eae114b7943
parent e9d32283
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -478,6 +478,21 @@ class WifiConfigStore {
        }
    }

    /**
     * clear IP configuration for a given network id
     */
    static void clearIpConfiguration(int netId) {
        synchronized (sConfiguredNetworks) {
            WifiConfiguration config = sConfiguredNetworks.get(netId);
            if (config != null && config.linkProperties != null) {
                // Clear everything except proxy
                ProxyProperties proxy = config.linkProperties.getHttpProxy();
                config.linkProperties.clear();
                config.linkProperties.setHttpProxy(proxy);
            }
        }
    }


    /**
     * Fetch the proxy properties for a given network id
+4 −1
Original line number Diff line number Diff line
@@ -1440,10 +1440,13 @@ public class WifiStateMachine extends StateMachine {

        /* Clear network properties */
        mLinkProperties.clear();
        /* Clear IP settings if the network used DHCP */
        if (!WifiConfigStore.isUsingStaticIp(mLastNetworkId)) {
            WifiConfigStore.clearIpConfiguration(mLastNetworkId);
        }

        mLastBssid= null;
        mLastNetworkId = WifiConfiguration.INVALID_NETWORK_ID;

    }

    void handlePreDhcpSetup() {