diff --git a/api/current.txt b/api/current.txt index 72351443ea1e4..26542798047b8 100644 --- a/api/current.txt +++ b/api/current.txt @@ -24737,11 +24737,14 @@ package android.net.wifi { } public static final class WifiEnterpriseConfig.Phase2 { + field public static final int AKA = 6; // 0x6 + field public static final int AKA_PRIME = 7; // 0x7 field public static final int GTC = 4; // 0x4 field public static final int MSCHAP = 2; // 0x2 field public static final int MSCHAPV2 = 3; // 0x3 field public static final int NONE = 0; // 0x0 field public static final int PAP = 1; // 0x1 + field public static final int SIM = 5; // 0x5 } public class WifiInfo implements android.os.Parcelable { diff --git a/api/system-current.txt b/api/system-current.txt index e1a45685b0868..8bbbd9004418b 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -27110,11 +27110,14 @@ package android.net.wifi { } public static final class WifiEnterpriseConfig.Phase2 { + field public static final int AKA = 6; // 0x6 + field public static final int AKA_PRIME = 7; // 0x7 field public static final int GTC = 4; // 0x4 field public static final int MSCHAP = 2; // 0x2 field public static final int MSCHAPV2 = 3; // 0x3 field public static final int NONE = 0; // 0x0 field public static final int PAP = 1; // 0x1 + field public static final int SIM = 5; // 0x5 } public class WifiInfo implements android.os.Parcelable { diff --git a/api/test-current.txt b/api/test-current.txt index a9af7f3b2ab0c..4d61bc0a909c3 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -24810,11 +24810,14 @@ package android.net.wifi { } public static final class WifiEnterpriseConfig.Phase2 { + field public static final int AKA = 6; // 0x6 + field public static final int AKA_PRIME = 7; // 0x7 field public static final int GTC = 4; // 0x4 field public static final int MSCHAP = 2; // 0x2 field public static final int MSCHAPV2 = 3; // 0x3 field public static final int NONE = 0; // 0x0 field public static final int PAP = 1; // 0x1 + field public static final int SIM = 5; // 0x5 } public class WifiInfo implements android.os.Parcelable { diff --git a/wifi/java/android/net/wifi/WifiEnterpriseConfig.java b/wifi/java/android/net/wifi/WifiEnterpriseConfig.java index 0bfb95581e602..f79033200568a 100644 --- a/wifi/java/android/net/wifi/WifiEnterpriseConfig.java +++ b/wifi/java/android/net/wifi/WifiEnterpriseConfig.java @@ -263,11 +263,17 @@ public class WifiEnterpriseConfig implements Parcelable { public static final int MSCHAPV2 = 3; /** Generic Token Card */ public static final int GTC = 4; + /** EAP-Subscriber Identity Module */ + public static final int SIM = 5; + /** EAP-Authentication and Key Agreement */ + public static final int AKA = 6; + /** EAP-Authentication and Key Agreement Prime */ + public static final int AKA_PRIME = 7; private static final String AUTH_PREFIX = "auth="; private static final String AUTHEAP_PREFIX = "autheap="; /** @hide */ public static final String[] strings = {EMPTY_VALUE, "PAP", "MSCHAP", - "MSCHAPV2", "GTC" }; + "MSCHAPV2", "GTC", "SIM", "AKA", "AKA'" }; /** Prevent initialization */ private Phase2() {} @@ -426,6 +432,9 @@ public class WifiEnterpriseConfig implements Parcelable { case Phase2.MSCHAP: case Phase2.MSCHAPV2: case Phase2.GTC: + case Phase2.SIM: + case Phase2.AKA: + case Phase2.AKA_PRIME: mPhase2Method = phase2Method; break; default: diff --git a/wifi/tests/src/android/net/wifi/WifiEnterpriseConfigTest.java b/wifi/tests/src/android/net/wifi/WifiEnterpriseConfigTest.java index fa546a565c864..c4d2d32512a23 100644 --- a/wifi/tests/src/android/net/wifi/WifiEnterpriseConfigTest.java +++ b/wifi/tests/src/android/net/wifi/WifiEnterpriseConfigTest.java @@ -283,6 +283,21 @@ public class WifiEnterpriseConfigTest { assertEquals("\"auth=GTC\"", getSupplicantPhase2Method()); } + /** Verfies PEAP/SIM, PEAP/AKA, PEAP/AKA'. */ + @Test + public void peapSimAkaAkaPrime() { + mEnterpriseConfig.setEapMethod(Eap.PEAP); + mEnterpriseConfig.setPhase2Method(Phase2.SIM); + assertEquals("PEAP", getSupplicantEapMethod()); + assertEquals("\"auth=SIM\"", getSupplicantPhase2Method()); + + mEnterpriseConfig.setPhase2Method(Phase2.AKA); + assertEquals("\"auth=AKA\"", getSupplicantPhase2Method()); + + mEnterpriseConfig.setPhase2Method(Phase2.AKA_PRIME); + assertEquals("\"auth=AKA'\"", getSupplicantPhase2Method()); + } + /** Verfies that the copy constructor preseves the inner method information. */ @Test public void copyConstructor() {