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

Commit 15005fed authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Used LinkAddress insteaad of InterfaceAddress"

parents ba19cf14 12967583
Loading
Loading
Loading
Loading
+7 −14
Original line number Diff line number Diff line
@@ -53,6 +53,7 @@ import android.hardware.radio.V1_0.SimApdu;
import android.hardware.radio.V1_0.SmsWriteArgs;
import android.hardware.radio.V1_0.UusInfo;
import android.net.ConnectivityManager;
import android.net.LinkAddress;
import android.net.NetworkUtils;
import android.os.AsyncResult;
import android.os.Build;
@@ -85,7 +86,6 @@ import android.telephony.TelephonyHistogram;
import android.telephony.TelephonyManager;
import android.telephony.data.DataCallResponse;
import android.telephony.data.DataProfile;
import android.telephony.data.InterfaceAddress;
import android.text.TextUtils;
import android.util.Log;
import android.util.SparseArray;
@@ -107,7 +107,6 @@ import java.io.FileDescriptor;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -1191,23 +1190,17 @@ public class RIL extends BaseCommands implements CommandsInterface {
            addresses = dcResult.addresses.split(" ");
        }

        List<InterfaceAddress> iaList = new ArrayList<>();
        List<LinkAddress> laList = new ArrayList<>();
        if (addresses != null) {
            for (String address : addresses) {
                address = address.trim();
                if (address.isEmpty()) continue;

                String[] ap = address.split("/");
                int addrPrefixLen = 0;
                if (ap.length == 2) {
                    addrPrefixLen = Integer.parseInt(ap[1]);
                }

                try {
                    InterfaceAddress ia = new InterfaceAddress(ap[0], addrPrefixLen);
                    iaList.add(ia);
                } catch (UnknownHostException e) {
                    Rlog.e(RILJ_LOG_TAG, "Unknown host exception: " + e);
                    LinkAddress la = new LinkAddress(address);
                    laList.add(la);
                } catch (IllegalArgumentException e) {
                    Rlog.e(RILJ_LOG_TAG, "Unknown address: " + address + ", exception = " + e);
                }
            }
        }
