Do not disconnect existing VPN if seamless handover fails
If error happens during establishing of VPN, the cleanup logic tries to disconnect the partially-created VPN network. At the moment this is not working during VPN seamless handover since in this case no new network is created and the existing VPN will be disconnected. Fix by not disconnecting during the VPN handover case. Test: cts-tradefed run commandAndExit cts-dev -m CtsHostsideNetworkTests -t com.android.cts.net.HostsideVpnTests Bug: 110238496 Change-Id: I8cb2ab50596e61b0ac09e89eb1048816f00180d6
This commit is contained in:
@@ -1141,7 +1141,11 @@ public class Vpn {
|
||||
}
|
||||
} catch (RuntimeException e) {
|
||||
IoUtils.closeQuietly(tun);
|
||||
agentDisconnect();
|
||||
// If this is not seamless handover, disconnect partially-established network when error
|
||||
// occurs.
|
||||
if (oldNetworkAgent != mNetworkAgent) {
|
||||
agentDisconnect();
|
||||
}
|
||||
// restore old state
|
||||
mConfig = oldConfig;
|
||||
mConnection = oldConnection;
|
||||
|
||||
Reference in New Issue
Block a user