From ab678b983bb4e1b5c724523d796f8cbcccabbc02 Mon Sep 17 00:00:00 2001 From: Martijn Coenen Date: Fri, 13 May 2022 04:44:56 +0000 Subject: [PATCH] Add SDK level check to adding sandbox UIDs. ConnectivityServiceTest builds against the latest Vpn framework code, but when run on an older base image (eg 'S'), said framework code might run into runtime errors calling new APIs. Until the test is decoupled, do the SDK level check here. Bug: 230548427 Bug: 232420362 Test: Build Change-Id: If453e16e680f46cf2b9eb769e5607fb5513b32ac --- services/core/java/com/android/server/connectivity/Vpn.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/connectivity/Vpn.java b/services/core/java/com/android/server/connectivity/Vpn.java index 18efe53759427..f0f187098bc5c 100644 --- a/services/core/java/com/android/server/connectivity/Vpn.java +++ b/services/core/java/com/android/server/connectivity/Vpn.java @@ -1629,7 +1629,9 @@ public class Vpn { for (String app : packageNames) { int uid = getAppUid(app, userId); if (uid != -1) uids.add(uid); - if (Process.isApplicationUid(uid)) { + // TODO(b/230548427): Remove SDK check once VPN related stuff are decoupled from + // ConnectivityServiceTest. + if (Process.isApplicationUid(uid) && SdkLevel.isAtLeastT()) { uids.add(Process.toSdkSandboxUid(uid)); } }