@@ -1258,7 +1251,7 @@ public class RIL extends BaseCommands implements CommandsInterface {
                dcResult.active,
                dcResult.type,
                dcResult.ifname,
                iaList,
                laList,
                dnsList,
                gatewayList,
                new ArrayList<>(Arrays.asList(dcResult.pcscf.trim().split("\\s*,\\s*"))),
+7 −14
Original line number Diff line number Diff line
@@ -39,7 +39,6 @@ import android.telephony.ServiceState;
import android.telephony.TelephonyManager;
import android.telephony.data.DataCallResponse;
import android.telephony.data.DataProfile;
import android.telephony.data.InterfaceAddress;
import android.text.TextUtils;
import android.util.LocalLog;
import android.util.Pair;
@@ -1048,22 +1047,16 @@ public class DataConnection extends StateMachine {

                // set link addresses
                if (response.getAddresses().size() > 0) {
                    for (InterfaceAddress ia : response.getAddresses()) {
                        if (!ia.getAddress().isAnyLocalAddress()) {
                            int addrPrefixLen = ia.getNetworkPrefixLength();
                    for (LinkAddress la : response.getAddresses()) {
                        if (!la.getAddress().isAnyLocalAddress()) {
                            int addrPrefixLen = la.getNetworkPrefixLength();
                            if (addrPrefixLen == 0) {
                                // Assume point to point
                                addrPrefixLen =
                                        (ia.getAddress() instanceof Inet4Address) ? 32 : 128;
                            }
                            if (DBG) log("addr/pl=" + ia.getAddress() + "/" + addrPrefixLen);
                            LinkAddress la;
                            try {
                                la = new LinkAddress(ia.getAddress(), addrPrefixLen);
                            } catch (IllegalArgumentException e) {
                                throw new UnknownHostException("Bad parameter for LinkAddress, ia="
                                        + ia.getAddress().getHostAddress() + "/" + addrPrefixLen);
                                addrPrefixLen = (la.getAddress() instanceof Inet4Address)
                                        ? 32 : 128;
                                la = new LinkAddress(la.getAddress(), addrPrefixLen);
                            }
                            if (DBG) log("addr/pl=" + la.getAddress() + "/" + addrPrefixLen);

                            linkProperties.addLinkAddress(la);
                        }
+2 −2
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.internal.telephony.test;

import android.hardware.radio.V1_0.DataRegStateResult;
import android.hardware.radio.V1_0.VoiceRegStateResult;
import android.net.LinkAddress;
import android.net.NetworkUtils;
import android.os.AsyncResult;
import android.os.Handler;
@@ -38,7 +39,6 @@ import android.telephony.ServiceState;
import android.telephony.SignalStrength;
import android.telephony.data.DataCallResponse;
import android.telephony.data.DataProfile;
import android.telephony.data.InterfaceAddress;

import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.telephony.BaseCommands;
@@ -1132,7 +1132,7 @@ public class SimulatedCommands extends BaseCommands
        if (mDcResponse == null) {
            try {
                mDcResponse = new DataCallResponse(0, -1, 1, 2, "IP", "rmnet_data7",
                        Arrays.asList(new InterfaceAddress("12.34.56.78", 0)),
                        Arrays.asList(new LinkAddress("12.34.56.78/32")),
                        Arrays.asList(NetworkUtils.numericToInetAddress("98.76.54.32")),
                        Arrays.asList(NetworkUtils.numericToInetAddress("11.22.33.44")),
                        null, 1440);
+5 −5
Original line number Diff line number Diff line
@@ -22,10 +22,10 @@ import static com.android.internal.telephony.dataconnection.DcTrackerTest.FAKE_G
import static com.android.internal.telephony.dataconnection.DcTrackerTest.FAKE_IFNAME;
import static com.android.internal.telephony.dataconnection.DcTrackerTest.FAKE_PCSCF_ADDRESS;

import android.net.LinkAddress;
import android.net.NetworkUtils;
import android.os.Parcel;
import android.telephony.data.DataCallResponse;
import android.telephony.data.InterfaceAddress;
import android.test.AndroidTestCase;
import android.test.suitebuilder.annotation.SmallTest;

@@ -36,7 +36,7 @@ public class DataCallResponseTest extends AndroidTestCase {
    @SmallTest
    public void testParcel() throws Exception {
        DataCallResponse response = new DataCallResponse(0, -1, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -53,14 +53,14 @@ public class DataCallResponseTest extends AndroidTestCase {
    @SmallTest
    public void testEquals() throws Exception {
        DataCallResponse response = new DataCallResponse(0, -1, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
                1440);

        DataCallResponse response1 = new DataCallResponse(0, -1, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -70,7 +70,7 @@ public class DataCallResponseTest extends AndroidTestCase {
        assertEquals(response, response1);

        DataCallResponse response2 = new DataCallResponse(1, -1, 1, 3, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS),
                        NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
+12 −12
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@ import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;

import android.net.LinkAddress;
import android.net.LinkProperties;
import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
@@ -44,7 +45,6 @@ import android.telephony.CarrierConfigManager;
import android.telephony.ServiceState;
import android.telephony.data.DataCallResponse;
import android.telephony.data.DataProfile;
import android.telephony.data.InterfaceAddress;
import android.test.suitebuilder.annotation.SmallTest;

import com.android.internal.telephony.PhoneConstants;
@@ -247,7 +247,7 @@ public class DataConnectionTest extends TelephonyTest {
    @SmallTest
    public void testModemSuggestRetry() throws Exception {
        DataCallResponse response = new DataCallResponse(0, 0, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -257,7 +257,7 @@ public class DataConnectionTest extends TelephonyTest {
        assertEquals(response.getSuggestedRetryTime(), getSuggestedRetryDelay(ar));

        response = new DataCallResponse(0, 1000, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -266,7 +266,7 @@ public class DataConnectionTest extends TelephonyTest {
        assertEquals(response.getSuggestedRetryTime(), getSuggestedRetryDelay(ar));

        response = new DataCallResponse(0, 9999, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -280,7 +280,7 @@ public class DataConnectionTest extends TelephonyTest {
    @SmallTest
    public void testModemNotSuggestRetry() throws Exception {
        DataCallResponse response = new DataCallResponse(0, -1, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -289,7 +289,7 @@ public class DataConnectionTest extends TelephonyTest {
        assertEquals(RetryManager.NO_SUGGESTED_RETRY_DELAY, getSuggestedRetryDelay(ar));

        response = new DataCallResponse(0, -5, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -298,7 +298,7 @@ public class DataConnectionTest extends TelephonyTest {
        assertEquals(RetryManager.NO_SUGGESTED_RETRY_DELAY, getSuggestedRetryDelay(ar));

        response = new DataCallResponse(0, Integer.MIN_VALUE, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -312,7 +312,7 @@ public class DataConnectionTest extends TelephonyTest {
    public void testModemSuggestNoRetry() throws Exception {
        DataCallResponse response = new DataCallResponse(0, Integer.MAX_VALUE, 1, 2, "IP",
                FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -378,7 +378,7 @@ public class DataConnectionTest extends TelephonyTest {
    public void testSetLinkProperties() throws Exception {

        DataCallResponse response = new DataCallResponse(0, -1, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -413,11 +413,11 @@ public class DataConnectionTest extends TelephonyTest {

    @Test
    @SmallTest
    public void testSetLinkPropertiesInvalidAddress() throws Exception {
    public void testSetLinkPropertiesEmptyAddress() throws Exception {

        // 224.224.224.224 is an invalid address.
        DataCallResponse response = new DataCallResponse(0, -1, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress("224.224.224.224", 0)),
                null,
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_DNS)),
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
@@ -434,7 +434,7 @@ public class DataConnectionTest extends TelephonyTest {

        // Empty dns entry.
        DataCallResponse response = new DataCallResponse(0, -1, 1, 2, "IP", FAKE_IFNAME,
                Arrays.asList(new InterfaceAddress(FAKE_ADDRESS, 0)),
                Arrays.asList(new LinkAddress(NetworkUtils.numericToInetAddress(FAKE_ADDRESS), 0)),
                null,
                Arrays.asList(NetworkUtils.numericToInetAddress(FAKE_GATEWAY)),
                Arrays.asList(FAKE_PCSCF_ADDRESS),
Loading