New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 731292 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Last visit > 30 days ago
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

Make portal notification depend on shill state

Project Member Reported by warx@chromium.org, Jun 8 2017

Issue description

When device is behind captive portal, shill state should update its state to represent that. Consider using shill's state to notify portal notification instead of Chrome's portal detection.

This change will be blocked on portal side session expiration, as shill state remains online but actually it should be portal.
 
One pitfall to keep in mind here: shill's portal detection is less robust than Chrome's. And I suspect that will always be the case.

If you ask cbentzel@, he'll probably tell you that captive portal detection is hard, and requires ongoing maintenance. One obvious limitation of shill's captive portal detection is that shill doesn't understand proxy-auto-configuration.

What that means is that if the network requires the client to use a proxy for web access, shill will probably misreport the network as a captive portal network, _even_ if the network has provided the client with the details of the proxy configuration. (See https://en.wikipedia.org/wiki/Proxy_auto-config)

One reason for this limitation is that handling proxy-auto-config would require shill to either embed a JavaScript engine, or IPC over to Chrome to resolve the portal-check URL.

But even if the team were to deal with the proxy case, I imagine it'll be an ongoing battle to make the portal check as robust as the one in Chrome.
The other thing we've been discussing is that Chrome can incorporate other knowledge into its algorithm:

 - Cert errors on HTTPS
 - Whether the cert errors fit the profile of known portals
 - Page load events (to figure out when to trigger a recheck)
 - Normal HTTP requests suddenly coming back with portal redirects when the portal session times out

Do we even need a Portal state in shill?  The only use case I could think of is if it factors into the service sort order, keeping LTE active when wifi is stuck in Portal state.
Cc: kirtika@chromium.org

Comment 4 by warx@chromium.org, Jun 9 2017

Status: WontFix (was: Assigned)
Thanks for the input. Then I think we shall not depend on shill portal state. Seems we shall not simplify chrome's portal detection, instead need to make it more robust, given the suggestions from Kevin.

Cc: -yoshi@chromium.org

Sign in to add a comment