Move API and impl to separate packages am: e8da20d0f5
am: 9a075eea15

Change-Id: I59465f318f6688ac5f5f7fb4019bc25061363bd4
diff --git a/src/java/com/android/ike/eap/EapSessionConfig.java b/src/java/android/net/eap/EapSessionConfig.java
similarity index 95%
rename from src/java/com/android/ike/eap/EapSessionConfig.java
rename to src/java/android/net/eap/EapSessionConfig.java
index e3d7743..a31a0fd 100644
--- a/src/java/com/android/ike/eap/EapSessionConfig.java
+++ b/src/java/android/net/eap/EapSessionConfig.java
@@ -14,17 +14,17 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package android.net.eap;
 
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA_PRIME;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA_PRIME;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
 
 import android.telephony.TelephonyManager.UiccAppType;
 
-import com.android.ike.eap.message.EapData.EapMethod;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.message.EapData.EapMethod;
 
 import java.util.Collections;
 import java.util.HashMap;
diff --git a/src/java/com/android/ike/ikev2/ChildSaProposal.java b/src/java/android/net/ipsec/ike/ChildSaProposal.java
similarity index 92%
rename from src/java/com/android/ike/ikev2/ChildSaProposal.java
rename to src/java/android/net/ipsec/ike/ChildSaProposal.java
index 264890f..c8851a7 100644
--- a/src/java/com/android/ike/ikev2/ChildSaProposal.java
+++ b/src/java/android/net/ipsec/ike/ChildSaProposal.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
-import com.android.ike.ikev2.message.IkePayload;
-import com.android.ike.ikev2.message.IkeSaPayload.DhGroupTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.EsnTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.Transform;
+import com.android.internal.net.ipsec.ike.message.IkePayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.DhGroupTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EsnTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.Transform;
 
 import java.util.Arrays;
 import java.util.List;
diff --git a/src/java/com/android/ike/ikev2/ChildSessionCallback.java b/src/java/android/net/ipsec/ike/ChildSessionCallback.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/ChildSessionCallback.java
rename to src/java/android/net/ipsec/ike/ChildSessionCallback.java
index 071ad43..ec8722e 100644
--- a/src/java/com/android/ike/ikev2/ChildSessionCallback.java
+++ b/src/java/android/net/ipsec/ike/ChildSessionCallback.java
@@ -14,12 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.net.IpSecManager.PolicyDirection;
 import android.net.IpSecTransform;
