summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-build-prod (mdb) <android-build-team-robot@google.com>2021-01-13 23:44:59 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2021-01-13 23:44:59 +0000
commitd1cba2ed4bcdd58623d2037f2ca4ea30cf8f609b (patch)
tree776593b88c70ce3d9e19ab010050dcbeff05e755
parent62bb80a338a8afee3e9ccc2c113e01cf44640db9 (diff)
parentefb31cd54b22deec5b6aa3b960054d4a37b5f34a (diff)
downloadcts-oreo-cts-release.tar.gz
Merge "Snap for 7025793 from fa96b1ec373444b601a0b516b494152d7c908cad to oreo-cts-release" into oreo-cts-releaseandroid-cts-8.0_r26oreo-cts-release
-rw-r--r--apps/CtsVerifier/AndroidManifest.xml2
-rw-r--r--hostsidetests/appsecurity/test-apps/EncryptionApp/src/com/android/cts/encryptionapp/EncryptionAppTest.java3
-rw-r--r--tests/tests/net/jni/NativeMultinetworkJni.c20
-rw-r--r--tests/tests/net/src/android/net/wifi/cts/WifiManagerTest.java34
-rw-r--r--tests/tests/security/src/android/security/cts/StagefrightTest.java6
-rw-r--r--tools/cts-tradefed/Android.mk2
6 files changed, 52 insertions, 15 deletions
diff --git a/apps/CtsVerifier/AndroidManifest.xml b/apps/CtsVerifier/AndroidManifest.xml
index a119a978a9d..c5124012792 100644
--- a/apps/CtsVerifier/AndroidManifest.xml
+++ b/apps/CtsVerifier/AndroidManifest.xml
@@ -18,7 +18,7 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.cts.verifier"
android:versionCode="5"
- android:versionName="8.0_r25">
+ android:versionName="8.0_r26">
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="26"/>
diff --git a/hostsidetests/appsecurity/test-apps/EncryptionApp/src/com/android/cts/encryptionapp/EncryptionAppTest.java b/hostsidetests/appsecurity/test-apps/EncryptionApp/src/com/android/cts/encryptionapp/EncryptionAppTest.java
index 37744fa618f..6f65faf4e05 100644
--- a/hostsidetests/appsecurity/test-apps/EncryptionApp/src/com/android/cts/encryptionapp/EncryptionAppTest.java
+++ b/hostsidetests/appsecurity/test-apps/EncryptionApp/src/com/android/cts/encryptionapp/EncryptionAppTest.java
@@ -172,6 +172,9 @@ public class EncryptionAppTest extends InstrumentationTestCase {
mDevice.pressMenu();
mDevice.waitForIdle();
enterTestPin();
+ mDevice.waitForIdle();
+ mDevice.pressHome();
+ mDevice.waitForIdle();
}
public void assertLocked() throws Exception {
diff --git a/tests/tests/net/jni/NativeMultinetworkJni.c b/tests/tests/net/jni/NativeMultinetworkJni.c
index c2dff8dbefa..8d721e0e796 100644
--- a/tests/tests/net/jni/NativeMultinetworkJni.c
+++ b/tests/tests/net/jni/NativeMultinetworkJni.c
@@ -179,20 +179,16 @@ JNIEXPORT jint Java_android_net_cts_MultinetworkApiTest_runDatagramCheck(
setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &timeo, sizeof(timeo));
// For reference see:
- // https://tools.ietf.org/html/draft-tsvwg-quic-protocol#section-6.1
+ // https://datatracker.ietf.org/doc/html/draft-ietf-quic-invariants
uint8_t quic_packet[1200] = {
- 0x0d, // public flags:
- // - version present (0x01),
- // - 64bit connection ID (0x0c),
- // - 1 byte packet number (0x00)
+ 0xc0, // long header
+ 0xaa, 0xda, 0xca, 0xca, // reserved-space version number
+ 0x08, // destination connection ID length
0, 0, 0, 0, 0, 0, 0, 0, // 64bit connection ID
- 0xaa, 0xda, 0xca, 0xaa, // reserved-space version number
- 1, // 1 byte packet number
- 0x00, // private flags
- 0x07, // PING frame (cuz why not)
+ 0x00, // source connection ID length
};
- arc4random_buf(quic_packet + 1, 8); // random connection ID
+ arc4random_buf(quic_packet + 6, 8); // random connection ID
uint8_t response[1500];
ssize_t sent, rcvd;
@@ -217,7 +213,7 @@ JNIEXPORT jint Java_android_net_cts_MultinetworkApiTest_runDatagramCheck(
i + 1, MAX_RETRIES, rcvd, errnum);
}
}
- if (rcvd < 9) {
+ if (rcvd < 15) {
ALOGD("QUIC UDP %s: sent=%zd but rcvd=%zd, errno=%d", kPort, sent, rcvd, errnum);
if (rcvd <= 0) {
ALOGD("Does this network block UDP port %s?", kPort);
@@ -226,7 +222,7 @@ JNIEXPORT jint Java_android_net_cts_MultinetworkApiTest_runDatagramCheck(
return -EPROTO;
}
- int conn_id_cmp = memcmp(quic_packet + 1, response + 1, 8);
+ int conn_id_cmp = memcmp(quic_packet + 6, response + 7, 8);
if (conn_id_cmp != 0) {
ALOGD("sent and received connection IDs do not match");
close(fd);
diff --git a/tests/tests/net/src/android/net/wifi/cts/WifiManagerTest.java b/tests/tests/net/src/android/net/wifi/cts/WifiManagerTest.java
index 44b49c0274d..6dd6fc0302c 100644
--- a/tests/tests/net/src/android/net/wifi/cts/WifiManagerTest.java
+++ b/tests/tests/net/src/android/net/wifi/cts/WifiManagerTest.java
@@ -32,6 +32,7 @@ import android.net.wifi.WifiManager.WifiLock;
import android.net.wifi.hotspot2.PasspointConfiguration;
import android.net.wifi.hotspot2.pps.Credential;
import android.net.wifi.hotspot2.pps.HomeSp;
+import android.os.Build;
import android.os.SystemClock;
import android.provider.Settings;
import android.test.AndroidTestCase;
@@ -43,6 +44,7 @@ import java.net.HttpURLConnection;
import java.net.URL;
import java.security.MessageDigest;
import java.security.cert.X509Certificate;
+import java.time.LocalDate;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@@ -125,6 +127,14 @@ public class WifiManagerTest extends AndroidTestCase {
}
};
+ private static final LocalDate SECURITY_PATCH_DATE_2020_12 = LocalDate.of(2020, 12, 1);
+
+ private static boolean doesDeviceHave2020_12SecurityPatch() {
+ LocalDate deviceSecurityPatchDate = LocalDate.parse(Build.VERSION.SECURITY_PATCH);
+ // LocalDate#isBefore() is exclusive, so use workaround: !(a < b) <=> (b <= a)
+ return !deviceSecurityPatchDate.isBefore(SECURITY_PATCH_DATE_2020_12);
+ }
+
@Override
protected void setUp() throws Exception {
super.setUp();
@@ -411,12 +421,36 @@ public class WifiManagerTest extends AndroidTestCase {
assertFalse(existSSID(SSID1));
assertTrue(existSSID(SSID2));
+ // Need an effectively-final holder because we need to modify inner Intent in callback.
+ class IntentHolder {
+ Intent intent;
+ }
+ IntentHolder intentHolder = new IntentHolder();
+ mContext.registerReceiver(new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ Log.i(TAG, "Received CONFIGURED_NETWORKS_CHANGED_ACTION broadcast: " + intent);
+ intentHolder.intent = intent;
+ }
+ }, new IntentFilter(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
+
// Remove a WifiConfig
assertTrue(mWifiManager.removeNetwork(netId));
assertFalse(mWifiManager.removeNetwork(notExist));
assertFalse(existSSID(SSID1));
assertFalse(existSSID(SSID2));
+ if (doesDeviceHave2020_12SecurityPatch()) {
+ // wait 10 seconds to ensure that broadcast wasn't received
+ Thread.sleep(DURATION);
+ Intent intent = intentHolder.intent;
+ // Broadcast shouldn't be received because although CtsNetTestCases has
+ // ACCESS_WIFI_STATE permission, it doesn't have ACCESS_FINE_LOCATION permission.
+ // Receivers need both permissions to get the broadcast.
+ assertNull("Unexpected received CONFIGURED_NETWORKS_CHANGED_ACTION broadcast!",
+ intent);
+ }
+
assertTrue(mWifiManager.saveConfiguration());
} finally {
reEnableNetworks(enabledSsids, mWifiManager.getConfiguredNetworks());
diff --git a/tests/tests/security/src/android/security/cts/StagefrightTest.java b/tests/tests/security/src/android/security/cts/StagefrightTest.java
index c2d16355af1..db020d4aa52 100644
--- a/tests/tests/security/src/android/security/cts/StagefrightTest.java
+++ b/tests/tests/security/src/android/security/cts/StagefrightTest.java
@@ -919,7 +919,11 @@ public class StagefrightTest extends InstrumentationTestCase {
codec.release();
}
}
- ex.unselectTrack(t);
+ try {
+ ex.unselectTrack(t);
+ } catch (IllegalArgumentException e) {
+ // since we're just cleaning up, we don't care if it fails
+ }
}
ex.release();
String cve = rname.replace("_", "-").toUpperCase();
diff --git a/tools/cts-tradefed/Android.mk b/tools/cts-tradefed/Android.mk
index 07d8cfb5bd1..324f36efd0b 100644
--- a/tools/cts-tradefed/Android.mk
+++ b/tools/cts-tradefed/Android.mk
@@ -25,7 +25,7 @@ LOCAL_SUITE_BUILD_NUMBER := $(BUILD_NUMBER_FROM_FILE)
LOCAL_SUITE_TARGET_ARCH := $(TARGET_ARCH)
LOCAL_SUITE_NAME := CTS
LOCAL_SUITE_FULLNAME := "Compatibility Test Suite"
-LOCAL_SUITE_VERSION := 8.0_r25
+LOCAL_SUITE_VERSION := 8.0_r26
LOCAL_MODULE := cts-tradefed
LOCAL_COMPATIBILITY_SUITE := general-tests