Closed Bug 1159177 Opened 9 years ago Closed 9 years ago

[Wifi]User can join hidden network without ssid name.

Categories

(Firefox OS Graveyard :: Gaia::Settings, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(b2g-v2.2 wontfix, b2g-master verified)

VERIFIED FIXED
Tracking Status
b2g-v2.2 --- wontfix
b2g-master --- verified

People

(Reporter: xiongfuchao, Assigned: eragonj)

References

Details

(Whiteboard: [2.2-nexus-5-l])

Attachments

(4 files, 1 obsolete file)

Attached video video_0417.mp4
[1.Description]:
[Flame][v2.2][Wifi]When user try add a hidden network with none security,"OK" button is always available,even though the user didn't enter a ssid, so user can add a network via it.
Found time:04:17
See attachment:video_0417.mp4 & logcat_0417.txt

[2.Testing Steps]: 
1.Open settings>Wi-Fi.
2.Go Manage networks.
3.Tap "Join Hidden Network".
4.Input password.
5.Swith security to none.
6.Tap "OK" 

[3.Expected Result]: 
4.5.OK button is not available.

[4.Actual Result]: 
6.User can join a hidden network.

[5.Reproduction build]: 
Device: Flame 2.2 (affected)
Build ID               20150427002504
Gaia Revision          265ca0bc9408c21fc4b25a259fcee7fb642cd06b
Gaia Date              2015-04-24 19:13:28
Gecko Revision         https://hg.mozilla.org/releases/mozilla-b2g37_v2_2/rev/1908685d798d
Gecko Version          37.0
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.cltbld.20150427.040113
Firmware Date          Mon Apr 27 04:01:24 EDT 2015
Bootloader             L1TC000118D0

Device: Flame 3.0 (affected)
Build ID               20150427160201
Gaia Revision          0636405f0844bf32451a375b2d61a2b16fe33348
Gaia Date              2015-04-27 16:42:28
Gecko Revision         https://hg.mozilla.org/mozilla-central/rev/caf25344f73e
Gecko Version          40.0a1
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.cltbld.20150427.192938
Firmware Date          Mon Apr 27 19:29:49 EDT 2015
Bootloader             L1TC000118D0

Device: Nexus 5 2.2 (affected)
Build ID               20150427002504
Gaia Revision          265ca0bc9408c21fc4b25a259fcee7fb642cd06b
Gaia Date              2015-04-24 19:13:28
Gecko Revision         https://hg.mozilla.org/releases/mozilla-b2g37_v2_2/rev/1908685d798d
Gecko Version          37.0
Device Name            hammerhead
Firmware(Release)      5.1
Firmware(Incremental)  eng.cltbld.20150427.035747
Firmware Date          Mon Apr 27 03:58:04 EDT 2015
Bootloader             HHZ12f

Device: Nexus 5 3.0 (affected)
Build ID               20150427160201
Gaia Revision          0636405f0844bf32451a375b2d61a2b16fe33348
Gaia Date              2015-04-27 16:42:28
Gecko Revision         https://hg.mozilla.org/mozilla-central/rev/caf25344f73e
Gecko Version          40.0a1
Device Name            hammerhead
Firmware(Release)      5.1
Firmware(Incremental)  eng.cltbld.20150427.192534
Firmware Date          Mon Apr 27 19:25:51 EDT 2015
Bootloader             HHZ12f
[6.Reproduction Frequency]: 
Always Recurrence,5/5

[7.TCID]: 
Free Test

[8.Note]:
User can't join a hidden network without ssid name from FTU.
Attached file lotcat_0417.txt
Flags: needinfo?(gchang)
Hi Vincent,
This needs your help to dispatch to right owner.
Flags: needinfo?(gchang) → needinfo?(vchang)
Hi EJ, do you think this can be done in settings app or have an error response for DOMRequest when calling the associate API?
Flags: needinfo?(vchang) → needinfo?(ejchen)
Vincent, so what's the right behavior here ?

I think there are two parts that we need to do here

First, we have to block submitButton if ssid is empty or password is invalid (https://github.com/mozilla-b2g/gaia/blob/master/shared/js/wifi_helper.js#L97).

Second, no matter how UI changes, API (wifiManager.associate) should always return an error as you said and we can show more information for users. Right now, checked from log, Gecko would return no-error back to Gaia for this case.

So from now on, I'll start to add a submitButton check and API error handling for gaia part, feel free to add related logics in Gecko to report errors and I think we won't block each other for this.

Hope this helps, thanks Vincent and any other idea would be appreciated.
Flags: needinfo?(ejchen) → needinfo?(vchang)
Assignee: nobody → ejchen
Comment on attachment 8603979 [details] [review]
[gaia] EragonJ:bug-1159177 > mozilla-b2g:master

Arthur, can you help me check this patch ? Thanks !
Attachment #8603979 - Flags: review?(arthur.chen)
Comment on attachment 8603979 [details] [review]
[gaia] EragonJ:bug-1159177 > mozilla-b2g:master

The patch is looking good except for the part of displaying the errors. I think we need to have user-friendly messages for all possible errors if they need to be presented to users.
Attachment #8603979 - Flags: review?(arthur.chen)
Vincent, can you list down how many errors would we get here ? And after that, can you help me ni? Jenny to see what kind of strings we should show on Gaia ? Thanks !!
We should validate 
1. SSID - is defined as 32-octet string. In most cases, SSIDs do not use unprintable characters, but IEEE 802.11 standard does not limit the used character set, so anything could be used in an SSID.
2. is valid configuration when selecting different security type. Not sure if we can provide more detailed error message, like "Invalid password", "Invalid username", "Invalid user/server certificate" ......
Flags: needinfo?(vchang)
Component: Wifi → Gaia::Settings
Comment on attachment 8603979 [details] [review]
[gaia] EragonJ:bug-1159177 > mozilla-b2g:master

Hi Arthur, can you check this updated patch again ? Thanks !
Attachment #8603979 - Flags: review?(arthur.chen)
Comment on attachment 8603979 [details] [review]
[gaia] EragonJ:bug-1159177 > mozilla-b2g:master

r=me, thanks.
Attachment #8603979 - Flags: review?(arthur.chen) → review+
I already filed a follow-up bug for displaying user-friendly messages if there is any error when calling "connecting to ap" API, so for more information about that, please check Bug 1165815 !
For associate API, the error code could be one of the following message, 

"Wifi is disabled" - indicate wifi settings is disabled. 
"Wifi has been recorded" - the SSID is added to the gonk layer, but it will not perform connection to the AP immediately. This can be used for preload SSIDs. 
"Racing associates" - The SSID has been added to the gonk layer. 
"Network is misconfigured" - connection attempt is rejected by the AP because of configuration information is incorrect. 

BTW, the 802.11 spec. doesn't limit the null SSID.  

You can check the detail in [1] for gecko's implementation. 
[1] https://dxr.mozilla.org/mozilla-central/source/dom/wifi/WifiWorker.js?from=wifiworker.js%20&case=true#3250
http://docs.taskcluster.net/tools/task-graph-inspector/#HBiNVytCRGKGLN17POaKGg

The pull request failed to pass integration tests. It could not be landed, please try again.
http://docs.taskcluster.net/tools/task-graph-inspector/#HkmbiWqeTESX5OqttFXhUA

The pull request failed to pass integration tests. It could not be landed, please try again.
After re-trigger jobs for many times, there are few times that we did pass related failed gij, so merged into Gaia/master : https://github.com/mozilla-b2g/gaia/commit/edac99cecf7c5234c8037d140098ec7841a7c66c

Thanks all.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
This bug has been verified as pass on latest Nightly build of Flame v3.0 and Nexus5 v3.0 by the STR in Comment 0.

Actual results: The "OK" icon is unusable after user inputs password as expected. And user can connect a null SSID hidden network in Settings. 
See attachment: verified_v3.0.mp4
Reproduce rate: 0/6

--------------------------------------------------------------------------
Device: Flame v3.0 build(Pass)
Build ID               20150520160208
Gaia Revision          b290c77ccb7ab0af599b3d8287b71b9970d8dcb0
Gaia Date              2015-05-20 10:19:05
Gecko Revision         https://hg.mozilla.org/mozilla-central/rev/8d8df22fe72d
Gecko Version          41.0a1
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.cltbld.20150520.192608
Firmware Date          Wed May 20 19:26:18 EDT 2015
Bootloader             L1TC000118D0

Device: Nexus 5 v3.0 build (Pass)
Build ID               20150520160208
Gaia Revision          b290c77ccb7ab0af599b3d8287b71b9970d8dcb0
Gaia Date              2015-05-20 10:19:05
Gecko Revision         https://hg.mozilla.org/mozilla-central/rev/8d8df22fe72d
Gecko Version          41.0a1
Device Name            hammerhead
Firmware(Release)      5.1
Firmware(Incremental)  eng.cltbld.20150520.191346
Firmware Date          Wed May 20 19:14:00 EDT 2015
Bootloader             HHZ12f


--------------------------------------------------------------------------
Note:
1.The "OK" icon is also unusable after user inputs password in FTU.
2.As same as mentioned in Comment 0,the "OK" icon is also unusable when user sets as null SSID in FTU.
QA Whiteboard: [MGSEI-Triage+]
Hi Josh,

Could you help to confirm if it will uplift to v2.2? thanks.
Flags: needinfo?(jocheng)
(In reply to Norry.L.F from comment #21)
> Hi Josh,
> 
> Could you help to confirm if it will uplift to v2.2? thanks.

Hi Norry,
I think this is not major blocker for 2.2. Although user able to join hidden network without ssid, he cannot use the network. I am fine with 2.2 wontfix.
Thanks
Flags: needinfo?(jocheng)
According to comment 22, close this issue.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: