Skip duplicate parameters when IkeTunnelConnectionParams provided

For those fields existing in the IkeTunnelConnectionParams,
the value should be retrieved from the object to honor the
setting in the object. IkeTunnelConnectionParams are serialized
in a safe manner to ensure that they do not conflict with the
serialization scheme of VpnProfile. However, copying some of
these fields(e.g. IkeKeyId) may conflict with the serialization
scheme.

Bug: 243718982
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: I510c47e26feabd5cebe9497ef495e4d729d0f7c6
(cherry picked from commit 84afc69b95)
Merged-In: I510c47e26feabd5cebe9497ef495e4d729d0f7c6
This commit is contained in:
chiachangwang
2022-09-01 01:26:36 +00:00
committed by Cherrypicker Worker
parent 1c2c0b5258
commit 2ed1cda859

View File

@@ -483,9 +483,6 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
final VpnProfile profile = new VpnProfile("" /* Key; value unused by IKEv2VpnProfile(s) */,
mIsRestrictedToTestNetworks, mExcludeLocalRoutes, mRequiresInternetValidation,
mIkeTunConnParams);
profile.server = getServerAddr();
profile.ipsecIdentifier = getUserIdentity();
profile.proxy = mProxyInfo;
profile.isBypassable = mIsBypassable;
profile.isMetered = mIsMetered;
@@ -499,6 +496,8 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
}
profile.type = mType;
profile.server = getServerAddr();
profile.ipsecIdentifier = getUserIdentity();
profile.setAllowedAlgorithms(mAllowedAlgorithms);
switch (mType) {
case TYPE_IKEV2_IPSEC_USER_PASS: