From fbbb9c9c04c7323ba25142501885e24a705f8931 Mon Sep 17 00:00:00 2001 From: Benedict Wong Date: Fri, 10 May 2019 11:05:43 -0700 Subject: [PATCH] Enforce IPsec Tunnel mode for Android Q This commit adds a second condition to whether the device is expected to have the tunnel mode feature. If a device's first API/launch version is Q or above, require IPsec tunnels Bug: 72950854 Test: Ran on device with first API level < Q and == Q. Merged-In: I545444bb483b0f5de45d00a07dc45aeb9e9cbdf7 Change-Id: I7b849ad24a04b6b7899a80f1856236b5ceb5a839 (cherry picked from commit d2465991d92ff4d8425c0f620ab8032609312049) --- .../cts/net/src/android/net/cts/IpSecManagerTunnelTest.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tests/cts/net/src/android/net/cts/IpSecManagerTunnelTest.java b/tests/cts/net/src/android/net/cts/IpSecManagerTunnelTest.java index e8c0a7a4b2..6e96682b68 100644 --- a/tests/cts/net/src/android/net/cts/IpSecManagerTunnelTest.java +++ b/tests/cts/net/src/android/net/cts/IpSecManagerTunnelTest.java @@ -55,8 +55,10 @@ import android.net.TestNetworkInterface; import android.net.TestNetworkManager; import android.net.cts.PacketUtils.Payload; import android.os.Binder; +import android.os.Build; import android.os.IBinder; import android.os.ParcelFileDescriptor; +import android.os.SystemProperties; import androidx.test.InstrumentationRegistry; import androidx.test.runner.AndroidJUnit4; @@ -167,7 +169,9 @@ public class IpSecManagerTunnelTest extends IpSecBaseTest { } private static boolean hasTunnelsFeature() { - return sContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_IPSEC_TUNNELS); + return sContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_IPSEC_TUNNELS) + || SystemProperties.getInt("ro.product.first_api_level", 0) + >= Build.VERSION_CODES.Q; } private static void setAppop(int appop, boolean allow) {