Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2ed1cda8 authored by chiachangwang's avatar chiachangwang Committed by Cherrypicker Worker
Browse files

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 84afc69b)
Merged-In: I510c47e26feabd5cebe9497ef495e4d729d0f7c6
parent 1c2c0b52
Loading
Loading
Loading
Loading
+2 −3
Original line number Original line Diff line number Diff line
@@ -483,9 +483,6 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
        final VpnProfile profile = new VpnProfile("" /* Key; value unused by IKEv2VpnProfile(s) */,
        final VpnProfile profile = new VpnProfile("" /* Key; value unused by IKEv2VpnProfile(s) */,
                mIsRestrictedToTestNetworks, mExcludeLocalRoutes, mRequiresInternetValidation,
                mIsRestrictedToTestNetworks, mExcludeLocalRoutes, mRequiresInternetValidation,
                mIkeTunConnParams);
                mIkeTunConnParams);

        profile.server = getServerAddr();
        profile.ipsecIdentifier = getUserIdentity();
        profile.proxy = mProxyInfo;
        profile.proxy = mProxyInfo;
        profile.isBypassable = mIsBypassable;
        profile.isBypassable = mIsBypassable;
        profile.isMetered = mIsMetered;
        profile.isMetered = mIsMetered;
@@ -499,6 +496,8 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
        }
        }


        profile.type = mType;
        profile.type = mType;
        profile.server = getServerAddr();
        profile.ipsecIdentifier = getUserIdentity();
        profile.setAllowedAlgorithms(mAllowedAlgorithms);
        profile.setAllowedAlgorithms(mAllowedAlgorithms);
        switch (mType) {
        switch (mType) {
            case TYPE_IKEV2_IPSEC_USER_PASS:
            case TYPE_IKEV2_IPSEC_USER_PASS: