diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-05-17 21:06:47 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-05-17 21:06:47 +0000 |
commit | 16216f3643609ea5b26ba2edc35a93d71aef9094 (patch) | |
tree | aabbd03e594ad3c210ceeaf5410cc0f65259c088 | |
parent | d5558c037188037cda634ba2e80a479db3c5e042 (diff) | |
parent | 177e7c335394e5caebd2b6aa8f4c7e376545f5e8 (diff) | |
download | Connectivity-android-platform-12.1.0_r18.tar.gz |
Snap for 8589293 from 177e7c335394e5caebd2b6aa8f4c7e376545f5e8 to sc-v2-platform-releaseandroid-platform-12.1.0_r9android-platform-12.1.0_r8android-platform-12.1.0_r7android-platform-12.1.0_r6android-platform-12.1.0_r5android-platform-12.1.0_r4android-platform-12.1.0_r27android-platform-12.1.0_r26android-platform-12.1.0_r25android-platform-12.1.0_r24android-platform-12.1.0_r23android-platform-12.1.0_r22android-platform-12.1.0_r21android-platform-12.1.0_r20android-platform-12.1.0_r19android-platform-12.1.0_r18android-platform-12.1.0_r17android-platform-12.1.0_r16android-platform-12.1.0_r15android-platform-12.1.0_r14android-platform-12.1.0_r13android-platform-12.1.0_r12android-platform-12.1.0_r11android-platform-12.1.0_r10android12L-platform-release
Change-Id: I72e68283aafcd80ffb3a9535d7439308433c6a4f
3 files changed, 2 insertions, 273 deletions
diff --git a/framework/src/android/net/NetworkCapabilities.java b/framework/src/android/net/NetworkCapabilities.java index ec71d3d65a..96302d5135 100644 --- a/framework/src/android/net/NetworkCapabilities.java +++ b/framework/src/android/net/NetworkCapabilities.java @@ -741,18 +741,6 @@ public final class NetworkCapabilities implements Parcelable { } } - private void combineNetCapabilities(@NonNull NetworkCapabilities nc) { - final long wantedCaps = this.mNetworkCapabilities | nc.mNetworkCapabilities; - final long forbiddenCaps = - this.mForbiddenNetworkCapabilities | nc.mForbiddenNetworkCapabilities; - if ((wantedCaps & forbiddenCaps) != 0) { - throw new IllegalArgumentException( - "Cannot have the same capability in wanted and forbidden lists."); - } - this.mNetworkCapabilities = wantedCaps; - this.mForbiddenNetworkCapabilities = forbiddenCaps; - } - /** * Convenience function that returns a human-readable description of the first mutable * capability we find. Used to present an error message to apps that request mutable @@ -1042,10 +1030,6 @@ public final class NetworkCapabilities implements Parcelable { return isValidTransport(transportType) && ((mTransportTypes & (1 << transportType)) != 0); } - private void combineTransportTypes(NetworkCapabilities nc) { - this.mTransportTypes |= nc.mTransportTypes; - } - private boolean satisfiedByTransportTypes(NetworkCapabilities nc) { return ((this.mTransportTypes == 0) || ((this.mTransportTypes & nc.mTransportTypes) != 0)); @@ -1226,26 +1210,6 @@ public final class NetworkCapabilities implements Parcelable { } /** - * Combine the administrator UIDs of the capabilities. - * - * <p>This is only legal if either of the administrators lists are empty, or if they are equal. - * Combining administrator UIDs is only possible for combining non-overlapping sets of UIDs. - * - * <p>If both administrator lists are non-empty but not equal, they conflict with each other. In - * this case, it would not make sense to add them together. - */ - private void combineAdministratorUids(@NonNull final NetworkCapabilities nc) { - if (nc.mAdministratorUids.length == 0) return; - if (mAdministratorUids.length == 0) { - mAdministratorUids = Arrays.copyOf(nc.mAdministratorUids, nc.mAdministratorUids.length); - return; - } - if (!equalsAdministratorUids(nc)) { - throw new IllegalStateException("Can't combine two different administrator UID lists"); - } - } - - /** * Value indicating that link bandwidth is unspecified. * @hide */ @@ -1307,12 +1271,6 @@ public final class NetworkCapabilities implements Parcelable { return mLinkDownBandwidthKbps; } - private void combineLinkBandwidths(NetworkCapabilities nc) { - this.mLinkUpBandwidthKbps = - Math.max(this.mLinkUpBandwidthKbps, nc.mLinkUpBandwidthKbps); - this.mLinkDownBandwidthKbps = - Math.max(this.mLinkDownBandwidthKbps, nc.mLinkDownBandwidthKbps); - } private boolean satisfiedByLinkBandwidths(NetworkCapabilities nc) { return !(this.mLinkUpBandwidthKbps > nc.mLinkUpBandwidthKbps || this.mLinkDownBandwidthKbps > nc.mLinkDownBandwidthKbps); @@ -1399,13 +1357,6 @@ public final class NetworkCapabilities implements Parcelable { return mTransportInfo; } - private void combineSpecifiers(NetworkCapabilities nc) { - if (mNetworkSpecifier != null && !mNetworkSpecifier.equals(nc.mNetworkSpecifier)) { - throw new IllegalStateException("Can't combine two networkSpecifiers"); - } - setNetworkSpecifier(nc.mNetworkSpecifier); - } - private boolean satisfiedBySpecifier(NetworkCapabilities nc) { return mNetworkSpecifier == null || mNetworkSpecifier.canBeSatisfiedBy(nc.mNetworkSpecifier) || nc.mNetworkSpecifier instanceof MatchAllNetworkSpecifier; @@ -1415,13 +1366,6 @@ public final class NetworkCapabilities implements Parcelable { return Objects.equals(mNetworkSpecifier, nc.mNetworkSpecifier); } - private void combineTransportInfos(NetworkCapabilities nc) { - if (mTransportInfo != null && !mTransportInfo.equals(nc.mTransportInfo)) { - throw new IllegalStateException("Can't combine two TransportInfos"); - } - setTransportInfo(nc.mTransportInfo); - } - private boolean equalsTransportInfo(NetworkCapabilities nc) { return Objects.equals(mTransportInfo, nc.mTransportInfo); } @@ -1476,10 +1420,6 @@ public final class NetworkCapabilities implements Parcelable { return mSignalStrength; } - private void combineSignalStrength(NetworkCapabilities nc) { - this.mSignalStrength = Math.max(this.mSignalStrength, nc.mSignalStrength); - } - private boolean satisfiedBySignalStrength(NetworkCapabilities nc) { return this.mSignalStrength <= nc.mSignalStrength; } @@ -1673,20 +1613,6 @@ public final class NetworkCapabilities implements Parcelable { } /** - * Combine the UIDs this network currently applies to with the UIDs the passed - * NetworkCapabilities apply to. - * nc is assumed nonnull. - */ - private void combineUids(@NonNull NetworkCapabilities nc) { - if (null == nc.mUids || null == mUids) { - mUids = null; - return; - } - mUids.addAll(nc.mUids); - } - - - /** * The SSID of the network, or null if not applicable or unknown. * <p> * This is filled in by wifi code. @@ -1729,42 +1655,6 @@ public final class NetworkCapabilities implements Parcelable { } /** - * Combine SSIDs of the capabilities. - * <p> - * This is only legal if either the SSID of this object is null, or both SSIDs are - * equal. - * @hide - */ - private void combineSSIDs(@NonNull NetworkCapabilities nc) { - if (mSSID != null && !mSSID.equals(nc.mSSID)) { - throw new IllegalStateException("Can't combine two SSIDs"); - } - setSSID(nc.mSSID); - } - - /** - * Combine a set of Capabilities to this one. Useful for coming up with the complete set. - * <p> - * Note that this method may break an invariant of having a particular capability in either - * wanted or forbidden lists but never in both. Requests that have the same capability in - * both lists will never be satisfied. - * @hide - */ - public void combineCapabilities(@NonNull NetworkCapabilities nc) { - combineNetCapabilities(nc); - combineTransportTypes(nc); - combineLinkBandwidths(nc); - combineSpecifiers(nc); - combineTransportInfos(nc); - combineSignalStrength(nc); - combineUids(nc); - combineSSIDs(nc); - combineRequestor(nc); - combineAdministratorUids(nc); - combineSubscriptionIds(nc); - } - - /** * Check if our requirements are satisfied by the given {@code NetworkCapabilities}. * * @param nc the {@code NetworkCapabilities} that may or may not satisfy our requirements. @@ -2322,25 +2212,6 @@ public final class NetworkCapabilities implements Parcelable { return TextUtils.equals(mRequestorPackageName, nc.mRequestorPackageName); } - /** - * Combine requestor info of the capabilities. - * <p> - * This is only legal if either the requestor info of this object is reset, or both info are - * equal. - * nc is assumed nonnull. - */ - private void combineRequestor(@NonNull NetworkCapabilities nc) { - if (mRequestorUid != Process.INVALID_UID && mRequestorUid != nc.mOwnerUid) { - throw new IllegalStateException("Can't combine two uids"); - } - if (mRequestorPackageName != null - && !mRequestorPackageName.equals(nc.mRequestorPackageName)) { - throw new IllegalStateException("Can't combine two package names"); - } - setRequestorUid(nc.mRequestorUid); - setRequestorPackageName(nc.mRequestorPackageName); - } - private boolean equalsRequestor(NetworkCapabilities nc) { return mRequestorUid == nc.mRequestorUid && TextUtils.equals(mRequestorPackageName, nc.mRequestorPackageName); @@ -2400,20 +2271,6 @@ public final class NetworkCapabilities implements Parcelable { } /** - * Combine subscription ID set of the capabilities. - * - * <p>This is only legal if the subscription Ids are equal. - * - * <p>If both subscription IDs are not equal, they belong to different subscription - * (or no subscription). In this case, it would not make sense to add them together. - */ - private void combineSubscriptionIds(@NonNull NetworkCapabilities nc) { - if (!Objects.equals(mSubIds, nc.mSubIds)) { - throw new IllegalStateException("Can't combine two subscription ID sets"); - } - } - - /** * Returns a bitmask of all the applicable redactions (based on the permissions held by the * receiving app) to be performed on this object. * diff --git a/service/ServiceConnectivityResources/res/values-lv/strings.xml b/service/ServiceConnectivityResources/res/values-lv/strings.xml index 9d26c40aa6..ce063a54b0 100644 --- a/service/ServiceConnectivityResources/res/values-lv/strings.xml +++ b/service/ServiceConnectivityResources/res/values-lv/strings.xml @@ -23,7 +23,7 @@ <!-- no translation found for network_available_sign_in_detailed (8439369644697866359) --> <skip /> <string name="wifi_no_internet" msgid="1326348603404555475">"Tīklā <xliff:g id="NETWORK_SSID">%1$s</xliff:g> nav piekļuves internetam"</string> - <string name="wifi_no_internet_detailed" msgid="1746921096565304090">"Pieskarieties, lai skatītu iespējas."</string> + <string name="wifi_no_internet_detailed" msgid="1746921096565304090">"Pieskarieties, lai skatītu opcijas."</string> <string name="mobile_no_internet" msgid="4087718456753201450">"Mobilajā tīklā nav piekļuves internetam."</string> <string name="other_networks_no_internet" msgid="5693932964749676542">"Tīklā nav piekļuves internetam."</string> <string name="private_dns_broken_detailed" msgid="2677123850463207823">"Nevar piekļūt privātam DNS serverim."</string> diff --git a/tests/common/java/android/net/NetworkCapabilitiesTest.java b/tests/common/java/android/net/NetworkCapabilitiesTest.java index 39a3941379..1b5b467b0b 100644 --- a/tests/common/java/android/net/NetworkCapabilitiesTest.java +++ b/tests/common/java/android/net/NetworkCapabilitiesTest.java @@ -279,19 +279,11 @@ public class NetworkCapabilitiesTest { assertFalse(netCap2.satisfiedByUids(netCap)); assertFalse(netCap.appliesToUid(650)); assertTrue(netCap2.appliesToUid(650)); - netCap.combineCapabilities(netCap2); + netCap.setUids(uids); assertTrue(netCap2.satisfiedByUids(netCap)); assertTrue(netCap.appliesToUid(650)); assertFalse(netCap.appliesToUid(500)); - assertTrue(new NetworkCapabilities().satisfiedByUids(netCap)); - netCap.combineCapabilities(new NetworkCapabilities()); - assertTrue(netCap.appliesToUid(500)); - assertTrue(netCap.appliesToUidRange(new UidRange(1, 100000))); - assertFalse(netCap2.appliesToUid(500)); - assertFalse(netCap2.appliesToUidRange(new UidRange(1, 100000))); - assertTrue(new NetworkCapabilities().satisfiedByUids(netCap)); - // Null uids satisfies everything. netCap.setUids(null); assertTrue(netCap2.satisfiedByUids(netCap)); @@ -570,103 +562,6 @@ public class NetworkCapabilitiesTest { } @Test - public void testCombineCapabilities() { - NetworkCapabilities nc1 = new NetworkCapabilities(); - NetworkCapabilities nc2 = new NetworkCapabilities(); - - if (isAtLeastS()) { - nc1.addForbiddenCapability(NET_CAPABILITY_CAPTIVE_PORTAL); - } - nc1.addCapability(NET_CAPABILITY_NOT_ROAMING); - assertNotEquals(nc1, nc2); - nc2.combineCapabilities(nc1); - assertEquals(nc1, nc2); - assertTrue(nc2.hasCapability(NET_CAPABILITY_NOT_ROAMING)); - if (isAtLeastS()) { - assertTrue(nc2.hasForbiddenCapability(NET_CAPABILITY_CAPTIVE_PORTAL)); - } - - if (isAtLeastS()) { - // This will effectively move NOT_ROAMING capability from required to forbidden for nc1. - nc1.addForbiddenCapability(NET_CAPABILITY_NOT_ROAMING); - // It is not allowed to have the same capability in both wanted and forbidden list. - assertThrows(IllegalArgumentException.class, () -> nc2.combineCapabilities(nc1)); - // Remove forbidden capability to continue other tests. - nc1.removeForbiddenCapability(NET_CAPABILITY_NOT_ROAMING); - } - - nc1.setSSID(TEST_SSID); - nc2.combineCapabilities(nc1); - if (isAtLeastR()) { - assertTrue(TEST_SSID.equals(nc2.getSsid())); - } - - // Because they now have the same SSID, the following call should not throw - nc2.combineCapabilities(nc1); - - nc1.setSSID(DIFFERENT_TEST_SSID); - try { - nc2.combineCapabilities(nc1); - fail("Expected IllegalStateException: can't combine different SSIDs"); - } catch (IllegalStateException expected) {} - nc1.setSSID(TEST_SSID); - - if (isAtLeastS()) { - nc1.setUids(uidRanges(10, 13)); - assertNotEquals(nc1, nc2); - nc2.combineCapabilities(nc1); // Everything + 10~13 is still everything. - assertNotEquals(nc1, nc2); - nc1.combineCapabilities(nc2); // 10~13 + everything is everything. - assertEquals(nc1, nc2); - nc1.setUids(uidRanges(10, 13)); - nc2.setUids(uidRanges(20, 23)); - assertNotEquals(nc1, nc2); - nc1.combineCapabilities(nc2); - assertTrue(nc1.appliesToUid(12)); - assertFalse(nc2.appliesToUid(12)); - assertTrue(nc1.appliesToUid(22)); - assertTrue(nc2.appliesToUid(22)); - - // Verify the subscription id list can be combined only when they are equal. - nc1.setSubscriptionIds(Set.of(TEST_SUBID1, TEST_SUBID2)); - nc2.setSubscriptionIds(Set.of(TEST_SUBID2)); - assertThrows(IllegalStateException.class, () -> nc2.combineCapabilities(nc1)); - - nc2.setSubscriptionIds(Set.of()); - assertThrows(IllegalStateException.class, () -> nc2.combineCapabilities(nc1)); - - nc2.setSubscriptionIds(Set.of(TEST_SUBID2, TEST_SUBID1)); - nc2.combineCapabilities(nc1); - assertEquals(Set.of(TEST_SUBID2, TEST_SUBID1), nc2.getSubscriptionIds()); - } - } - - @Test @IgnoreUpTo(Build.VERSION_CODES.Q) - public void testCombineCapabilities_AdministratorUids() { - final NetworkCapabilities nc1 = new NetworkCapabilities(); - final NetworkCapabilities nc2 = new NetworkCapabilities(); - - final int[] adminUids = {3, 6, 12}; - nc1.setAdministratorUids(adminUids); - nc2.combineCapabilities(nc1); - assertTrue(nc2.equalsAdministratorUids(nc1)); - assertArrayEquals(nc2.getAdministratorUids(), adminUids); - - final int[] adminUidsOtherOrder = {3, 12, 6}; - nc1.setAdministratorUids(adminUidsOtherOrder); - assertTrue(nc2.equalsAdministratorUids(nc1)); - - final int[] adminUids2 = {11, 1, 12, 3, 6}; - nc1.setAdministratorUids(adminUids2); - assertFalse(nc2.equalsAdministratorUids(nc1)); - assertFalse(Arrays.equals(nc2.getAdministratorUids(), adminUids2)); - try { - nc2.combineCapabilities(nc1); - fail("Shouldn't be able to combine different lists of admin UIDs"); - } catch (IllegalStateException expected) { } - } - - @Test public void testSetCapabilities() { final int[] REQUIRED_CAPABILITIES = new int[] { NET_CAPABILITY_INTERNET, NET_CAPABILITY_NOT_VPN }; @@ -741,29 +636,6 @@ public class NetworkCapabilitiesTest { } @Test - public void testCombineTransportInfo() { - NetworkCapabilities nc1 = new NetworkCapabilities(); - nc1.setTransportInfo(new TestTransportInfo()); - - NetworkCapabilities nc2 = new NetworkCapabilities(); - // new TransportInfo so that object is not #equals to nc1's TransportInfo (that's where - // combine fails) - nc2.setTransportInfo(new TestTransportInfo()); - - try { - nc1.combineCapabilities(nc2); - fail("Should not be able to combine NetworkCabilities which contain TransportInfos"); - } catch (IllegalStateException expected) { - // empty - } - - // verify that can combine with identical TransportInfo objects - NetworkCapabilities nc3 = new NetworkCapabilities(); - nc3.setTransportInfo(nc1.getTransportInfo()); - nc1.combineCapabilities(nc3); - } - - @Test public void testSet() { NetworkCapabilities nc1 = new NetworkCapabilities(); NetworkCapabilities nc2 = new NetworkCapabilities(); |