-
-import com.android.ike.ikev2.exceptions.IkeException;
+import android.net.ipsec.ike.exceptions.IkeException;
 
 /** Callback interface for receiving state changes of a Child Session. */
 public interface ChildSessionCallback {
diff --git a/src/java/com/android/ike/ikev2/ChildSessionConfiguration.java b/src/java/android/net/ipsec/ike/ChildSessionConfiguration.java
similarity index 84%
rename from src/java/com/android/ike/ikev2/ChildSessionConfiguration.java
rename to src/java/android/net/ipsec/ike/ChildSessionConfiguration.java
index b2c1c76..2ed9de2 100644
--- a/src/java/com/android/ike/ikev2/ChildSessionConfiguration.java
+++ b/src/java/android/net/ipsec/ike/ChildSessionConfiguration.java
@@ -14,19 +14,19 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_ADDRESS;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_NETMASK;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_ADDRESS;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_ADDRESS;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_NETMASK;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_ADDRESS;
 
 import android.net.LinkAddress;
 
-import com.android.ike.ikev2.message.IkeConfigPayload;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttribute;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Address;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Netmask;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv6Address;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttribute;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Address;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Netmask;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv6Address;
 
 import java.util.Collections;
 import java.util.LinkedList;
diff --git a/src/java/com/android/ike/ikev2/ChildSessionOptions.java b/src/java/android/net/ipsec/ike/ChildSessionOptions.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/ChildSessionOptions.java
rename to src/java/android/net/ipsec/ike/ChildSessionOptions.java
index fe7a12e..90a3005 100644
--- a/src/java/com/android/ike/ikev2/ChildSessionOptions.java
+++ b/src/java/android/net/ipsec/ike/ChildSessionOptions.java
@@ -14,8 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
-
+package android.net.ipsec.ike;
 
 import libcore.net.InetAddressUtils;
 
diff --git a/src/java/com/android/ike/ikev2/IkeFqdnIdentification.java b/src/java/android/net/ipsec/ike/IkeFqdnIdentification.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/IkeFqdnIdentification.java
rename to src/java/android/net/ipsec/ike/IkeFqdnIdentification.java
index 4a17bb7..393a072 100644
--- a/src/java/com/android/ike/ikev2/IkeFqdnIdentification.java
+++ b/src/java/android/net/ipsec/ike/IkeFqdnIdentification.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.NonNull;
 
diff --git a/src/java/com/android/ike/ikev2/IkeIdentification.java b/src/java/android/net/ipsec/ike/IkeIdentification.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/IkeIdentification.java
rename to src/java/android/net/ipsec/ike/IkeIdentification.java
index b281b5c..737df82 100644
--- a/src/java/com/android/ike/ikev2/IkeIdentification.java
+++ b/src/java/android/net/ipsec/ike/IkeIdentification.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.IntDef;
 import android.util.ArraySet;
diff --git a/src/java/com/android/ike/ikev2/IkeIpv4AddrIdentification.java b/src/java/android/net/ipsec/ike/IkeIpv4AddrIdentification.java
similarity index 95%
rename from src/java/com/android/ike/ikev2/IkeIpv4AddrIdentification.java
rename to src/java/android/net/ipsec/ike/IkeIpv4AddrIdentification.java
index 87b5f00..350187e 100644
--- a/src/java/com/android/ike/ikev2/IkeIpv4AddrIdentification.java
+++ b/src/java/android/net/ipsec/ike/IkeIpv4AddrIdentification.java
@@ -14,11 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.NonNull;
 
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
 
 import java.net.Inet4Address;
 import java.net.UnknownHostException;
diff --git a/src/java/com/android/ike/ikev2/IkeIpv6AddrIdentification.java b/src/java/android/net/ipsec/ike/IkeIpv6AddrIdentification.java
similarity index 95%
rename from src/java/com/android/ike/ikev2/IkeIpv6AddrIdentification.java
rename to src/java/android/net/ipsec/ike/IkeIpv6AddrIdentification.java
index e73ad82..dfc7d5e 100644
--- a/src/java/com/android/ike/ikev2/IkeIpv6AddrIdentification.java
+++ b/src/java/android/net/ipsec/ike/IkeIpv6AddrIdentification.java
@@ -14,11 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.NonNull;
 
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
 
 import java.net.Inet6Address;
 import java.net.UnknownHostException;
diff --git a/src/java/com/android/ike/ikev2/IkeKeyIdIdentification.java b/src/java/android/net/ipsec/ike/IkeKeyIdIdentification.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/IkeKeyIdIdentification.java
rename to src/java/android/net/ipsec/ike/IkeKeyIdIdentification.java
index cba519c..c229b9d 100644
--- a/src/java/com/android/ike/ikev2/IkeKeyIdIdentification.java
+++ b/src/java/android/net/ipsec/ike/IkeKeyIdIdentification.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.NonNull;
 
diff --git a/src/java/com/android/ike/ikev2/IkeManager.java b/src/java/android/net/ipsec/ike/IkeManager.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/IkeManager.java
rename to src/java/android/net/ipsec/ike/IkeManager.java
index 08b93a0..ef8b893 100644
--- a/src/java/com/android/ike/ikev2/IkeManager.java
+++ b/src/java/android/net/ipsec/ike/IkeManager.java
@@ -13,12 +13,12 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.content.Context;
 
-import com.android.ike.utils.Log;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.utils.Log;
 
 import java.util.concurrent.Executor;
 
diff --git a/src/java/com/android/ike/ikev2/IkeRfc822AddrIdentification.java b/src/java/android/net/ipsec/ike/IkeRfc822AddrIdentification.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/IkeRfc822AddrIdentification.java
rename to src/java/android/net/ipsec/ike/IkeRfc822AddrIdentification.java
index 2060867..2a93bea 100644
--- a/src/java/com/android/ike/ikev2/IkeRfc822AddrIdentification.java
+++ b/src/java/android/net/ipsec/ike/IkeRfc822AddrIdentification.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.NonNull;
 
diff --git a/src/java/com/android/ike/ikev2/IkeSaProposal.java b/src/java/android/net/ipsec/ike/IkeSaProposal.java
similarity index 93%
rename from src/java/com/android/ike/ikev2/IkeSaProposal.java
rename to src/java/android/net/ipsec/ike/IkeSaProposal.java
index bb13b60..1494f9d 100644
--- a/src/java/com/android/ike/ikev2/IkeSaProposal.java
+++ b/src/java/android/net/ipsec/ike/IkeSaProposal.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.util.ArraySet;
 
-import com.android.ike.ikev2.message.IkePayload;
-import com.android.ike.ikev2.message.IkeSaPayload.DhGroupTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.Transform;
+import com.android.internal.net.ipsec.ike.message.IkePayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.DhGroupTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.Transform;
 
 import java.util.Arrays;
 import java.util.List;
diff --git a/src/java/com/android/ike/ikev2/IkeSession.java b/src/java/android/net/ipsec/ike/IkeSession.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/IkeSession.java
rename to src/java/android/net/ipsec/ike/IkeSession.java
index fbfe640..97fe061 100644
--- a/src/java/com/android/ike/ikev2/IkeSession.java
+++ b/src/java/android/net/ipsec/ike/IkeSession.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.content.Context;
 import android.net.IpSecManager;
@@ -21,6 +21,7 @@
 import android.os.Looper;
 
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.IkeSessionStateMachine;
 
 import dalvik.system.CloseGuard;
 
diff --git a/src/java/com/android/ike/ikev2/IkeSessionCallback.java b/src/java/android/net/ipsec/ike/IkeSessionCallback.java
similarity index 95%
rename from src/java/com/android/ike/ikev2/IkeSessionCallback.java
rename to src/java/android/net/ipsec/ike/IkeSessionCallback.java
index 6608120..c2121e2 100644
--- a/src/java/com/android/ike/ikev2/IkeSessionCallback.java
+++ b/src/java/android/net/ipsec/ike/IkeSessionCallback.java
@@ -14,11 +14,10 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.NonNull;
-
-import com.android.ike.ikev2.exceptions.IkeException;
+import android.net.ipsec.ike.exceptions.IkeException;
 
 /** Callback interface for receiving state changes of an IKE Session. */
 public interface IkeSessionCallback {
diff --git a/src/java/com/android/ike/ikev2/IkeSessionConfiguration.java b/src/java/android/net/ipsec/ike/IkeSessionConfiguration.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/IkeSessionConfiguration.java
rename to src/java/android/net/ipsec/ike/IkeSessionConfiguration.java
index 4252446..6bbef7d 100644
--- a/src/java/com/android/ike/ikev2/IkeSessionConfiguration.java
+++ b/src/java/android/net/ipsec/ike/IkeSessionConfiguration.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.IntDef;
 import android.annotation.NonNull;
diff --git a/src/java/com/android/ike/ikev2/IkeSessionOptions.java b/src/java/android/net/ipsec/ike/IkeSessionOptions.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/IkeSessionOptions.java
rename to src/java/android/net/ipsec/ike/IkeSessionOptions.java
index b66630d..020a888 100644
--- a/src/java/com/android/ike/ikev2/IkeSessionOptions.java
+++ b/src/java/android/net/ipsec/ike/IkeSessionOptions.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.IntDef;
 import android.annotation.NonNull;
 import android.net.IpSecManager.UdpEncapsulationSocket;
+import android.net.eap.EapSessionConfig;
 
-import com.android.ike.eap.EapSessionConfig;
-import com.android.ike.ikev2.message.IkePayload;
+import com.android.internal.net.ipsec.ike.message.IkePayload;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/src/java/com/android/ike/ikev2/IkeTrafficSelector.java b/src/java/android/net/ipsec/ike/IkeTrafficSelector.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/IkeTrafficSelector.java
rename to src/java/android/net/ipsec/ike/IkeTrafficSelector.java
index 1263dc1..65154b9 100644
--- a/src/java/com/android/ike/ikev2/IkeTrafficSelector.java
+++ b/src/java/android/net/ipsec/ike/IkeTrafficSelector.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.IntDef;
 import android.util.ArraySet;
 
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/src/java/com/android/ike/ikev2/SaProposal.java b/src/java/android/net/ipsec/ike/SaProposal.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/SaProposal.java
rename to src/java/android/net/ipsec/ike/SaProposal.java
index 6076590..1e0b032 100644
--- a/src/java/com/android/ike/ikev2/SaProposal.java
+++ b/src/java/android/net/ipsec/ike/SaProposal.java
@@ -14,19 +14,19 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.IntDef;
 import android.annotation.NonNull;
 import android.util.ArraySet;
 import android.util.SparseArray;
 
-import com.android.ike.ikev2.message.IkePayload;
-import com.android.ike.ikev2.message.IkeSaPayload.DhGroupTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.Transform;
+import com.android.internal.net.ipsec.ike.message.IkePayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.DhGroupTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.Transform;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/src/java/com/android/ike/ikev2/TransportModeChildSessionOptions.java b/src/java/android/net/ipsec/ike/TransportModeChildSessionOptions.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/TransportModeChildSessionOptions.java
rename to src/java/android/net/ipsec/ike/TransportModeChildSessionOptions.java
index 8fb4c01..12e0601 100644
--- a/src/java/com/android/ike/ikev2/TransportModeChildSessionOptions.java
+++ b/src/java/android/net/ipsec/ike/TransportModeChildSessionOptions.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import android.annotation.NonNull;
 
diff --git a/src/java/com/android/ike/ikev2/TunnelModeChildSessionOptions.java b/src/java/android/net/ipsec/ike/TunnelModeChildSessionOptions.java
similarity index 92%
rename from src/java/com/android/ike/ikev2/TunnelModeChildSessionOptions.java
rename to src/java/android/net/ipsec/ike/TunnelModeChildSessionOptions.java
index c207acc..cb8268c 100644
--- a/src/java/com/android/ike/ikev2/TunnelModeChildSessionOptions.java
+++ b/src/java/android/net/ipsec/ike/TunnelModeChildSessionOptions.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import static android.system.OsConstants.AF_INET;
 import static android.system.OsConstants.AF_INET6;
@@ -22,15 +22,15 @@
 import android.annotation.NonNull;
 import android.net.LinkAddress;
 
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttribute;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Address;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Dhcp;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Dns;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Netmask;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Subnet;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv6Address;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv6Dns;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv6Subnet;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttribute;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Address;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Dhcp;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Dns;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Netmask;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Subnet;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv6Address;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv6Dns;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv6Subnet;
 
 import java.net.Inet4Address;
 import java.net.Inet6Address;
diff --git a/src/java/com/android/ike/ikev2/exceptions/IkeException.java b/src/java/android/net/ipsec/ike/exceptions/IkeException.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/exceptions/IkeException.java
rename to src/java/android/net/ipsec/ike/exceptions/IkeException.java
index 112c5b5..867dcf5 100644
--- a/src/java/com/android/ike/ikev2/exceptions/IkeException.java
+++ b/src/java/android/net/ipsec/ike/exceptions/IkeException.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package android.net.ipsec.ike.exceptions;
 
 /**
  * IkeException is a generic IKE library exception class that provides type safety for all the
diff --git a/src/java/com/android/ike/ikev2/exceptions/IkeInternalException.java b/src/java/android/net/ipsec/ike/exceptions/IkeInternalException.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/exceptions/IkeInternalException.java
rename to src/java/android/net/ipsec/ike/exceptions/IkeInternalException.java
index d5a91e7..29a5af9 100644
--- a/src/java/com/android/ike/ikev2/exceptions/IkeInternalException.java
+++ b/src/java/android/net/ipsec/ike/exceptions/IkeInternalException.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package android.net.ipsec.ike.exceptions;
 
 /**
  * IkeInternalException represents all IKE-library-related exceptions that are not IKE protocol
diff --git a/src/java/com/android/ike/ikev2/exceptions/IkeProtocolException.java b/src/java/android/net/ipsec/ike/exceptions/IkeProtocolException.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/exceptions/IkeProtocolException.java
rename to src/java/android/net/ipsec/ike/exceptions/IkeProtocolException.java
index 0ff47d6..f589a26 100644
--- a/src/java/com/android/ike/ikev2/exceptions/IkeProtocolException.java
+++ b/src/java/android/net/ipsec/ike/exceptions/IkeProtocolException.java
@@ -13,11 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package android.net.ipsec.ike.exceptions;
 
 import android.annotation.IntDef;
 
-import com.android.ike.ikev2.message.IkeNotifyPayload;
+import com.android.internal.net.ipsec.ike.message.IkeNotifyPayload;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/src/java/com/android/ike/crypto/KeyGenerationUtils.java b/src/java/com/android/internal/net/crypto/KeyGenerationUtils.java
similarity index 98%
rename from src/java/com/android/ike/crypto/KeyGenerationUtils.java
rename to src/java/com/android/internal/net/crypto/KeyGenerationUtils.java
index 5ac8c57..c9ade7d 100644
--- a/src/java/com/android/ike/crypto/KeyGenerationUtils.java
+++ b/src/java/com/android/internal/net/crypto/KeyGenerationUtils.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.crypto;
+package com.android.internal.net.crypto;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/eap/EapAuthenticator.java b/src/java/com/android/internal/net/eap/EapAuthenticator.java
similarity index 94%
rename from src/java/com/android/ike/eap/EapAuthenticator.java
rename to src/java/com/android/internal/net/eap/EapAuthenticator.java
index 463096c..a6869d7 100644
--- a/src/java/com/android/ike/eap/EapAuthenticator.java
+++ b/src/java/com/android/internal/net/eap/EapAuthenticator.java
@@ -14,19 +14,20 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
 import android.content.Context;
+import android.net.eap.EapSessionConfig;
 import android.os.Handler;
 import android.os.Looper;
 import android.os.Message;
 
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapResult.EapSuccess;
-import com.android.ike.eap.statemachine.EapStateMachine;
-import com.android.ike.utils.Log;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.statemachine.EapStateMachine;
+import com.android.internal.net.utils.Log;
 
 import java.security.SecureRandom;
 import java.util.concurrent.Executor;
diff --git a/src/java/com/android/ike/eap/EapResult.java b/src/java/com/android/internal/net/eap/EapResult.java
similarity index 95%
rename from src/java/com/android/ike/eap/EapResult.java
rename to src/java/com/android/internal/net/eap/EapResult.java
index 0f97581..894dd47 100644
--- a/src/java/com/android/ike/eap/EapResult.java
+++ b/src/java/com/android/internal/net/eap/EapResult.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
 import android.annotation.NonNull;
 
-import com.android.ike.eap.exceptions.InvalidEapResponseException;
-import com.android.ike.eap.message.EapMessage;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.exceptions.InvalidEapResponseException;
+import com.android.internal.net.eap.message.EapMessage;
 
 /**
  * EapResult represents the return type R for a process operation within the EapStateMachine.
diff --git a/src/java/com/android/ike/eap/IEapCallback.java b/src/java/com/android/internal/net/eap/IEapCallback.java
similarity index 97%
rename from src/java/com/android/ike/eap/IEapCallback.java
rename to src/java/com/android/internal/net/eap/IEapCallback.java
index 7bd8201..fae3edf 100644
--- a/src/java/com/android/ike/eap/IEapCallback.java
+++ b/src/java/com/android/internal/net/eap/IEapCallback.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
 /**
  * IEapCallback represents a Callback interface to be implemented by clients of the
diff --git a/src/java/com/android/ike/eap/crypto/Fips186_2Prf.java b/src/java/com/android/internal/net/eap/crypto/Fips186_2Prf.java
similarity index 94%
rename from src/java/com/android/ike/eap/crypto/Fips186_2Prf.java
rename to src/java/com/android/internal/net/eap/crypto/Fips186_2Prf.java
index c98a406..fb1268c 100644
--- a/src/java/com/android/ike/eap/crypto/Fips186_2Prf.java
+++ b/src/java/com/android/internal/net/eap/crypto/Fips186_2Prf.java
@@ -13,10 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.eap.crypto;
+package com.android.internal.net.eap.crypto;
 
-import static com.android.ike.utils.BigIntegerUtils.bigIntegerToUnsignedByteArray;
-import static com.android.ike.utils.BigIntegerUtils.unsignedByteArrayToBigInteger;
+import static com.android.internal.net.utils.BigIntegerUtils.bigIntegerToUnsignedByteArray;
+import static com.android.internal.net.utils.BigIntegerUtils.unsignedByteArrayToBigInteger;
 
 import com.android.org.bouncycastle.crypto.digests.SHA1Digest;
 
diff --git a/src/java/com/android/ike/eap/crypto/HmacSha256ByteSigner.java b/src/java/com/android/internal/net/eap/crypto/HmacSha256ByteSigner.java
similarity index 91%
rename from src/java/com/android/ike/eap/crypto/HmacSha256ByteSigner.java
rename to src/java/com/android/internal/net/eap/crypto/HmacSha256ByteSigner.java
index f5d4149..db6e4b3 100644
--- a/src/java/com/android/ike/eap/crypto/HmacSha256ByteSigner.java
+++ b/src/java/com/android/internal/net/eap/crypto/HmacSha256ByteSigner.java
@@ -14,10 +14,10 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.crypto;
+package com.android.internal.net.eap.crypto;
 
-import com.android.ike.crypto.KeyGenerationUtils;
-import com.android.ike.crypto.KeyGenerationUtils.ByteSigner;
+import com.android.internal.net.crypto.KeyGenerationUtils;
+import com.android.internal.net.crypto.KeyGenerationUtils.ByteSigner;
 
 import java.security.InvalidKeyException;
 import java.security.NoSuchAlgorithmException;
diff --git a/src/java/com/android/ike/eap/crypto/ParityBitUtil.java b/src/java/com/android/internal/net/eap/crypto/ParityBitUtil.java
similarity index 98%
rename from src/java/com/android/ike/eap/crypto/ParityBitUtil.java
rename to src/java/com/android/internal/net/eap/crypto/ParityBitUtil.java
index cf821e7..6413ade 100644
--- a/src/java/com/android/ike/eap/crypto/ParityBitUtil.java
+++ b/src/java/com/android/internal/net/eap/crypto/ParityBitUtil.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.crypto;
+package com.android.internal.net.eap.crypto;
 
 import com.android.internal.annotations.VisibleForTesting;
 
diff --git a/src/java/com/android/ike/eap/exceptions/EapInvalidPacketLengthException.java b/src/java/com/android/internal/net/eap/exceptions/EapInvalidPacketLengthException.java
similarity index 93%
rename from src/java/com/android/ike/eap/exceptions/EapInvalidPacketLengthException.java
rename to src/java/com/android/internal/net/eap/exceptions/EapInvalidPacketLengthException.java
index 4f8dff5..ca6d4da 100644
--- a/src/java/com/android/ike/eap/exceptions/EapInvalidPacketLengthException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/EapInvalidPacketLengthException.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions;
+package com.android.internal.net.eap.exceptions;
 
-import com.android.ike.eap.message.EapMessage;
+import com.android.internal.net.eap.message.EapMessage;
 
 /**
  * This exception is thrown when the Packet Length for an {@link EapMessage} is invalid.
diff --git a/src/java/com/android/ike/eap/exceptions/EapInvalidRequestException.java b/src/java/com/android/internal/net/eap/exceptions/EapInvalidRequestException.java
similarity index 92%
rename from src/java/com/android/ike/eap/exceptions/EapInvalidRequestException.java
rename to src/java/com/android/internal/net/eap/exceptions/EapInvalidRequestException.java
index 0e92587..8dee31a 100644
--- a/src/java/com/android/ike/eap/exceptions/EapInvalidRequestException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/EapInvalidRequestException.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions;
+package com.android.internal.net.eap.exceptions;
 
-import com.android.ike.eap.statemachine.EapStateMachine;
+import com.android.internal.net.eap.statemachine.EapStateMachine;
 
 /**
  * EapInvalidRequestException is thrown when invalid EapMessages are attempted to be processed by
diff --git a/src/java/com/android/ike/eap/exceptions/EapSilentException.java b/src/java/com/android/internal/net/eap/exceptions/EapSilentException.java
similarity index 97%
rename from src/java/com/android/ike/eap/exceptions/EapSilentException.java
rename to src/java/com/android/internal/net/eap/exceptions/EapSilentException.java
index 08abfd2..3cb9211 100644
--- a/src/java/com/android/ike/eap/exceptions/EapSilentException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/EapSilentException.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions;
+package com.android.internal.net.eap.exceptions;
 
 /**
  * EapSilentException represents a category of EAP errors that should be silently discarded by
diff --git a/src/java/com/android/ike/eap/exceptions/InvalidEapCodeException.java b/src/java/com/android/internal/net/eap/exceptions/InvalidEapCodeException.java
similarity index 91%
rename from src/java/com/android/ike/eap/exceptions/InvalidEapCodeException.java
rename to src/java/com/android/internal/net/eap/exceptions/InvalidEapCodeException.java
index ee7c528..17a0c4d 100644
--- a/src/java/com/android/ike/eap/exceptions/InvalidEapCodeException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/InvalidEapCodeException.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions;
+package com.android.internal.net.eap.exceptions;
 
-import com.android.ike.eap.message.EapMessage;
+import com.android.internal.net.eap.message.EapMessage;
 
 /**
  * This exception is thrown when the EAP Code for an {@link EapMessage} is invalid.
diff --git a/src/java/com/android/ike/eap/exceptions/InvalidEapResponseException.java b/src/java/com/android/internal/net/eap/exceptions/InvalidEapResponseException.java
similarity index 95%
rename from src/java/com/android/ike/eap/exceptions/InvalidEapResponseException.java
rename to src/java/com/android/internal/net/eap/exceptions/InvalidEapResponseException.java
index 68b5e57..c0a12e2 100644
--- a/src/java/com/android/ike/eap/exceptions/InvalidEapResponseException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/InvalidEapResponseException.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions;
+package com.android.internal.net.eap.exceptions;
 
 /**
  * InvalidEapResponseException is thrown when an invalid EapResponse is attempted to be constructed.
diff --git a/src/java/com/android/ike/eap/exceptions/UnsupportedEapTypeException.java b/src/java/com/android/internal/net/eap/exceptions/UnsupportedEapTypeException.java
similarity index 91%
rename from src/java/com/android/ike/eap/exceptions/UnsupportedEapTypeException.java
rename to src/java/com/android/internal/net/eap/exceptions/UnsupportedEapTypeException.java
index 1f36d44..f128385 100644
--- a/src/java/com/android/ike/eap/exceptions/UnsupportedEapTypeException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/UnsupportedEapTypeException.java
@@ -14,10 +14,10 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions;
+package com.android.internal.net.eap.exceptions;
 
-import com.android.ike.eap.message.EapData.EapType;
-import com.android.ike.eap.message.EapMessage;
+import com.android.internal.net.eap.message.EapData.EapType;
+import com.android.internal.net.eap.message.EapMessage;
 
 /**
  * UnsupportedEapTypeException is thrown when an {@link EapMessage} is constructed with an
diff --git a/src/java/com/android/ike/eap/exceptions/mschapv2/EapMsChapV2ParsingException.java b/src/java/com/android/internal/net/eap/exceptions/mschapv2/EapMsChapV2ParsingException.java
similarity index 95%
rename from src/java/com/android/ike/eap/exceptions/mschapv2/EapMsChapV2ParsingException.java
rename to src/java/com/android/internal/net/eap/exceptions/mschapv2/EapMsChapV2ParsingException.java
index 0da0075..09f1fae 100644
--- a/src/java/com/android/ike/eap/exceptions/mschapv2/EapMsChapV2ParsingException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/mschapv2/EapMsChapV2ParsingException.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions.mschapv2;
+package com.android.internal.net.eap.exceptions.mschapv2;
 
 /**
  * EapMsChapV2ParsingException is thrown when an invalid MS-CHAPv2 Type Data is attempted to be
diff --git a/src/java/com/android/ike/eap/exceptions/simaka/EapAkaInvalidAuthenticationResponse.java b/src/java/com/android/internal/net/eap/exceptions/simaka/EapAkaInvalidAuthenticationResponse.java
similarity index 96%
rename from src/java/com/android/ike/eap/exceptions/simaka/EapAkaInvalidAuthenticationResponse.java
rename to src/java/com/android/internal/net/eap/exceptions/simaka/EapAkaInvalidAuthenticationResponse.java
index 8f81ed4..7310d78 100644
--- a/src/java/com/android/ike/eap/exceptions/simaka/EapAkaInvalidAuthenticationResponse.java
+++ b/src/java/com/android/internal/net/eap/exceptions/simaka/EapAkaInvalidAuthenticationResponse.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions.simaka;
+package com.android.internal.net.eap.exceptions.simaka;
 
 /**
  * EapAkaInvalidAuthenticationResponse is thrown when a UICC Challenge is processed during an
diff --git a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaAuthenticationFailureException.java b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaAuthenticationFailureException.java
similarity index 96%
rename from src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaAuthenticationFailureException.java
rename to src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaAuthenticationFailureException.java
index 4195046..699f22e 100644
--- a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaAuthenticationFailureException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaAuthenticationFailureException.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions.simaka;
+package com.android.internal.net.eap.exceptions.simaka;
 
 /**
  * EapSimAkaAuthenticationFailureException is thrown when an invalid Uicc Challenge is processed
diff --git a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaIdentityUnavailableException.java b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaIdentityUnavailableException.java
similarity index 96%
rename from src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaIdentityUnavailableException.java
rename to src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaIdentityUnavailableException.java
index c6e4a01..6a42171 100644
--- a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaIdentityUnavailableException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaIdentityUnavailableException.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions.simaka;
+package com.android.internal.net.eap.exceptions.simaka;
 
 import android.telephony.TelephonyManager;
 
diff --git a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaInvalidAtPaddingException.java b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaInvalidAtPaddingException.java
similarity index 92%
rename from src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaInvalidAtPaddingException.java
rename to src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaInvalidAtPaddingException.java
index e584444..34a8f04 100644
--- a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaInvalidAtPaddingException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaInvalidAtPaddingException.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions.simaka;
+package com.android.internal.net.eap.exceptions.simaka;
 
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtPadding;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtPadding;
 
 /**
  * EapSimAkaInvalidAtPaddingException is thrown when an {@link AtPadding} with invalid padding is
diff --git a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaInvalidAttributeException.java b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaInvalidAttributeException.java
similarity index 91%
rename from src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaInvalidAttributeException.java
rename to src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaInvalidAttributeException.java
index 106dfb8..eff0c0c 100644
--- a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaInvalidAttributeException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaInvalidAttributeException.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions.simaka;
+package com.android.internal.net.eap.exceptions.simaka;
 
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
 
 /**
  * EapSimAkaInvalidAttributeException is thrown when an invalid {@link EapSimAkaAttribute} is
diff --git a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaInvalidLengthException.java b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaInvalidLengthException.java
similarity index 96%
rename from src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaInvalidLengthException.java
rename to src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaInvalidLengthException.java
index d400788..c484b11 100644
--- a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaInvalidLengthException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaInvalidLengthException.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions.simaka;
+package com.android.internal.net.eap.exceptions.simaka;
 
 import android.telephony.TelephonyManager;
 
diff --git a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaUnsupportedAttributeException.java b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaUnsupportedAttributeException.java
similarity index 88%
rename from src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaUnsupportedAttributeException.java
rename to src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaUnsupportedAttributeException.java
index 0731cff..1128917 100644
--- a/src/java/com/android/ike/eap/exceptions/simaka/EapSimAkaUnsupportedAttributeException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimAkaUnsupportedAttributeException.java
@@ -14,10 +14,10 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions.simaka;
+package com.android.internal.net.eap.exceptions.simaka;
 
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
 
 /**
  * EapSimAkaUnsupportedAttributeException is thrown when an unsupported {@link EapSimAkaAttribute}
diff --git a/src/java/com/android/ike/eap/exceptions/simaka/EapSimInvalidAtRandException.java b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimInvalidAtRandException.java
similarity index 92%
rename from src/java/com/android/ike/eap/exceptions/simaka/EapSimInvalidAtRandException.java
rename to src/java/com/android/internal/net/eap/exceptions/simaka/EapSimInvalidAtRandException.java
index b01865a..c1b9200 100644
--- a/src/java/com/android/ike/eap/exceptions/simaka/EapSimInvalidAtRandException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimInvalidAtRandException.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions.simaka;
+package com.android.internal.net.eap.exceptions.simaka;
 
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
 
 /**
  * EapSimInvalidAtRandException is thrown when an {@link AtRandSim} with an invalid number of RAND
diff --git a/src/java/com/android/ike/eap/exceptions/simaka/EapSimInvalidTypeDataException.java b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimInvalidTypeDataException.java
similarity index 91%
rename from src/java/com/android/ike/eap/exceptions/simaka/EapSimInvalidTypeDataException.java
rename to src/java/com/android/internal/net/eap/exceptions/simaka/EapSimInvalidTypeDataException.java
index 0015294..a6a2d45 100644
--- a/src/java/com/android/ike/eap/exceptions/simaka/EapSimInvalidTypeDataException.java
+++ b/src/java/com/android/internal/net/eap/exceptions/simaka/EapSimInvalidTypeDataException.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.exceptions.simaka;
+package com.android.internal.net.eap.exceptions.simaka;
 
-import com.android.ike.eap.message.simaka.EapSimTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData;
 
 /**
  * EapSimInvalidTypeDataException is thrown when invalid {@link EapSimTypeData} are attempted to be
diff --git a/src/java/com/android/ike/eap/message/EapData.java b/src/java/com/android/internal/net/eap/message/EapData.java
similarity index 98%
rename from src/java/com/android/ike/eap/message/EapData.java
rename to src/java/com/android/internal/net/eap/message/EapData.java
index 5e31716..86dc43b 100644
--- a/src/java/com/android/ike/eap/message/EapData.java
+++ b/src/java/com/android/internal/net/eap/message/EapData.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message;
+package com.android.internal.net.eap.message;
 
 import android.annotation.IntDef;
 import android.annotation.NonNull;
diff --git a/src/java/com/android/ike/eap/message/EapMessage.java b/src/java/com/android/internal/net/eap/message/EapMessage.java
similarity index 92%
rename from src/java/com/android/ike/eap/message/EapMessage.java
rename to src/java/com/android/internal/net/eap/message/EapMessage.java
index 1f6cdfc..bb1c632 100644
--- a/src/java/com/android/ike/eap/message/EapMessage.java
+++ b/src/java/com/android/internal/net/eap/message/EapMessage.java
@@ -14,23 +14,23 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message;
+package com.android.internal.net.eap.message;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
-import static com.android.ike.eap.message.EapData.EAP_NAK;
-import static com.android.ike.eap.message.EapData.NOTIFICATION_DATA;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.message.EapData.EAP_NAK;
+import static com.android.internal.net.eap.message.EapData.NOTIFICATION_DATA;
 
 import android.annotation.IntDef;
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.exceptions.EapInvalidPacketLengthException;
-import com.android.ike.eap.exceptions.EapSilentException;
-import com.android.ike.eap.exceptions.InvalidEapCodeException;
-import com.android.ike.eap.exceptions.UnsupportedEapTypeException;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.EapInvalidPacketLengthException;
+import com.android.internal.net.eap.exceptions.EapSilentException;
+import com.android.internal.net.eap.exceptions.InvalidEapCodeException;
+import com.android.internal.net.eap.exceptions.UnsupportedEapTypeException;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2TypeData.java b/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2TypeData.java
similarity index 98%
rename from src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2TypeData.java
rename to src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2TypeData.java
index a31f4a0..985e0da 100644
--- a/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2TypeData.java
+++ b/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2TypeData.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.mschapv2;
+package com.android.internal.net.eap.message.mschapv2;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
 
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
-import com.android.ike.eap.message.EapMessage;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
+import com.android.internal.net.eap.message.EapMessage;
 
 import java.nio.BufferUnderflowException;
 import java.nio.ByteBuffer;
diff --git a/src/java/com/android/ike/eap/message/simaka/EapAkaAttributeFactory.java b/src/java/com/android/internal/net/eap/message/simaka/EapAkaAttributeFactory.java
similarity index 73%
rename from src/java/com/android/ike/eap/message/simaka/EapAkaAttributeFactory.java
rename to src/java/com/android/internal/net/eap/message/simaka/EapAkaAttributeFactory.java
index 2a0c738..5b68781 100644
--- a/src/java/com/android/ike/eap/message/simaka/EapAkaAttributeFactory.java
+++ b/src/java/com/android/internal/net/eap/message/simaka/EapAkaAttributeFactory.java
@@ -14,22 +14,22 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTS;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_BIDDING;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RES;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.LENGTH_SCALING;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTS;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_BIDDING;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RES;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.LENGTH_SCALING;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAutn;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAuts;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtBidding;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRes;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAutn;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAuts;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtBidding;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRes;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/eap/message/simaka/EapAkaPrimeAttributeFactory.java b/src/java/com/android/internal/net/eap/message/simaka/EapAkaPrimeAttributeFactory.java
similarity index 80%
rename from src/java/com/android/ike/eap/message/simaka/EapAkaPrimeAttributeFactory.java
rename to src/java/com/android/internal/net/eap/message/simaka/EapAkaPrimeAttributeFactory.java
index ed7ddc5..46f97e5 100644
--- a/src/java/com/android/ike/eap/message/simaka/EapAkaPrimeAttributeFactory.java
+++ b/src/java/com/android/internal/net/eap/message/simaka/EapAkaPrimeAttributeFactory.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF_INPUT;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.LENGTH_SCALING;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF_INPUT;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.LENGTH_SCALING;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtKdf;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtKdfInput;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtKdf;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtKdfInput;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/eap/message/simaka/EapAkaPrimeTypeData.java b/src/java/com/android/internal/net/eap/message/simaka/EapAkaPrimeTypeData.java
similarity index 94%
rename from src/java/com/android/ike/eap/message/simaka/EapAkaPrimeTypeData.java
rename to src/java/com/android/internal/net/eap/message/simaka/EapAkaPrimeTypeData.java
index 7f06d68..23dcd02 100644
--- a/src/java/com/android/ike/eap/message/simaka/EapAkaPrimeTypeData.java
+++ b/src/java/com/android/internal/net/eap/message/simaka/EapAkaPrimeTypeData.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
 import android.annotation.NonNull;
 
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
 
 import java.util.LinkedHashMap;
 import java.util.List;
diff --git a/src/java/com/android/ike/eap/message/simaka/EapAkaTypeData.java b/src/java/com/android/internal/net/eap/message/simaka/EapAkaTypeData.java
similarity index 97%
rename from src/java/com/android/ike/eap/message/simaka/EapAkaTypeData.java
rename to src/java/com/android/internal/net/eap/message/simaka/EapAkaTypeData.java
index ceee3e7..e3ce817 100644
--- a/src/java/com/android/ike/eap/message/simaka/EapAkaTypeData.java
+++ b/src/java/com/android/internal/net/eap/message/simaka/EapAkaTypeData.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
 import android.annotation.NonNull;
 
-import com.android.ike.eap.message.EapMessage;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.message.EapMessage;
 
 import java.util.HashMap;
 import java.util.HashSet;
diff --git a/src/java/com/android/ike/eap/message/simaka/EapSimAkaAttribute.java b/src/java/com/android/internal/net/eap/message/simaka/EapSimAkaAttribute.java
similarity index 98%
rename from src/java/com/android/ike/eap/message/simaka/EapSimAkaAttribute.java
rename to src/java/com/android/internal/net/eap/message/simaka/EapSimAkaAttribute.java
index dec511c..73d6752 100644
--- a/src/java/com/android/ike/eap/message/simaka/EapSimAkaAttribute.java
+++ b/src/java/com/android/internal/net/eap/message/simaka/EapSimAkaAttribute.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAtPaddingException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimInvalidAtRandException;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAtPaddingException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimInvalidAtRandException;
 
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
diff --git a/src/java/com/android/ike/eap/message/simaka/EapSimAkaAttributeFactory.java b/src/java/com/android/internal/net/eap/message/simaka/EapSimAkaAttributeFactory.java
similarity index 65%
rename from src/java/com/android/ike/eap/message/simaka/EapSimAkaAttributeFactory.java
rename to src/java/com/android/internal/net/eap/message/simaka/EapSimAkaAttributeFactory.java
index 9a1ae7a..df79a25 100644
--- a/src/java/com/android/ike/eap/message/simaka/EapSimAkaAttributeFactory.java
+++ b/src/java/com/android/internal/net/eap/message/simaka/EapSimAkaAttributeFactory.java
@@ -14,37 +14,37 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_CLIENT_ERROR_CODE;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_COUNTER;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_COUNTER_TOO_SMALL;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_FULLAUTH_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_IDENTITY;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NONCE_S;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NOTIFICATION;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PADDING;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.LENGTH_SCALING;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.SKIPPABLE_ATTRIBUTE_RANGE_START;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_CLIENT_ERROR_CODE;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_COUNTER;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_COUNTER_TOO_SMALL;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_FULLAUTH_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_IDENTITY;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NONCE_S;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NOTIFICATION;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PADDING;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.LENGTH_SCALING;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.SKIPPABLE_ATTRIBUTE_RANGE_START;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtCounter;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtCounterTooSmall;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtFullauthIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNonceS;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtPadding;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.EapSimAkaUnsupportedAttribute;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtCounter;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtCounterTooSmall;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtFullauthIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNonceS;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtPadding;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EapSimAkaUnsupportedAttribute;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/eap/message/simaka/EapSimAkaTypeData.java b/src/java/com/android/internal/net/eap/message/simaka/EapSimAkaTypeData.java
similarity index 91%
rename from src/java/com/android/ike/eap/message/simaka/EapSimAkaTypeData.java
rename to src/java/com/android/internal/net/eap/message/simaka/EapSimAkaTypeData.java
index 78aede5..c84fdf4 100644
--- a/src/java/com/android/ike/eap/message/simaka/EapSimAkaTypeData.java
+++ b/src/java/com/android/internal/net/eap/message/simaka/EapSimAkaTypeData.java
@@ -14,19 +14,19 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_ATTRIBUTE_STRING;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_ATTRIBUTE_STRING;
 
 import android.annotation.NonNull;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimInvalidAtRandException;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.EapSimAkaUnsupportedAttribute;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimInvalidAtRandException;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EapSimAkaUnsupportedAttribute;
 
 import java.nio.BufferUnderflowException;
 import java.nio.ByteBuffer;
diff --git a/src/java/com/android/ike/eap/message/simaka/EapSimAttributeFactory.java b/src/java/com/android/internal/net/eap/message/simaka/EapSimAttributeFactory.java
similarity index 74%
rename from src/java/com/android/ike/eap/message/simaka/EapSimAttributeFactory.java
rename to src/java/com/android/internal/net/eap/message/simaka/EapSimAttributeFactory.java
index 1e03f35..8be348e 100644
--- a/src/java/com/android/ike/eap/message/simaka/EapSimAttributeFactory.java
+++ b/src/java/com/android/internal/net/eap/message/simaka/EapSimAttributeFactory.java
@@ -14,20 +14,20 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NONCE_MT;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_SELECTED_VERSION;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_VERSION_LIST;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.LENGTH_SCALING;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NONCE_MT;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_SELECTED_VERSION;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_VERSION_LIST;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.LENGTH_SCALING;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNonceMt;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtSelectedVersion;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNonceMt;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtSelectedVersion;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/eap/message/simaka/EapSimTypeData.java b/src/java/com/android/internal/net/eap/message/simaka/EapSimTypeData.java
similarity index 97%
rename from src/java/com/android/ike/eap/message/simaka/EapSimTypeData.java
rename to src/java/com/android/internal/net/eap/message/simaka/EapSimTypeData.java
index df69932..ff1be60 100644
--- a/src/java/com/android/ike/eap/message/simaka/EapSimTypeData.java
+++ b/src/java/com/android/internal/net/eap/message/simaka/EapSimTypeData.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
 import android.annotation.NonNull;
 
-import com.android.ike.eap.message.EapMessage;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.message.EapMessage;
 
 import java.util.HashMap;
 import java.util.HashSet;
diff --git a/src/java/com/android/ike/eap/statemachine/EapAkaMethodStateMachine.java b/src/java/com/android/internal/net/eap/statemachine/EapAkaMethodStateMachine.java
similarity index 85%
rename from src/java/com/android/ike/eap/statemachine/EapAkaMethodStateMachine.java
rename to src/java/com/android/internal/net/eap/statemachine/EapAkaMethodStateMachine.java
index 8940c33..b26c8e9 100644
--- a/src/java/com/android/ike/eap/statemachine/EapAkaMethodStateMachine.java
+++ b/src/java/com/android/internal/net/eap/statemachine/EapAkaMethodStateMachine.java
@@ -14,60 +14,60 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
-import static com.android.ike.eap.message.EapData.EAP_NOTIFICATION;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_AUTHENTICATION_REJECT;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CLIENT_ERROR;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_NOTIFICATION;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_SYNCHRONIZATION_FAILURE;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_BIDDING;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ENCR_DATA;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_FULLAUTH_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_IV;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.message.EapData.EAP_NOTIFICATION;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_AUTHENTICATION_REJECT;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CLIENT_ERROR;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_NOTIFICATION;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_SYNCHRONIZATION_FAILURE;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_BIDDING;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ENCR_DATA;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_FULLAUTH_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_IV;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
 
 import android.annotation.Nullable;
 import android.content.Context;
+import android.net.eap.EapSessionConfig.EapAkaConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapSuccess;
-import com.android.ike.eap.EapSessionConfig.EapAkaConfig;
-import com.android.ike.eap.crypto.Fips186_2Prf;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.exceptions.EapSilentException;
-import com.android.ike.eap.exceptions.simaka.EapAkaInvalidAuthenticationResponse;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaAuthenticationFailureException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaIdentityUnavailableException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidLengthException;
-import com.android.ike.eap.message.EapData.EapMethod;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapAkaTypeData.EapAkaTypeDataDecoder;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAutn;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAuts;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtBidding;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRes;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.crypto.Fips186_2Prf;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.exceptions.EapSilentException;
+import com.android.internal.net.eap.exceptions.simaka.EapAkaInvalidAuthenticationResponse;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaAuthenticationFailureException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaIdentityUnavailableException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidLengthException;
+import com.android.internal.net.eap.message.EapData.EapMethod;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData.EapAkaTypeDataDecoder;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAutn;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAuts;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtBidding;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRes;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
 
 import java.nio.BufferUnderflowException;
 import java.nio.ByteBuffer;
diff --git a/src/java/com/android/ike/eap/statemachine/EapAkaPrimeMethodStateMachine.java b/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeMethodStateMachine.java
similarity index 88%
rename from src/java/com/android/ike/eap/statemachine/EapAkaPrimeMethodStateMachine.java
rename to src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeMethodStateMachine.java
index 9ba7dc2..d2e8ba2 100644
--- a/src/java/com/android/ike/eap/statemachine/EapAkaPrimeMethodStateMachine.java
+++ b/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeMethodStateMachine.java
@@ -14,34 +14,34 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA_PRIME;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CLIENT_ERROR;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF_INPUT;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA_PRIME;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CLIENT_ERROR;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF_INPUT;
 
 import android.annotation.Nullable;
 import android.content.Context;
+import android.net.eap.EapSessionConfig.EapAkaPrimeConfig;
 
-import com.android.ike.crypto.KeyGenerationUtils;
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapSessionConfig.EapAkaPrimeConfig;
-import com.android.ike.eap.crypto.HmacSha256ByteSigner;
-import com.android.ike.eap.message.EapData.EapMethod;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaPrimeTypeData;
-import com.android.ike.eap.message.simaka.EapAkaPrimeTypeData.EapAkaPrimeTypeDataDecoder;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAutn;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtKdf;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtKdfInput;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.crypto.KeyGenerationUtils;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.crypto.HmacSha256ByteSigner;
+import com.android.internal.net.eap.message.EapData.EapMethod;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaPrimeTypeData;
+import com.android.internal.net.eap.message.simaka.EapAkaPrimeTypeData.EapAkaPrimeTypeDataDecoder;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAutn;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtKdf;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtKdfInput;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
 
 import java.nio.BufferOverflowException;
 import java.nio.BufferUnderflowException;
diff --git a/src/java/com/android/ike/eap/statemachine/EapMethodStateMachine.java b/src/java/com/android/internal/net/eap/statemachine/EapMethodStateMachine.java
similarity index 82%
rename from src/java/com/android/ike/eap/statemachine/EapMethodStateMachine.java
rename to src/java/com/android/internal/net/eap/statemachine/EapMethodStateMachine.java
index 31a5f2f..bab182b 100644
--- a/src/java/com/android/ike/eap/statemachine/EapMethodStateMachine.java
+++ b/src/java/com/android/internal/net/eap/statemachine/EapMethodStateMachine.java
@@ -14,23 +14,23 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
-import static com.android.ike.eap.message.EapData.EAP_NOTIFICATION;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.message.EapData.EAP_NOTIFICATION;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
 
 import android.annotation.Nullable;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.message.EapData.EapMethod;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.utils.SimpleStateMachine;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.message.EapData.EapMethod;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.utils.SimpleStateMachine;
 
 /**
  * EapMethodStateMachine is an abstract class representing a state machine for EAP Method
diff --git a/src/java/com/android/ike/eap/statemachine/EapMsChapV2MethodStateMachine.java b/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2MethodStateMachine.java
similarity index 90%
rename from src/java/com/android/ike/eap/statemachine/EapMsChapV2MethodStateMachine.java
rename to src/java/com/android/internal/net/eap/statemachine/EapMsChapV2MethodStateMachine.java
index 96e6b95..490b8ba 100644
--- a/src/java/com/android/ike/eap/statemachine/EapMsChapV2MethodStateMachine.java
+++ b/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2MethodStateMachine.java
@@ -14,44 +14,45 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
-import static com.android.ike.eap.message.EapData.EAP_NOTIFICATION;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_STRING;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_RESPONSE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_FAILURE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_SUCCESS;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_OP_CODE_STRING;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureRequest.EAP_ERROR_CODE_STRING;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureResponse.getEapMsChapV2FailureResponse;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2SuccessResponse.getEapMsChapV2SuccessResponse;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.message.EapData.EAP_NOTIFICATION;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_STRING;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_RESPONSE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_FAILURE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_SUCCESS;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_OP_CODE_STRING;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureRequest.EAP_ERROR_CODE_STRING;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureResponse.getEapMsChapV2FailureResponse;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2SuccessResponse.getEapMsChapV2SuccessResponse;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapResult.EapSuccess;
-import com.android.ike.eap.EapSessionConfig.EapMsChapV2Config;
-import com.android.ike.eap.crypto.ParityBitUtil;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.exceptions.EapSilentException;
-import com.android.ike.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapData.EapMethod;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeResponse;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureRequest;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2SuccessRequest;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
-import com.android.ike.utils.Log;
+import android.net.eap.EapSessionConfig.EapMsChapV2Config;
+
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.crypto.ParityBitUtil;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.exceptions.EapSilentException;
+import com.android.internal.net.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapData.EapMethod;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeResponse;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureRequest;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2SuccessRequest;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
+import com.android.internal.net.utils.Log;
 import com.android.org.bouncycastle.crypto.digests.MD4Digest;
 
 import java.io.UnsupportedEncodingException;
diff --git a/src/java/com/android/ike/eap/statemachine/EapSimAkaMethodStateMachine.java b/src/java/com/android/internal/net/eap/statemachine/EapSimAkaMethodStateMachine.java
similarity index 89%
rename from src/java/com/android/ike/eap/statemachine/EapSimAkaMethodStateMachine.java
rename to src/java/com/android/internal/net/eap/statemachine/EapSimAkaMethodStateMachine.java
index 7f1933a..dfd1627 100644
--- a/src/java/com/android/ike/eap/statemachine/EapSimAkaMethodStateMachine.java
+++ b/src/java/com/android/internal/net/eap/statemachine/EapSimAkaMethodStateMachine.java
@@ -14,35 +14,35 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_RESPONSE;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NOTIFICATION;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_RESPONSE;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NOTIFICATION;
 
+import android.net.eap.EapSessionConfig.EapUiccConfig;
 import android.telephony.TelephonyManager;
 import android.util.Base64;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapSessionConfig.EapUiccConfig;
-import com.android.ike.eap.crypto.Fips186_2Prf;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.exceptions.EapSilentException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaAuthenticationFailureException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData;
-import com.android.ike.utils.Log;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.crypto.Fips186_2Prf;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.exceptions.EapSilentException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaAuthenticationFailureException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData;
+import com.android.internal.net.utils.Log;
 
 import java.nio.ByteBuffer;
 import java.security.GeneralSecurityException;
diff --git a/src/java/com/android/ike/eap/statemachine/EapSimMethodStateMachine.java b/src/java/com/android/internal/net/eap/statemachine/EapSimMethodStateMachine.java
similarity index 87%
rename from src/java/com/android/ike/eap/statemachine/EapSimMethodStateMachine.java
rename to src/java/com/android/internal/net/eap/statemachine/EapSimMethodStateMachine.java
index 854d05b..005cfb9 100644
--- a/src/java/com/android/ike/eap/statemachine/EapSimMethodStateMachine.java
+++ b/src/java/com/android/internal/net/eap/statemachine/EapSimMethodStateMachine.java
@@ -14,55 +14,55 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
-import static com.android.ike.eap.message.EapData.EAP_NOTIFICATION;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ENCR_DATA;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_FULLAUTH_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_IV;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_VERSION_LIST;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_CLIENT_ERROR;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_NOTIFICATION;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_START;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.message.EapData.EAP_NOTIFICATION;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ENCR_DATA;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_FULLAUTH_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_IV;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_VERSION_LIST;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_CLIENT_ERROR;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_NOTIFICATION;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_START;
 
 import android.annotation.Nullable;
 import android.content.Context;
+import android.net.eap.EapSessionConfig.EapSimConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapSuccess;
-import com.android.ike.eap.EapSessionConfig.EapSimConfig;
-import com.android.ike.eap.crypto.Fips186_2Prf;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.exceptions.EapSilentException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaAuthenticationFailureException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaIdentityUnavailableException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidLengthException;
-import com.android.ike.eap.message.EapData.EapMethod;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNonceMt;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtSelectedVersion;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.message.simaka.EapSimTypeData;
-import com.android.ike.eap.message.simaka.EapSimTypeData.EapSimTypeDataDecoder;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.crypto.Fips186_2Prf;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.exceptions.EapSilentException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaAuthenticationFailureException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaIdentityUnavailableException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidLengthException;
+import com.android.internal.net.eap.message.EapData.EapMethod;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNonceMt;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtSelectedVersion;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData.EapSimTypeDataDecoder;
 
 import java.nio.BufferUnderflowException;
 import java.nio.ByteBuffer;
diff --git a/src/java/com/android/ike/eap/statemachine/EapStateMachine.java b/src/java/com/android/internal/net/eap/statemachine/EapStateMachine.java
similarity index 86%
rename from src/java/com/android/ike/eap/statemachine/EapStateMachine.java
rename to src/java/com/android/internal/net/eap/statemachine/EapStateMachine.java
index f2030a1..f3e933e 100644
--- a/src/java/com/android/ike/eap/statemachine/EapStateMachine.java
+++ b/src/java/com/android/internal/net/eap/statemachine/EapStateMachine.java
@@ -14,46 +14,46 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.EapAuthenticator.LOG;
-import static com.android.ike.eap.message.EapData.EAP_IDENTITY;
-import static com.android.ike.eap.message.EapData.EAP_NAK;
-import static com.android.ike.eap.message.EapData.EAP_NOTIFICATION;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA_PRIME;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_STRING;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_RESPONSE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_STRING;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.EapAuthenticator.LOG;
+import static com.android.internal.net.eap.message.EapData.EAP_IDENTITY;
+import static com.android.internal.net.eap.message.EapData.EAP_NAK;
+import static com.android.internal.net.eap.message.EapData.EAP_NOTIFICATION;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA_PRIME;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_STRING;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_RESPONSE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_STRING;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
 
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.content.Context;
+import android.net.eap.EapSessionConfig;
+import android.net.eap.EapSessionConfig.EapAkaConfig;
+import android.net.eap.EapSessionConfig.EapAkaPrimeConfig;
+import android.net.eap.EapSessionConfig.EapMethodConfig;
+import android.net.eap.EapSessionConfig.EapMsChapV2Config;
+import android.net.eap.EapSessionConfig.EapSimConfig;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapResult.EapSuccess;
-import com.android.ike.eap.EapSessionConfig;
-import com.android.ike.eap.EapSessionConfig.EapAkaConfig;
-import com.android.ike.eap.EapSessionConfig.EapAkaPrimeConfig;
-import com.android.ike.eap.EapSessionConfig.EapMethodConfig;
-import com.android.ike.eap.EapSessionConfig.EapMsChapV2Config;
-import com.android.ike.eap.EapSessionConfig.EapSimConfig;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.exceptions.EapSilentException;
-import com.android.ike.eap.exceptions.UnsupportedEapTypeException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapData.EapMethod;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.utils.SimpleStateMachine;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.exceptions.EapSilentException;
+import com.android.internal.net.eap.exceptions.UnsupportedEapTypeException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapData.EapMethod;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.utils.SimpleStateMachine;
 
 import java.nio.charset.StandardCharsets;
 import java.security.SecureRandom;
diff --git a/src/java/com/android/ike/ikev2/AbstractSessionStateMachine.java b/src/java/com/android/internal/net/ipsec/ike/AbstractSessionStateMachine.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/AbstractSessionStateMachine.java
rename to src/java/com/android/internal/net/ipsec/ike/AbstractSessionStateMachine.java
index aaeb4f4..8212284 100644
--- a/src/java/com/android/ike/ikev2/AbstractSessionStateMachine.java
+++ b/src/java/com/android/internal/net/ipsec/ike/AbstractSessionStateMachine.java
@@ -13,9 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
-import static com.android.ike.ikev2.IkeManager.getIkeLog;
+import static android.net.ipsec.ike.IkeManager.getIkeLog;
 
 import android.os.Looper;
 import android.os.Message;
diff --git a/src/java/com/android/ike/ikev2/ChildSessionStateMachine.java b/src/java/com/android/internal/net/ipsec/ike/ChildSessionStateMachine.java
similarity index 95%
rename from src/java/com/android/ike/ikev2/ChildSessionStateMachine.java
rename to src/java/com/android/internal/net/ipsec/ike/ChildSessionStateMachine.java
index 0d591fe..889d8c1 100644
--- a/src/java/com/android/ike/ikev2/ChildSessionStateMachine.java
+++ b/src/java/com/android/internal/net/ipsec/ike/ChildSessionStateMachine.java
@@ -13,28 +13,29 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
-import static com.android.ike.ikev2.IkeManager.getIkeLog;
-import static com.android.ike.ikev2.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_DELETE_CHILD;
-import static com.android.ike.ikev2.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_REKEY_CHILD;
-import static com.android.ike.ikev2.SaProposal.DH_GROUP_NONE;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
-import static com.android.ike.ikev2.message.IkeHeader.EXCHANGE_TYPE_CREATE_CHILD_SA;
-import static com.android.ike.ikev2.message.IkeHeader.EXCHANGE_TYPE_IKE_AUTH;
-import static com.android.ike.ikev2.message.IkeHeader.EXCHANGE_TYPE_INFORMATIONAL;
-import static com.android.ike.ikev2.message.IkeHeader.ExchangeType;
-import static com.android.ike.ikev2.message.IkeNotifyPayload.NOTIFY_TYPE_REKEY_SA;
-import static com.android.ike.ikev2.message.IkeNotifyPayload.NOTIFY_TYPE_USE_TRANSPORT_MODE;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_CP;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_DELETE;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_KE;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_NONCE;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_NOTIFY;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_SA;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_TS_INITIATOR;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_TS_RESPONDER;
-import static com.android.ike.ikev2.message.IkePayload.PROTOCOL_ID_ESP;
+import static android.net.ipsec.ike.IkeManager.getIkeLog;
+import static android.net.ipsec.ike.SaProposal.DH_GROUP_NONE;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
+
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_DELETE_CHILD;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_REKEY_CHILD;
+import static com.android.internal.net.ipsec.ike.message.IkeHeader.EXCHANGE_TYPE_CREATE_CHILD_SA;
+import static com.android.internal.net.ipsec.ike.message.IkeHeader.EXCHANGE_TYPE_IKE_AUTH;
+import static com.android.internal.net.ipsec.ike.message.IkeHeader.EXCHANGE_TYPE_INFORMATIONAL;
+import static com.android.internal.net.ipsec.ike.message.IkeHeader.ExchangeType;
+import static com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NOTIFY_TYPE_REKEY_SA;
+import static com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NOTIFY_TYPE_USE_TRANSPORT_MODE;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_CP;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_DELETE;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_KE;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_NONCE;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_NOTIFY;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_SA;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_TS_INITIATOR;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_TS_RESPONDER;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PROTOCOL_ID_ESP;
 
 import android.annotation.IntDef;
 import android.annotation.Nullable;
@@ -44,39 +45,46 @@
 import android.net.IpSecManager.SecurityParameterIndex;
 import android.net.IpSecManager.SpiUnavailableException;
 import android.net.IpSecManager.UdpEncapsulationSocket;
+import android.net.ipsec.ike.ChildSaProposal;
+import android.net.ipsec.ike.ChildSessionCallback;
+import android.net.ipsec.ike.ChildSessionConfiguration;
+import android.net.ipsec.ike.ChildSessionOptions;
+import android.net.ipsec.ike.IkeTrafficSelector;
+import android.net.ipsec.ike.SaProposal;
+import android.net.ipsec.ike.TunnelModeChildSessionOptions;
+import android.net.ipsec.ike.exceptions.IkeException;
+import android.net.ipsec.ike.exceptions.IkeInternalException;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.os.Looper;
 import android.os.Message;
 import android.util.Pair;
 import android.util.SparseArray;
 
-import com.android.ike.ikev2.IkeLocalRequestScheduler.ChildLocalRequest;
-import com.android.ike.ikev2.IkeSessionStateMachine.IkeExchangeSubType;
-import com.android.ike.ikev2.SaRecord.ChildSaRecord;
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.exceptions.IkeException;
-import com.android.ike.ikev2.exceptions.IkeInternalException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidKeException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.exceptions.NoValidProposalChosenException;
-import com.android.ike.ikev2.exceptions.TemporaryFailureException;
-import com.android.ike.ikev2.exceptions.TsUnacceptableException;
-import com.android.ike.ikev2.message.IkeConfigPayload;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttribute;
-import com.android.ike.ikev2.message.IkeDeletePayload;
-import com.android.ike.ikev2.message.IkeKePayload;
-import com.android.ike.ikev2.message.IkeMessage;
-import com.android.ike.ikev2.message.IkeNoncePayload;
-import com.android.ike.ikev2.message.IkeNotifyPayload;
-import com.android.ike.ikev2.message.IkeNotifyPayload.NotifyType;
-import com.android.ike.ikev2.message.IkePayload;
-import com.android.ike.ikev2.message.IkeSaPayload;
-import com.android.ike.ikev2.message.IkeSaPayload.ChildProposal;
-import com.android.ike.ikev2.message.IkeSaPayload.DhGroupTransform;
-import com.android.ike.ikev2.message.IkeTsPayload;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.ChildLocalRequest;
+import com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IkeExchangeSubType;
+import com.android.internal.net.ipsec.ike.SaRecord.ChildSaRecord;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidKeException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.exceptions.NoValidProposalChosenException;
+import com.android.internal.net.ipsec.ike.exceptions.TemporaryFailureException;
+import com.android.internal.net.ipsec.ike.exceptions.TsUnacceptableException;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttribute;
+import com.android.internal.net.ipsec.ike.message.IkeDeletePayload;
+import com.android.internal.net.ipsec.ike.message.IkeKePayload;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeNoncePayload;
+import com.android.internal.net.ipsec.ike.message.IkeNotifyPayload;
+import com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NotifyType;
+import com.android.internal.net.ipsec.ike.message.IkePayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.ChildProposal;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.DhGroupTransform;
+import com.android.internal.net.ipsec.ike.message.IkeTsPayload;
 import com.android.internal.util.State;
 
 import java.io.IOException;
diff --git a/src/java/com/android/ike/ikev2/ChildSessionStateMachineFactory.java b/src/java/com/android/internal/net/ipsec/ike/ChildSessionStateMachineFactory.java
similarity index 93%
rename from src/java/com/android/ike/ikev2/ChildSessionStateMachineFactory.java
rename to src/java/com/android/internal/net/ipsec/ike/ChildSessionStateMachineFactory.java
index dc68e9f..5282d02 100644
--- a/src/java/com/android/ike/ikev2/ChildSessionStateMachineFactory.java
+++ b/src/java/com/android/internal/net/ipsec/ike/ChildSessionStateMachineFactory.java
@@ -14,14 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
 import android.content.Context;
 import android.net.IpSecManager;
+import android.net.ipsec.ike.ChildSessionCallback;
+import android.net.ipsec.ike.ChildSessionOptions;
 import android.os.Looper;
 
-import com.android.ike.ikev2.ChildSessionStateMachine.IChildSessionSmCallback;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.ChildSessionStateMachine.IChildSessionSmCallback;
 
 import java.util.concurrent.Executor;
 
diff --git a/src/java/com/android/ike/ikev2/IkeDhParams.java b/src/java/com/android/internal/net/ipsec/ike/IkeDhParams.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/IkeDhParams.java
rename to src/java/com/android/internal/net/ipsec/ike/IkeDhParams.java
index 604353a..44373fc 100644
--- a/src/java/com/android/ike/ikev2/IkeDhParams.java
+++ b/src/java/com/android/internal/net/ipsec/ike/IkeDhParams.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
 /** IkeDhParams contains Diffie-Hellman constants for IKEv2 supported DH Groups */
 public class IkeDhParams {
diff --git a/src/java/com/android/ike/ikev2/IkeEapAuthenticatorFactory.java b/src/java/com/android/internal/net/ipsec/ike/IkeEapAuthenticatorFactory.java
similarity index 87%
rename from src/java/com/android/ike/ikev2/IkeEapAuthenticatorFactory.java
rename to src/java/com/android/internal/net/ipsec/ike/IkeEapAuthenticatorFactory.java
index 75ddc16..b0d6f12 100644
--- a/src/java/com/android/ike/ikev2/IkeEapAuthenticatorFactory.java
+++ b/src/java/com/android/internal/net/ipsec/ike/IkeEapAuthenticatorFactory.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
 import android.content.Context;
+import android.net.eap.EapSessionConfig;
 import android.os.Looper;
 
-import com.android.ike.eap.EapAuthenticator;
-import com.android.ike.eap.EapSessionConfig;
-import com.android.ike.eap.IEapCallback;
+import com.android.internal.net.eap.EapAuthenticator;
+import com.android.internal.net.eap.IEapCallback;
 
 /** Package private factory for building EapAuthenticator instances. */
 final class IkeEapAuthenticatorFactory {
diff --git a/src/java/com/android/ike/ikev2/IkeLocalRequestScheduler.java b/src/java/com/android/internal/net/ipsec/ike/IkeLocalRequestScheduler.java
similarity index 95%
rename from src/java/com/android/ike/ikev2/IkeLocalRequestScheduler.java
rename to src/java/com/android/internal/net/ipsec/ike/IkeLocalRequestScheduler.java
index 5039f2a..b7bf870 100644
--- a/src/java/com/android/ike/ikev2/IkeLocalRequestScheduler.java
+++ b/src/java/com/android/internal/net/ipsec/ike/IkeLocalRequestScheduler.java
@@ -13,7 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
+
+import android.net.ipsec.ike.ChildSessionCallback;
+import android.net.ipsec.ike.ChildSessionOptions;
 
 import java.util.LinkedList;
 
diff --git a/src/java/com/android/ike/ikev2/IkeSessionStateMachine.java b/src/java/com/android/internal/net/ipsec/ike/IkeSessionStateMachine.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/IkeSessionStateMachine.java
rename to src/java/com/android/internal/net/ipsec/ike/IkeSessionStateMachine.java
index e9b0dc8..03c419d 100644
--- a/src/java/com/android/ike/ikev2/IkeSessionStateMachine.java
+++ b/src/java/com/android/internal/net/ipsec/ike/IkeSessionStateMachine.java
@@ -13,32 +13,44 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_CHILD_SA_NOT_FOUND;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_SYNTAX;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_NO_ADDITIONAL_SAS;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ErrorType;
-import static com.android.ike.ikev2.message.IkeHeader.EXCHANGE_TYPE_INFORMATIONAL;
-import static com.android.ike.ikev2.message.IkeMessage.DECODE_STATUS_OK;
-import static com.android.ike.ikev2.message.IkeMessage.DECODE_STATUS_PARTIAL;
-import static com.android.ike.ikev2.message.IkeMessage.DECODE_STATUS_PROTECTED_ERROR;
-import static com.android.ike.ikev2.message.IkeMessage.DECODE_STATUS_UNPROTECTED_ERROR;
-import static com.android.ike.ikev2.message.IkeNotifyPayload.NOTIFY_TYPE_IKEV2_FRAGMENTATION_SUPPORTED;
-import static com.android.ike.ikev2.message.IkeNotifyPayload.NOTIFY_TYPE_NAT_DETECTION_DESTINATION_IP;
-import static com.android.ike.ikev2.message.IkeNotifyPayload.NOTIFY_TYPE_NAT_DETECTION_SOURCE_IP;
-import static com.android.ike.ikev2.message.IkeNotifyPayload.NOTIFY_TYPE_REKEY_SA;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_CP;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_DELETE;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_NOTIFY;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_VENDOR;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_CHILD_SA_NOT_FOUND;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_SYNTAX;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_NO_ADDITIONAL_SAS;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ErrorType;
+
+import static com.android.internal.net.ipsec.ike.message.IkeHeader.EXCHANGE_TYPE_INFORMATIONAL;
+import static com.android.internal.net.ipsec.ike.message.IkeMessage.DECODE_STATUS_OK;
+import static com.android.internal.net.ipsec.ike.message.IkeMessage.DECODE_STATUS_PARTIAL;
+import static com.android.internal.net.ipsec.ike.message.IkeMessage.DECODE_STATUS_PROTECTED_ERROR;
+import static com.android.internal.net.ipsec.ike.message.IkeMessage.DECODE_STATUS_UNPROTECTED_ERROR;
+import static com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NOTIFY_TYPE_IKEV2_FRAGMENTATION_SUPPORTED;
+import static com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NOTIFY_TYPE_NAT_DETECTION_DESTINATION_IP;
+import static com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NOTIFY_TYPE_NAT_DETECTION_SOURCE_IP;
+import static com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NOTIFY_TYPE_REKEY_SA;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_CP;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_DELETE;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_NOTIFY;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_VENDOR;
 
 import android.annotation.IntDef;
 import android.content.Context;
 import android.net.IpSecManager;
 import android.net.IpSecManager.ResourceUnavailableException;
 import android.net.IpSecManager.UdpEncapsulationSocket;
+import android.net.ipsec.ike.ChildSessionCallback;
+import android.net.ipsec.ike.ChildSessionOptions;
+import android.net.ipsec.ike.IkeSaProposal;
+import android.net.ipsec.ike.IkeSessionCallback;
+import android.net.ipsec.ike.IkeSessionOptions;
+import android.net.ipsec.ike.IkeSessionOptions.IkeAuthConfig;
+import android.net.ipsec.ike.IkeSessionOptions.IkeAuthDigitalSignRemoteConfig;
+import android.net.ipsec.ike.IkeSessionOptions.IkeAuthPskConfig;
+import android.net.ipsec.ike.exceptions.IkeException;
+import android.net.ipsec.ike.exceptions.IkeInternalException;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.os.Handler;
 import android.os.Looper;
 import android.os.Message;
@@ -49,52 +61,46 @@
 import android.util.Pair;
 import android.util.SparseArray;
 
-import com.android.ike.eap.EapAuthenticator;
-import com.android.ike.eap.IEapCallback;
-import com.android.ike.ikev2.ChildSessionStateMachine.CreateChildSaHelper;
-import com.android.ike.ikev2.IkeLocalRequestScheduler.ChildLocalRequest;
-import com.android.ike.ikev2.IkeLocalRequestScheduler.LocalRequest;
-import com.android.ike.ikev2.IkeSessionOptions.IkeAuthConfig;
-import com.android.ike.ikev2.IkeSessionOptions.IkeAuthDigitalSignRemoteConfig;
-import com.android.ike.ikev2.IkeSessionOptions.IkeAuthPskConfig;
-import com.android.ike.ikev2.SaRecord.IkeSaRecord;
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.exceptions.IkeException;
-import com.android.ike.ikev2.exceptions.IkeInternalException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.exceptions.NoValidProposalChosenException;
-import com.android.ike.ikev2.message.IkeAuthDigitalSignPayload;
-import com.android.ike.ikev2.message.IkeAuthPayload;
-import com.android.ike.ikev2.message.IkeAuthPskPayload;
-import com.android.ike.ikev2.message.IkeCertPayload;
-import com.android.ike.ikev2.message.IkeCertX509CertPayload;
-import com.android.ike.ikev2.message.IkeDeletePayload;
-import com.android.ike.ikev2.message.IkeEapPayload;
-import com.android.ike.ikev2.message.IkeHeader;
-import com.android.ike.ikev2.message.IkeHeader.ExchangeType;
-import com.android.ike.ikev2.message.IkeIdPayload;
-import com.android.ike.ikev2.message.IkeInformationalPayload;
-import com.android.ike.ikev2.message.IkeKePayload;
-import com.android.ike.ikev2.message.IkeMessage;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResult;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultError;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultOk;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultPartial;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultProtectedError;
-import com.android.ike.ikev2.message.IkeNoncePayload;
-import com.android.ike.ikev2.message.IkeNotifyPayload;
-import com.android.ike.ikev2.message.IkePayload;
-import com.android.ike.ikev2.message.IkeSaPayload;
-import com.android.ike.ikev2.message.IkeSaPayload.DhGroupTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IkeProposal;
-import com.android.ike.ikev2.message.IkeTsPayload;
-import com.android.ike.ikev2.utils.Retransmitter;
 import com.android.internal.annotations.GuardedBy;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.eap.EapAuthenticator;
+import com.android.internal.net.eap.IEapCallback;
+import com.android.internal.net.ipsec.ike.ChildSessionStateMachine.CreateChildSaHelper;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.ChildLocalRequest;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.LocalRequest;
+import com.android.internal.net.ipsec.ike.SaRecord.IkeSaRecord;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.exceptions.NoValidProposalChosenException;
+import com.android.internal.net.ipsec.ike.message.IkeAuthDigitalSignPayload;
+import com.android.internal.net.ipsec.ike.message.IkeAuthPayload;
+import com.android.internal.net.ipsec.ike.message.IkeAuthPskPayload;
+import com.android.internal.net.ipsec.ike.message.IkeCertPayload;
+import com.android.internal.net.ipsec.ike.message.IkeCertX509CertPayload;
+import com.android.internal.net.ipsec.ike.message.IkeDeletePayload;
+import com.android.internal.net.ipsec.ike.message.IkeEapPayload;
+import com.android.internal.net.ipsec.ike.message.IkeHeader;
+import com.android.internal.net.ipsec.ike.message.IkeHeader.ExchangeType;
+import com.android.internal.net.ipsec.ike.message.IkeIdPayload;
+import com.android.internal.net.ipsec.ike.message.IkeInformationalPayload;
+import com.android.internal.net.ipsec.ike.message.IkeKePayload;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResult;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultError;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultOk;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultPartial;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultProtectedError;
+import com.android.internal.net.ipsec.ike.message.IkeNoncePayload;
+import com.android.internal.net.ipsec.ike.message.IkeNotifyPayload;
+import com.android.internal.net.ipsec.ike.message.IkePayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.DhGroupTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IkeProposal;
+import com.android.internal.net.ipsec.ike.message.IkeTsPayload;
+import com.android.internal.net.ipsec.ike.utils.Retransmitter;
 import com.android.internal.util.State;
 
 import dalvik.system.CloseGuard;
diff --git a/src/java/com/android/ike/ikev2/IkeSocket.java b/src/java/com/android/internal/net/ipsec/ike/IkeSocket.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/IkeSocket.java
rename to src/java/com/android/internal/net/ipsec/ike/IkeSocket.java
index d973119..2f853c7 100644
--- a/src/java/com/android/ike/ikev2/IkeSocket.java
+++ b/src/java/com/android/internal/net/ipsec/ike/IkeSocket.java
@@ -14,24 +14,23 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
+import static android.net.ipsec.ike.IkeManager.getIkeLog;
 import static android.system.OsConstants.F_SETFL;
 import static android.system.OsConstants.SOCK_DGRAM;
 import static android.system.OsConstants.SOCK_NONBLOCK;
 
-import static com.android.ike.ikev2.IkeManager.getIkeLog;
-
 import android.net.IpSecManager.UdpEncapsulationSocket;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.os.Handler;
 import android.system.ErrnoException;
 import android.system.Os;
 import android.util.LongSparseArray;
 
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.message.IkeHeader;
-import com.android.ike.ikev2.utils.PacketReader;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.message.IkeHeader;
+import com.android.internal.net.ipsec.ike.utils.PacketReader;
 
 import java.io.FileDescriptor;
 import java.io.IOException;
diff --git a/src/java/com/android/ike/ikev2/SaRecord.java b/src/java/com/android/internal/net/ipsec/ike/SaRecord.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/SaRecord.java
rename to src/java/com/android/internal/net/ipsec/ike/SaRecord.java
index e86b5c5..035af17 100644
--- a/src/java/com/android/ike/ikev2/SaRecord.java
+++ b/src/java/com/android/internal/net/ipsec/ike/SaRecord.java
@@ -13,9 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
-import static com.android.ike.ikev2.IkeManager.getIkeLog;
+import static android.net.ipsec.ike.IkeManager.getIkeLog;
 
 import android.annotation.Nullable;
 import android.content.Context;
@@ -26,18 +26,18 @@
 import android.net.IpSecManager.UdpEncapsulationSocket;
 import android.net.IpSecTransform;
 
-import com.android.ike.ikev2.IkeLocalRequestScheduler.ChildLocalRequest;
-import com.android.ike.ikev2.IkeLocalRequestScheduler.LocalRequest;
-import com.android.ike.ikev2.IkeSessionStateMachine.IkeSecurityParameterIndex;
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.message.IkeKePayload;
-import com.android.ike.ikev2.message.IkeMessage;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultPartial;
-import com.android.ike.ikev2.message.IkeNoncePayload;
-import com.android.ike.ikev2.message.IkePayload;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.ChildLocalRequest;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.LocalRequest;
+import com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IkeSecurityParameterIndex;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.message.IkeKePayload;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultPartial;
+import com.android.internal.net.ipsec.ike.message.IkeNoncePayload;
+import com.android.internal.net.ipsec.ike.message.IkePayload;
 
 import dalvik.system.CloseGuard;
 
diff --git a/src/java/com/android/ike/ikev2/crypto/IkeCipher.java b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeCipher.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/crypto/IkeCipher.java
rename to src/java/com/android/internal/net/ipsec/ike/crypto/IkeCipher.java
index 2543e01..33a8b37 100644
--- a/src/java/com/android/ike/ikev2/crypto/IkeCipher.java
+++ b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeCipher.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
 import android.net.IpSecAlgorithm;
+import android.net.ipsec.ike.SaProposal;
 
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
 
 import java.security.NoSuchAlgorithmException;
 import java.security.Provider;
diff --git a/src/java/com/android/ike/ikev2/crypto/IkeCombinedModeCipher.java b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeCombinedModeCipher.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/crypto/IkeCombinedModeCipher.java
rename to src/java/com/android/internal/net/ipsec/ike/crypto/IkeCombinedModeCipher.java
index ad3edea..4bb1d34 100644
--- a/src/java/com/android/ike/ikev2/crypto/IkeCombinedModeCipher.java
+++ b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeCombinedModeCipher.java
@@ -14,11 +14,10 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
 import android.net.IpSecAlgorithm;
-
-import com.android.ike.ikev2.SaProposal;
+import android.net.ipsec.ike.SaProposal;
 
 import java.nio.ByteBuffer;
 import java.security.InvalidAlgorithmParameterException;
diff --git a/src/java/com/android/ike/ikev2/crypto/IkeCrypto.java b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeCrypto.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/crypto/IkeCrypto.java
rename to src/java/com/android/internal/net/ipsec/ike/crypto/IkeCrypto.java
index abc9d39..65a676b 100644
--- a/src/java/com/android/ike/ikev2/crypto/IkeCrypto.java
+++ b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeCrypto.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
 /**
  * IkeCrypto is an abstract class that represents common information for all negotiated
diff --git a/src/java/com/android/ike/ikev2/crypto/IkeMac.java b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMac.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/crypto/IkeMac.java
rename to src/java/com/android/internal/net/ipsec/ike/crypto/IkeMac.java
index 028f746..ee45cc9 100644
--- a/src/java/com/android/ike/ikev2/crypto/IkeMac.java
+++ b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMac.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
-import com.android.ike.crypto.KeyGenerationUtils.ByteSigner;
+import com.android.internal.net.crypto.KeyGenerationUtils.ByteSigner;
 
 import java.nio.ByteBuffer;
 import java.security.InvalidKeyException;
diff --git a/src/java/com/android/ike/ikev2/crypto/IkeMacIntegrity.java b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacIntegrity.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/crypto/IkeMacIntegrity.java
rename to src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacIntegrity.java
index 179b264..8f2173f 100644
--- a/src/java/com/android/ike/ikev2/crypto/IkeMacIntegrity.java
+++ b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacIntegrity.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
 import android.net.IpSecAlgorithm;
+import android.net.ipsec.ike.SaProposal;
 
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
 
 import java.security.Provider;
 import java.util.Arrays;
diff --git a/src/java/com/android/ike/ikev2/crypto/IkeMacPrf.java b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacPrf.java
similarity index 95%
rename from src/java/com/android/ike/ikev2/crypto/IkeMacPrf.java
rename to src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacPrf.java
index b25ba34..1d81aae 100644
--- a/src/java/com/android/ike/ikev2/crypto/IkeMacPrf.java
+++ b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacPrf.java
@@ -14,11 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
-import com.android.ike.crypto.KeyGenerationUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
+import android.net.ipsec.ike.SaProposal;
+
+import com.android.internal.net.crypto.KeyGenerationUtils;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
 
 import java.nio.ByteBuffer;
 import java.security.Provider;
diff --git a/src/java/com/android/ike/ikev2/crypto/IkeNormalModeCipher.java b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeNormalModeCipher.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/crypto/IkeNormalModeCipher.java
rename to src/java/com/android/internal/net/ipsec/ike/crypto/IkeNormalModeCipher.java
index 2e6ac51..e4904d4 100644
--- a/src/java/com/android/ike/ikev2/crypto/IkeNormalModeCipher.java
+++ b/src/java/com/android/internal/net/ipsec/ike/crypto/IkeNormalModeCipher.java
@@ -14,11 +14,10 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
 import android.net.IpSecAlgorithm;
-
-import com.android.ike.ikev2.SaProposal;
+import android.net.ipsec.ike.SaProposal;
 
 import java.nio.ByteBuffer;
 import java.security.InvalidAlgorithmParameterException;
diff --git a/src/java/com/android/ike/ikev2/exceptions/AuthenticationFailedException.java b/src/java/com/android/internal/net/ipsec/ike/exceptions/AuthenticationFailedException.java
similarity index 89%
rename from src/java/com/android/ike/ikev2/exceptions/AuthenticationFailedException.java
rename to src/java/com/android/internal/net/ipsec/ike/exceptions/AuthenticationFailedException.java
index 1c63a61..e587364 100644
--- a/src/java/com/android/ike/ikev2/exceptions/AuthenticationFailedException.java
+++ b/src/java/com/android/internal/net/ipsec/ike/exceptions/AuthenticationFailedException.java
@@ -13,7 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package com.android.internal.net.ipsec.ike.exceptions;
+
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_AUTHENTICATION_FAILED;
+
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
 /**
  * This exception is thrown when IKE authentication fails.
diff --git a/src/java/com/android/ike/ikev2/exceptions/InvalidKeException.java b/src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidKeException.java
similarity index 90%
rename from src/java/com/android/ike/ikev2/exceptions/InvalidKeException.java
rename to src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidKeException.java
index 790400f..ae2330c 100644
--- a/src/java/com/android/ike/ikev2/exceptions/InvalidKeException.java
+++ b/src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidKeException.java
@@ -13,7 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package com.android.internal.net.ipsec.ike.exceptions;
+
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_KE_PAYLOAD;
+
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
 /**
  * This exception is thrown when the received KE payload in the request is different from accepted
diff --git a/src/java/com/android/ike/ikev2/exceptions/InvalidMajorVersionException.java b/src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidMajorVersionException.java
similarity index 89%
rename from src/java/com/android/ike/ikev2/exceptions/InvalidMajorVersionException.java
rename to src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidMajorVersionException.java
index 5ee5960..dc0357e 100644
--- a/src/java/com/android/ike/ikev2/exceptions/InvalidMajorVersionException.java
+++ b/src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidMajorVersionException.java
@@ -13,7 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package com.android.internal.net.ipsec.ike.exceptions;
+
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_MAJOR_VERSION;
+
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
 /**
  * This exception is thrown when major version is higher than 2.
diff --git a/src/java/com/android/ike/ikev2/exceptions/InvalidMessageIdException.java b/src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidMessageIdException.java
similarity index 90%
rename from src/java/com/android/ike/ikev2/exceptions/InvalidMessageIdException.java
rename to src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidMessageIdException.java
index d7aa530..9c5cffa 100644
--- a/src/java/com/android/ike/ikev2/exceptions/InvalidMessageIdException.java
+++ b/src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidMessageIdException.java
@@ -13,7 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package com.android.internal.net.ipsec.ike.exceptions;
+
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_MESSAGE_ID;
+
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
 /**
  * This exception is thrown when the message ID is out of window size.
diff --git a/src/java/com/android/ike/ikev2/exceptions/InvalidSyntaxException.java b/src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidSyntaxException.java
similarity index 94%
rename from src/java/com/android/ike/ikev2/exceptions/InvalidSyntaxException.java
rename to src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidSyntaxException.java
index d392bc3..fd73f2f 100644
--- a/src/java/com/android/ike/ikev2/exceptions/InvalidSyntaxException.java
+++ b/src/java/com/android/internal/net/ipsec/ike/exceptions/InvalidSyntaxException.java
@@ -13,7 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package com.android.internal.net.ipsec.ike.exceptions;
+
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
 /**
  * This exception is thrown if any IKE message field is invalid.
diff --git a/src/java/com/android/ike/ikev2/exceptions/NoValidProposalChosenException.java b/src/java/com/android/internal/net/ipsec/ike/exceptions/NoValidProposalChosenException.java
similarity index 90%
rename from src/java/com/android/ike/ikev2/exceptions/NoValidProposalChosenException.java
rename to src/java/com/android/internal/net/ipsec/ike/exceptions/NoValidProposalChosenException.java
index 9f8e695..4514c65 100644
--- a/src/java/com/android/ike/ikev2/exceptions/NoValidProposalChosenException.java
+++ b/src/java/com/android/internal/net/ipsec/ike/exceptions/NoValidProposalChosenException.java
@@ -13,7 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package com.android.internal.net.ipsec.ike.exceptions;
+
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_NO_PROPOSAL_CHOSEN;
+
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
 /**
  * This exception is thrown if either none of SA proposals from SA initiator is acceptable or the
diff --git a/src/java/com/android/ike/ikev2/exceptions/TemporaryFailureException.java b/src/java/com/android/internal/net/ipsec/ike/exceptions/TemporaryFailureException.java
similarity index 88%
rename from src/java/com/android/ike/ikev2/exceptions/TemporaryFailureException.java
rename to src/java/com/android/internal/net/ipsec/ike/exceptions/TemporaryFailureException.java
index 2e8ad83..57ef8cd 100644
--- a/src/java/com/android/ike/ikev2/exceptions/TemporaryFailureException.java
+++ b/src/java/com/android/internal/net/ipsec/ike/exceptions/TemporaryFailureException.java
@@ -13,7 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package com.android.internal.net.ipsec.ike.exceptions;
+
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
+
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
 /**
  * This exception is thrown when local node or remote peer receives a request that cannot be
diff --git a/src/java/com/android/ike/ikev2/exceptions/TsUnacceptableException.java b/src/java/com/android/internal/net/ipsec/ike/exceptions/TsUnacceptableException.java
similarity index 88%
rename from src/java/com/android/ike/ikev2/exceptions/TsUnacceptableException.java
rename to src/java/com/android/internal/net/ipsec/ike/exceptions/TsUnacceptableException.java
index b19c8ed..ef1152a 100644
--- a/src/java/com/android/ike/ikev2/exceptions/TsUnacceptableException.java
+++ b/src/java/com/android/internal/net/ipsec/ike/exceptions/TsUnacceptableException.java
@@ -13,7 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package com.android.internal.net.ipsec.ike.exceptions;
+
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_TS_UNACCEPTABLE;
+
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
 /**
  * This exception is thrown if the remote sever proposed unacceptable TS.
diff --git a/src/java/com/android/ike/ikev2/exceptions/UnrecognizedIkeProtocolException.java b/src/java/com/android/internal/net/ipsec/ike/exceptions/UnrecognizedIkeProtocolException.java
similarity index 92%
rename from src/java/com/android/ike/ikev2/exceptions/UnrecognizedIkeProtocolException.java
rename to src/java/com/android/internal/net/ipsec/ike/exceptions/UnrecognizedIkeProtocolException.java
index 95bd00d..3d1d508 100644
--- a/src/java/com/android/ike/ikev2/exceptions/UnrecognizedIkeProtocolException.java
+++ b/src/java/com/android/internal/net/ipsec/ike/exceptions/UnrecognizedIkeProtocolException.java
@@ -13,7 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package com.android.internal.net.ipsec.ike.exceptions;
+
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
 /**
  * This exception represents an unrecognized error notification in a received response.
diff --git a/src/java/com/android/ike/ikev2/exceptions/UnsupportedCriticalPayloadException.java b/src/java/com/android/internal/net/ipsec/ike/exceptions/UnsupportedCriticalPayloadException.java
similarity index 91%
rename from src/java/com/android/ike/ikev2/exceptions/UnsupportedCriticalPayloadException.java
rename to src/java/com/android/internal/net/ipsec/ike/exceptions/UnsupportedCriticalPayloadException.java
index dab8c6d..ab1f75e 100644
--- a/src/java/com/android/ike/ikev2/exceptions/UnsupportedCriticalPayloadException.java
+++ b/src/java/com/android/internal/net/ipsec/ike/exceptions/UnsupportedCriticalPayloadException.java
@@ -13,7 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.exceptions;
+package com.android.internal.net.ipsec.ike.exceptions;
+
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_UNSUPPORTED_CRITICAL_PAYLOAD;
+
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/src/java/com/android/ike/ikev2/message/IkeAuthDigitalSignPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthDigitalSignPayload.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/message/IkeAuthDigitalSignPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeAuthDigitalSignPayload.java
index 0f648d9..a4803af 100644
--- a/src/java/com/android/ike/ikev2/message/IkeAuthDigitalSignPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthDigitalSignPayload.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import android.annotation.StringDef;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.message.IkeAuthPayload.AuthMethod;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.message.IkeAuthPayload.AuthMethod;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/src/java/com/android/ike/ikev2/message/IkeAuthPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPayload.java
similarity index 94%
rename from src/java/com/android/ike/ikev2/message/IkeAuthPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPayload.java
index d6cc7a1..53a3f65 100644
--- a/src/java/com/android/ike/ikev2/message/IkeAuthPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPayload.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import android.annotation.IntDef;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/src/java/com/android/ike/ikev2/message/IkeAuthPskPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPskPayload.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/message/IkeAuthPskPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPskPayload.java
index 0e36610..93bef17 100644
--- a/src/java/com/android/ike/ikev2/message/IkeAuthPskPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPskPayload.java
@@ -14,10 +14,10 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
 
 import java.nio.ByteBuffer;
 import java.util.Arrays;
diff --git a/src/java/com/android/ike/ikev2/message/IkeCertPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeCertPayload.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/message/IkeCertPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeCertPayload.java
index cf14ad4..9227dda 100644
--- a/src/java/com/android/ike/ikev2/message/IkeCertPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeCertPayload.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import android.annotation.IntDef;
 import android.annotation.Nullable;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
 
 import java.io.IOException;
 import java.lang.annotation.Retention;
diff --git a/src/java/com/android/ike/ikev2/message/IkeCertX509CertPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeCertX509CertPayload.java
similarity index 94%
rename from src/java/com/android/ike/ikev2/message/IkeCertX509CertPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeCertX509CertPayload.java
index a40d486..1804b9b 100644
--- a/src/java/com/android/ike/ikev2/message/IkeCertX509CertPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeCertX509CertPayload.java
@@ -14,10 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
+
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
 
 import java.io.ByteArrayInputStream;
 import java.nio.ByteBuffer;
diff --git a/src/java/com/android/ike/ikev2/message/IkeConfigPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeConfigPayload.java
similarity index 99%
rename from src/java/com/android/ike/ikev2/message/IkeConfigPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeConfigPayload.java
index e8811ae..ddd1b3e 100644
--- a/src/java/com/android/ike/ikev2/message/IkeConfigPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeConfigPayload.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import android.annotation.IntDef;
 import android.net.LinkAddress;
+import android.net.ipsec.ike.IkeManager;
 
-import com.android.ike.ikev2.IkeManager;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/src/java/com/android/ike/ikev2/message/IkeDeletePayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeDeletePayload.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/message/IkeDeletePayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeDeletePayload.java
index 59d32cc..f629f50 100644
--- a/src/java/com/android/ike/ikev2/message/IkeDeletePayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeDeletePayload.java
@@ -14,10 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
+
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/ikev2/message/IkeEapPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeEapPayload.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/message/IkeEapPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeEapPayload.java
index f79faa0..5dc1497 100644
--- a/src/java/com/android/ike/ikev2/message/IkeEapPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeEapPayload.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import com.android.ike.eap.message.EapMessage;
+import com.android.internal.net.eap.message.EapMessage;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/ikev2/message/IkeEncryptedPayloadBody.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeEncryptedPayloadBody.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/message/IkeEncryptedPayloadBody.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeEncryptedPayloadBody.java
index 00460b0..77cc9f4 100644
--- a/src/java/com/android/ike/ikev2/message/IkeEncryptedPayloadBody.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeEncryptedPayloadBody.java
@@ -14,14 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeCombinedModeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.crypto.IkeNormalModeCipher;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
+
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeCombinedModeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.crypto.IkeNormalModeCipher;
 
 import java.nio.ByteBuffer;
 import java.security.GeneralSecurityException;
diff --git a/src/java/com/android/ike/ikev2/message/IkeHeader.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeHeader.java
similarity index 95%
rename from src/java/com/android/ike/ikev2/message/IkeHeader.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeHeader.java
index 1fb7e3c..7aa4fbc 100644
--- a/src/java/com/android/ike/ikev2/message/IkeHeader.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeHeader.java
@@ -14,17 +14,17 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.ikev2.message.IkePayload.PayloadType;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PayloadType;
 
 import android.annotation.IntDef;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.util.SparseArray;
 
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidMajorVersionException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidMajorVersionException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/src/java/com/android/ike/ikev2/message/IkeIdPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeIdPayload.java
similarity index 90%
rename from src/java/com/android/ike/ikev2/message/IkeIdPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeIdPayload.java
index adb39c2..12cc14a 100644
--- a/src/java/com/android/ike/ikev2/message/IkeIdPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeIdPayload.java
@@ -14,17 +14,18 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import com.android.ike.ikev2.IkeFqdnIdentification;
-import com.android.ike.ikev2.IkeIdentification;
-import com.android.ike.ikev2.IkeIpv4AddrIdentification;
-import com.android.ike.ikev2.IkeIpv6AddrIdentification;
-import com.android.ike.ikev2.IkeKeyIdIdentification;
-import com.android.ike.ikev2.IkeRfc822AddrIdentification;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
+import android.net.ipsec.ike.IkeFqdnIdentification;
+import android.net.ipsec.ike.IkeIdentification;
+import android.net.ipsec.ike.IkeIpv4AddrIdentification;
+import android.net.ipsec.ike.IkeIpv6AddrIdentification;
+import android.net.ipsec.ike.IkeKeyIdIdentification;
+import android.net.ipsec.ike.IkeRfc822AddrIdentification;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
+
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/ikev2/message/IkeInformationalPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeInformationalPayload.java
similarity index 94%
rename from src/java/com/android/ike/ikev2/message/IkeInformationalPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeInformationalPayload.java
index 5717471..606c38f 100644
--- a/src/java/com/android/ike/ikev2/message/IkeInformationalPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeInformationalPayload.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 /**
  * IkeInformationalPayload abstracts all Payloads sent in INFORMATIONAL exchanges.
diff --git a/src/java/com/android/ike/ikev2/message/IkeKePayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeKePayload.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/message/IkeKePayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeKePayload.java
index 35440a2..7389bf8 100644
--- a/src/java/com/android/ike/ikev2/message/IkeKePayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeKePayload.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import android.annotation.Nullable;
+import android.net.ipsec.ike.SaProposal;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
-import com.android.ike.ikev2.IkeDhParams;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.utils.BigIntegerUtils;
+import com.android.internal.net.ipsec.ike.IkeDhParams;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.utils.BigIntegerUtils;
 
 import java.math.BigInteger;
 import java.nio.ByteBuffer;
diff --git a/src/java/com/android/ike/ikev2/message/IkeMessage.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeMessage.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/message/IkeMessage.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeMessage.java
index b6a149e..27fb965 100644
--- a/src/java/com/android/ike/ikev2/message/IkeMessage.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeMessage.java
@@ -14,25 +14,26 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.ikev2.IkeManager.getIkeLog;
-import static com.android.ike.ikev2.message.IkePayload.PayloadType;
+import static android.net.ipsec.ike.IkeManager.getIkeLog;
+
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PayloadType;
 
 import android.annotation.IntDef;
 import android.annotation.Nullable;
+import android.net.ipsec.ike.exceptions.IkeException;
+import android.net.ipsec.ike.exceptions.IkeInternalException;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.util.Pair;
 
-import com.android.ike.ikev2.SaRecord.IkeSaRecord;
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.exceptions.IkeException;
-import com.android.ike.ikev2.exceptions.IkeInternalException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidMessageIdException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.exceptions.UnsupportedCriticalPayloadException;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.SaRecord.IkeSaRecord;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidMessageIdException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.exceptions.UnsupportedCriticalPayloadException;
 import com.android.org.bouncycastle.jce.provider.BouncyCastleProvider;
 
 import java.lang.annotation.Retention;
diff --git a/src/java/com/android/ike/ikev2/message/IkeNoncePayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeNoncePayload.java
similarity index 94%
rename from src/java/com/android/ike/ikev2/message/IkeNoncePayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeNoncePayload.java
index 3c24770..70fc824 100644
--- a/src/java/com/android/ike/ikev2/message/IkeNoncePayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeNoncePayload.java
@@ -14,10 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
+
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import java.nio.ByteBuffer;
 import java.security.SecureRandom;
diff --git a/src/java/com/android/ike/ikev2/message/IkeNotifyPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeNotifyPayload.java
similarity index 90%
rename from src/java/com/android/ike/ikev2/message/IkeNotifyPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeNotifyPayload.java
index 830e862..ce9529e 100644
--- a/src/java/com/android/ike/ikev2/message/IkeNotifyPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeNotifyPayload.java
@@ -14,40 +14,40 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_AUTHENTICATION_FAILED;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_CHILD_SA_NOT_FOUND;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_FAILED_CP_REQUIRED;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INTERNAL_ADDRESS_FAILURE;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_IKE_SPI;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_KE_PAYLOAD;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_MAJOR_VERSION;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_MESSAGE_ID;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_SELECTORS;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_SYNTAX;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_NO_ADDITIONAL_SAS;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_NO_PROPOSAL_CHOSEN;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_SINGLE_PAIR_REQUIRED;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_TS_UNACCEPTABLE;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_UNSUPPORTED_CRITICAL_PAYLOAD;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_AUTHENTICATION_FAILED;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_CHILD_SA_NOT_FOUND;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_FAILED_CP_REQUIRED;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INTERNAL_ADDRESS_FAILURE;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_IKE_SPI;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_KE_PAYLOAD;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_MAJOR_VERSION;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_MESSAGE_ID;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_SELECTORS;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_SYNTAX;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_NO_ADDITIONAL_SAS;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_NO_PROPOSAL_CHOSEN;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_SINGLE_PAIR_REQUIRED;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_TS_UNACCEPTABLE;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_UNSUPPORTED_CRITICAL_PAYLOAD;
 
 import android.annotation.IntDef;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.util.ArraySet;
 import android.util.SparseArray;
 
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidKeException;
-import com.android.ike.ikev2.exceptions.InvalidMajorVersionException;
-import com.android.ike.ikev2.exceptions.InvalidMessageIdException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.exceptions.NoValidProposalChosenException;
-import com.android.ike.ikev2.exceptions.TemporaryFailureException;
-import com.android.ike.ikev2.exceptions.TsUnacceptableException;
-import com.android.ike.ikev2.exceptions.UnrecognizedIkeProtocolException;
-import com.android.ike.ikev2.exceptions.UnsupportedCriticalPayloadException;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidKeException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidMajorVersionException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidMessageIdException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.exceptions.NoValidProposalChosenException;
+import com.android.internal.net.ipsec.ike.exceptions.TemporaryFailureException;
+import com.android.internal.net.ipsec.ike.exceptions.TsUnacceptableException;
+import com.android.internal.net.ipsec.ike.exceptions.UnrecognizedIkeProtocolException;
+import com.android.internal.net.ipsec.ike.exceptions.UnsupportedCriticalPayloadException;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/src/java/com/android/ike/ikev2/message/IkePayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkePayload.java
similarity index 99%
rename from src/java/com/android/ike/ikev2/message/IkePayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkePayload.java
index 68aa31d..9ea54c1 100644
--- a/src/java/com/android/ike/ikev2/message/IkePayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkePayload.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import android.annotation.IntDef;
 import android.util.SparseArray;
diff --git a/src/java/com/android/ike/ikev2/message/IkePayloadFactory.java b/src/java/com/android/internal/net/ipsec/ike/message/IkePayloadFactory.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/message/IkePayloadFactory.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkePayloadFactory.java
index 94cf409..2f191d4 100644
--- a/src/java/com/android/ike/ikev2/message/IkePayloadFactory.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkePayloadFactory.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import android.annotation.Nullable;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.util.Pair;
 
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import java.nio.ByteBuffer;
 import java.security.GeneralSecurityException;
diff --git a/src/java/com/android/ike/ikev2/message/IkeSaPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeSaPayload.java
similarity index 98%
rename from src/java/com/android/ike/ikev2/message/IkeSaPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeSaPayload.java
index edbbd7d..3cce625 100644
--- a/src/java/com/android/ike/ikev2/message/IkeSaPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeSaPayload.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.ikev2.IkeManager.getIkeLog;
-import static com.android.ike.ikev2.SaProposal.DhGroup;
-import static com.android.ike.ikev2.SaProposal.EncryptionAlgorithm;
-import static com.android.ike.ikev2.SaProposal.IntegrityAlgorithm;
-import static com.android.ike.ikev2.SaProposal.PseudorandomFunction;
+import static android.net.ipsec.ike.IkeManager.getIkeLog;
+import static android.net.ipsec.ike.SaProposal.DhGroup;
+import static android.net.ipsec.ike.SaProposal.EncryptionAlgorithm;
+import static android.net.ipsec.ike.SaProposal.IntegrityAlgorithm;
+import static android.net.ipsec.ike.SaProposal.PseudorandomFunction;
 
 import android.annotation.IntDef;
 import android.annotation.NonNull;
@@ -28,17 +28,17 @@
 import android.net.IpSecManager.ResourceUnavailableException;
 import android.net.IpSecManager.SecurityParameterIndex;
 import android.net.IpSecManager.SpiUnavailableException;
+import android.net.ipsec.ike.ChildSaProposal;
+import android.net.ipsec.ike.IkeSaProposal;
+import android.net.ipsec.ike.SaProposal;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.util.ArraySet;
 import android.util.Pair;
 
-import com.android.ike.ikev2.ChildSaProposal;
-import com.android.ike.ikev2.IkeSaProposal;
-import com.android.ike.ikev2.IkeSessionStateMachine.IkeSecurityParameterIndex;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.exceptions.NoValidProposalChosenException;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IkeSecurityParameterIndex;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.exceptions.NoValidProposalChosenException;
 
 import java.io.IOException;
 import java.lang.annotation.Retention;
diff --git a/src/java/com/android/ike/ikev2/message/IkeSkPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeSkPayload.java
similarity index 96%
rename from src/java/com/android/ike/ikev2/message/IkeSkPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeSkPayload.java
index f918739..0c2d1ff 100644
--- a/src/java/com/android/ike/ikev2/message/IkeSkPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeSkPayload.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import android.annotation.Nullable;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
 
 import java.nio.ByteBuffer;
 import java.security.GeneralSecurityException;
diff --git a/src/java/com/android/ike/ikev2/message/IkeSkfPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeSkfPayload.java
similarity index 94%
rename from src/java/com/android/ike/ikev2/message/IkeSkfPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeSkfPayload.java
index c04dd1b..6faea12 100644
--- a/src/java/com/android/ike/ikev2/message/IkeSkfPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeSkfPayload.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import android.annotation.Nullable;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import java.nio.ByteBuffer;
 import java.security.GeneralSecurityException;
diff --git a/src/java/com/android/ike/ikev2/message/IkeTsPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeTsPayload.java
similarity index 95%
rename from src/java/com/android/ike/ikev2/message/IkeTsPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeTsPayload.java
index af4c2ab..207bdc3 100644
--- a/src/java/com/android/ike/ikev2/message/IkeTsPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeTsPayload.java
@@ -14,11 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import com.android.ike.ikev2.IkeTrafficSelector;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
+import android.net.ipsec.ike.IkeTrafficSelector;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
+
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/ikev2/message/IkeUnsupportedPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeUnsupportedPayload.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/message/IkeUnsupportedPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeUnsupportedPayload.java
index 28b3af9..ecfe1e9 100644
--- a/src/java/com/android/ike/ikev2/message/IkeUnsupportedPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeUnsupportedPayload.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/ikev2/message/IkeVendorPayload.java b/src/java/com/android/internal/net/ipsec/ike/message/IkeVendorPayload.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/message/IkeVendorPayload.java
rename to src/java/com/android/internal/net/ipsec/ike/message/IkeVendorPayload.java
index 75cf379..d346407 100644
--- a/src/java/com/android/ike/ikev2/message/IkeVendorPayload.java
+++ b/src/java/com/android/internal/net/ipsec/ike/message/IkeVendorPayload.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/java/com/android/ike/ikev2/utils/FdEventsReader.java b/src/java/com/android/internal/net/ipsec/ike/utils/FdEventsReader.java
similarity index 99%
rename from src/java/com/android/ike/ikev2/utils/FdEventsReader.java
rename to src/java/com/android/internal/net/ipsec/ike/utils/FdEventsReader.java
index 8fa987a..65f9ced 100644
--- a/src/java/com/android/ike/ikev2/utils/FdEventsReader.java
+++ b/src/java/com/android/internal/net/ipsec/ike/utils/FdEventsReader.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.utils;
+package com.android.internal.net.ipsec.ike.utils;
 
 import static android.os.MessageQueue.OnFileDescriptorEventListener.EVENT_ERROR;
 import static android.os.MessageQueue.OnFileDescriptorEventListener.EVENT_INPUT;
diff --git a/src/java/com/android/ike/ikev2/utils/PacketReader.java b/src/java/com/android/internal/net/ipsec/ike/utils/PacketReader.java
similarity index 97%
rename from src/java/com/android/ike/ikev2/utils/PacketReader.java
rename to src/java/com/android/internal/net/ipsec/ike/utils/PacketReader.java
index d0c5bcf..cd6b98d 100644
--- a/src/java/com/android/ike/ikev2/utils/PacketReader.java
+++ b/src/java/com/android/internal/net/ipsec/ike/utils/PacketReader.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.utils;
+package com.android.internal.net.ipsec.ike.utils;
 
 import static java.lang.Math.max;
 
diff --git a/src/java/com/android/ike/ikev2/utils/Retransmitter.java b/src/java/com/android/internal/net/ipsec/ike/utils/Retransmitter.java
similarity index 95%
rename from src/java/com/android/ike/ikev2/utils/Retransmitter.java
rename to src/java/com/android/internal/net/ipsec/ike/utils/Retransmitter.java
index 27a04d7..778d685 100644
--- a/src/java/com/android/ike/ikev2/utils/Retransmitter.java
+++ b/src/java/com/android/internal/net/ipsec/ike/utils/Retransmitter.java
@@ -13,14 +13,14 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.utils;
+package com.android.internal.net.ipsec.ike.utils;
 
-import static com.android.ike.ikev2.IkeSessionStateMachine.CMD_RETRANSMIT;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.CMD_RETRANSMIT;
 
 import android.os.Handler;
 
-import com.android.ike.ikev2.message.IkeMessage;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
 
 /**
  * Retransmitter represents a class that will send a message and trigger delayed retransmissions
diff --git a/src/java/com/android/ike/utils/BigIntegerUtils.java b/src/java/com/android/internal/net/utils/BigIntegerUtils.java
similarity index 98%
rename from src/java/com/android/ike/utils/BigIntegerUtils.java
rename to src/java/com/android/internal/net/utils/BigIntegerUtils.java
index 7bbae1d..09dad74 100644
--- a/src/java/com/android/ike/utils/BigIntegerUtils.java
+++ b/src/java/com/android/internal/net/utils/BigIntegerUtils.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.utils;
+package com.android.internal.net.utils;
 
 import java.math.BigInteger;
 
diff --git a/src/java/com/android/ike/utils/Log.java b/src/java/com/android/internal/net/utils/Log.java
similarity index 99%
rename from src/java/com/android/ike/utils/Log.java
rename to src/java/com/android/internal/net/utils/Log.java
index 2a101f9..55ea091 100644
--- a/src/java/com/android/ike/utils/Log.java
+++ b/src/java/com/android/internal/net/utils/Log.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.utils;
+package com.android.internal.net.utils;
 
 import android.os.Build;
 
diff --git a/src/java/com/android/ike/utils/SimpleStateMachine.java b/src/java/com/android/internal/net/utils/SimpleStateMachine.java
similarity index 98%
rename from src/java/com/android/ike/utils/SimpleStateMachine.java
rename to src/java/com/android/internal/net/utils/SimpleStateMachine.java
index 12b6b7c..a2fffdd 100644
--- a/src/java/com/android/ike/utils/SimpleStateMachine.java
+++ b/src/java/com/android/internal/net/utils/SimpleStateMachine.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.utils;
+package com.android.internal.net.utils;
 
 /**
  * SimpleStateMachine provides a minimal, synchronous state machine framework.
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapSessionConfigTest.java b/tests/iketests/src/java/android/net/eap/EapSessionConfigTest.java
similarity index 85%
rename from tests/iketests/src/java/com/android/ike/eap/EapSessionConfigTest.java
rename to tests/iketests/src/java/android/net/eap/EapSessionConfigTest.java
index ffed33f..eed32e3 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapSessionConfigTest.java
+++ b/tests/iketests/src/java/android/net/eap/EapSessionConfigTest.java
@@ -14,26 +14,26 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package android.net.eap;
 
+import static android.net.eap.EapSessionConfig.DEFAULT_IDENTITY;
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.eap.EapSessionConfig.DEFAULT_IDENTITY;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA_PRIME;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA_PRIME;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.EapSessionConfig.EapAkaConfig;
-import com.android.ike.eap.EapSessionConfig.EapAkaPrimeConfig;
-import com.android.ike.eap.EapSessionConfig.EapMethodConfig;
-import com.android.ike.eap.EapSessionConfig.EapMsChapV2Config;
-import com.android.ike.eap.EapSessionConfig.EapSimConfig;
+import android.net.eap.EapSessionConfig.EapAkaConfig;
+import android.net.eap.EapSessionConfig.EapAkaPrimeConfig;
+import android.net.eap.EapSessionConfig.EapMethodConfig;
+import android.net.eap.EapSessionConfig.EapMsChapV2Config;
+import android.net.eap.EapSessionConfig.EapSimConfig;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/ChildSessionConfigurationTest.java b/tests/iketests/src/java/android/net/ipsec/ike/ChildSessionConfigurationTest.java
similarity index 92%
rename from tests/iketests/src/java/com/android/ike/ikev2/ChildSessionConfigurationTest.java
rename to tests/iketests/src/java/android/net/ipsec/ike/ChildSessionConfigurationTest.java
index bd8da2c..08d8994 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/ChildSessionConfigurationTest.java
+++ b/tests/iketests/src/java/android/net/ipsec/ike/ChildSessionConfigurationTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
@@ -22,11 +22,11 @@
 
 import android.net.LinkAddress;
 
-import com.android.ike.ikev2.message.IkeConfigPayload;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttribute;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Address;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Netmask;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv6Address;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttribute;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Address;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Netmask;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv6Address;
 
 import libcore.net.InetAddressUtils;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/ChildSessionOptionsTest.java b/tests/iketests/src/java/android/net/ipsec/ike/ChildSessionOptionsTest.java
similarity index 98%
rename from tests/iketests/src/java/com/android/ike/ikev2/ChildSessionOptionsTest.java
rename to tests/iketests/src/java/android/net/ipsec/ike/ChildSessionOptionsTest.java
index 5f8a4fc..242957d 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/ChildSessionOptionsTest.java
+++ b/tests/iketests/src/java/android/net/ipsec/ike/ChildSessionOptionsTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/IkeSessionOptionsTest.java b/tests/iketests/src/java/android/net/ipsec/ike/IkeSessionOptionsTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/IkeSessionOptionsTest.java
rename to tests/iketests/src/java/android/net/ipsec/ike/IkeSessionOptionsTest.java
index 88ff2f1..fa077d1 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/IkeSessionOptionsTest.java
+++ b/tests/iketests/src/java/android/net/ipsec/ike/IkeSessionOptionsTest.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
-import static com.android.ike.ikev2.IkeSessionOptions.IkeAuthConfig;
-import static com.android.ike.ikev2.IkeSessionOptions.IkeAuthDigitalSignLocalConfig;
-import static com.android.ike.ikev2.IkeSessionOptions.IkeAuthDigitalSignRemoteConfig;
-import static com.android.ike.ikev2.IkeSessionOptions.IkeAuthEapConfig;
-import static com.android.ike.ikev2.IkeSessionOptions.IkeAuthPskConfig;
+import static android.net.ipsec.ike.IkeSessionOptions.IkeAuthConfig;
+import static android.net.ipsec.ike.IkeSessionOptions.IkeAuthDigitalSignLocalConfig;
+import static android.net.ipsec.ike.IkeSessionOptions.IkeAuthDigitalSignRemoteConfig;
+import static android.net.ipsec.ike.IkeSessionOptions.IkeAuthEapConfig;
+import static android.net.ipsec.ike.IkeSessionOptions.IkeAuthPskConfig;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -32,11 +32,11 @@
 import android.content.Context;
 import android.net.IpSecManager;
 import android.net.IpSecManager.UdpEncapsulationSocket;
+import android.net.eap.EapSessionConfig;
 
 import androidx.test.InstrumentationRegistry;
 
-import com.android.ike.TestUtils;
-import com.android.ike.eap.EapSessionConfig;
+import com.android.internal.net.TestUtils;
 
 import libcore.net.InetAddressUtils;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/IkeSessionTest.java b/tests/iketests/src/java/android/net/ipsec/ike/IkeSessionTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/IkeSessionTest.java
rename to tests/iketests/src/java/android/net/ipsec/ike/IkeSessionTest.java
index 28a1311..8bf1281 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/IkeSessionTest.java
+++ b/tests/iketests/src/java/android/net/ipsec/ike/IkeSessionTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
@@ -27,7 +27,9 @@
 import android.os.test.TestLooper;
 import android.util.Log;
 
-import com.android.ike.ikev2.testutils.MockIpSecTestUtils;
+import com.android.internal.net.ipsec.ike.IkeSessionStateMachine;
+import com.android.internal.net.ipsec.ike.IkeSessionStateMachineTest;
+import com.android.internal.net.ipsec.ike.testutils.MockIpSecTestUtils;
 
 import libcore.net.InetAddressUtils;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/IkeTrafficSelectorTest.java b/tests/iketests/src/java/android/net/ipsec/ike/IkeTrafficSelectorTest.java
similarity index 98%
rename from tests/iketests/src/java/com/android/ike/ikev2/IkeTrafficSelectorTest.java
rename to tests/iketests/src/java/android/net/ipsec/ike/IkeTrafficSelectorTest.java
index d8bde92..65cf056 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/IkeTrafficSelectorTest.java
+++ b/tests/iketests/src/java/android/net/ipsec/ike/IkeTrafficSelectorTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -23,8 +23,8 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import libcore.net.InetAddressUtils;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/SaProposalTest.java b/tests/iketests/src/java/android/net/ipsec/ike/SaProposalTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/SaProposalTest.java
rename to tests/iketests/src/java/android/net/ipsec/ike/SaProposalTest.java
index da1a0f09..d4efb0c 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/SaProposalTest.java
+++ b/tests/iketests/src/java/android/net/ipsec/ike/SaProposalTest.java
@@ -14,10 +14,10 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
-import static com.android.ike.ikev2.SaProposal.KEY_LEN_AES_128;
-import static com.android.ike.ikev2.SaProposal.KEY_LEN_UNUSED;
+import static android.net.ipsec.ike.SaProposal.KEY_LEN_AES_128;
+import static android.net.ipsec.ike.SaProposal.KEY_LEN_UNUSED;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -25,12 +25,12 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.ikev2.message.IkePayload;
-import com.android.ike.ikev2.message.IkeSaPayload.DhGroupTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.Transform;
+import com.android.internal.net.ipsec.ike.message.IkePayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.DhGroupTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.Transform;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/TunnelModeChildSessionOptionsTest.java b/tests/iketests/src/java/android/net/ipsec/ike/TunnelModeChildSessionOptionsTest.java
similarity index 89%
rename from tests/iketests/src/java/com/android/ike/ikev2/TunnelModeChildSessionOptionsTest.java
rename to tests/iketests/src/java/android/net/ipsec/ike/TunnelModeChildSessionOptionsTest.java
index e14e6e8..b0f81dc 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/TunnelModeChildSessionOptionsTest.java
+++ b/tests/iketests/src/java/android/net/ipsec/ike/TunnelModeChildSessionOptionsTest.java
@@ -14,19 +14,19 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package android.net.ipsec.ike;
 
 import static android.system.OsConstants.AF_INET;
 import static android.system.OsConstants.AF_INET6;
 
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_ADDRESS;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DHCP;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DNS;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_NETMASK;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_SUBNET;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_ADDRESS;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_DNS;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_SUBNET;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_ADDRESS;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DHCP;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DNS;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_NETMASK;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_SUBNET;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_ADDRESS;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_DNS;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_SUBNET;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -36,7 +36,7 @@
 
 import android.util.SparseArray;
 
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttribute;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttribute;
 
 import libcore.net.InetAddressUtils;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/exceptions/IkeProtocolExceptionTest.java b/tests/iketests/src/java/android/net/ipsec/ike/exceptions/IkeProtocolExceptionTest.java
similarity index 82%
rename from tests/iketests/src/java/com/android/ike/ikev2/exceptions/IkeProtocolExceptionTest.java
rename to tests/iketests/src/java/android/net/ipsec/ike/exceptions/IkeProtocolExceptionTest.java
index 69f03be..8c3b16d 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/exceptions/IkeProtocolExceptionTest.java
+++ b/tests/iketests/src/java/android/net/ipsec/ike/exceptions/IkeProtocolExceptionTest.java
@@ -14,15 +14,17 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.exceptions;
+package android.net.ipsec.ike.exceptions;
 
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_NO_PROPOSAL_CHOSEN;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_UNSUPPORTED_CRITICAL_PAYLOAD;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_NO_PROPOSAL_CHOSEN;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_UNSUPPORTED_CRITICAL_PAYLOAD;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 
-import com.android.ike.ikev2.message.IkeNotifyPayload;
+import com.android.internal.net.ipsec.ike.exceptions.NoValidProposalChosenException;
+import com.android.internal.net.ipsec.ike.exceptions.UnsupportedCriticalPayloadException;
+import com.android.internal.net.ipsec.ike.message.IkeNotifyPayload;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/TestUtils.java b/tests/iketests/src/java/com/android/internal/net/TestUtils.java
similarity index 97%
rename from tests/iketests/src/java/com/android/ike/TestUtils.java
rename to tests/iketests/src/java/com/android/internal/net/TestUtils.java
index f11972f..6dd5ce5 100644
--- a/tests/iketests/src/java/com/android/ike/TestUtils.java
+++ b/tests/iketests/src/java/com/android/internal/net/TestUtils.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike;
+package com.android.internal.net;
 
 import static org.mockito.Matchers.anyObject;
 import static org.mockito.Matchers.anyString;
 import static org.mockito.Mockito.doAnswer;
 import static org.mockito.Mockito.spy;
 
-import com.android.ike.utils.Log;
+import com.android.internal.net.utils.Log;
 
 import java.nio.ByteBuffer;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapAkaPrimeTest.java b/tests/iketests/src/java/com/android/internal/net/eap/EapAkaPrimeTest.java
similarity index 97%
rename from tests/iketests/src/java/com/android/ike/eap/EapAkaPrimeTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/EapAkaPrimeTest.java
index d8f4329..0872b67 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapAkaPrimeTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/EapAkaPrimeTest.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
 
 import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.mock;
@@ -28,9 +28,10 @@
 import static org.mockito.Mockito.when;
 
 import android.content.Context;
+import android.net.eap.EapSessionConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.statemachine.EapStateMachine;
+import com.android.internal.net.eap.statemachine.EapStateMachine;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapAkaTest.java b/tests/iketests/src/java/com/android/internal/net/eap/EapAkaTest.java
similarity index 97%
rename from tests/iketests/src/java/com/android/ike/eap/EapAkaTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/EapAkaTest.java
index b1744e1..e982a85 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapAkaTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/EapAkaTest.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
 
 import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.mock;
@@ -28,9 +28,10 @@
 import static org.mockito.Mockito.when;
 
 import android.content.Context;
+import android.net.eap.EapSessionConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.statemachine.EapStateMachine;
+import com.android.internal.net.eap.statemachine.EapStateMachine;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapAuthenticatorTest.java b/tests/iketests/src/java/com/android/internal/net/eap/EapAuthenticatorTest.java
similarity index 89%
rename from tests/iketests/src/java/com/android/ike/eap/EapAuthenticatorTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/EapAuthenticatorTest.java
index 11d4661..4c868a0 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapAuthenticatorTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/EapAuthenticatorTest.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_FAILURE_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_RESPONSE_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SUCCESS_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.REQUEST_UNSUPPORTED_TYPE_PACKET;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_FAILURE_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_RESPONSE_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SUCCESS_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.REQUEST_UNSUPPORTED_TYPE_PACKET;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertFalse;
@@ -35,12 +35,12 @@
 import android.os.Looper;
 import android.os.test.TestLooper;
 
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapResult.EapSuccess;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.statemachine.EapStateMachine;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.statemachine.EapStateMachine;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapErrorTest.java b/tests/iketests/src/java/com/android/internal/net/eap/EapErrorTest.java
similarity index 91%
rename from tests/iketests/src/java/com/android/ike/eap/EapErrorTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/EapErrorTest.java
index f2209ec..ce49763 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapErrorTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/EapErrorTest.java
@@ -14,11 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
 import static org.junit.Assert.assertEquals;
 
-import com.android.ike.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapError;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapMethodEndToEndTest.java b/tests/iketests/src/java/com/android/internal/net/eap/EapMethodEndToEndTest.java
similarity index 85%
rename from tests/iketests/src/java/com/android/ike/eap/EapMethodEndToEndTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/EapMethodEndToEndTest.java
index aed73c2..412a4cf 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapMethodEndToEndTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/EapMethodEndToEndTest.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_FAILURE_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SUCCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_FAILURE_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SUCCESS;
 
 import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.mock;
@@ -28,6 +28,7 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 
 import android.content.Context;
+import android.net.eap.EapSessionConfig;
 import android.os.test.TestLooper;
 
 import org.junit.Before;
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapMsChapV2Test.java b/tests/iketests/src/java/com/android/internal/net/eap/EapMsChapV2Test.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/eap/EapMsChapV2Test.java
rename to tests/iketests/src/java/com/android/internal/net/eap/EapMsChapV2Test.java
index d63b59f..01264f9 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapMsChapV2Test.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/EapMsChapV2Test.java
@@ -14,10 +14,10 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_AKA_IDENTITY_PACKET;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_AKA_IDENTITY_PACKET;
 
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.eq;
@@ -25,7 +25,9 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 
-import com.android.ike.eap.statemachine.EapStateMachine;
+import android.net.eap.EapSessionConfig;
+
+import com.android.internal.net.eap.statemachine.EapStateMachine;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapResponseTest.java b/tests/iketests/src/java/com/android/internal/net/eap/EapResponseTest.java
similarity index 80%
rename from tests/iketests/src/java/com/android/ike/eap/EapResponseTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/EapResponseTest.java
index 77aed41..0c6dd52 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapResponseTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/EapResponseTest.java
@@ -14,19 +14,19 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NAK_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SUCCESS_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NAK_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SUCCESS_PACKET;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.exceptions.InvalidEapResponseException;
-import com.android.ike.eap.message.EapMessage;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.InvalidEapResponseException;
+import com.android.internal.net.eap.message.EapMessage;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapSimTest.java b/tests/iketests/src/java/com/android/internal/net/eap/EapSimTest.java
similarity index 96%
rename from tests/iketests/src/java/com/android/ike/eap/EapSimTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/EapSimTest.java
index b6f4165..8b11d278 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapSimTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/EapSimTest.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_AKA_IDENTITY_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NAK_PACKET;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_AKA_IDENTITY_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NAK_PACKET;
 
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.eq;
@@ -31,9 +31,10 @@
 import static org.mockito.Mockito.when;
 
 import android.content.Context;
+import android.net.eap.EapSessionConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.statemachine.EapStateMachine;
+import com.android.internal.net.eap.statemachine.EapStateMachine;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapSuccessTest.java b/tests/iketests/src/java/com/android/internal/net/eap/EapSuccessTest.java
similarity index 94%
rename from tests/iketests/src/java/com/android/ike/eap/EapSuccessTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/EapSuccessTest.java
index 724101f..d741054 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapSuccessTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/EapSuccessTest.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.EapResult.EapSuccess;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/EapTestUtils.java b/tests/iketests/src/java/com/android/internal/net/eap/EapTestUtils.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/eap/EapTestUtils.java
rename to tests/iketests/src/java/com/android/internal/net/eap/EapTestUtils.java
index aa37455..de058d1 100644
--- a/tests/iketests/src/java/com/android/ike/eap/EapTestUtils.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/EapTestUtils.java
@@ -14,10 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap;
+package com.android.internal.net.eap;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
+import android.net.eap.EapSessionConfig;
+
 import java.util.HashMap;
 
 /**
diff --git a/tests/iketests/src/java/com/android/ike/eap/crypto/Fips186_2PrfTest.java b/tests/iketests/src/java/com/android/internal/net/eap/crypto/Fips186_2PrfTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/eap/crypto/Fips186_2PrfTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/crypto/Fips186_2PrfTest.java
index 7bded7b..978f070 100644
--- a/tests/iketests/src/java/com/android/ike/eap/crypto/Fips186_2PrfTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/crypto/Fips186_2PrfTest.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.crypto;
+package com.android.internal.net.eap.crypto;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
+import com.android.internal.net.TestUtils;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/crypto/HmacSha256ByteSignerTest.java b/tests/iketests/src/java/com/android/internal/net/eap/crypto/HmacSha256ByteSignerTest.java
similarity index 96%
rename from tests/iketests/src/java/com/android/ike/eap/crypto/HmacSha256ByteSignerTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/crypto/HmacSha256ByteSignerTest.java
index d178a45..355c1db 100644
--- a/tests/iketests/src/java/com/android/ike/eap/crypto/HmacSha256ByteSignerTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/crypto/HmacSha256ByteSignerTest.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.crypto;
+package com.android.internal.net.eap.crypto;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
 
 import static org.junit.Assert.assertArrayEquals;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/crypto/ParityBitUtilTest.java b/tests/iketests/src/java/com/android/internal/net/eap/crypto/ParityBitUtilTest.java
similarity index 94%
rename from tests/iketests/src/java/com/android/ike/eap/crypto/ParityBitUtilTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/crypto/ParityBitUtilTest.java
index ae31caf..7ba024e 100644
--- a/tests/iketests/src/java/com/android/ike/eap/crypto/ParityBitUtilTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/crypto/ParityBitUtilTest.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.crypto;
+package com.android.internal.net.eap.crypto;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/EapDataTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/EapDataTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/eap/message/EapDataTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/EapDataTest.java
index 49de536..9d4cc7c 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/EapDataTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/EapDataTest.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message;
+package com.android.internal.net.eap.message;
 
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/EapMessageTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/EapMessageTest.java
similarity index 73%
rename from tests/iketests/src/java/com/android/ike/eap/message/EapMessageTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/EapMessageTest.java
index 88d2b6f..813a30f 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/EapMessageTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/EapMessageTest.java
@@ -14,26 +14,26 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message;
+package com.android.internal.net.eap.message;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_NAK;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_RESPONSE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_TYPE_DATA;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NAK_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SUCCESS_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.INCOMPLETE_HEADER_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.INVALID_CODE_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.LONG_SUCCESS_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.REQUEST_MISSING_TYPE_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.REQUEST_UNSUPPORTED_TYPE_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.SHORT_PACKET;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_NAK;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_RESPONSE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_TYPE_DATA;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NAK_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SUCCESS_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.INCOMPLETE_HEADER_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.INVALID_CODE_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.LONG_SUCCESS_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.REQUEST_MISSING_TYPE_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.REQUEST_UNSUPPORTED_TYPE_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.SHORT_PACKET;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -41,11 +41,11 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.exceptions.EapInvalidPacketLengthException;
-import com.android.ike.eap.exceptions.InvalidEapCodeException;
-import com.android.ike.eap.exceptions.UnsupportedEapTypeException;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.EapInvalidPacketLengthException;
+import com.android.internal.net.eap.exceptions.InvalidEapCodeException;
+import com.android.internal.net.eap.exceptions.UnsupportedEapTypeException;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/EapTestMessageDefinitions.java b/tests/iketests/src/java/com/android/internal/net/eap/message/EapTestMessageDefinitions.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/eap/message/EapTestMessageDefinitions.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/EapTestMessageDefinitions.java
index 30ca917..2051758 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/EapTestMessageDefinitions.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/EapTestMessageDefinitions.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message;
+package com.android.internal.net.eap.message;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_VERSION_LIST_DATA;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.IDENTITY_STRING;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT_STRING;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_2;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RES;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_VERSION_LIST_DATA;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.IDENTITY_STRING;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT_STRING;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_2;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RES;
 
 /**
  * EapTestMessageDefinitions provides byte[] encodings of commonly used EAP Messages.
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2ChallengeRequestTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2ChallengeRequestTest.java
similarity index 72%
rename from tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2ChallengeRequestTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2ChallengeRequestTest.java
index a5aff23..45a8673 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2ChallengeRequestTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2ChallengeRequestTest.java
@@ -14,17 +14,17 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.mschapv2;
+package com.android.internal.net.eap.message.mschapv2;
 
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_REQUEST_LONG_MS_LENGTH;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_REQUEST_SHORT_CHALLENGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_REQUEST_SHORT_MS_LENGTH;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_REQUEST_WRONG_OP_CODE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_CHALLENGE_REQUEST;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ID_INT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SERVER_NAME_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_CHALLENGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_REQUEST_LONG_MS_LENGTH;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_REQUEST_SHORT_CHALLENGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_REQUEST_SHORT_MS_LENGTH;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_REQUEST_WRONG_OP_CODE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_CHALLENGE_REQUEST;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SERVER_NAME_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_CHALLENGE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -32,11 +32,11 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2ChallengeResponseTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2ChallengeResponseTest.java
similarity index 77%
rename from tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2ChallengeResponseTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2ChallengeResponseTest.java
index f43dd4d..3e243a9 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2ChallengeResponseTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2ChallengeResponseTest.java
@@ -14,23 +14,23 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.mschapv2;
+package com.android.internal.net.eap.message.mschapv2;
 
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_CHALLENGE_RESPONSE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ID_INT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.NT_RESPONSE_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.PEER_CHALLENGE_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.PEER_NAME_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SHORT_CHALLENGE_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SHORT_NT_RESPONSE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_RESPONSE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_CHALLENGE_RESPONSE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.NT_RESPONSE_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.PEER_CHALLENGE_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.PEER_NAME_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SHORT_CHALLENGE_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SHORT_NT_RESPONSE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_RESPONSE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeResponse;
+import com.android.internal.net.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeResponse;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2FailureRequestTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2FailureRequestTest.java
similarity index 73%
rename from tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2FailureRequestTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2FailureRequestTest.java
index 6779076..ead8022 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2FailureRequestTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2FailureRequestTest.java
@@ -14,34 +14,34 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.mschapv2;
+package com.android.internal.net.eap.message.mschapv2;
 
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_FAILURE_REQUEST;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_FAILURE_REQUEST_MISSING_MESSAGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_FAILURE_REQUEST_MISSING_MESSAGE_WITH_SPACE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ERROR_CODE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.FAILURE_REQUEST_EXTRA_ATTRIBUTE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.FAILURE_REQUEST_INVALID_CHALLENGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.FAILURE_REQUEST_INVALID_ERROR_CODE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.FAILURE_REQUEST_INVALID_PASSWORD_CHANGE_PROTOCOL;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.FAILURE_REQUEST_SHORT_CHALLENGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ID_INT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE_MISSING_TEXT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.PASSWORD_CHANGE_PROTOCOL;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.RETRY_BIT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_FAILURE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_FAILURE_REQUEST;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_FAILURE_REQUEST_MISSING_MESSAGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_FAILURE_REQUEST_MISSING_MESSAGE_WITH_SPACE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ERROR_CODE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.FAILURE_REQUEST_EXTRA_ATTRIBUTE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.FAILURE_REQUEST_INVALID_CHALLENGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.FAILURE_REQUEST_INVALID_ERROR_CODE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.FAILURE_REQUEST_INVALID_PASSWORD_CHANGE_PROTOCOL;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.FAILURE_REQUEST_SHORT_CHALLENGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE_MISSING_TEXT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.PASSWORD_CHANGE_PROTOCOL;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.RETRY_BIT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_FAILURE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureRequest;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
+import com.android.internal.net.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureRequest;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2FailureResponseTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2FailureResponseTest.java
similarity index 77%
rename from tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2FailureResponseTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2FailureResponseTest.java
index 05d71ca..261ddb2 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2FailureResponseTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2FailureResponseTest.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.mschapv2;
+package com.android.internal.net.eap.message.mschapv2;
 
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_FAILURE_RESPONSE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_FAILURE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_FAILURE_RESPONSE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_FAILURE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureResponse;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureResponse;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2PacketDefinitions.java b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2PacketDefinitions.java
similarity index 98%
rename from tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2PacketDefinitions.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2PacketDefinitions.java
index 687ed92..e70c2a2 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2PacketDefinitions.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2PacketDefinitions.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.mschapv2;
+package com.android.internal.net.eap.message.mschapv2;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
 
 public class EapMsChapV2PacketDefinitions {
     public static final String ID = "1F";
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2SuccessRequestTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2SuccessRequestTest.java
similarity index 76%
rename from tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2SuccessRequestTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2SuccessRequestTest.java
index 72593ad..1e0909e 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2SuccessRequestTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2SuccessRequestTest.java
@@ -14,22 +14,22 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.mschapv2;
+package com.android.internal.net.eap.message.mschapv2;
 
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.AUTH_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_SUCCESS_REQUEST;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_SUCCESS_REQUEST_EMPTY_MESSAGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_SUCCESS_REQUEST_MISSING_MESSAGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_SUCCESS_REQUEST_MISSING_MESSAGE_WITH_SPACE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ID_INT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE_MISSING_TEXT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_EXTRA_ATTRIBUTE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_INVALID_AUTH_STRING;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_SHORT_AUTH_STRING;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_WRONG_OP_CODE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_WRONG_PREFIX;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_SUCCESS;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.AUTH_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_SUCCESS_REQUEST;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_SUCCESS_REQUEST_EMPTY_MESSAGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_SUCCESS_REQUEST_MISSING_MESSAGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_SUCCESS_REQUEST_MISSING_MESSAGE_WITH_SPACE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE_MISSING_TEXT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_EXTRA_ATTRIBUTE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_INVALID_AUTH_STRING;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_SHORT_AUTH_STRING;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_WRONG_OP_CODE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_WRONG_PREFIX;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_SUCCESS;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -37,11 +37,11 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2SuccessRequest;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2SuccessRequest;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2SuccessResponseTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2SuccessResponseTest.java
similarity index 77%
rename from tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2SuccessResponseTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2SuccessResponseTest.java
index 3e6a9c5..524b3ec 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2SuccessResponseTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2SuccessResponseTest.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.mschapv2;
+package com.android.internal.net.eap.message.mschapv2;
 
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_SUCCESS_RESPONSE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_SUCCESS;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EAP_MSCHAP_V2_SUCCESS_RESPONSE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_SUCCESS;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2SuccessResponse;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2SuccessResponse;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2TypeDataTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2TypeDataTest.java
similarity index 76%
rename from tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2TypeDataTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2TypeDataTest.java
index a337603..45f1c64 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/mschapv2/EapMsChapV2TypeDataTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/mschapv2/EapMsChapV2TypeDataTest.java
@@ -14,19 +14,19 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.mschapv2;
+package com.android.internal.net.eap.message.mschapv2;
 
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.AUTH_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.AUTH_STRING;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EXTRA_M_MESSAGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE_MISSING_TEXT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_DUPLICATE_KEY;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_EXTRA_M;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_INVALID_FORMAT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_MISSING_M;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_CHALLENGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.AUTH_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.AUTH_STRING;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.EXTRA_M_MESSAGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE_MISSING_TEXT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_DUPLICATE_KEY;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_EXTRA_M;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_INVALID_FORMAT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SUCCESS_REQUEST_MISSING_M;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_CHALLENGE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -34,10 +34,10 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2VariableTypeData;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2VariableTypeData;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/EapAkaPrimeTypeDataTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapAkaPrimeTypeDataTest.java
similarity index 74%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/EapAkaPrimeTypeDataTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapAkaPrimeTypeDataTest.java
index 36066f1..6a9e517 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/EapAkaPrimeTypeDataTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapAkaPrimeTypeDataTest.java
@@ -14,33 +14,33 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF_INPUT;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_KDF_INPUT;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.KDF_VERSION;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NETWORK_NAME_BYTES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NETWORK_NAME_HEX;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF_INPUT;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_KDF_INPUT;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.KDF_VERSION;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NETWORK_NAME_BYTES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NETWORK_NAME_HEX;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
-import com.android.ike.eap.message.simaka.EapAkaPrimeTypeData.EapAkaPrimeTypeDataDecoder;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAutn;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtKdf;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtKdfInput;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.message.simaka.EapAkaPrimeTypeData.EapAkaPrimeTypeDataDecoder;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAutn;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtKdf;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtKdfInput;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/EapAkaTypeDataTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapAkaTypeDataTest.java
similarity index 74%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/EapAkaTypeDataTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapAkaTypeDataTest.java
index e5c6f9e..b2d89d1 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/EapAkaTypeDataTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapAkaTypeDataTest.java
@@ -14,22 +14,22 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_CHALLENGE_RESPONSE_MAC_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_CHALLENGE_RESPONSE_TYPE_DATA;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_IDENTITY_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.INVALID_SUBTYPE;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_CHECKCODE;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RES_BYTES;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_CHALLENGE_RESPONSE_MAC_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_CHALLENGE_RESPONSE_TYPE_DATA;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_IDENTITY_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.INVALID_SUBTYPE;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_CHECKCODE;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RES_BYTES;
 
 import static junit.framework.TestCase.fail;
 
@@ -38,14 +38,14 @@
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
-import com.android.ike.eap.message.simaka.EapAkaTypeData.EapAkaTypeDataDecoder;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAutn;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRes;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.EapSimAkaUnsupportedAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData.EapAkaTypeDataDecoder;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAutn;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRes;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EapSimAkaUnsupportedAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/EapSimAkaAttributeFactoryTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapSimAkaAttributeFactoryTest.java
similarity index 84%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/EapSimAkaAttributeFactoryTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapSimAkaAttributeFactoryTest.java
index 75ea901..5b6f5d6 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/EapSimAkaAttributeFactoryTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapSimAkaAttributeFactoryTest.java
@@ -14,20 +14,20 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.SKIPPABLE_DATA;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.SKIPPABLE_DATA_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.SKIPPABLE_INVALID_ATTRIBUTE;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.SKIPPABLE_DATA;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.SKIPPABLE_DATA_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.SKIPPABLE_INVALID_ATTRIBUTE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.EapSimAkaUnsupportedAttribute;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaUnsupportedAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EapSimAkaUnsupportedAttribute;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/EapSimTypeDataTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapSimTypeDataTest.java
similarity index 83%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/EapSimTypeDataTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapSimTypeDataTest.java
index 40b55c1..678a812 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/EapSimTypeDataTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/EapSimTypeDataTest.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka;
+package com.android.internal.net.eap.message.simaka;
 
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_START_DUPLICATE_ATTRIBUTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_START_SUBTYPE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.INVALID_SUBTYPE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.SHORT_TYPE_DATA;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.TYPE_DATA_INVALID_ATTRIBUTE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.TYPE_DATA_INVALID_AT_RAND;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_VERSION_LIST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_START_DUPLICATE_ATTRIBUTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_START_SUBTYPE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.INVALID_SUBTYPE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.SHORT_TYPE_DATA;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.TYPE_DATA_INVALID_ATTRIBUTE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.TYPE_DATA_INVALID_AT_RAND;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_VERSION_LIST;
 
 import static junit.framework.TestCase.fail;
 
@@ -32,10 +32,10 @@
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.message.simaka.EapSimTypeData.EapSimTypeDataDecoder;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData.EapSimTypeDataDecoder;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtAutnTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtAutnTest.java
similarity index 72%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtAutnTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtAutnTest.java
index 73f25b7..ebf22e4 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtAutnTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtAutnTest.java
@@ -14,22 +14,22 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_AUTN;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_AUTN_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AUTN_BYTES;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTN;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_AUTN;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_AUTN_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AUTN_BYTES;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapAkaAttributeFactory;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAutn;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapAkaAttributeFactory;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAutn;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtAutsTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtAutsTest.java
similarity index 72%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtAutsTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtAutsTest.java
index afd64fe..d65a735 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtAutsTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtAutsTest.java
@@ -14,22 +14,22 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTS;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_AUTS;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_AUTS_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AUTS_BYTES;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_AUTS;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_AUTS;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_AUTS_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AUTS_BYTES;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapAkaAttributeFactory;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAuts;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapAkaAttributeFactory;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAuts;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtBiddingTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtBiddingTest.java
similarity index 79%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtBiddingTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtBiddingTest.java
index 3e6374e..efdfcc2 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtBiddingTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtBiddingTest.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_BIDDING;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_BIDDING_DOES_NOT_SUPPORT_AKA_PRIME;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_BIDDING_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_BIDDING_SUPPORTS_AKA_PRIME;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_BIDDING;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_BIDDING_DOES_NOT_SUPPORT_AKA_PRIME;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_BIDDING_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_BIDDING_SUPPORTS_AKA_PRIME;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -27,10 +27,10 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapAkaAttributeFactory;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtBidding;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapAkaAttributeFactory;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtBidding;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtClientErrorCodeTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtClientErrorCodeTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtClientErrorCodeTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtClientErrorCodeTest.java
index 94aa9d9..2051414 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtClientErrorCodeTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtClientErrorCodeTest.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.TestUtils.hexStringToInt;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_CLIENT_ERROR_CODE;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_CLIENT_ERROR_CODE;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_CLIENT_ERROR_CODE_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.ERROR_CODE;
+import static com.android.internal.net.TestUtils.hexStringToInt;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_CLIENT_ERROR_CODE;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_CLIENT_ERROR_CODE;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_CLIENT_ERROR_CODE_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.ERROR_CODE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -28,9 +28,9 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttributeFactory;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtCounterTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtCounterTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtCounterTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtCounterTest.java
index 9f9a6d2..eb1086d 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtCounterTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtCounterTest.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_COUNTER;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_COUNTER_TOO_SMALL;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_COUNTER;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_COUNTER_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_COUNTER_TOO_SMALL;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_COUNTER_TOO_SMALL_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.COUNTER_INT;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_COUNTER;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_COUNTER_TOO_SMALL;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_COUNTER;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_COUNTER_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_COUNTER_TOO_SMALL;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_COUNTER_TOO_SMALL_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.COUNTER_INT;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -30,11 +30,11 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtCounter;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtCounterTooSmall;
-import com.android.ike.eap.message.simaka.EapSimAkaAttributeFactory;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtCounter;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtCounterTooSmall;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtIdReqTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtIdReqTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtIdReqTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtIdReqTest.java
index 18c74f1..d006053 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtIdReqTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtIdReqTest.java
@@ -14,17 +14,17 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_FULLAUTH_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.ANY_ID_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_ANY_ID_REQ;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_FULL_AUTH_ID_REQ;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_PERMANENT_ID_REQ;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.FULL_AUTH_ID_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.PERMANENT_ID_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_FULLAUTH_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.ANY_ID_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_ANY_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_FULL_AUTH_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_PERMANENT_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.FULL_AUTH_ID_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.PERMANENT_ID_INVALID_LENGTH;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -32,12 +32,12 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtFullauthIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttributeFactory;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtFullauthIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtIdentityTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtIdentityTest.java
similarity index 79%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtIdentityTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtIdentityTest.java
index 9844c49..cf8e880 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtIdentityTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtIdentityTest.java
@@ -14,21 +14,21 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_IDENTITY;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_IDENTITY;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.IDENTITY;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_IDENTITY;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_IDENTITY;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.IDENTITY;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
-import com.android.ike.eap.message.simaka.EapSimAkaAttributeFactory;
-import com.android.ike.eap.message.simaka.EapSimAttributeFactory;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttributeFactory;
+import com.android.internal.net.eap.message.simaka.EapSimAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtKdfInputTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtKdfInputTest.java
similarity index 76%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtKdfInputTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtKdfInputTest.java
index dc13f08..51ea3f1 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtKdfInputTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtKdfInputTest.java
@@ -14,20 +14,20 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF_INPUT;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_KDF_INPUT;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_KDF_INPUT_EMPTY_NETWORK_NAME;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NETWORK_NAME_BYTES;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF_INPUT;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_KDF_INPUT;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_KDF_INPUT_EMPTY_NETWORK_NAME;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NETWORK_NAME_BYTES;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 
-import com.android.ike.eap.message.simaka.EapAkaPrimeAttributeFactory;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtKdfInput;
+import com.android.internal.net.eap.message.simaka.EapAkaPrimeAttributeFactory;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtKdfInput;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtKdfTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtKdfTest.java
similarity index 73%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtKdfTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtKdfTest.java
index 0a1209c..0bb0732 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtKdfTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtKdfTest.java
@@ -14,22 +14,22 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_KDF;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_KDF_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.KDF_VERSION;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_KDF;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_KDF;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_KDF_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.KDF_VERSION;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapAkaPrimeAttributeFactory;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtKdf;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapAkaPrimeAttributeFactory;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtKdf;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtMacTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtMacTest.java
similarity index 79%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtMacTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtMacTest.java
index ca4c4b9..82b066d 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtMacTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtMacTest.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_MAC;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_MAC_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.MAC;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_MAC;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_MAC_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.MAC;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -28,10 +28,10 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.message.simaka.EapSimAkaAttributeFactory;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtNonceMtTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtNonceMtTest.java
similarity index 77%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtNonceMtTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtNonceMtTest.java
index a83aa9a..751908a 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtNonceMtTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtNonceMtTest.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NONCE_MT;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NONCE_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NONCE_MT;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NONCE_MT;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NONCE_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NONCE_MT;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -27,10 +27,10 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNonceMt;
-import com.android.ike.eap.message.simaka.EapSimAttributeFactory;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNonceMt;
+import com.android.internal.net.eap.message.simaka.EapSimAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtNonceSTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtNonceSTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtNonceSTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtNonceSTest.java
index 06af749..1ad6466 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtNonceSTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtNonceSTest.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NONCE_S;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NONCE_S;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NONCE_S_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_S;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NONCE_S;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NONCE_S;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NONCE_S_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_S;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -28,10 +28,10 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNonceS;
-import com.android.ike.eap.message.simaka.EapSimAkaAttributeFactory;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNonceS;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtNotificationTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtNotificationTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtNotificationTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtNotificationTest.java
index f51b390..2db3cbb 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtNotificationTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtNotificationTest.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.TestUtils.hexStringToInt;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_POST_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NOTIFICATION;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NOTIFICATION;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NOTIFICATION_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NOTIFICATION_INVALID_STATE;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NOTIFICATION_CODE;
+import static com.android.internal.net.TestUtils.hexStringToInt;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_POST_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_NOTIFICATION;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NOTIFICATION;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NOTIFICATION_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_NOTIFICATION_INVALID_STATE;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NOTIFICATION_CODE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -32,10 +32,10 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification;
-import com.android.ike.eap.message.simaka.EapSimAkaAttributeFactory;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtPaddingTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtPaddingTest.java
similarity index 76%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtPaddingTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtPaddingTest.java
index 58a6ce7..d310d50 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtPaddingTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtPaddingTest.java
@@ -14,11 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PADDING;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_PADDING;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_PADDING_INVALID_PADDING;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PADDING;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_PADDING;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_PADDING_INVALID_PADDING;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -26,10 +26,10 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAtPaddingException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtPadding;
-import com.android.ike.eap.message.simaka.EapSimAkaAttributeFactory;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAtPaddingException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtPadding;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtRandAkaTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtRandAkaTest.java
similarity index 73%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtRandAkaTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtRandAkaTest.java
index 851a172..bdffdda 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtRandAkaTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtRandAkaTest.java
@@ -14,22 +14,22 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RAND_AKA;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RAND_AKA_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1_BYTES;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RAND_AKA;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RAND_AKA_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1_BYTES;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapAkaAttributeFactory;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapAkaAttributeFactory;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtRandSimTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtRandSimTest.java
similarity index 72%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtRandSimTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtRandSimTest.java
index 1d3e9b3..7456be6 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtRandSimTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtRandSimTest.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RAND_SIM;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RAND_SIM_DUPLICATE_RANDS;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RAND_SIM_INVALID_NUM_RANDS;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_2;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RAND_SIM;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RAND_SIM_DUPLICATE_RANDS;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RAND_SIM_INVALID_NUM_RANDS;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_2;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -30,11 +30,11 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimInvalidAtRandException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
-import com.android.ike.eap.message.simaka.EapSimAttributeFactory;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimInvalidAtRandException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
+import com.android.internal.net.eap.message.simaka.EapSimAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtResTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtResTest.java
similarity index 76%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtResTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtResTest.java
index 4f97498..34c2ff3 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtResTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtResTest.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RES_INVALID_RES_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RES_LONG_RES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RES_SHORT_RES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RES_BYTES;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RES_INVALID_RES_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RES_LONG_RES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_RES_SHORT_RES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RES_BYTES;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -29,10 +29,10 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapAkaAttributeFactory;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRes;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapAkaAttributeFactory;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRes;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtSelectedVersionTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtSelectedVersionTest.java
similarity index 77%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtSelectedVersionTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtSelectedVersionTest.java
index 1d9c559..659fe9a 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtSelectedVersionTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtSelectedVersionTest.java
@@ -14,11 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_SELECTED_VERSION;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_SELECTED_VERSION;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_SELECTED_VERSION_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_SELECTED_VERSION;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_SELECTED_VERSION;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_SELECTED_VERSION_INVALID_LENGTH;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -26,10 +26,10 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtSelectedVersion;
-import com.android.ike.eap.message.simaka.EapSimAttributeFactory;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtSelectedVersion;
+import com.android.internal.net.eap.message.simaka.EapSimAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtVersionListTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtVersionListTest.java
similarity index 74%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtVersionListTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtVersionListTest.java
index 69cda93..96bb7ca 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/AtVersionListTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/AtVersionListTest.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.TestUtils.hexStringToInt;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_VERSION_LIST;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_VERSION_LIST;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_VERSION_LIST_INVALID_LENGTH;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.VERSION;
+import static com.android.internal.net.TestUtils.hexStringToInt;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_VERSION_LIST;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_VERSION_LIST;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_VERSION_LIST_INVALID_LENGTH;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.VERSION;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -28,10 +28,10 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
-import com.android.ike.eap.message.simaka.EapSimAttributeFactory;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
+import com.android.internal.net.eap.message.simaka.EapSimAttributeFactory;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/EapSimAkaAttributeTest.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/EapSimAkaAttributeTest.java
similarity index 92%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/EapSimAkaAttributeTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/EapSimAkaAttributeTest.java
index 3cc7b50..98ea222 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/EapSimAkaAttributeTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/EapSimAkaAttributeTest.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertFalse;
 
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/EapTestAttributeDefinitions.java b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/EapTestAttributeDefinitions.java
similarity index 97%
rename from tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/EapTestAttributeDefinitions.java
rename to tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/EapTestAttributeDefinitions.java
index 01a7da1..60397e1 100644
--- a/tests/iketests/src/java/com/android/ike/eap/message/simaka/attributes/EapTestAttributeDefinitions.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/message/simaka/attributes/EapTestAttributeDefinitions.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.message.simaka.attributes;
+package com.android.internal.net.eap.message.simaka.attributes;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
 
 /**
  * EapTestAttributeDefinitions provides byte[] encodings of commonly used EAP Messages.
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/CreatedStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/CreatedStateTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/CreatedStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/CreatedStateTest.java
index c4978d8..a452fa6 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/CreatedStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/CreatedStateTest.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_IDENTITY_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_IDENTITY_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
@@ -29,10 +29,10 @@
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.statemachine.EapStateMachine.IdentityState;
-import com.android.ike.eap.statemachine.EapStateMachine.MethodState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.statemachine.EapStateMachine.IdentityState;
+import com.android.internal.net.eap.statemachine.EapStateMachine.MethodState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaChallengeStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaChallengeStateTest.java
similarity index 81%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaChallengeStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaChallengeStateTest.java
index feb0243..b07d1ff 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaChallengeStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaChallengeStateTest.java
@@ -14,32 +14,32 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_IDENTITY;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.CK_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_AUTHENTICATION_REJECT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_CHALLENGE_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_CLIENT_ERROR_UNABLE_TO_PROCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_SYNCHRONIZATION_FAILURE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_UICC_RESP_INVALID_TAG;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_UICC_RESP_SUCCESS_BASE_64;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_UICC_RESP_SYNCHRONIZE_BASE_64;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EMSK;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.IK_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSK;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AUTN_BYTES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AUTS_BYTES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.IDENTITY;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1_BYTES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RES_BYTES;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_IDENTITY;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.CK_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_AUTHENTICATION_REJECT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_CHALLENGE_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_CLIENT_ERROR_UNABLE_TO_PROCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_SYNCHRONIZATION_FAILURE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_UICC_RESP_INVALID_TAG;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_UICC_RESP_SUCCESS_BASE_64;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_UICC_RESP_SYNCHRONIZE_BASE_64;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EMSK;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.IK_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSK;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AUTN_BYTES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AUTS_BYTES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.IDENTITY;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1_BYTES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RES_BYTES;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertNull;
@@ -52,25 +52,25 @@
 
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapResult.EapSuccess;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.exceptions.simaka.EapAkaInvalidAuthenticationResponse;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidLengthException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAutn;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtBidding;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.statemachine.EapAkaMethodStateMachine.ChallengeState;
-import com.android.ike.eap.statemachine.EapAkaMethodStateMachine.ChallengeState.RandChallengeResult;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.FinalState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.exceptions.simaka.EapAkaInvalidAuthenticationResponse;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidLengthException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAutn;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtBidding;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapAkaMethodStateMachine.ChallengeState;
+import com.android.internal.net.eap.statemachine.EapAkaMethodStateMachine.ChallengeState.RandChallengeResult;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.FinalState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaCreatedStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaCreatedStateTest.java
similarity index 73%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaCreatedStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaCreatedStateTest.java
index c32fefa..6e100db 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaCreatedStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaCreatedStateTest.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
@@ -32,17 +32,17 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.statemachine.EapAkaMethodStateMachine.ChallengeState;
-import com.android.ike.eap.statemachine.EapAkaMethodStateMachine.IdentityState;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.FinalState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapAkaMethodStateMachine.ChallengeState;
+import com.android.internal.net.eap.statemachine.EapAkaMethodStateMachine.IdentityState;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.FinalState;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaIdentityStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaIdentityStateTest.java
similarity index 79%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaIdentityStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaIdentityStateTest.java
index dcfeb0f..20175f9 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaIdentityStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaIdentityStateTest.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_CLIENT_ERROR_UNABLE_TO_PROCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_IDENTITY_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.IMSI;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_CLIENT_ERROR_UNABLE_TO_PROCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_IDENTITY_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.IMSI;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
@@ -33,17 +33,17 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaIdentityUnavailableException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.statemachine.EapAkaMethodStateMachine.ChallengeState;
-import com.android.ike.eap.statemachine.EapAkaMethodStateMachine.IdentityState;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaIdentityUnavailableException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapAkaMethodStateMachine.ChallengeState;
+import com.android.internal.net.eap.statemachine.EapAkaMethodStateMachine.IdentityState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaMethodStateMachineTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaMethodStateMachineTest.java
similarity index 74%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaMethodStateMachineTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaMethodStateMachineTest.java
index 12e33c8..db2899b 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaMethodStateMachineTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaMethodStateMachineTest.java
@@ -14,20 +14,20 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_CLIENT_ERROR_UNABLE_TO_PROCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_NOTIFICATION_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.IMSI;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_NOTIFICATION;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_PRE_CHALLENGE;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_CLIENT_ERROR_UNABLE_TO_PROCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_NOTIFICATION_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.IMSI;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_NOTIFICATION;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_PRE_CHALLENGE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -40,20 +40,20 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
+import android.net.eap.EapSessionConfig.EapAkaConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapSessionConfig.EapAkaConfig;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapAkaTypeData.EapAkaTypeDataDecoder;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.statemachine.EapAkaMethodStateMachine.CreatedState;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData.EapAkaTypeDataDecoder;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapAkaMethodStateMachine.CreatedState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeChallengeStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeChallengeStateTest.java
similarity index 84%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeChallengeStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeChallengeStateTest.java
index a768376..731eb6b 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeChallengeStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeChallengeStateTest.java
@@ -14,26 +14,26 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA_PRIME;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.CK_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_AUTHENTICATION_REJECT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_IDENTITY_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_IDENTITY_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.IK_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.IMSI;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AUTN_BYTES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.MAC_BYTES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1_BYTES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RES_BYTES;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA_PRIME;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.CK_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_AUTHENTICATION_REJECT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_IDENTITY_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_IDENTITY_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.IK_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.IMSI;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AUTN_BYTES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.MAC_BYTES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1_BYTES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RES_BYTES;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertFalse;
@@ -44,21 +44,22 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapSessionConfig;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaPrimeTypeData;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAutn;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtKdf;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtKdfInput;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.statemachine.EapAkaMethodStateMachine.ChallengeState.RandChallengeResult;
-import com.android.ike.eap.statemachine.EapAkaPrimeMethodStateMachine.ChallengeState;
+import android.net.eap.EapSessionConfig;
+
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaPrimeTypeData;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAutn;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtKdf;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtKdfInput;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandAka;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapAkaMethodStateMachine.ChallengeState.RandChallengeResult;
+import com.android.internal.net.eap.statemachine.EapAkaPrimeMethodStateMachine.ChallengeState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeCreatedStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeCreatedStateTest.java
similarity index 77%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeCreatedStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeCreatedStateTest.java
index 8664cda..90d0bf6 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeCreatedStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeCreatedStateTest.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA_PRIME;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA_PRIME;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
@@ -30,12 +30,12 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaPrimeTypeData;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.statemachine.EapAkaPrimeMethodStateMachine.ChallengeState;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaPrimeTypeData;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapAkaPrimeMethodStateMachine.ChallengeState;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeIdentityStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeIdentityStateTest.java
similarity index 72%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeIdentityStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeIdentityStateTest.java
index 0ce5a45..73191fb 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeIdentityStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeIdentityStateTest.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA_PRIME;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_IDENTITY_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.IMSI;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA_PRIME;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_IDENTITY_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.IMSI;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_IDENTITY;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
@@ -32,14 +32,14 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaPrimeTypeData;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.statemachine.EapAkaPrimeMethodStateMachine.ChallengeState;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaPrimeTypeData;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapAkaPrimeMethodStateMachine.ChallengeState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeMethodStateMachineTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeMethodStateMachineTest.java
similarity index 65%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeMethodStateMachineTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeMethodStateMachineTest.java
index ce46dc4..125b323 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeMethodStateMachineTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeMethodStateMachineTest.java
@@ -14,26 +14,26 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA_PRIME;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
-import static com.android.ike.eap.statemachine.EapAkaPrimeMethodStateMachine.K_AUT_LEN;
-import static com.android.ike.eap.statemachine.EapAkaPrimeMethodStateMachine.K_RE_LEN;
-import static com.android.ike.eap.statemachine.EapSimAkaMethodStateMachine.KEY_LEN;
-import static com.android.ike.eap.statemachine.EapSimAkaMethodStateMachine.SESSION_KEY_LENGTH;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA_PRIME;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_CHALLENGE;
+import static com.android.internal.net.eap.statemachine.EapAkaPrimeMethodStateMachine.K_AUT_LEN;
+import static com.android.internal.net.eap.statemachine.EapAkaPrimeMethodStateMachine.K_RE_LEN;
+import static com.android.internal.net.eap.statemachine.EapSimAkaMethodStateMachine.KEY_LEN;
+import static com.android.internal.net.eap.statemachine.EapSimAkaMethodStateMachine.SESSION_KEY_LENGTH;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaPrimeTypeData;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.statemachine.EapAkaMethodStateMachine.CreatedState;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaPrimeTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.statemachine.EapAkaMethodStateMachine.CreatedState;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeStateTest.java
similarity index 68%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeStateTest.java
index 98d7bc3..18fce26 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeStateTest.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_NOTIFICATION;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA_PRIME;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_CLIENT_ERROR_UNABLE_TO_PROCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapData.EAP_NOTIFICATION;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA_PRIME;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_CLIENT_ERROR_UNABLE_TO_PROCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -33,18 +33,18 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.EapMethodState;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.FinalState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.EapMethodState;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.FinalState;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeTest.java
similarity index 91%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeTest.java
index 4a8e394..48371bb 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaPrimeTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaPrimeTest.java
@@ -14,11 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
 
 import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.mock;
@@ -26,10 +26,10 @@
 import static org.mockito.Mockito.when;
 
 import android.content.Context;
+import android.net.eap.EapSessionConfig.EapAkaPrimeConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.EapSessionConfig.EapAkaPrimeConfig;
-import com.android.ike.eap.message.simaka.EapAkaPrimeTypeData;
+import com.android.internal.net.eap.message.simaka.EapAkaPrimeTypeData;
 
 import org.junit.Before;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaStateTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaStateTest.java
index 0347b66..23b240b 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapAkaStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapAkaStateTest.java
@@ -14,20 +14,20 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_NOTIFICATION;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_AKA;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_CLIENT_ERROR_UNABLE_TO_PROCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_NOTIFICATION_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.simaka.EapAkaTypeData.EAP_AKA_NOTIFICATION;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_PRE_CHALLENGE;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_NOTIFICATION;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_AKA;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_CLIENT_ERROR_UNABLE_TO_PROCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_NOTIFICATION_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.simaka.EapAkaTypeData.EAP_AKA_NOTIFICATION;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_PRE_CHALLENGE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -38,19 +38,19 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
+import android.net.eap.EapSessionConfig.EapAkaConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapSessionConfig.EapAkaConfig;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapAkaTypeData;
-import com.android.ike.eap.message.simaka.EapAkaTypeData.EapAkaTypeDataDecoder;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.EapMethodState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapAkaTypeData.EapAkaTypeDataDecoder;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.EapMethodState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2AwaitingEapFailureStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2AwaitingEapFailureStateTest.java
similarity index 94%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2AwaitingEapFailureStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2AwaitingEapFailureStateTest.java
index f914000..1dd60c0 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2AwaitingEapFailureStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2AwaitingEapFailureStateTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
 import org.junit.Before;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2AwaitingEapSuccessStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2AwaitingEapSuccessStateTest.java
similarity index 69%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2AwaitingEapSuccessStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2AwaitingEapSuccessStateTest.java
index b5508f3..d4377cb 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2AwaitingEapSuccessStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2AwaitingEapSuccessStateTest.java
@@ -14,20 +14,20 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_MSK;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_NT_RESPONSE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_MSK;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_NT_RESPONSE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapSuccess;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.FinalState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.FinalState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2ChallengeStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2ChallengeStateTest.java
similarity index 66%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2ChallengeStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2ChallengeStateTest.java
index 8f19ba8..ec442da 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2ChallengeStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2ChallengeStateTest.java
@@ -14,18 +14,18 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_MSCHAP_V2_CHALLENGE_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_AUTHENTICATOR_CHALLENGE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PEER_CHALLENGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SERVER_NAME_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest.TYPE_DATA_HEADER_SIZE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest.VALUE_SIZE;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_MSCHAP_V2_CHALLENGE_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_AUTHENTICATOR_CHALLENGE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PEER_CHALLENGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SERVER_NAME_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest.TYPE_DATA_HEADER_SIZE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest.VALUE_SIZE;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
@@ -35,15 +35,15 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
-import com.android.ike.eap.statemachine.EapMsChapV2MethodStateMachine.ValidateAuthenticatorState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapMsChapV2MethodStateMachine.ValidateAuthenticatorState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2CreatedStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2CreatedStateTest.java
similarity index 70%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2CreatedStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2CreatedStateTest.java
index 62ce4e4..633e0eb 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2CreatedStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2CreatedStateTest.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SERVER_NAME_BYTES;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.SERVER_NAME_BYTES;
 
 import static org.junit.Assert.assertTrue;
 import static org.mockito.ArgumentMatchers.any;
@@ -29,14 +29,14 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
-import com.android.ike.eap.statemachine.EapMsChapV2MethodStateMachine.ValidateAuthenticatorState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.exceptions.mschapv2.EapMsChapV2ParsingException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2ChallengeRequest;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapMsChapV2MethodStateMachine.ValidateAuthenticatorState;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2MethodStateMachineTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2MethodStateMachineTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2MethodStateMachineTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2MethodStateMachineTest.java
index 16646a1..b24c3f8 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2MethodStateMachineTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2MethodStateMachineTest.java
@@ -14,32 +14,33 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_AUTHENTICATOR_CHALLENGE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_AUTHENTICATOR_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_CHALLENGE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_MASTER_KEY;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_MSK;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_NT_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PASSWORD;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PASSWORD_HASH;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PASSWORD_HASH_HASH;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PASSWORD_UTF_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PEER_CHALLENGE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_RECEIVE_START_KEY;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_SEND_START_KEY;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_USERNAME;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_USERNAME_ASCII_BYTES;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_AUTHENTICATOR_CHALLENGE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_AUTHENTICATOR_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_CHALLENGE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_MASTER_KEY;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_MSK;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_NT_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PASSWORD;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PASSWORD_HASH;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PASSWORD_HASH_HASH;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PASSWORD_UTF_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PEER_CHALLENGE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_RECEIVE_START_KEY;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_SEND_START_KEY;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_USERNAME;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_USERNAME_ASCII_BYTES;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
-import com.android.ike.eap.EapSessionConfig.EapMsChapV2Config;
-import com.android.ike.eap.statemachine.EapMsChapV2MethodStateMachine.CreatedState;
-import com.android.ike.utils.Log;
+import android.net.eap.EapSessionConfig.EapMsChapV2Config;
+
+import com.android.internal.net.eap.statemachine.EapMsChapV2MethodStateMachine.CreatedState;
+import com.android.internal.net.utils.Log;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2StateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2StateTest.java
similarity index 65%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2StateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2StateTest.java
index db4325e..1e4a0c5 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2StateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2StateTest.java
@@ -14,34 +14,35 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_NOTIFICATION;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PASSWORD;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_USERNAME;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_NOTIFICATION;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PASSWORD;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_USERNAME;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.mockito.Mockito.mock;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapSessionConfig.EapMsChapV2Config;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.EapMethodState;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.FinalState;
+import android.net.eap.EapSessionConfig.EapMsChapV2Config;
+
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.EapMethodState;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.FinalState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2ValidateAuthenticatorStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2ValidateAuthenticatorStateTest.java
similarity index 68%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2ValidateAuthenticatorStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2ValidateAuthenticatorStateTest.java
index c7fc84f..dda7d5b 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapMsChapV2ValidateAuthenticatorStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapMsChapV2ValidateAuthenticatorStateTest.java
@@ -14,26 +14,26 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_MSCHAP_V2_FAILURE_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_MSCHAP_V2_SUCCESS_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.INVALID_AUTHENTICATOR_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_AUTHENTICATOR_CHALLENGE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_AUTHENTICATOR_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_NT_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PEER_CHALLENGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_BYTES;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ERROR_CODE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.PASSWORD_CHANGE_PROTOCOL;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2PacketDefinitions.RETRY_BIT;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_FAILURE;
-import static com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_SUCCESS;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_MSCHAP_V2;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_MSCHAP_V2_FAILURE_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_MSCHAP_V2_SUCCESS_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.INVALID_AUTHENTICATOR_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_AUTHENTICATOR_CHALLENGE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_AUTHENTICATOR_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_NT_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSCHAP_V2_PEER_CHALLENGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.CHALLENGE_BYTES;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.ERROR_CODE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.MESSAGE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.PASSWORD_CHANGE_PROTOCOL;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2PacketDefinitions.RETRY_BIT;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_FAILURE;
+import static com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EAP_MSCHAP_V2_SUCCESS;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
@@ -42,19 +42,19 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureRequest;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2SuccessRequest;
-import com.android.ike.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.FinalState;
-import com.android.ike.eap.statemachine.EapMsChapV2MethodStateMachine.AwaitingEapFailureState;
-import com.android.ike.eap.statemachine.EapMsChapV2MethodStateMachine.AwaitingEapSuccessState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2FailureRequest;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2SuccessRequest;
+import com.android.internal.net.eap.message.mschapv2.EapMsChapV2TypeData.EapMsChapV2TypeDataDecoder.DecodeResult;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.FinalState;
+import com.android.internal.net.eap.statemachine.EapMsChapV2MethodStateMachine.AwaitingEapFailureState;
+import com.android.internal.net.eap.statemachine.EapMsChapV2MethodStateMachine.AwaitingEapSuccessState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimAkaMethodStateMachineTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimAkaMethodStateMachineTest.java
similarity index 73%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimAkaMethodStateMachineTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimAkaMethodStateMachineTest.java
index 47721da..7adc9f7 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimAkaMethodStateMachineTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimAkaMethodStateMachineTest.java
@@ -14,55 +14,55 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.COMPUTED_MAC;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_CHALLENGE_RESPONSE_MAC_INPUT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_CHALLENGE_RESPONSE_WITH_MAC;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_CLIENT_ERROR_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_CLIENT_ERROR_UNABLE_TO_PROCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_IDENTITY;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_REQUEST_WITH_EMPTY_MAC;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_RESPONSE_WITH_EMPTY_MAC;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_RESPONSE_WITH_MAC;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_RESPONSE_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EMSK;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EMSK_STRING;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.KC_1;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.KC_2;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.K_AUT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.K_AUT_STRING;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.K_ENCR;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.K_ENCR_STRING;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MAC_INPUT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MK;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSK;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSK_STRING;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ORIGINAL_MAC;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.SRES_1;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.SRES_BYTES;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_POST_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_PRE_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_CLIENT_ERROR;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_NOTIFICATION;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_START;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_IDENTITY;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.IDENTITY;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT_STRING;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1_BYTES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_2_BYTES;
-import static com.android.ike.eap.statemachine.EapSimAkaMethodStateMachine.KEY_LEN;
-import static com.android.ike.eap.statemachine.EapSimAkaMethodStateMachine.MAC_ALGORITHM_STRING;
-import static com.android.ike.eap.statemachine.EapSimAkaMethodStateMachine.MASTER_KEY_GENERATION_ALG;
-import static com.android.ike.eap.statemachine.EapSimAkaMethodStateMachine.SESSION_KEY_LENGTH;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.COMPUTED_MAC;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_CHALLENGE_RESPONSE_MAC_INPUT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_CHALLENGE_RESPONSE_WITH_MAC;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_CLIENT_ERROR_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_CLIENT_ERROR_UNABLE_TO_PROCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_IDENTITY;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_REQUEST_WITH_EMPTY_MAC;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_RESPONSE_WITH_EMPTY_MAC;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_RESPONSE_WITH_MAC;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_RESPONSE_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EMSK;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EMSK_STRING;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.KC_1;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.KC_2;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.K_AUT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.K_AUT_STRING;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.K_ENCR;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.K_ENCR_STRING;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MAC_INPUT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MK;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSK;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSK_STRING;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ORIGINAL_MAC;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.SRES_1;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.SRES_BYTES;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_POST_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_PRE_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_CLIENT_ERROR;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_NOTIFICATION;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_START;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.AT_IDENTITY;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.IDENTITY;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT_STRING;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1_BYTES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_2_BYTES;
+import static com.android.internal.net.eap.statemachine.EapSimAkaMethodStateMachine.KEY_LEN;
+import static com.android.internal.net.eap.statemachine.EapSimAkaMethodStateMachine.MAC_ALGORITHM_STRING;
+import static com.android.internal.net.eap.statemachine.EapSimAkaMethodStateMachine.MASTER_KEY_GENERATION_ALG;
+import static com.android.internal.net.eap.statemachine.EapSimAkaMethodStateMachine.SESSION_KEY_LENGTH;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -80,27 +80,27 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
+import android.net.eap.EapSessionConfig.EapSimConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapSessionConfig.EapSimConfig;
-import com.android.ike.eap.crypto.Fips186_2Prf;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaAuthenticationFailureException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtSelectedVersion;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData;
-import com.android.ike.eap.message.simaka.EapSimTypeData;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.EapMethodState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.crypto.Fips186_2Prf;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaAuthenticationFailureException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtSelectedVersion;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.EapMethodState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimChallengeStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimChallengeStateTest.java
similarity index 77%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimChallengeStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimChallengeStateTest.java
index 031603e..bffc03a 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimChallengeStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimChallengeStateTest.java
@@ -14,33 +14,33 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_IDENTITY;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.CHALLENGE_RESPONSE_INVALID_KC;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.CHALLENGE_RESPONSE_INVALID_SRES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_IDENTITY_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EMSK;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.KC_1_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.KC_2_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSK;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.SRES_1_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.SRES_2_BYTES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.VALID_CHALLENGE_RESPONSE;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_CHALLENGE;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1_BYTES;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_2;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_2_BYTES;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_IDENTITY;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.CHALLENGE_RESPONSE_INVALID_KC;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.CHALLENGE_RESPONSE_INVALID_SRES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_IDENTITY_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EMSK;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.KC_1_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.KC_2_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSK;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.SRES_1_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.SRES_2_BYTES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.VALID_CHALLENGE_RESPONSE;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_RAND;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_1_BYTES;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_2;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.RAND_2_BYTES;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -55,25 +55,25 @@
 
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapSuccess;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaAuthenticationFailureException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaInvalidLengthException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNonceMt;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.message.simaka.EapSimTypeData;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.FinalState;
-import com.android.ike.eap.statemachine.EapSimMethodStateMachine.ChallengeState;
-import com.android.ike.eap.statemachine.EapSimMethodStateMachine.ChallengeState.RandChallengeResult;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaAuthenticationFailureException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidAttributeException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaInvalidLengthException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNonceMt;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtRandSim;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.FinalState;
+import com.android.internal.net.eap.statemachine.EapSimMethodStateMachine.ChallengeState;
+import com.android.internal.net.eap.statemachine.EapSimMethodStateMachine.ChallengeState.RandChallengeResult;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimCreatedStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimCreatedStateTest.java
similarity index 68%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimCreatedStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimCreatedStateTest.java
index 2ccda48..bdd1920 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimCreatedStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimCreatedStateTest.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_IDENTITY;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapData.EAP_IDENTITY;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
 
 import static org.junit.Assert.assertTrue;
 import static org.mockito.ArgumentMatchers.eq;
@@ -30,20 +30,20 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.message.simaka.EapSimTypeData;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.FinalState;
-import com.android.ike.eap.statemachine.EapSimMethodStateMachine.CreatedState;
-import com.android.ike.eap.statemachine.EapSimMethodStateMachine.StartState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.FinalState;
+import com.android.internal.net.eap.statemachine.EapSimMethodStateMachine.CreatedState;
+import com.android.internal.net.eap.statemachine.EapSimMethodStateMachine.StartState;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -51,7 +51,6 @@
 import java.util.Arrays;
 import java.util.List;
 
-
 public class EapSimCreatedStateTest extends EapSimStateTest {
     private static final int EAP_SIM_START = 10;
 
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimMethodStateMachineTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimMethodStateMachineTest.java
similarity index 74%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimMethodStateMachineTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimMethodStateMachineTest.java
index 8aa4131..ac1d01c 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimMethodStateMachineTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimMethodStateMachineTest.java
@@ -14,19 +14,19 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_CLIENT_ERROR_UNABLE_TO_PROCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_PRE_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_NOTIFICATION;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_START;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_CLIENT_ERROR_UNABLE_TO_PROCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_PRE_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_NOTIFICATION;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_START;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -39,21 +39,21 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
+import android.net.eap.EapSessionConfig.EapSimConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapSessionConfig.EapSimConfig;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.message.simaka.EapSimTypeData;
-import com.android.ike.eap.message.simaka.EapSimTypeData.EapSimTypeDataDecoder;
-import com.android.ike.eap.statemachine.EapSimMethodStateMachine.CreatedState;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData.EapSimTypeDataDecoder;
+import com.android.internal.net.eap.statemachine.EapSimMethodStateMachine.CreatedState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimStartStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimStartStateTest.java
similarity index 74%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimStartStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimStartStateTest.java
index 4965c8f..ccb746a 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimStartStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimStartStateTest.java
@@ -14,26 +14,26 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.message.EapData.EAP_IDENTITY;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_IDENTITY;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_RESPONSE_WITHOUT_IDENTITY;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.IMSI;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ENCR_DATA;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_IV;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.EAP_AT_VERSION_LIST;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_START;
-import static com.android.ike.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT;
+import static com.android.internal.net.eap.message.EapData.EAP_IDENTITY;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_IDENTITY;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_RESPONSE_WITHOUT_IDENTITY;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.IMSI;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ANY_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_ENCR_DATA;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_IV;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_MAC;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_PERMANENT_ID_REQ;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.EAP_AT_VERSION_LIST;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_START;
+import static com.android.internal.net.eap.message.simaka.attributes.EapTestAttributeDefinitions.NONCE_MT;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertFalse;
@@ -46,27 +46,27 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.exceptions.simaka.EapSimAkaIdentityUnavailableException;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtMac;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNonceMt;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.message.simaka.EapSimTypeData;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.FinalState;
-import com.android.ike.eap.statemachine.EapSimMethodStateMachine.ChallengeState;
-import com.android.ike.eap.statemachine.EapSimMethodStateMachine.StartState;
-import com.android.ike.utils.Log;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.exceptions.simaka.EapSimAkaIdentityUnavailableException;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtAnyIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtIdentity;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtMac;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNonceMt;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtPermanentIdReq;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtVersionList;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.FinalState;
+import com.android.internal.net.eap.statemachine.EapSimMethodStateMachine.ChallengeState;
+import com.android.internal.net.eap.statemachine.EapSimMethodStateMachine.StartState;
+import com.android.internal.net.utils.Log;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimStateTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimStateTest.java
index 9a0a3c2..d8d1841 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapSimStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapSimStateTest.java
@@ -14,20 +14,20 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
-import static com.android.ike.eap.message.EapData.EAP_NOTIFICATION;
-import static com.android.ike.eap.message.EapData.EAP_TYPE_SIM;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_CLIENT_ERROR_INSUFFICIENT_CHALLENGES;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_RESPONSE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_PRE_CHALLENGE;
-import static com.android.ike.eap.message.simaka.EapSimTypeData.EAP_SIM_NOTIFICATION;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.eap.message.EapData.EAP_NOTIFICATION;
+import static com.android.internal.net.eap.message.EapData.EAP_TYPE_SIM;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_CLIENT_ERROR_INSUFFICIENT_CHALLENGES;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SIM_NOTIFICATION_RESPONSE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification.GENERAL_FAILURE_PRE_CHALLENGE;
+import static com.android.internal.net.eap.message.simaka.EapSimTypeData.EAP_SIM_NOTIFICATION;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -38,19 +38,19 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
+import android.net.eap.EapSessionConfig.EapSimConfig;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapSessionConfig.EapSimConfig;
-import com.android.ike.eap.message.EapData;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
-import com.android.ike.eap.message.simaka.EapSimAkaAttribute.AtNotification;
-import com.android.ike.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
-import com.android.ike.eap.message.simaka.EapSimTypeData;
-import com.android.ike.eap.message.simaka.EapSimTypeData.EapSimTypeDataDecoder;
-import com.android.ike.eap.statemachine.EapMethodStateMachine.EapMethodState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.message.EapData;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtClientErrorCode;
+import com.android.internal.net.eap.message.simaka.EapSimAkaAttribute.AtNotification;
+import com.android.internal.net.eap.message.simaka.EapSimAkaTypeData.DecodeResult;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData;
+import com.android.internal.net.eap.message.simaka.EapSimTypeData.EapSimTypeDataDecoder;
+import com.android.internal.net.eap.statemachine.EapMethodStateMachine.EapMethodState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapStateMachineTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapStateMachineTest.java
similarity index 77%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapStateMachineTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapStateMachineTest.java
index 4ef2a6d..288fc85 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapStateMachineTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapStateMachineTest.java
@@ -14,24 +14,24 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
 import static androidx.test.InstrumentationRegistry.getInstrumentation;
 
-import static com.android.ike.eap.EapTestUtils.getDummyEapSessionConfig;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SUCCESS_PACKET;
+import static com.android.internal.net.eap.EapTestUtils.getDummyEapSessionConfig;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SUCCESS_PACKET;
 
 import static org.junit.Assert.assertTrue;
 
 import android.content.Context;
+import android.net.eap.EapSessionConfig;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapSessionConfig;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.statemachine.EapStateMachine.CreatedState;
-import com.android.ike.eap.statemachine.EapStateMachine.FailureState;
-import com.android.ike.eap.statemachine.EapStateMachine.SuccessState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.statemachine.EapStateMachine.CreatedState;
+import com.android.internal.net.eap.statemachine.EapStateMachine.FailureState;
+import com.android.internal.net.eap.statemachine.EapStateMachine.SuccessState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapStateTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/EapStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapStateTest.java
index ed6e08a..0193cb4 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/EapStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/EapStateTest.java
@@ -14,30 +14,30 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
 import static androidx.test.InstrumentationRegistry.getInstrumentation;
 
-import static com.android.ike.eap.EapTestUtils.getDummyEapSimSessionConfig;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_MD5_CHALLENGE;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_NAK_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NAK_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.REQUEST_UNSUPPORTED_TYPE_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.SHORT_PACKET;
+import static com.android.internal.net.eap.EapTestUtils.getDummyEapSimSessionConfig;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_MD5_CHALLENGE;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_NAK_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NAK_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.REQUEST_UNSUPPORTED_TYPE_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.SHORT_PACKET;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
 
 import android.content.Context;
+import android.net.eap.EapSessionConfig;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapSessionConfig;
-import com.android.ike.eap.exceptions.EapInvalidPacketLengthException;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.statemachine.EapStateMachine.EapState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.exceptions.EapInvalidPacketLengthException;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.statemachine.EapStateMachine.EapState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/IdentityStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/IdentityStateTest.java
similarity index 75%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/IdentityStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/IdentityStateTest.java
index 6ba04e9..abe4e82 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/IdentityStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/IdentityStateTest.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
-import static com.android.ike.eap.EapTestUtils.getDummyEapSessionConfig;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_IDENTITY;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_IDENTITY_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_IDENTITY_DEFAULT_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_IDENTITY_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.EapTestUtils.getDummyEapSessionConfig;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_IDENTITY;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_IDENTITY_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_IDENTITY_DEFAULT_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_IDENTITY_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
@@ -33,9 +33,9 @@
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.statemachine.EapStateMachine.MethodState;
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.statemachine.EapStateMachine.MethodState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/eap/statemachine/MethodStateTest.java b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/MethodStateTest.java
similarity index 76%
rename from tests/iketests/src/java/com/android/ike/eap/statemachine/MethodStateTest.java
rename to tests/iketests/src/java/com/android/internal/net/eap/statemachine/MethodStateTest.java
index c719e7f..9df06e5 100644
--- a/tests/iketests/src/java/com/android/ike/eap/statemachine/MethodStateTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/eap/statemachine/MethodStateTest.java
@@ -14,26 +14,26 @@
  * limitations under the License.
  */
 
-package com.android.ike.eap.statemachine;
+package com.android.internal.net.eap.statemachine;
 
 import static android.telephony.TelephonyManager.APPTYPE_USIM;
 
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_FAILURE;
-import static com.android.ike.eap.message.EapMessage.EAP_CODE_SUCCESS;
-import static com.android.ike.eap.message.EapMessage.EAP_HEADER_LENGTH;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_REQUEST;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_FAILURE_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_AKA;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_IDENTITY_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_MSCHAP_V2;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NAK_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EAP_SUCCESS_PACKET;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.EMSK;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.ID_INT;
-import static com.android.ike.eap.message.EapTestMessageDefinitions.MSK;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_FAILURE;
+import static com.android.internal.net.eap.message.EapMessage.EAP_CODE_SUCCESS;
+import static com.android.internal.net.eap.message.EapMessage.EAP_HEADER_LENGTH;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_AKA_PRIME_REQUEST;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_FAILURE_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_AKA;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_IDENTITY_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_MSCHAP_V2;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_REQUEST_SIM_START_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NAK_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_RESPONSE_NOTIFICATION_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EAP_SUCCESS_PACKET;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.EMSK;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.ID_INT;
+import static com.android.internal.net.eap.message.EapTestMessageDefinitions.MSK;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertTrue;
@@ -43,17 +43,18 @@
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.eap.EapResult;
-import com.android.ike.eap.EapResult.EapError;
-import com.android.ike.eap.EapResult.EapFailure;
-import com.android.ike.eap.EapResult.EapResponse;
-import com.android.ike.eap.EapResult.EapSuccess;
-import com.android.ike.eap.EapSessionConfig;
-import com.android.ike.eap.exceptions.EapInvalidRequestException;
-import com.android.ike.eap.message.EapMessage;
-import com.android.ike.eap.statemachine.EapStateMachine.FailureState;
-import com.android.ike.eap.statemachine.EapStateMachine.MethodState;
-import com.android.ike.eap.statemachine.EapStateMachine.SuccessState;
+import android.net.eap.EapSessionConfig;
+
+import com.android.internal.net.eap.EapResult;
+import com.android.internal.net.eap.EapResult.EapError;
+import com.android.internal.net.eap.EapResult.EapFailure;
+import com.android.internal.net.eap.EapResult.EapResponse;
+import com.android.internal.net.eap.EapResult.EapSuccess;
+import com.android.internal.net.eap.exceptions.EapInvalidRequestException;
+import com.android.internal.net.eap.message.EapMessage;
+import com.android.internal.net.eap.statemachine.EapStateMachine.FailureState;
+import com.android.internal.net.eap.statemachine.EapStateMachine.MethodState;
+import com.android.internal.net.eap.statemachine.EapStateMachine.SuccessState;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/ChildSessionStateMachineTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/ChildSessionStateMachineTest.java
similarity index 93%
rename from tests/iketests/src/java/com/android/ike/ikev2/ChildSessionStateMachineTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/ChildSessionStateMachineTest.java
index 1b6276a..f6c32ee 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/ChildSessionStateMachineTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/ChildSessionStateMachineTest.java
@@ -14,30 +14,30 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INTERNAL_ADDRESS_FAILURE;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_NO_PROPOSAL_CHOSEN;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
 import static android.system.OsConstants.AF_INET;
 
-import static com.android.ike.ikev2.ChildSessionStateMachine.CMD_FORCE_TRANSITION;
-import static com.android.ike.ikev2.IkeSessionStateMachine.CMD_LOCAL_REQUEST_REKEY_CHILD;
-import static com.android.ike.ikev2.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_DELETE_CHILD;
-import static com.android.ike.ikev2.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_REKEY_CHILD;
-import static com.android.ike.ikev2.IkeSessionStateMachine.REKEY_DELETE_TIMEOUT_MS;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INTERNAL_ADDRESS_FAILURE;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_NO_PROPOSAL_CHOSEN;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
-import static com.android.ike.ikev2.message.IkeHeader.EXCHANGE_TYPE_CREATE_CHILD_SA;
-import static com.android.ike.ikev2.message.IkeHeader.EXCHANGE_TYPE_INFORMATIONAL;
-import static com.android.ike.ikev2.message.IkeNotifyPayload.NOTIFY_TYPE_REKEY_SA;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_CP;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_DELETE;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_KE;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_NONCE;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_NOTIFY;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_SA;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_TS_INITIATOR;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_TS_RESPONDER;
-import static com.android.ike.ikev2.message.IkePayload.PROTOCOL_ID_ESP;
+import static com.android.internal.net.ipsec.ike.ChildSessionStateMachine.CMD_FORCE_TRANSITION;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.CMD_LOCAL_REQUEST_REKEY_CHILD;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_DELETE_CHILD;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_REKEY_CHILD;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.REKEY_DELETE_TIMEOUT_MS;
+import static com.android.internal.net.ipsec.ike.message.IkeHeader.EXCHANGE_TYPE_CREATE_CHILD_SA;
+import static com.android.internal.net.ipsec.ike.message.IkeHeader.EXCHANGE_TYPE_INFORMATIONAL;
+import static com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NOTIFY_TYPE_REKEY_SA;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_CP;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_DELETE;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_KE;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_NONCE;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_NOTIFY;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_SA;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_TS_INITIATOR;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_TS_RESPONDER;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PROTOCOL_ID_ESP;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -68,45 +68,53 @@
 import android.net.IpSecManager.UdpEncapsulationSocket;
 import android.net.IpSecTransform;
 import android.net.LinkAddress;
+import android.net.ipsec.ike.ChildSaProposal;
+import android.net.ipsec.ike.ChildSessionCallback;
+import android.net.ipsec.ike.ChildSessionConfiguration;
+import android.net.ipsec.ike.ChildSessionOptions;
+import android.net.ipsec.ike.IkeManager;
+import android.net.ipsec.ike.IkeTrafficSelector;
+import android.net.ipsec.ike.SaProposal;
+import android.net.ipsec.ike.TunnelModeChildSessionOptions;
+import android.net.ipsec.ike.exceptions.IkeException;
+import android.net.ipsec.ike.exceptions.IkeInternalException;
 import android.os.test.TestLooper;
 
 import androidx.test.InstrumentationRegistry;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.ChildSessionStateMachine.CreateChildSaHelper;
-import com.android.ike.ikev2.ChildSessionStateMachine.IChildSessionSmCallback;
-import com.android.ike.ikev2.IkeLocalRequestScheduler.ChildLocalRequest;
-import com.android.ike.ikev2.SaRecord.ChildSaRecord;
-import com.android.ike.ikev2.SaRecord.ChildSaRecordConfig;
-import com.android.ike.ikev2.SaRecord.ISaRecordHelper;
-import com.android.ike.ikev2.SaRecord.SaRecordHelper;
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.exceptions.IkeException;
-import com.android.ike.ikev2.exceptions.IkeInternalException;
-import com.android.ike.ikev2.exceptions.InvalidKeException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.exceptions.NoValidProposalChosenException;
-import com.android.ike.ikev2.message.IkeConfigPayload;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttribute;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Address;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Netmask;
-import com.android.ike.ikev2.message.IkeDeletePayload;
-import com.android.ike.ikev2.message.IkeKePayload;
-import com.android.ike.ikev2.message.IkeMessage;
-import com.android.ike.ikev2.message.IkeNoncePayload;
-import com.android.ike.ikev2.message.IkeNotifyPayload;
-import com.android.ike.ikev2.message.IkePayload;
-import com.android.ike.ikev2.message.IkeSaPayload;
-import com.android.ike.ikev2.message.IkeSaPayload.DhGroupTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
-import com.android.ike.ikev2.message.IkeTestUtils;
-import com.android.ike.ikev2.message.IkeTsPayload;
-import com.android.ike.ikev2.testutils.MockIpSecTestUtils;
-import com.android.ike.utils.Log;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.ChildSessionStateMachine.CreateChildSaHelper;
+import com.android.internal.net.ipsec.ike.ChildSessionStateMachine.IChildSessionSmCallback;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.ChildLocalRequest;
+import com.android.internal.net.ipsec.ike.SaRecord.ChildSaRecord;
+import com.android.internal.net.ipsec.ike.SaRecord.ChildSaRecordConfig;
+import com.android.internal.net.ipsec.ike.SaRecord.ISaRecordHelper;
+import com.android.internal.net.ipsec.ike.SaRecord.SaRecordHelper;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidKeException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.exceptions.NoValidProposalChosenException;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttribute;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Address;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Netmask;
+import com.android.internal.net.ipsec.ike.message.IkeDeletePayload;
+import com.android.internal.net.ipsec.ike.message.IkeKePayload;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeNoncePayload;
+import com.android.internal.net.ipsec.ike.message.IkeNotifyPayload;
+import com.android.internal.net.ipsec.ike.message.IkePayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.DhGroupTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
+import com.android.internal.net.ipsec.ike.message.IkeTestUtils;
+import com.android.internal.net.ipsec.ike.message.IkeTsPayload;
+import com.android.internal.net.ipsec.ike.testutils.MockIpSecTestUtils;
+import com.android.internal.net.utils.Log;
 import com.android.server.IpSecService;
 
 import libcore.net.InetAddressUtils;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/IkeLocalRequestSchedulerTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/IkeLocalRequestSchedulerTest.java
similarity index 93%
rename from tests/iketests/src/java/com/android/ike/ikev2/IkeLocalRequestSchedulerTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/IkeLocalRequestSchedulerTest.java
index 4b3442e..3406d01 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/IkeLocalRequestSchedulerTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/IkeLocalRequestSchedulerTest.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
-import static com.android.ike.ikev2.IkeSessionStateMachine.CMD_LOCAL_REQUEST_REKEY_IKE;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.CMD_LOCAL_REQUEST_REKEY_IKE;
 
 import static org.mockito.Matchers.any;
 import static org.mockito.Matchers.eq;
@@ -26,8 +26,8 @@
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 
-import com.android.ike.ikev2.IkeLocalRequestScheduler.IProcedureConsumer;
-import com.android.ike.ikev2.IkeLocalRequestScheduler.LocalRequest;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.IProcedureConsumer;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.LocalRequest;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/IkeSessionStateMachineTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/IkeSessionStateMachineTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/IkeSessionStateMachineTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/IkeSessionStateMachineTest.java
index 74b4003..94f4d62 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/IkeSessionStateMachineTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/IkeSessionStateMachineTest.java
@@ -14,29 +14,30 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
-import static com.android.ike.ikev2.IkeSessionStateMachine.CMD_LOCAL_REQUEST_REKEY_IKE;
-import static com.android.ike.ikev2.IkeSessionStateMachine.CMD_RECEIVE_IKE_PACKET;
-import static com.android.ike.ikev2.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_DELETE_CHILD;
-import static com.android.ike.ikev2.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_REKEY_CHILD;
-import static com.android.ike.ikev2.IkeSessionStateMachine.RETRY_INTERVAL_MS;
-import static com.android.ike.ikev2.IkeSessionStateMachine.SA_SOFT_LIFETIME_MS;
-import static com.android.ike.ikev2.IkeSessionStateMachine.TEMP_FAILURE_RETRY_TIMEOUT_MS;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_CHILD_SA_NOT_FOUND;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_SYNTAX;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_NO_ADDITIONAL_SAS;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_NO_PROPOSAL_CHOSEN;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_UNSUPPORTED_CRITICAL_PAYLOAD;
-import static com.android.ike.ikev2.message.IkeHeader.EXCHANGE_TYPE_CREATE_CHILD_SA;
-import static com.android.ike.ikev2.message.IkeHeader.EXCHANGE_TYPE_INFORMATIONAL;
-import static com.android.ike.ikev2.message.IkeNotifyPayload.NOTIFY_TYPE_IKEV2_FRAGMENTATION_SUPPORTED;
-import static com.android.ike.ikev2.message.IkeNotifyPayload.NOTIFY_TYPE_NAT_DETECTION_DESTINATION_IP;
-import static com.android.ike.ikev2.message.IkeNotifyPayload.NOTIFY_TYPE_NAT_DETECTION_SOURCE_IP;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_AUTH;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_NOTIFY;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_SA;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_CHILD_SA_NOT_FOUND;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_SYNTAX;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_NO_ADDITIONAL_SAS;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_NO_PROPOSAL_CHOSEN;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_TEMPORARY_FAILURE;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_UNSUPPORTED_CRITICAL_PAYLOAD;
+
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.CMD_LOCAL_REQUEST_REKEY_IKE;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.CMD_RECEIVE_IKE_PACKET;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_DELETE_CHILD;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IKE_EXCHANGE_SUBTYPE_REKEY_CHILD;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.RETRY_INTERVAL_MS;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.SA_SOFT_LIFETIME_MS;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.TEMP_FAILURE_RETRY_TIMEOUT_MS;
+import static com.android.internal.net.ipsec.ike.message.IkeHeader.EXCHANGE_TYPE_CREATE_CHILD_SA;
+import static com.android.internal.net.ipsec.ike.message.IkeHeader.EXCHANGE_TYPE_INFORMATIONAL;
+import static com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NOTIFY_TYPE_IKEV2_FRAGMENTATION_SUPPORTED;
+import static com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NOTIFY_TYPE_NAT_DETECTION_DESTINATION_IP;
+import static com.android.internal.net.ipsec.ike.message.IkeNotifyPayload.NOTIFY_TYPE_NAT_DETECTION_SOURCE_IP;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_AUTH;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_NOTIFY;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_SA;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -67,68 +68,78 @@
 import android.content.Context;
 import android.net.IpSecManager;
 import android.net.IpSecManager.UdpEncapsulationSocket;
+import android.net.eap.EapSessionConfig;
+import android.net.ipsec.ike.ChildSaProposal;
+import android.net.ipsec.ike.ChildSessionCallback;
+import android.net.ipsec.ike.ChildSessionOptions;
+import android.net.ipsec.ike.IkeIpv4AddrIdentification;
+import android.net.ipsec.ike.IkeManager;
+import android.net.ipsec.ike.IkeSaProposal;
+import android.net.ipsec.ike.IkeSessionCallback;
+import android.net.ipsec.ike.IkeSessionOptions;
+import android.net.ipsec.ike.SaProposal;
+import android.net.ipsec.ike.TransportModeChildSessionOptions;
+import android.net.ipsec.ike.exceptions.IkeException;
+import android.net.ipsec.ike.exceptions.IkeInternalException;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.os.test.TestLooper;
 import android.telephony.TelephonyManager;
 
-import com.android.ike.TestUtils;
-import com.android.ike.eap.EapAuthenticator;
-import com.android.ike.eap.EapSessionConfig;
-import com.android.ike.eap.IEapCallback;
-import com.android.ike.ikev2.ChildSessionStateMachine.IChildSessionSmCallback;
-import com.android.ike.ikev2.ChildSessionStateMachineFactory.ChildSessionFactoryHelper;
-import com.android.ike.ikev2.ChildSessionStateMachineFactory.IChildSessionFactoryHelper;
-import com.android.ike.ikev2.IkeLocalRequestScheduler.ChildLocalRequest;
-import com.android.ike.ikev2.IkeLocalRequestScheduler.LocalRequest;
-import com.android.ike.ikev2.IkeSessionStateMachine.IkeSecurityParameterIndex;
-import com.android.ike.ikev2.IkeSessionStateMachine.ReceivedIkePacket;
-import com.android.ike.ikev2.SaRecord.ISaRecordHelper;
-import com.android.ike.ikev2.SaRecord.IkeSaRecord;
-import com.android.ike.ikev2.SaRecord.IkeSaRecordConfig;
-import com.android.ike.ikev2.SaRecord.SaRecordHelper;
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.exceptions.IkeException;
-import com.android.ike.ikev2.exceptions.IkeInternalException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.exceptions.NoValidProposalChosenException;
-import com.android.ike.ikev2.exceptions.UnsupportedCriticalPayloadException;
-import com.android.ike.ikev2.message.IkeAuthDigitalSignPayload;
-import com.android.ike.ikev2.message.IkeAuthPayload;
-import com.android.ike.ikev2.message.IkeAuthPskPayload;
-import com.android.ike.ikev2.message.IkeCertX509CertPayload;
-import com.android.ike.ikev2.message.IkeDeletePayload;
-import com.android.ike.ikev2.message.IkeEapPayload;
-import com.android.ike.ikev2.message.IkeHeader;
-import com.android.ike.ikev2.message.IkeIdPayload;
-import com.android.ike.ikev2.message.IkeInformationalPayload;
-import com.android.ike.ikev2.message.IkeKePayload;
-import com.android.ike.ikev2.message.IkeMessage;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResult;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultOk;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultPartial;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultProtectedError;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultUnprotectedError;
-import com.android.ike.ikev2.message.IkeMessage.IIkeMessageHelper;
-import com.android.ike.ikev2.message.IkeMessage.IkeMessageHelper;
-import com.android.ike.ikev2.message.IkeNoncePayload;
-import com.android.ike.ikev2.message.IkeNotifyPayload;
-import com.android.ike.ikev2.message.IkePayload;
-import com.android.ike.ikev2.message.IkeSaPayload;
-import com.android.ike.ikev2.message.IkeSaPayload.DhGroupTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
-import com.android.ike.ikev2.message.IkeSkfPayload;
-import com.android.ike.ikev2.message.IkeTestUtils;
-import com.android.ike.ikev2.message.IkeTsPayload;
-import com.android.ike.ikev2.testutils.CertUtils;
-import com.android.ike.ikev2.testutils.MockIpSecTestUtils;
-import com.android.ike.ikev2.utils.Retransmitter;
-import com.android.ike.ikev2.utils.Retransmitter.IBackoffTimeoutCalculator;
-import com.android.ike.utils.Log;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.eap.EapAuthenticator;
+import com.android.internal.net.eap.IEapCallback;
+import com.android.internal.net.ipsec.ike.ChildSessionStateMachine.IChildSessionSmCallback;
+import com.android.internal.net.ipsec.ike.ChildSessionStateMachineFactory.ChildSessionFactoryHelper;
+import com.android.internal.net.ipsec.ike.ChildSessionStateMachineFactory.IChildSessionFactoryHelper;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.ChildLocalRequest;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.LocalRequest;
+import com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IkeSecurityParameterIndex;
+import com.android.internal.net.ipsec.ike.IkeSessionStateMachine.ReceivedIkePacket;
+import com.android.internal.net.ipsec.ike.SaRecord.ISaRecordHelper;
+import com.android.internal.net.ipsec.ike.SaRecord.IkeSaRecord;
+import com.android.internal.net.ipsec.ike.SaRecord.IkeSaRecordConfig;
+import com.android.internal.net.ipsec.ike.SaRecord.SaRecordHelper;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.exceptions.NoValidProposalChosenException;
+import com.android.internal.net.ipsec.ike.exceptions.UnsupportedCriticalPayloadException;
+import com.android.internal.net.ipsec.ike.message.IkeAuthDigitalSignPayload;
+import com.android.internal.net.ipsec.ike.message.IkeAuthPayload;
+import com.android.internal.net.ipsec.ike.message.IkeAuthPskPayload;
+import com.android.internal.net.ipsec.ike.message.IkeCertX509CertPayload;
+import com.android.internal.net.ipsec.ike.message.IkeDeletePayload;
+import com.android.internal.net.ipsec.ike.message.IkeEapPayload;
+import com.android.internal.net.ipsec.ike.message.IkeHeader;
+import com.android.internal.net.ipsec.ike.message.IkeIdPayload;
+import com.android.internal.net.ipsec.ike.message.IkeInformationalPayload;
+import com.android.internal.net.ipsec.ike.message.IkeKePayload;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResult;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultOk;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultPartial;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultProtectedError;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultUnprotectedError;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.IIkeMessageHelper;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.IkeMessageHelper;
+import com.android.internal.net.ipsec.ike.message.IkeNoncePayload;
+import com.android.internal.net.ipsec.ike.message.IkeNotifyPayload;
+import com.android.internal.net.ipsec.ike.message.IkePayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.DhGroupTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSkfPayload;
+import com.android.internal.net.ipsec.ike.message.IkeTestUtils;
+import com.android.internal.net.ipsec.ike.message.IkeTsPayload;
+import com.android.internal.net.ipsec.ike.testutils.CertUtils;
+import com.android.internal.net.ipsec.ike.testutils.MockIpSecTestUtils;
+import com.android.internal.net.ipsec.ike.utils.Retransmitter;
+import com.android.internal.net.ipsec.ike.utils.Retransmitter.IBackoffTimeoutCalculator;
+import com.android.internal.net.utils.Log;
 import com.android.internal.util.State;
 
 import libcore.net.InetAddressUtils;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/IkeSocketTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/IkeSocketTest.java
similarity index 98%
rename from tests/iketests/src/java/com/android/ike/ikev2/IkeSocketTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/IkeSocketTest.java
index 11db7df..1b8761f 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/IkeSocketTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/IkeSocketTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -39,9 +39,9 @@
 
 import androidx.test.InstrumentationRegistry;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.IkeSocket.PacketReceiver;
-import com.android.ike.ikev2.message.IkeHeader;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.IkeSocket.PacketReceiver;
+import com.android.internal.net.ipsec.ike.message.IkeHeader;
 
 import org.junit.After;
 import org.junit.Before;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/SaRecordTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/SaRecordTest.java
similarity index 90%
rename from tests/iketests/src/java/com/android/ike/ikev2/SaRecordTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/SaRecordTest.java
index e3a6955..646b9d9 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/SaRecordTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/SaRecordTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2;
+package com.android.internal.net.ipsec.ike;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -32,26 +32,27 @@
 import android.net.IpSecManager.SecurityParameterIndex;
 import android.net.IpSecManager.UdpEncapsulationSocket;
 import android.net.IpSecTransform;
+import android.net.ipsec.ike.SaProposal;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.IkeLocalRequestScheduler.ChildLocalRequest;
-import com.android.ike.ikev2.IkeLocalRequestScheduler.LocalRequest;
-import com.android.ike.ikev2.IkeSessionStateMachine.IkeSecurityParameterIndex;
-import com.android.ike.ikev2.SaRecord.ChildSaRecord;
-import com.android.ike.ikev2.SaRecord.ChildSaRecordConfig;
-import com.android.ike.ikev2.SaRecord.IIpSecTransformHelper;
-import com.android.ike.ikev2.SaRecord.IkeSaRecord;
-import com.android.ike.ikev2.SaRecord.IkeSaRecordConfig;
-import com.android.ike.ikev2.SaRecord.IpSecTransformHelper;
-import com.android.ike.ikev2.SaRecord.SaRecordHelper;
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.message.IkeMessage;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
-import com.android.ike.ikev2.testutils.MockIpSecTestUtils;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.ChildLocalRequest;
+import com.android.internal.net.ipsec.ike.IkeLocalRequestScheduler.LocalRequest;
+import com.android.internal.net.ipsec.ike.IkeSessionStateMachine.IkeSecurityParameterIndex;
+import com.android.internal.net.ipsec.ike.SaRecord.ChildSaRecord;
+import com.android.internal.net.ipsec.ike.SaRecord.ChildSaRecordConfig;
+import com.android.internal.net.ipsec.ike.SaRecord.IIpSecTransformHelper;
+import com.android.internal.net.ipsec.ike.SaRecord.IkeSaRecord;
+import com.android.internal.net.ipsec.ike.SaRecord.IkeSaRecordConfig;
+import com.android.internal.net.ipsec.ike.SaRecord.IpSecTransformHelper;
+import com.android.internal.net.ipsec.ike.SaRecord.SaRecordHelper;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
+import com.android.internal.net.ipsec.ike.testutils.MockIpSecTestUtils;
 import com.android.server.IpSecService;
 
 import libcore.net.InetAddressUtils;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeCombinedModeCipherTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeCombinedModeCipherTest.java
similarity index 94%
rename from tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeCombinedModeCipherTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeCombinedModeCipherTest.java
index a7ff299..a3b2253 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeCombinedModeCipherTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeCombinedModeCipherTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -23,11 +23,11 @@
 import static org.junit.Assert.fail;
 
 import android.net.IpSecAlgorithm;
+import android.net.ipsec.ike.SaProposal;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.message.IkeMessage;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeMacIntegrityTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacIntegrityTest.java
similarity index 94%
rename from tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeMacIntegrityTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacIntegrityTest.java
index d3c857c..ed62566 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeMacIntegrityTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacIntegrityTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertFalse;
@@ -22,11 +22,11 @@
 import static org.junit.Assert.fail;
 
 import android.net.IpSecAlgorithm;
+import android.net.ipsec.ike.SaProposal;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.message.IkeMessage;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeMacPrfTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacPrfTest.java
similarity index 96%
rename from tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeMacPrfTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacPrfTest.java
index 0de72fa..717886f 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeMacPrfTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeMacPrfTest.java
@@ -14,15 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertFalse;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.message.IkeMessage;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
+import android.net.ipsec.ike.SaProposal;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeNormalModeCipherTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeNormalModeCipherTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeNormalModeCipherTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeNormalModeCipherTest.java
index 8119d7a..3f3a0e1 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/crypto/IkeNormalModeCipherTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/crypto/IkeNormalModeCipherTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.crypto;
+package com.android.internal.net.ipsec.ike.crypto;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -23,11 +23,11 @@
 import static org.junit.Assert.fail;
 
 import android.net.IpSecAlgorithm;
+import android.net.ipsec.ike.SaProposal;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.message.IkeMessage;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeAuthDigitalSignPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthDigitalSignPayloadTest.java
similarity index 92%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeAuthDigitalSignPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthDigitalSignPayloadTest.java
index 239bd50..96921c3 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeAuthDigitalSignPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthDigitalSignPayloadTest.java
@@ -14,21 +14,22 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.ikev2.message.IkeAuthDigitalSignPayload.SIGNATURE_ALGO_RSA_SHA2_256;
+import static com.android.internal.net.ipsec.ike.message.IkeAuthDigitalSignPayload.SIGNATURE_ALGO_RSA_SHA2_256;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
-import com.android.ike.ikev2.testutils.CertUtils;
+import android.net.ipsec.ike.SaProposal;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
+import com.android.internal.net.ipsec.ike.testutils.CertUtils;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeAuthPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPayloadTest.java
similarity index 94%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeAuthPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPayloadTest.java
index f2de260..989b468 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeAuthPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPayloadTest.java
@@ -14,18 +14,19 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
+import android.net.ipsec.ike.SaProposal;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeAuthPskPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPskPayloadTest.java
similarity index 94%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeAuthPskPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPskPayloadTest.java
index d514b69..cad6052 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeAuthPskPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeAuthPskPayloadTest.java
@@ -14,17 +14,18 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.crypto.IkeMacPrf;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
+import android.net.ipsec.ike.SaProposal;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacPrf;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeCertPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeCertPayloadTest.java
similarity index 96%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeCertPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeCertPayloadTest.java
index 1b641fc..2bb72e3 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeCertPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeCertPayloadTest.java
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.fail;
 
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.testutils.CertUtils;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.testutils.CertUtils;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeCertX509CertPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeCertX509CertPayloadTest.java
similarity index 97%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeCertX509CertPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeCertX509CertPayloadTest.java
index 8cabaeb..ef6ec28 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeCertX509CertPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeCertX509CertPayloadTest.java
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeConfigPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeConfigPayloadTest.java
similarity index 90%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeConfigPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeConfigPayloadTest.java
index e8a67d7..9fc3222 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeConfigPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeConfigPayloadTest.java
@@ -14,20 +14,20 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_ADDRESS;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DHCP;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DNS;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_NETMASK;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_SUBNET;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_ADDRESS;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_DNS;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_SUBNET;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_TYPE_REPLY;
-import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_TYPE_REQUEST;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_CP;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_NOTIFY;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_ADDRESS;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DHCP;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DNS;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_NETMASK;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_SUBNET;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_ADDRESS;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_DNS;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP6_SUBNET;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_TYPE_REPLY;
+import static com.android.internal.net.ipsec.ike.message.IkeConfigPayload.CONFIG_TYPE_REQUEST;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_CP;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_NOTIFY;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -42,19 +42,19 @@
 
 import android.net.LinkAddress;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttrIpv4AddressBase;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttrIpv6AddrRangeBase;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttribute;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Address;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Dhcp;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Dns;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Netmask;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Subnet;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv6Address;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv6Dns;
-import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv6Subnet;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttrIpv4AddressBase;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttrIpv6AddrRangeBase;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttribute;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Address;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Dhcp;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Dns;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Netmask;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv4Subnet;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv6Address;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv6Dns;
+import com.android.internal.net.ipsec.ike.message.IkeConfigPayload.ConfigAttributeIpv6Subnet;
 
 import libcore.net.InetAddressUtils;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeDeletePayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeDeletePayloadTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeDeletePayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeDeletePayloadTest.java
index ddd1aa9..6be5336 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeDeletePayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeDeletePayloadTest.java
@@ -14,20 +14,20 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.ikev2.message.IkePayload.PROTOCOL_ID_ESP;
-import static com.android.ike.ikev2.message.IkePayload.PROTOCOL_ID_IKE;
-import static com.android.ike.ikev2.message.IkePayload.SPI_LEN_IPSEC;
-import static com.android.ike.ikev2.message.IkePayload.SPI_LEN_NOT_INCLUDED;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PROTOCOL_ID_ESP;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PROTOCOL_ID_IKE;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.SPI_LEN_IPSEC;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.SPI_LEN_NOT_INCLUDED;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeEapPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeEapPayloadTest.java
similarity index 94%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeEapPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeEapPayloadTest.java
index df89ce0..fff82b6 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeEapPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeEapPayloadTest.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.TestUtils.hexStringToByteArray;
+import static com.android.internal.net.TestUtils.hexStringToByteArray;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeEncryptedPayloadBodyTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeEncryptedPayloadBodyTest.java
similarity index 97%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeEncryptedPayloadBodyTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeEncryptedPayloadBodyTest.java
index c43a859..36c7648 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeEncryptedPayloadBodyTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeEncryptedPayloadBodyTest.java
@@ -13,20 +13,21 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeCombinedModeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.crypto.IkeNormalModeCipher;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
+import android.net.ipsec.ike.SaProposal;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeCombinedModeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.crypto.IkeNormalModeCipher;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeHeaderTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeHeaderTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeHeaderTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeHeaderTest.java
index f3c7a2b..4592815 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeHeaderTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeHeaderTest.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.exceptions.InvalidMajorVersionException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidMajorVersionException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeIdPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeIdPayloadTest.java
similarity index 94%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeIdPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeIdPayloadTest.java
index 14d0526..75552b3 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeIdPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeIdPayloadTest.java
@@ -14,20 +14,21 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.IkeFqdnIdentification;
-import com.android.ike.ikev2.IkeIdentification;
-import com.android.ike.ikev2.IkeIpv4AddrIdentification;
-import com.android.ike.ikev2.IkeIpv6AddrIdentification;
-import com.android.ike.ikev2.IkeKeyIdIdentification;
-import com.android.ike.ikev2.IkeRfc822AddrIdentification;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
+import android.net.ipsec.ike.IkeFqdnIdentification;
+import android.net.ipsec.ike.IkeIdentification;
+import android.net.ipsec.ike.IkeIpv4AddrIdentification;
+import android.net.ipsec.ike.IkeIpv6AddrIdentification;
+import android.net.ipsec.ike.IkeKeyIdIdentification;
+import android.net.ipsec.ike.IkeRfc822AddrIdentification;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeKePayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeKePayloadTest.java
similarity index 96%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeKePayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeKePayloadTest.java
index b1887bd..f5046dc 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeKePayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeKePayloadTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -22,11 +22,12 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.IkeDhParams;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.utils.BigIntegerUtils;
+import android.net.ipsec.ike.SaProposal;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.IkeDhParams;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.utils.BigIntegerUtils;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeMessageTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeMessageTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeMessageTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeMessageTest.java
index e999455..38b4152 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeMessageTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeMessageTest.java
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.ikev2.message.IkeMessage.DECODE_STATUS_OK;
-import static com.android.ike.ikev2.message.IkeMessage.DECODE_STATUS_PROTECTED_ERROR;
-import static com.android.ike.ikev2.message.IkeMessage.DECODE_STATUS_UNPROTECTED_ERROR;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_AUTH;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_ID_INITIATOR;
-import static com.android.ike.ikev2.message.IkePayload.PAYLOAD_TYPE_NO_NEXT;
-import static com.android.ike.ikev2.message.IkeTestUtils.makeDummySkfPayload;
+import static com.android.internal.net.ipsec.ike.message.IkeMessage.DECODE_STATUS_OK;
+import static com.android.internal.net.ipsec.ike.message.IkeMessage.DECODE_STATUS_PROTECTED_ERROR;
+import static com.android.internal.net.ipsec.ike.message.IkeMessage.DECODE_STATUS_UNPROTECTED_ERROR;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_AUTH;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_ID_INITIATOR;
+import static com.android.internal.net.ipsec.ike.message.IkePayload.PAYLOAD_TYPE_NO_NEXT;
+import static com.android.internal.net.ipsec.ike.message.IkeTestUtils.makeDummySkfPayload;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -44,20 +44,21 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaRecord.IkeSaRecord;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.crypto.IkeNormalModeCipher;
-import com.android.ike.ikev2.exceptions.IkeException;
-import com.android.ike.ikev2.exceptions.IkeInternalException;
-import com.android.ike.ikev2.exceptions.InvalidMessageIdException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.exceptions.UnsupportedCriticalPayloadException;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResult;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultError;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultOk;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultPartial;
-import com.android.ike.ikev2.message.IkePayloadFactory.IIkePayloadDecoder;
+import android.net.ipsec.ike.exceptions.IkeException;
+import android.net.ipsec.ike.exceptions.IkeInternalException;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.SaRecord.IkeSaRecord;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.crypto.IkeNormalModeCipher;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidMessageIdException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.exceptions.UnsupportedCriticalPayloadException;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResult;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultError;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultOk;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultPartial;
+import com.android.internal.net.ipsec.ike.message.IkePayloadFactory.IIkePayloadDecoder;
 
 import org.junit.After;
 import org.junit.Before;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeNoncePayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeNoncePayloadTest.java
similarity index 94%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeNoncePayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeNoncePayloadTest.java
index 1c3d193..dd92a45 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeNoncePayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeNoncePayloadTest.java
@@ -14,11 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 
-import com.android.ike.TestUtils;
+import com.android.internal.net.TestUtils;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeNotifyPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeNotifyPayloadTest.java
similarity index 93%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeNotifyPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeNotifyPayloadTest.java
index 99ce6b9..884c76e 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeNotifyPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeNotifyPayloadTest.java
@@ -14,11 +14,11 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_AUTHENTICATION_FAILED;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_KE_PAYLOAD;
-import static com.android.ike.ikev2.exceptions.IkeProtocolException.ERROR_TYPE_UNSUPPORTED_CRITICAL_PAYLOAD;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_AUTHENTICATION_FAILED;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_INVALID_KE_PAYLOAD;
+import static android.net.ipsec.ike.exceptions.IkeProtocolException.ERROR_TYPE_UNSUPPORTED_CRITICAL_PAYLOAD;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -26,13 +26,14 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.exceptions.AuthenticationFailedException;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidKeException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.exceptions.UnrecognizedIkeProtocolException;
+import android.net.ipsec.ike.SaProposal;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.exceptions.AuthenticationFailedException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidKeException;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.exceptions.UnrecognizedIkeProtocolException;
 
 import org.junit.Test;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeSaPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeSaPayloadTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeSaPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeSaPayloadTest.java
index 7a6bd4c..750ff46 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeSaPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeSaPayloadTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -33,31 +33,31 @@
 
 import android.net.IpSecManager;
 import android.net.IpSecSpiResponse;
+import android.net.ipsec.ike.ChildSaProposal;
+import android.net.ipsec.ike.IkeSaProposal;
+import android.net.ipsec.ike.SaProposal;
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.util.Pair;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.ChildSaProposal;
-import com.android.ike.ikev2.IkeSaProposal;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.exceptions.NoValidProposalChosenException;
-import com.android.ike.ikev2.message.IkeSaPayload.Attribute;
-import com.android.ike.ikev2.message.IkeSaPayload.AttributeDecoder;
-import com.android.ike.ikev2.message.IkeSaPayload.ChildProposal;
-import com.android.ike.ikev2.message.IkeSaPayload.DhGroupTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.EsnTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IkeProposal;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.KeyLengthAttribute;
-import com.android.ike.ikev2.message.IkeSaPayload.PrfTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.Proposal;
-import com.android.ike.ikev2.message.IkeSaPayload.Transform;
-import com.android.ike.ikev2.message.IkeSaPayload.TransformDecoder;
-import com.android.ike.ikev2.message.IkeSaPayload.UnrecognizedAttribute;
-import com.android.ike.ikev2.message.IkeSaPayload.UnrecognizedTransform;
-import com.android.ike.ikev2.testutils.MockIpSecTestUtils;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.exceptions.NoValidProposalChosenException;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.Attribute;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.AttributeDecoder;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.ChildProposal;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.DhGroupTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EsnTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IkeProposal;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.KeyLengthAttribute;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.PrfTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.Proposal;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.Transform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.TransformDecoder;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.UnrecognizedAttribute;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.UnrecognizedTransform;
+import com.android.internal.net.ipsec.ike.testutils.MockIpSecTestUtils;
 import com.android.server.IpSecService;
 
 import libcore.net.InetAddressUtils;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeSkPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeSkPayloadTest.java
similarity index 90%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeSkPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeSkPayloadTest.java
index f3af5b6..898db30 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeSkPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeSkPayloadTest.java
@@ -14,16 +14,17 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
+import android.net.ipsec.ike.SaProposal;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeSkfPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeSkfPayloadTest.java
similarity index 93%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeSkfPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeSkfPayloadTest.java
index f51d1e6..3374a7d 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeSkfPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeSkfPayloadTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
@@ -23,14 +23,15 @@
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.spy;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.SaProposal;
-import com.android.ike.ikev2.crypto.IkeCipher;
-import com.android.ike.ikev2.crypto.IkeMacIntegrity;
-import com.android.ike.ikev2.crypto.IkeNormalModeCipher;
-import com.android.ike.ikev2.exceptions.InvalidSyntaxException;
-import com.android.ike.ikev2.message.IkeSaPayload.EncryptionTransform;
-import com.android.ike.ikev2.message.IkeSaPayload.IntegrityTransform;
+import android.net.ipsec.ike.SaProposal;
+
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.crypto.IkeCipher;
+import com.android.internal.net.ipsec.ike.crypto.IkeMacIntegrity;
+import com.android.internal.net.ipsec.ike.crypto.IkeNormalModeCipher;
+import com.android.internal.net.ipsec.ike.exceptions.InvalidSyntaxException;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.EncryptionTransform;
+import com.android.internal.net.ipsec.ike.message.IkeSaPayload.IntegrityTransform;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeTestUtils.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeTestUtils.java
similarity index 86%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeTestUtils.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeTestUtils.java
index a87f8ad..0547437 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeTestUtils.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeTestUtils.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
-import static com.android.ike.ikev2.message.IkeMessage.DECODE_STATUS_UNPROTECTED_ERROR;
+import static com.android.internal.net.ipsec.ike.message.IkeMessage.DECODE_STATUS_UNPROTECTED_ERROR;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
@@ -24,12 +24,12 @@
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import android.net.ipsec.ike.exceptions.IkeProtocolException;
 import android.util.Pair;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.exceptions.IkeProtocolException;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResult;
-import com.android.ike.ikev2.message.IkeMessage.DecodeResultError;
+import com.android.internal.net.TestUtils;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResult;
+import com.android.internal.net.ipsec.ike.message.IkeMessage.DecodeResultError;
 
 import java.nio.ByteBuffer;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeTsPayloadTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeTsPayloadTest.java
similarity index 97%
rename from tests/iketests/src/java/com/android/ike/ikev2/message/IkeTsPayloadTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeTsPayloadTest.java
index 1e45591..cbd6f93 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeTsPayloadTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/message/IkeTsPayloadTest.java
@@ -14,15 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.message;
+package com.android.internal.net.ipsec.ike.message;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
-import com.android.ike.TestUtils;
-import com.android.ike.ikev2.IkeTrafficSelector;
+import android.net.ipsec.ike.IkeTrafficSelector;
+
+import com.android.internal.net.TestUtils;
 
 import libcore.net.InetAddressUtils;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/testutils/CertUtils.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/testutils/CertUtils.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/testutils/CertUtils.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/testutils/CertUtils.java
index e42e564..db128c8 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/testutils/CertUtils.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/testutils/CertUtils.java
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.testutils;
+package com.android.internal.net.ipsec.ike.testutils;
 
 import android.content.Context;
 
 import androidx.test.InstrumentationRegistry;
 
-import com.android.ike.ikev2.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
 import com.android.org.bouncycastle.util.io.pem.PemObject;
 import com.android.org.bouncycastle.util.io.pem.PemReader;
 
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/testutils/MockIpSecTestUtils.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/testutils/MockIpSecTestUtils.java
similarity index 98%
rename from tests/iketests/src/java/com/android/ike/ikev2/testutils/MockIpSecTestUtils.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/testutils/MockIpSecTestUtils.java
index 9659f5e..742ff24 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/testutils/MockIpSecTestUtils.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/testutils/MockIpSecTestUtils.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.testutils;
+package com.android.internal.net.ipsec.ike.testutils;
 
 import static android.system.OsConstants.AF_INET;
 import static android.system.OsConstants.IPPROTO_UDP;
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/utils/RetransmitterTest.java b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/utils/RetransmitterTest.java
similarity index 95%
rename from tests/iketests/src/java/com/android/ike/ikev2/utils/RetransmitterTest.java
rename to tests/iketests/src/java/com/android/internal/net/ipsec/ike/utils/RetransmitterTest.java
index b1d4ea5..1fddb1d 100644
--- a/tests/iketests/src/java/com/android/ike/ikev2/utils/RetransmitterTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/ipsec/ike/utils/RetransmitterTest.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.ike.ikev2.utils;
+package com.android.internal.net.ipsec.ike.utils;
 
-import static com.android.ike.ikev2.IkeSessionStateMachine.CMD_RETRANSMIT;
+import static com.android.internal.net.ipsec.ike.IkeSessionStateMachine.CMD_RETRANSMIT;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
@@ -33,7 +33,7 @@
 import android.os.Handler;
 import android.os.Message;
 
-import com.android.ike.ikev2.message.IkeMessage;
+import com.android.internal.net.ipsec.ike.message.IkeMessage;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/tests/iketests/src/java/com/android/ike/utils/BigIntegerUtilsTest.java b/tests/iketests/src/java/com/android/internal/net/utils/BigIntegerUtilsTest.java
similarity index 97%
rename from tests/iketests/src/java/com/android/ike/utils/BigIntegerUtilsTest.java
rename to tests/iketests/src/java/com/android/internal/net/utils/BigIntegerUtilsTest.java
index a9babae..29bb313 100644
--- a/tests/iketests/src/java/com/android/ike/utils/BigIntegerUtilsTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/utils/BigIntegerUtilsTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.utils;
+package com.android.internal.net.utils;
 
 import static org.junit.Assert.assertArrayEquals;
 
diff --git a/tests/iketests/src/java/com/android/ike/utils/LogTest.java b/tests/iketests/src/java/com/android/internal/net/utils/LogTest.java
similarity index 97%
rename from tests/iketests/src/java/com/android/ike/utils/LogTest.java
rename to tests/iketests/src/java/com/android/internal/net/utils/LogTest.java
index 9536e00..23305aa 100644
--- a/tests/iketests/src/java/com/android/ike/utils/LogTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/utils/LogTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.utils;
+package com.android.internal.net.utils;
 
 import static org.junit.Assert.assertEquals;
 
diff --git a/tests/iketests/src/java/com/android/ike/utils/SimpleStateMachineTest.java b/tests/iketests/src/java/com/android/internal/net/utils/SimpleStateMachineTest.java
similarity index 96%
rename from tests/iketests/src/java/com/android/ike/utils/SimpleStateMachineTest.java
rename to tests/iketests/src/java/com/android/internal/net/utils/SimpleStateMachineTest.java
index b2ea914..2ee8dc5 100644
--- a/tests/iketests/src/java/com/android/ike/utils/SimpleStateMachineTest.java
+++ b/tests/iketests/src/java/com/android/internal/net/utils/SimpleStateMachineTest.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.ike.utils;
+package com.android.internal.net.utils;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
@@ -22,7 +22,7 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
-import com.android.ike.utils.SimpleStateMachine.SimpleState;
+import com.android.internal.net.utils.SimpleStateMachine.SimpleState;
 
 import org.junit.Before;
 import org.junit.Test;