65d44b93bb99eae441ebf5bf1afb4efd00074758
Clear mInterface before calling resetIkeState() in
onDefaultNetworkChanged().
resetIkeState() will trigger interfaceRemoved() to be called.
If mInterface is set, interfaceRemoved() will clear
Ikev2VpnRunner which makes VPN disconnect.
This issue can be reproduced when device establishes VPN
connection with mobile data first then connects to wifi.
In this case, onLost() for mobile data will not be called
because there is a new network(wifi) can satisfy the request,
so only onAvailable() for wifi will be called.
Which means onSessionLost() will not be called and only
onDefaultNetworkChanged() will be called, which makes that
mInterface is not cleared before interfaceRemoved() is called.
Bug: 219546241
Test: Check if VPN is still there when establishing VPN with
mobile data first, then connect to wifi and disconnect
wifi.
Change-Id: I7f9a1d9afd2a40762e9fac68edf1fb8ae75df8bc
(cherry picked from commit 520cc2fde3)
Merged-In: I7f9a1d9afd2a40762e9fac68edf1fb8ae75df8bc
Merge "Fix a potential thread safety issue in VectorDrawable" into qt-dev am:
547df6be1e am: 419bd64bc4
…
Merge "limit TelecomManager#registerPhoneAccount to 10; api doc update" into qt-dev am:
08f8988bc3 am: 8193edd104
…
Merge "Convert apct/framework/presubmit-cloud-tf to Test Mapping Suite." am:
888c3b0347 am: f5c7e1b90a
Description
No description provided
Languages
Java
73.7%
Kotlin
14%
PowerBuilder
5.8%
C++
5.2%
AIDL
1%