Merge "Allow TRANSPORT_TEST ethernet networks" am: 6642ec61c3 am: 54c3c2b3c7

Change-Id: I030f0aeb0f196fee213fee02a25c5a7e66618b93
This commit is contained in:
Remi NGUYEN VAN
2020-05-29 22:09:13 +00:00
committed by Automerger Merge Worker

View File

@@ -679,13 +679,14 @@ public final class NetworkCapabilities implements Parcelable {
*/
public void restrictCapabilitesForTestNetwork(int creatorUid) {
final long originalCapabilities = mNetworkCapabilities;
final long originalTransportTypes = mTransportTypes;
final NetworkSpecifier originalSpecifier = mNetworkSpecifier;
final int originalSignalStrength = mSignalStrength;
final int originalOwnerUid = getOwnerUid();
final int[] originalAdministratorUids = getAdministratorUids();
clearAll();
// Reset the transports to only contain TRANSPORT_TEST.
mTransportTypes = (1 << TRANSPORT_TEST);
mTransportTypes = (originalTransportTypes & TEST_NETWORKS_ALLOWED_TRANSPORTS)
| (1 << TRANSPORT_TEST);
mNetworkCapabilities = originalCapabilities & TEST_NETWORKS_ALLOWED_CAPABILITIES;
mNetworkSpecifier = originalSpecifier;
mSignalStrength = originalSignalStrength;
@@ -786,6 +787,13 @@ public final class NetworkCapabilities implements Parcelable {
"TEST"
};
/**
* Allowed transports on a test network, in addition to TRANSPORT_TEST.
*/
private static final int TEST_NETWORKS_ALLOWED_TRANSPORTS = 1 << TRANSPORT_TEST
// Test ethernet networks can be created with EthernetManager#setIncludeTestInterfaces
| 1 << TRANSPORT_ETHERNET;
/**
* Adds the given transport type to this {@code NetworkCapability} instance.
* Multiple transports may be applied. Note that when searching