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

Commit 10d24321 authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

Make IpClient populate the DHCP server address in LinkProperties am:...

Make IpClient populate the DHCP server address in LinkProperties am: f4ad6375 am: a534b3c3 am: c81a6cb9 am: ed91eba9 am: 9fe642c5

Change-Id: Ide9610f9b17992eef83e1c42ac71b1b79c179f44
parents 063fb8b8 9fe642c5
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -27,6 +27,8 @@ import androidx.annotation.VisibleForTesting;
import com.android.networkstack.apishim.CaptivePortalDataShim;
import com.android.networkstack.apishim.NetworkInformationShim;

import java.net.Inet4Address;

/**
 * Compatibility implementation of {@link NetworkInformationShim}.
 *
@@ -84,4 +86,10 @@ public class NetworkInformationShimImpl implements NetworkInformationShim {
    public LinkProperties makeSensitiveFieldsParcelingCopy(@NonNull final LinkProperties lp) {
        return new LinkProperties(lp);
    }

    @Override
    public void setDhcpServerAddress(@NonNull LinkProperties lp,
            @NonNull Inet4Address serverAddress) {
        // Not supported on this API level: no-op
    }
}
+8 −0
Original line number Diff line number Diff line
@@ -25,6 +25,8 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;

import java.net.Inet4Address;

/**
 * Compatibility implementation of {@link NetworkInformationShim}.
 */
@@ -81,4 +83,10 @@ public class NetworkInformationShimImpl extends
    public LinkProperties makeSensitiveFieldsParcelingCopy(@NonNull final LinkProperties lp) {
        return lp.makeSensitiveFieldsParcelingCopy();
    }

    @Override
    public void setDhcpServerAddress(@NonNull LinkProperties lp,
            @NonNull Inet4Address serverAddress) {
        lp.setDhcpServerAddress(serverAddress);
    }
}
+10 −0
Original line number Diff line number Diff line
@@ -23,6 +23,8 @@ import android.net.Uri;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;

import java.net.Inet4Address;

/**
 * Compatibility interface for network info classes such as {@link LinkProperties} and
 * {@link NetworkCapabilities}.
@@ -56,4 +58,12 @@ public interface NetworkInformationShim {
     */
    @NonNull
    LinkProperties makeSensitiveFieldsParcelingCopy(@NonNull LinkProperties lp);

    /**
     * @see LinkProperties#setDhcpServerAddress()
     */
    @NonNull
    void setDhcpServerAddress(@NonNull LinkProperties lp,
            @NonNull Inet4Address serverAddress);

}
+5 −0
Original line number Diff line number Diff line
@@ -1211,6 +1211,10 @@ public class IpClient extends StateMachine {
                newLp.setMtu(mDhcpResults.mtu);
            }

            if (mDhcpResults.serverAddress != null) {
                mShim.setDhcpServerAddress(newLp, mDhcpResults.serverAddress);
            }

            final String capportUrl = mDhcpResults.captivePortalApiUrl;
            // Uri.parse does no syntax check; do a simple regex check to eliminate garbage.
            // If the URL is still incorrect data fetching will fail later, which is fine.
@@ -1343,6 +1347,7 @@ public class IpClient extends StateMachine {

        if (DBG) {
            Log.d(mTag, "onNewDhcpResults(" + Objects.toString(mDhcpResults) + ")");
            Log.d(mTag, "handleIPv4Success newLp{" + newLp + "}");
        }
        mCallback.onNewDhcpResults(mDhcpResults);
        maybeSaveNetworkToIpMemoryStore();