| commit | 0011c2ed76709527fce7f4cb6c477de985e8c018 | [log] [tgz] |
|---|---|---|
| author | Hansen Kurli <hkurli@google.com> | Thu Nov 16 10:33:33 2023 +0000 |
| committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Thu Nov 16 10:33:33 2023 +0000 |
| tree | a0d48168cc4c55042ddc203adf45aa57c460ce2a | |
| parent | 6a7b7c82b2f6969848466fd81bd45118c81d12e2 [diff] | |
| parent | 2d5df733ed0ec77ea6025e6f247dd8725160b8b1 [diff] |
Merge "Clone the VpnProfile in startLegacyVpnPrivileged()" into main am: 2d5df733ed Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2831590 Change-Id: If500a5e4ae05d9d6fc8d5b9ff2beeb0915223533 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/core/java/com/android/internal/net/VpnProfile.java b/core/java/com/android/internal/net/VpnProfile.java index 0947ec1..f62094d 100644 --- a/core/java/com/android/internal/net/VpnProfile.java +++ b/core/java/com/android/internal/net/VpnProfile.java
@@ -618,4 +618,14 @@ public int describeContents() { return 0; } + + @Override + public VpnProfile clone() { + try { + return (VpnProfile) super.clone(); + } catch (CloneNotSupportedException e) { + Log.wtf(TAG, e); + return null; + } + } }
diff --git a/services/core/java/com/android/server/connectivity/Vpn.java b/services/core/java/com/android/server/connectivity/Vpn.java index b97d75d..b0abf94 100644 --- a/services/core/java/com/android/server/connectivity/Vpn.java +++ b/services/core/java/com/android/server/connectivity/Vpn.java
@@ -2621,8 +2621,9 @@ * * Callers are responsible for checking permissions if needed. */ - public void startLegacyVpnPrivileged(VpnProfile profile, + public void startLegacyVpnPrivileged(VpnProfile profileToStart, @Nullable Network underlying, @NonNull LinkProperties egress) { + final VpnProfile profile = profileToStart.clone(); UserInfo user = mUserManager.getUserInfo(mUserId); if (user.isRestricted() || mUserManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_VPN, new UserHandle(mUserId))) {