Filter unsupported networks from Add network spinner. Removed entries
from wifi_dialog.xml, adding them dynamically based on device
capabilities. Adding position-to-security table, that decouples spinner
positions from security values.
Bug: 112195778
Test: atest WifiConfigControllerTest + device functional test
Change-Id: I6a814c4d69fbd8d8076db5dbaa5da807b4da4c32
Add and update Wi-Fi security strings, and add logic to enable WPA3
and OWE. Modified WPA2-PSK to WPA2-Personal, and added WPA3-Personal,
Enhanced Open and WPA3-Enterprise.
Bug: 112195778
Test: Basic functional tests
Change-Id: Ia97761a7f0a9e2fee768dfaf3578a2f1090d29c6
Show Wifi MAC Randomization preference in both "Add network" and "Join
Network" flows.
Bug: 1227787
Test: RunSettingsRoboTests
Change-Id: Iff422eb870e661ceda5ae04f55de802a91f08aeb
Since EAP has many sub type, which controls differnet view. We still need to check the
visibility to determine which type it is.
Bug: 116767176
Test: RunSettingsRoboTests
Change-Id: Iee04a50140ae1afacdf77eedf7743a465bae1f58
After we switch secutiry from EAP to WPA, add button will become
disabled forever. Main reason is that we use view visibility to decide
which security type it is. In this case target view is visible while its
parent view is gone. So even though UI shows correctly however we still
think it is in EAP mode.
This CL check the mAccessPointSecurity directly instead of depending on
fragile view.
Fixes: 114689178
Test: RunSettingsRoboTests
Change-Id: I4284d25e6bf86ee7c5e7c0e17f0834c719d8d587
Having consistent import order will reduce chance of merge
conflict between internal and external master
Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
This CL hides not just hidden network spinner but entire
hidden field when a user is adding a network from scanned
network list.
Test: robotests
Bug: 80114851
Change-Id: I8b29fd764d62af1e46beaa7d26fae97848f4efe6
We only want to show this when a user is manually adding a
network. This CL hides it when the user is adding a network
from the detected wifi list.
Test: robotests
Bug: 78436456
Change-Id: I81d738267d4cb21d6b7722ec619faaf8ef1fc965
We only want this to be modifiable if you are adding a network
manually, so this CL disables it for existing networks. You
can still see what the spinner is set to though.
Test: robotests
Bug: 78436456
Change-Id: If660e432eca2dabf5bd16881368657ee89fe5a57
This CL updates the add network dialog to use the provided value
for the hidden state (from androids perspective) of the network. The
default selected value will always be not hidden and if the user
selects to mark it as hidden a warning will appear to inform the
user of the privacy implications.
Test: Robotests
Bug: 29003359
Change-Id: Ifd4511e4d0af6eb01f4e951c22a91fc560393e8d
Request focus from parent view in controller. Based on framework
patch, it can be placed in a parent and focus will go to whatever view
is the default focusable in that hierarchy.
Fixes: 68776177
Fixes: 72882629
Test: RunSettingsRobotests and Manual test
Change-Id: I3bcdc4ec814f68079a00e40435f46bdfa53f4425
Wifi Picker.
Catch the exception when keystore failed to list the certs
Bug: 73794111
Test: test it with clicking the Google-A on Wifi Picker.
Test: make ROBOTEST_FILTER="(WifiConfigControllerTest)"
RunSettingsRoboTests -j32
RunSettingsRoboTests: OK (12 tests)
Change-Id: I0db66730261c72ef35d1b299bacd2aed7710d247
Currently when user modifies any of the network parameter for hidden
networks, hidden flag is not updated. As a result this network is no
longer part of hidden networks, we are unable to reconnect when user
triggers wifi off and on.
This commit sets the value of hiddenSSID flag of config at the Settings
side on network update.
Test: manual test with hidden access point
Bug: 73256783
Change-Id: Ic20f03345645d8bf3bc9c3ff44910dd3f2797fec
1. Add it in wifi detail page
2. Add it in wifi dialog
2. Remove it in "Mobile network" page
Bug: 68030417
Test: RunSettingsRoboTests
Change-Id: I2e001c55f3c6c75a660e429732dfbece97b0ca9e
mAccessPoint == null implies this is a new network.
In this case, we don't need to check if it's a carrier AP.
Bug: 68846574
Test: compile, manually test that crash does not happen again.
Test: make RunSettingsRoboTests -j40 aROBOTEST_FILTER=WifiConfigControllerTest
Change-Id: I03b1da5e8f0b8e4270c0c52c67bbc90c999be078
(cherry picked from commit 0117b995f4)
mAccessPoint == null implies this is a new network.
In this case, we don't need to check if it's a carrier AP.
Bug: 68846574
Test: compile, manually test that crash does not happen again.
Test: make RunSettingsRoboTests -j40 aROBOTEST_FILTER=WifiConfigControllerTest
Change-Id: I03b1da5e8f0b8e4270c0c52c67bbc90c999be078
A check for valid PSKs in the settings UI didnt capture the 64 character
HEX string case. Added a check for it.
Test: tests/app/src/com/android/settings/wifi/WifiSettingsUiTest.java
Test: manual verification
Bug: 67492639
Change-Id: Ide738c4a67f23b613883b4a69f8264a0ffb8a0bc
Adds pencil icon to Wifi Detail action bar to modify the network.
Modifies package/public visibility to allow the detail package to
use the WifiDialog. Listens for changes in WifiConfigurations to
propagate changes to the UI in WifiNetworkDetailsFragment.
Changes WifiNetworkDetail preference launch to conform to pattern
of other Settings apps. Removes unused WifiDetailActionBarObserver.
Bug: 36483704, 37082355
Test: make -j40 RunSettingsRoboTests
Change-Id: Ie9dc1892eaefdfad4a6bd7040bfc5dbf6236cfb4
Make changes to the UI, so that it does not ask for additional
information while connecting to Carrier Wifi. Also, indicate in wifi
picker if the wifi is a carrier network.
Bug:30988281
Test: make RunSettingsRoboTests -j40 ROBOTEST_FILTER=WifiConfigControllerTest
Test: manual
Change-Id: Iecbcd77d400264aaaa16a6a95a2093d58f2748f9
- Deprecated WifiAPEnabler, and copied most of its logic into various
controllers and WifiTetherSettings.
- Added tests
Fix: 37253404
Fix: 36181835
Test: make RunSettingsRoboTests
Change-Id: Iad994d61b694ad7f1113d045a3e7500eeaec178b
When an access point linked to a saved network is not found,
security info should be shown in dialog of saved network.
Notes that in Android N this list is created with saved networks
and scan result, and that causes security info is not shown for
access points seen around user, but in Android O only saved
networks are used to create a list. That means security info is
shown for all access points listed in the screen.
Bug: 38102896
Test: make RunSettingsRoboTests
Change-Id: Ia0c5184ae7a1325f2628f4c08e29350c5793a08f
(cherry-pick of a8382c11f58ecbfbc5b8d908b97c53d59cf774fe)
Fixes a null pointer exception that can occur during setup wizard.
Bug: 37873425
Test: make RunSettingsRoboTests -j40 ROBOTEST_FILTER=WifiConfigControllerTest
Change-Id: I40de883fae6ccde13ad264f9b8b2d9da9745eb24
Modified the logic of when to enable the 'connect'/'save'(submit)
button.
PSK is now also recognized as invalid when over 63 characters in length.
Removed the 'isSavedAp' check that only applied the invalid password
check to new networks. Users must now modify networks with a valid psk.
While I was here: Fixed WifiSettingsUiTest from failing due to invalid
WIFI_PREFERENCES string
Bug: 37152520
Bug: 36709852
Test: runtest WifiSettingsUiTest & m RunSettingsRoboTests pass
Change-Id: I273560cbf9124d16034962a2084f36c93973ee83
Allow the user to select EAP-SIM methods as a second phase after
an outer PEAP authentication. This hides the "identity" and
"password" fields if one of these methods is selected.
Bug: 34835771
Test: Manual: Connect to PEAP/EAP-SIM AP
Change-Id: I7e448fbebd352a4b0facbfafa74afaff6b704386
Instead of going through WifiTracker to retrieve saved network
configurations (including both WiFi networks and Passpoint provider
configurations), use the WifiManager's APIs to retrieve the
configurations directly, to avoid any unnecessary complexities.
Also update to use the appropriate APIs for configuration removal
based on the configuration type.
Bug: 34207710
Test: manual test by removing a Passpoint configuration from
"Saved Networks" page.
Change-Id: I549cc484d8825b6c38895428c1b7941390bb5f1f
When you go to add a existing or new access
point for wifi talkback would say the
incorrect thing when you tapped on the
advanced options dropdown menu toggle.
This fixes what talkback says to more
accurately reflect what the widget does.
Test: Accessibility Scanner
Bug: 31623421
Change-Id: I9a00c4e8723014b0b3097f046dbcd1de01636e76
am: ace9f52725
* commit 'ace9f527253a5464308f8dd3aa97f841d5d2d996':
Display connect button in the wifi connection menu
Change-Id: Ia72d92c7e50cfb316772609e561b34d0b8c62333
When you quickly try to reconnect after forgeting the AP, the connection
is in DISCONNECTED state and we may still display the connect button
Change-Id: I755a259fdf68fab470d7f69aa461f5bcedddfd5b
Signed-off-by: Damien Vagner <damienx.vagner@intel.com>
Signed-off-by: Zhiquan Liu <zhiquan.liu@intel.com>
The WPA supplicant ca_cert and ca_path directives should not
both be non-null, since our EAP settings logic only allows one
or the other to be used.
Modify logic in getConfig() to explicitly set ca_path or ca_cert
to null if it is not used. This explicit null value is necessary
to override a previously non-null value saved in an existing
configuration.
Also, always set the domain_suffix_match directive, which
will lead to this directive to be reset when the Domain
field is hidden.
BUG: 27194668
TEST: 1) Install custom ca certificate onto device as "testcert"
TEST: 2) Configure an EAP-TLS network with CA certificate
"testcert", Domain "testdomain",
User certificate "Do not provide", identity empty, and save.
TEST: 3) Read network variables in data/misc/wifi/wpa_supplicant.conf
and ensure that ca_cert is "testcert", ca_path is not
present, and domain_suffix_match is "testdomain".
TEST: 4) Modify that same EAP-TLS network configured in step 2 with
CA certificate "Use system certificates", Domain "testdomain",
User certificate "Do not provide", identity empty, and save.
TEST: 5) Read network variables in data/misc/wifi/wpa_supplicant.eonf
and ensure that ca_cert is "keystore://CACERT_testcert",
ca_path is not present, and domain_suffix_match is
"testdomain".
TEST: 6) Modify that same EAP-TLS network configured in step 2 to be
an EAP-PWD network. Leave Identity and Password blank, and
save.
TEST: 7) Read network variables in data/misc/wifi/wpa_supplicant.eonf
and ensure that ca_cert, ca_path, and domain_suffix_match are
not present.
Change-Id: I547f3e359bc8e9b77e51e10e60356b857230636f
Add an option to the "CA certificate" field of the EAP network
configuration menu, "Use system certificates". Choosing this option
will cause the trusted, pre-installed, system CA certificates
to be used to validate EAP servers during the authentication process.
This only applies to EAP-TLS, EAP-TTLS, and EAP-PEAP network
configurations, where the CA certificate option is available.
If the user selects "Use system certificates" and leaves the
"Domain" field empty, display a warning and prevent the
EAP network configuration from being saved. Such a configuration
would be insecure--the user should constrain the domain that
the system certificates can be used to validate.
BUG: 26879191
TEST: 1) Set up AP connected to test RADIUS server.
TEST: 2) Generate a self-signed cert (Cert 1)
TEST: 3) Use Cert 1 to sign another cert (Cert 2) with common name
"sub1.sub2.domain.com"
TEST: 4) Setup RADIUS server, and configure it to present Cert 2 to EAP peer.
TEST: 5) Build angler image with Cert 1 installed in
/system/etc/security/cacerts/
TEST: 6) Set up an AP connected to the RADIUS server to broadcast
a WPA-Enterprise network.
TEST: 7) On Angler, connect to this WPA-Enterprise network with settings:
Network name: (AP SSID)
Security: 802.1x EAP
EAP method: TLS
CA certificate: Use system certificates
Domain: domain.com
User certificate: (test certificate from RADIUS setup)
Identity: (identity used for RADIUS setup)
TEST: 8) Verify that we connect successfully to the AP.
TEST: 9) Verify that connection still succeeds if Domain is set to
"sub2.domain.com" and "sub1.sub2.domain.com".
TEST: 10) Verify that connection fails if Domain is set to
"sub0.sub1.domain.com" and "otherdomain.com".
TEST: 11) Verify that network configuration cannot be saved, and an
warning message "Must specify a domain" is displayed if Domain
is left blank in the configuration in step 7
TEST: 12) Verify that the "Do not validate" option still appears in the
CA certificate dropdown menu.
Change-Id: I346d4d301305719033b84ec4599bf3d57d9d4ee5
Previously, we did not properly load the "Do not validate"
and "Do not provide" options for the CA certificate and
User certificate EAP network configuration fields respectively
when the user previously selected these options and saved the
configuration.
Fix this by properly checking the saved CA certificate and user
certificate aliases in the saved enterprise config.
BUG: 26686071
Change-Id: If180c611f7210718cfb11c0578545b6f027827b5
TEST: Saved EAP network with the abovementioned options.
TEST: Long-pressed saved network on Wifi menu and selected "Modify Network"
TEST: "Do not validate" and "Do not provide" options are re-loaded.