From 3e2e1da0a02e0ad53cb3cd8253f3cff51973abc1 Mon Sep 17 00:00:00 2001 From: Chia-chi Yeh Date: Sun, 3 Jul 2011 16:52:38 -0700 Subject: [PATCH] VPN: convert prepare() into a form which helps solve race conditions. When someone tries to revoke packageA, it is possible that packageA is already revoked by packageB. In this case packageB should not be revoked, and the new prepare() can help solve this problem. Change-Id: Iee056a191dd99467b8ad1b5379a17b02d404bad1 --- core/java/android/net/IConnectivityManager.aidl | 2 +- services/java/com/android/server/ConnectivityService.java | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/core/java/android/net/IConnectivityManager.aidl b/core/java/android/net/IConnectivityManager.aidl index e3c49acdad..57f5967e61 100644 --- a/core/java/android/net/IConnectivityManager.aidl +++ b/core/java/android/net/IConnectivityManager.aidl @@ -101,7 +101,7 @@ interface IConnectivityManager void protectVpn(in ParcelFileDescriptor socket); - String prepareVpn(String packageName); + boolean prepareVpn(String oldPackage, String newPackage); ParcelFileDescriptor establishVpn(in VpnConfig config); diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java index bdef1d9b1f..afc04bb841 100644 --- a/services/java/com/android/server/ConnectivityService.java +++ b/services/java/com/android/server/ConnectivityService.java @@ -2485,8 +2485,8 @@ public class ConnectivityService extends IConnectivityManager.Stub { * @hide */ @Override - public String prepareVpn(String packageName) { - return mVpn.prepare(packageName); + public boolean prepareVpn(String oldPackage, String newPackage) { + return mVpn.prepare(oldPackage, newPackage); } /**