diff options
Diffstat (limited to 'packages/VpnServices/src/com/android/server/vpn/L2tpIpsecPskService.java')
-rw-r--r-- | packages/VpnServices/src/com/android/server/vpn/L2tpIpsecPskService.java | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/packages/VpnServices/src/com/android/server/vpn/L2tpIpsecPskService.java b/packages/VpnServices/src/com/android/server/vpn/L2tpIpsecPskService.java index 7b3ddf8..7910f4a 100644 --- a/packages/VpnServices/src/com/android/server/vpn/L2tpIpsecPskService.java +++ b/packages/VpnServices/src/com/android/server/vpn/L2tpIpsecPskService.java @@ -25,7 +25,7 @@ import java.io.IOException; * connection. */ class L2tpIpsecPskService extends VpnService<L2tpIpsecPskProfile> { - private static final String IPSEC_DAEMON = "racoon"; + private static final String IPSEC = "racoon"; @Override protected void connect(String serverIp, String username, String password) @@ -33,9 +33,9 @@ class L2tpIpsecPskService extends VpnService<L2tpIpsecPskProfile> { L2tpIpsecPskProfile p = getProfile(); // IPSEC - AndroidServiceProxy ipsecService = startService(IPSEC_DAEMON); - ipsecService.sendCommand(serverIp, L2tpService.L2TP_PORT, - p.getPresharedKey()); + DaemonProxy ipsec = startDaemon(IPSEC); + ipsec.sendCommand(serverIp, L2tpService.L2TP_PORT, p.getPresharedKey()); + ipsec.closeControlSocket(); sleep(2000); // 2 seconds @@ -45,4 +45,10 @@ class L2tpIpsecPskService extends VpnService<L2tpIpsecPskProfile> { (p.isSecretEnabled() ? p.getSecretString() : null), username, password); } + + @Override + protected void stopPreviouslyRunDaemons() { + stopDaemon(IPSEC); + stopDaemon(MtpdHelper.MTPD); + } } |