Merge "Revert "VCN: Require capability matching on test networks for CTS"" am: f81ffcebd4

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2503995

Change-Id: If2bd5d93cfc4944aba985ca88296454e0e5388ba
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Yan Yan
2023-03-22 23:23:08 +00:00
committed by Automerger Merge Worker
4 changed files with 12 additions and 28 deletions

View File

@@ -354,7 +354,6 @@ public final class VcnCellUnderlyingNetworkTemplate extends VcnUnderlyingNetwork
} }
/** @hide */ /** @hide */
@Override
public Map<Integer, Integer> getCapabilitiesMatchCriteria() { public Map<Integer, Integer> getCapabilitiesMatchCriteria() {
return Collections.unmodifiableMap(new HashMap<>(mCapabilitiesMatchCriteria)); return Collections.unmodifiableMap(new HashMap<>(mCapabilitiesMatchCriteria));
} }

View File

@@ -29,7 +29,6 @@ import com.android.internal.util.Preconditions;
import java.lang.annotation.Retention; import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.util.Map;
import java.util.Objects; import java.util.Objects;
/** /**
@@ -308,7 +307,4 @@ public abstract class VcnUnderlyingNetworkTemplate {
public int getMinExitDownstreamBandwidthKbps() { public int getMinExitDownstreamBandwidthKbps() {
return mMinExitDownstreamBandwidthKbps; return mMinExitDownstreamBandwidthKbps;
} }
/** @hide */
public abstract Map<Integer, Integer> getCapabilitiesMatchCriteria();
} }

View File

@@ -15,9 +15,6 @@
*/ */
package android.net.vcn; package android.net.vcn;
import static android.net.NetworkCapabilities.NET_CAPABILITY_INTERNET;
import static android.net.vcn.VcnUnderlyingNetworkTemplate.MATCH_ANY;
import static com.android.internal.annotations.VisibleForTesting.Visibility; import static com.android.internal.annotations.VisibleForTesting.Visibility;
import static com.android.server.vcn.util.PersistableBundleUtils.STRING_DESERIALIZER; import static com.android.server.vcn.util.PersistableBundleUtils.STRING_DESERIALIZER;
import static com.android.server.vcn.util.PersistableBundleUtils.STRING_SERIALIZER; import static com.android.server.vcn.util.PersistableBundleUtils.STRING_SERIALIZER;
@@ -26,7 +23,6 @@ import android.annotation.NonNull;
import android.annotation.Nullable; import android.annotation.Nullable;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.net.NetworkCapabilities; import android.net.NetworkCapabilities;
import android.net.vcn.VcnUnderlyingNetworkTemplate.MatchCriteria;
import android.os.PersistableBundle; import android.os.PersistableBundle;
import android.util.ArraySet; import android.util.ArraySet;
@@ -36,7 +32,6 @@ import com.android.server.vcn.util.PersistableBundleUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.Map;
import java.util.Objects; import java.util.Objects;
import java.util.Set; import java.util.Set;
@@ -167,12 +162,6 @@ public final class VcnWifiUnderlyingNetworkTemplate extends VcnUnderlyingNetwork
return Collections.unmodifiableSet(mSsids); return Collections.unmodifiableSet(mSsids);
} }
/** @hide */
@Override
public Map<Integer, Integer> getCapabilitiesMatchCriteria() {
return Collections.singletonMap(NET_CAPABILITY_INTERNET, MATCH_REQUIRED);
}
/** This class is used to incrementally build VcnWifiUnderlyingNetworkTemplate objects. */ /** This class is used to incrementally build VcnWifiUnderlyingNetworkTemplate objects. */
public static final class Builder { public static final class Builder {
private int mMeteredMatchCriteria = MATCH_ANY; private int mMeteredMatchCriteria = MATCH_ANY;

View File

@@ -171,18 +171,6 @@ class NetworkPriorityClassifier {
return false; return false;
} }
for (Map.Entry<Integer, Integer> entry :
networkPriority.getCapabilitiesMatchCriteria().entrySet()) {
final int cap = entry.getKey();
final int matchCriteria = entry.getValue();
if (matchCriteria == MATCH_REQUIRED && !caps.hasCapability(cap)) {
return false;
} else if (matchCriteria == MATCH_FORBIDDEN && caps.hasCapability(cap)) {
return false;
}
}
if (vcnContext.isInTestMode() && caps.hasTransport(TRANSPORT_TEST)) { if (vcnContext.isInTestMode() && caps.hasTransport(TRANSPORT_TEST)) {
return true; return true;
} }
@@ -331,6 +319,18 @@ class NetworkPriorityClassifier {
return false; return false;
} }
for (Map.Entry<Integer, Integer> entry :
networkPriority.getCapabilitiesMatchCriteria().entrySet()) {
final int cap = entry.getKey();
final int matchCriteria = entry.getValue();
if (matchCriteria == MATCH_REQUIRED && !caps.hasCapability(cap)) {
return false;
} else if (matchCriteria == MATCH_FORBIDDEN && caps.hasCapability(cap)) {
return false;
}
}
return true; return true;
} }