summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author xin He <xinhe@google.com> 2015-10-23 20:59:36 +0000
committer android-build-merger <android-build-merger@google.com> 2015-10-23 20:59:36 +0000
commitc49f5c83cb3cce265836da8ef32009ee7b8f1029 (patch)
tree6e78e89cdc9b4f989c6f274fad1ecfed60d3162e
parent998afcb738e148f4f382f5e50df3241ec464d88c (diff)
parent910e447d96732ad22582efb6cea08925dc21e55c (diff)
Merge "[DO NOT MERGE] EAP-TLS PMKID mismatch error" into mnc-dr-dev am: 3b47afe765
am: 910e447d96 * commit '910e447d96732ad22582efb6cea08925dc21e55c': [DO NOT MERGE] EAP-TLS PMKID mismatch error
-rw-r--r--wifi/java/android/net/wifi/WifiEnterpriseConfig.java31
1 files changed, 31 insertions, 0 deletions
diff --git a/wifi/java/android/net/wifi/WifiEnterpriseConfig.java b/wifi/java/android/net/wifi/WifiEnterpriseConfig.java
index e611ea448497..59b22bda0833 100644
--- a/wifi/java/android/net/wifi/WifiEnterpriseConfig.java
+++ b/wifi/java/android/net/wifi/WifiEnterpriseConfig.java
@@ -101,9 +101,18 @@ public class WifiEnterpriseConfig implements Parcelable {
public static final String REALM_KEY = "realm";
/** @hide */
public static final String PLMN_KEY = "plmn";
+ /** @hide */
+ public static final String PHASE1_KEY = "phase1";
+ /** {@hide} */
+ public static final String ENABLE_TLS_1_2 = "\"tls_disable_tlsv1_2=0\"";
+ /** {@hide} */
+ public static final String DISABLE_TLS_1_2 = "\"tls_disable_tlsv1_2=1\"";
private HashMap<String, String> mFields = new HashMap<String, String>();
+ //By default, we enable TLS1.2. However, due to a known bug on some radius, we may disable it to
+ // fall back to TLS 1.1.
+ private boolean mTls12Enable = true;
private X509Certificate mCaCert;
private PrivateKey mClientPrivateKey;
private X509Certificate mClientCertificate;
@@ -149,6 +158,7 @@ public class WifiEnterpriseConfig implements Parcelable {
}
writeCertificate(dest, mClientCertificate);
+ dest.writeInt(mTls12Enable ? 1: 0);
}
private void writeCertificate(Parcel dest, X509Certificate cert) {
@@ -196,6 +206,7 @@ public class WifiEnterpriseConfig implements Parcelable {
enterpriseConfig.mClientPrivateKey = userKey;
enterpriseConfig.mClientCertificate = readCertificate(in);
+ enterpriseConfig.mTls12Enable = (in.readInt() == 1);
return enterpriseConfig;
}
@@ -300,6 +311,26 @@ public class WifiEnterpriseConfig implements Parcelable {
}
/**
+ * Set the TLS version
+ * @param enable: true -- enable TLS1.2 false -- disable TLS1.2
+ * @hide
+ */
+ public void setTls12Enable(boolean enable) {
+ mTls12Enable = enable;
+ mFields.put(PHASE1_KEY,
+ enable ? ENABLE_TLS_1_2 : DISABLE_TLS_1_2);
+ }
+
+ /**
+ * Get the TLS1.2 enabled or not
+ * @return eap method configured
+ * @hide
+ */
+ public boolean getTls12Enable() {
+ return mTls12Enable;
+ }
+
+ /**
* Get the eap method.
* @return eap method configured
*/