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

Commit e9c67a68 authored by Jimmy Chen's avatar Jimmy Chen Committed by Android (Google) Code Review
Browse files

Merge "wifi: create an option for the WPA3 Enterprise security type"

parents f1bb3b45 5ff948a2
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -31410,6 +31410,7 @@ package android.net.wifi {
    field @Deprecated public String FQDN;
    field @Deprecated public static final int SECURITY_TYPE_EAP = 3; // 0x3
    field @Deprecated public static final int SECURITY_TYPE_EAP_SUITE_B = 5; // 0x5
    field @Deprecated public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE = 9; // 0x9
    field @Deprecated public static final int SECURITY_TYPE_OPEN = 0; // 0x0
    field @Deprecated public static final int SECURITY_TYPE_OWE = 6; // 0x6
    field @Deprecated public static final int SECURITY_TYPE_PSK = 2; // 0x2
+1 −0
Original line number Diff line number Diff line
@@ -105,6 +105,7 @@ package android.net.wifi {
    field @Deprecated public String FQDN;
    field @Deprecated public static final int SECURITY_TYPE_EAP = 3; // 0x3
    field @Deprecated public static final int SECURITY_TYPE_EAP_SUITE_B = 5; // 0x5
    field @Deprecated public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE = 9; // 0x9
    field @Deprecated public static final int SECURITY_TYPE_OPEN = 0; // 0x0
    field @Deprecated public static final int SECURITY_TYPE_OWE = 6; // 0x6
    field @Deprecated public static final int SECURITY_TYPE_PSK = 2; // 0x2
+17 −3
Original line number Diff line number Diff line
@@ -447,6 +447,8 @@ public class WifiConfiguration implements Parcelable {
    public static final int SECURITY_TYPE_WAPI_PSK = 7;
    /** Security type for a WAPI Certificate network. */
    public static final int SECURITY_TYPE_WAPI_CERT = 8;
    /** Security type for a WPA3-Enterprise network. */
    public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE = 9;

    /**
     * Security types we support.
@@ -462,7 +464,8 @@ public class WifiConfiguration implements Parcelable {
            SECURITY_TYPE_EAP_SUITE_B,
            SECURITY_TYPE_OWE,
            SECURITY_TYPE_WAPI_PSK,
            SECURITY_TYPE_WAPI_CERT
            SECURITY_TYPE_WAPI_CERT,
            SECURITY_TYPE_EAP_WPA3_ENTERPRISE,
    })
    public @interface SecurityType {}

@@ -478,8 +481,9 @@ public class WifiConfiguration implements Parcelable {
     * {@link #SECURITY_TYPE_SAE},
     * {@link #SECURITY_TYPE_EAP_SUITE_B},
     * {@link #SECURITY_TYPE_OWE},
     * {@link #SECURITY_TYPE_WAPI_PSK}, or
     * {@link #SECURITY_TYPE_WAPI_CERT}
     * {@link #SECURITY_TYPE_WAPI_PSK},
     * {@link #SECURITY_TYPE_WAPI_CERT},
     * {@link #SECURITY_TYPE_EAP_WPA3_ENTERPRISE}
     */
    public void setSecurityParams(@SecurityType int securityType) {
        // Clear all the bitsets.
@@ -555,6 +559,16 @@ public class WifiConfiguration implements Parcelable {
                allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.SMS4);
                allowedGroupCiphers.set(WifiConfiguration.GroupCipher.SMS4);
                break;
            case SECURITY_TYPE_EAP_WPA3_ENTERPRISE:
                allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_EAP);
                allowedKeyManagement.set(WifiConfiguration.KeyMgmt.IEEE8021X);
                allowedProtocols.set(WifiConfiguration.Protocol.RSN);
                allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
                allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.GCMP_256);
                allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
                allowedGroupCiphers.set(WifiConfiguration.GroupCipher.GCMP_256);
                requirePmf = true;
                break;
            default:
                throw new IllegalArgumentException("unknown security type " + securityType);
        }
+2 −8
Original line number Diff line number Diff line
@@ -373,14 +373,8 @@ public final class WifiNetworkSpecifier extends NetworkSpecifier implements Parc
                    configuration.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP_SUITE_B);
                } else {
                    // WPA3-Enterprise
                    configuration.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
                    configuration.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
                    configuration.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
                    configuration.allowedPairwiseCiphers.set(
                            WifiConfiguration.PairwiseCipher.GCMP_256);
                    configuration.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
                    configuration.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.GCMP_256);
                    configuration.requirePmf = true;
                    configuration.setSecurityParams(
                            WifiConfiguration.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
                }
                configuration.enterpriseConfig = mWpa3EnterpriseConfig;
            } else if (mIsEnhancedOpen) { // OWE network
+2 −8
Original line number Diff line number Diff line
@@ -802,14 +802,8 @@ public final class WifiNetworkSuggestion implements Parcelable {
                    configuration.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP_SUITE_B);
                } else {
                    // WPA3-Enterprise
                    configuration.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
                    configuration.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
                    configuration.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
                    configuration.allowedPairwiseCiphers.set(
                            WifiConfiguration.PairwiseCipher.GCMP_256);
                    configuration.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
                    configuration.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.GCMP_256);
                    configuration.requirePmf = true;
                    configuration.setSecurityParams(
                            WifiConfiguration.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
                }
                configuration.enterpriseConfig = mWpa3EnterpriseConfig;
            } else if (mIsEnhancedOpen) { // OWE network
Loading