summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/vpn2/ConfigDialogFragment.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/settings/vpn2/ConfigDialogFragment.java')
-rw-r--r--src/com/android/settings/vpn2/ConfigDialogFragment.java15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/com/android/settings/vpn2/ConfigDialogFragment.java b/src/com/android/settings/vpn2/ConfigDialogFragment.java
index 80f9fcd..a6189a9 100644
--- a/src/com/android/settings/vpn2/ConfigDialogFragment.java
+++ b/src/com/android/settings/vpn2/ConfigDialogFragment.java
@@ -16,6 +16,8 @@
package com.android.settings.vpn2;
+import java.util.Arrays;
+
import android.app.Dialog;
import android.app.DialogFragment;
import android.content.Context;
@@ -123,7 +125,18 @@ public class ConfigDialogFragment extends DialogFragment implements
disconnect(profile);
// Delete from KeyStore
- KeyStore.getInstance().delete(Credentials.VPN + profile.key, KeyStore.UID_SELF);
+ KeyStore keyStore = KeyStore.getInstance();
+ keyStore.delete(Credentials.VPN + profile.key, KeyStore.UID_SELF);
+
+ // If this was the current lockdown VPN, clear it.
+ if (Arrays.equals(profile.key.getBytes(), keyStore.get(Credentials.LOCKDOWN_VPN))) {
+ keyStore.delete(Credentials.LOCKDOWN_VPN);
+ try {
+ mService.updateLockdownVpn();
+ } catch (RemoteException e) {
+ Log.e(TAG, "Failed to clear lockdown VPN configuration");
+ }
+ }
}
dismiss();
}