commit | a70ec27425dcc4527ece33c1b95f37129ba26653 | [log] [tgz] |
---|---|---|
author | mukesh agrawal <quiche@chromium.org> | Mon Aug 19 16:08:31 2013 -0700 |
committer | chrome-internal-fetch <chrome-internal-fetch@google.com> | Wed Aug 28 05:31:28 2013 +0000 |
tree | 11177ea6131ab893cb52d594d5882cf466d2c1d8 | |
parent | d47738866711ed29c04a82647d9acb7b8a668924 [diff] |
shill: dongles: reset ppp auth failure on CellularService load If a dongle requires PPP username and password, the parameters will probably be stored in the user profile, rather than the system-wide profile. (This is because, presently, there is no way to configure the parameters when logged out.) This means that if the dongle is plugged in when no user is logged in, that we will attempt to connect, and fail. By itself, this isn't a problem. However, we should ensure that once the user logs in, we try again. To ensure that we try again after the user logs in, we add some code to CellularService::Load. This code will reset the ppp-auth-failed error condition on the CellularService, if loading the service changed its PPP parameters (username and/or password). BUG=chromium:275126 TEST=new unit tests, manual (to be done) Manual test ----------- 1. Remove dongle (if plugged in) 2. Boot 3. Login 4. stop shill 5. rm /var/cache/shill/default.profile 6. rm /var/run/shill/user_profiles/chronos/shill.profile 7. Log out 8. start shill 9. Log in 10. Plug in CDMA dongle that requires PPP username/password, wait for connection failure. 11. set_cellular_ppp ... 12. Device connects to network (may require manually selecting from network menu) 13. Unplug dongle 14. Plug in CDMA dongle again 15. Device connects to network (does _not_ require manual selection) 16. Reboot device 17. Wait for Cellular to try to connect, but fail. 18. After failure, log in. 19. After log in, device should connect the Cellular network. Change-Id: I69d32c7ea1b6dc8d93e8e86b48a8df0aef3a7b74 Reviewed-on: https://chromium-review.googlesource.com/66259 Reviewed-by: Ben Chan <benchan@chromium.org> Commit-Queue: Ben Chan <benchan@chromium.org> Tested-by: Ben Chan <benchan@chromium.org>