Honor IP protocol set by client in non-auto IP selection mode
If automatic IP version selection is not enabled and VPN clients set the IP version and encap type in the IkeSessionParams, VPN should use the value set by clients instead of always setting them to auto. Test: atest FrameworksNetTests Change-Id: Icd76b06cb9155b0d1fc62811daeafe89d2e45149
This commit is contained in:
@@ -3558,10 +3558,22 @@ public class Vpn {
|
||||
+ mCurrentToken
|
||||
+ " to network "
|
||||
+ underlyingNetwork);
|
||||
final int ipVersion = mProfile.isAutomaticIpVersionSelectionEnabled()
|
||||
? guessEspIpVersionForNetwork() : ESP_IP_VERSION_AUTO;
|
||||
final int encapType = mProfile.isAutomaticIpVersionSelectionEnabled()
|
||||
? guessEspEncapTypeForNetwork() : ESP_ENCAP_TYPE_AUTO;
|
||||
|
||||
final int ipVersion;
|
||||
final int encapType;
|
||||
if (mProfile.isAutomaticIpVersionSelectionEnabled()) {
|
||||
ipVersion = guessEspIpVersionForNetwork();
|
||||
encapType = guessEspEncapTypeForNetwork();
|
||||
} else if (mProfile.getIkeTunnelConnectionParams() != null) {
|
||||
ipVersion = mProfile.getIkeTunnelConnectionParams()
|
||||
.getIkeSessionParams().getIpVersion();
|
||||
encapType = mProfile.getIkeTunnelConnectionParams()
|
||||
.getIkeSessionParams().getEncapType();
|
||||
} else {
|
||||
ipVersion = ESP_IP_VERSION_AUTO;
|
||||
encapType = ESP_ENCAP_TYPE_AUTO;
|
||||
}
|
||||
|
||||
final int keepaliveDelaySeconds;
|
||||
if (mProfile.isAutomaticNattKeepaliveTimerEnabled()) {
|
||||
keepaliveDelaySeconds = guessNattKeepaliveTimerForNetwork();
|
||||
|
||||
Reference in New Issue
Block a user