From dc92c69b087d5fbecff76ef1e739ae415312734d Mon Sep 17 00:00:00 2001 From: Benedict Wong Date: Mon, 5 Nov 2018 13:35:06 -0800 Subject: [PATCH] Add IPsec tunnel mode feature flag This patch adds a feature flag for IPsec Tunnel Mode. This implies VTI (with output-mark updating), or XFRM-I in the kernels. Bug: 117183273 Test: Compiles Change-Id: I6dd0e429cc0bd100f2ef1140a6651f6ef5294c79 --- api/current.txt | 1 + core/java/android/content/pm/PackageManager.java | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/api/current.txt b/api/current.txt index bd5964f835641..a0f2b257e6b9c 100644 --- a/api/current.txt +++ b/api/current.txt @@ -11479,6 +11479,7 @@ package android.content.pm { field public static final java.lang.String FEATURE_HIFI_SENSORS = "android.hardware.sensor.hifi_sensors"; field public static final java.lang.String FEATURE_HOME_SCREEN = "android.software.home_screen"; field public static final java.lang.String FEATURE_INPUT_METHODS = "android.software.input_methods"; + field public static final java.lang.String FEATURE_IPSEC_TUNNELS = "android.software.ipsec_tunnels"; field public static final java.lang.String FEATURE_IRIS = "android.hardware.iris"; field public static final java.lang.String FEATURE_LEANBACK = "android.software.leanback"; field public static final java.lang.String FEATURE_LEANBACK_ONLY = "android.software.leanback_only"; diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index b7df2bf5a5f7b..f40be84b180b8 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -2686,6 +2686,16 @@ public abstract class PackageManager { public static final String FEATURE_DEVICE_ID_ATTESTATION = "android.software.device_id_attestation"; + /** + * Feature for {@link #getSystemAvailableFeatures} and {@link #hasSystemFeature}: The device has + * the requisite kernel support for multinetworking-capable IPsec tunnels. + * + *

This feature implies that the device supports XFRM Interfaces (CONFIG_XFRM_INTERFACE), or + * VTIs with kernel patches allowing updates of output/set mark via UPDSA. + */ + @SdkConstant(SdkConstantType.FEATURE) + public static final String FEATURE_IPSEC_TUNNELS = "android.software.ipsec_tunnels"; + /** * Extra field name for the URI to a verification file. Passed to a package * verifier.