Merge "Store IkeTunnelConnectionParams in Ikev2VpnProfile"
This commit is contained in:
@@ -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();
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user