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

Commit bc6f905d authored by Lorenzo Colitti's avatar Lorenzo Colitti Committed by Gerrit Code Review
Browse files

Merge "Store IkeTunnelConnectionParams in Ikev2VpnProfile"

parents b9787b1e 41e5cc70
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -25209,6 +25209,7 @@ package android.net {
  public final class Ikev2VpnProfile extends android.net.PlatformVpnProfile {
    method @NonNull public java.util.List<java.lang.String> getAllowedAlgorithms();
    method @Nullable public android.net.ipsec.ike.IkeTunnelConnectionParams getIkeTunnelConnectionParams();
    method public int getMaxMtu();
    method @Nullable public String getPassword();
    method @Nullable public byte[] getPresharedKey();
+21 −5
Original line number Diff line number Diff line
@@ -142,6 +142,7 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
    private final boolean mIsMetered; // Defaults in builder
    private final int mMaxMtu; // Defaults in builder
    private final boolean mIsRestrictedToTestNetworks;
    @Nullable private final IkeTunnelConnectionParams mIkeTunConnParams;

    private Ikev2VpnProfile(
            int type,
@@ -160,7 +161,8 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
            int maxMtu,
            boolean restrictToTestNetworks,
            boolean excludeLocalRoutes,
            boolean requiresInternetValidation) {
            boolean requiresInternetValidation,
            @Nullable IkeTunnelConnectionParams ikeTunConnParams) {
        super(type, excludeLocalRoutes, requiresInternetValidation);

        checkNotNull(serverAddr, MISSING_PARAM_MSG_TMPL, "Server address");
@@ -190,6 +192,8 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
        mMaxMtu = maxMtu;
        mIsRestrictedToTestNetworks = restrictToTestNetworks;

        mIkeTunConnParams = ikeTunConnParams;

        validate();
    }

@@ -375,6 +379,12 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
        return mMaxMtu;
    }

    /** Retrieves the ikeTunnelConnectionParams contains IKEv2 configurations, if any was set. */
    @Nullable
    public IkeTunnelConnectionParams getIkeTunnelConnectionParams() {
        return mIkeTunConnParams;
    }

    /**
     * Returns whether or not this VPN profile is restricted to test networks.
     *
@@ -403,7 +413,8 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
                mMaxMtu,
                mIsRestrictedToTestNetworks,
                mExcludeLocalRoutes,
                mRequiresInternetValidation);
                mRequiresInternetValidation,
                mIkeTunConnParams);
    }

    @Override
@@ -429,7 +440,8 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
                && mMaxMtu == other.mMaxMtu
                && mIsRestrictedToTestNetworks == other.mIsRestrictedToTestNetworks
                && mExcludeLocalRoutes == other.mExcludeLocalRoutes
                && mRequiresInternetValidation == other.mRequiresInternetValidation;
                && mRequiresInternetValidation == other.mRequiresInternetValidation
                && Objects.equals(mIkeTunConnParams, other.mIkeTunConnParams);
    }

    /**
@@ -504,6 +516,7 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
    @NonNull
    public static Ikev2VpnProfile fromVpnProfile(@NonNull VpnProfile profile)
            throws GeneralSecurityException {
        // TODO: Build the VpnProfile from mIkeTunConnParams if it exists.
        final Builder builder = new Builder(profile.server, profile.ipsecIdentifier);
        builder.setProxy(profile.proxy);
        builder.setAllowedAlgorithms(profile.getAllowedAlgorithms());
@@ -788,7 +801,7 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
        private int mMaxMtu = PlatformVpnProfile.MAX_MTU_DEFAULT;
        private boolean mIsRestrictedToTestNetworks = false;
        private boolean mExcludeLocalRoutes = false;
        @Nullable private IkeTunnelConnectionParams mIkeTunConnParams;
        @Nullable private final IkeTunnelConnectionParams mIkeTunConnParams;

        /**
         * Creates a new builder with the basic parameters of an IKEv2/IPsec VPN.
@@ -803,6 +816,8 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {

            mServerAddr = serverAddr;
            mUserIdentity = identity;

            mIkeTunConnParams = null;
        }

        /**
@@ -1135,7 +1150,8 @@ public final class Ikev2VpnProfile extends PlatformVpnProfile {
                    mMaxMtu,
                    mIsRestrictedToTestNetworks,
                    mExcludeLocalRoutes,
                    mRequiresInternetValidation);
                    mRequiresInternetValidation,
                    mIkeTunConnParams);
        }
    }
}