(cherry-pick from master)
Add a WifiLock mode representing that no locks are held (@hide).
Bug: 28669096
Change-Id: I774d5ff226e7c639812f9735555c8ea1ed6444af
Test: compiles and runtest frameworks-wifi
wpa_supplicant can update this value when authenticating so if the
framework writes it back the new value can be overwritten.
TEST: Patch was validated by original reporter
Enterprise tests pass (b/29608435)
Change-Id: If359b4ca625371fbdb68177c7cdb6498c3a519a1
Fixes: 28161335
When the device received the second invitation request
from GC of the same PersistentGroup, the wifi framework
processes "sa" as mOwner of WifiP2pGroup. At this point,
if an invited group is persistent group, WifiP2pGroup can't
know whether "sa" is GC or GO yet. So the framework shouldn't
process mOwner in the constructor.
Bug: 28715251
Change-Id: Ie7065da0d6c978c3747ecbd6f728de87d9567009
Instead of calling out to external processes with a blocking IPC,
pass along a Binder on which the external process can pass back
the response. The calling process can then wait for the reply with
a timeout.
This eliminates watchdog restarts of the system_server when an external
process like telephony or bluetooth hangs.
Bug:26842468
Change-Id: I1b242e4ed22a63f1a4a0be8c78de8ac4d7bf56c5
This allows the WifiScanner constructor to be called from the Looper
that is associated with the provided handler instead of relying on the
provided looper to execute initialization async.
Bug: 27695292
Change-Id: Id30dbb8d181971035a0b3f76dd485875e9d03ca3
This renaming better reflects how this method is a setter, and
supports variable renaming taking place in WifiConfigManager and
WifiStateMachine.
BUG: 28088867
Change-Id: Ic2f7a1f53ffec4072e556d2831bfdcff9fef1ad7
TEST: 'runtest frameworks-wifi' passes.
Remove the get/setHalBasedAutojoinOffset() APIs. HAL based PNO
is now enabled on all supported devices.
Bug: 26666366
Change-Id: I55b3a80a5807c33569dbbdf4dcfc2411af067567
Issue 199610
When WifistateMachine enter Roaming State, WifiInfo
getSSID will return 0x, statusbar show "0x", because
roaming State do not update WifiInfo mWifiSsid.
Cherry pick from I241f8e9c11dc16db26cadde133043745f2f19573
BUG=27403109
TEST=compile and unittests
Signed-off-by: zhangshuxiao <zhangshuxiao@xiaomi.com>
Change-Id: Ieb7429511898a5ed3d44fd15fc1f250c122e802a
Add a boolean indicating if we have ever successfully connected to a
network given the current configuration. This value should be set to
true upon a successful connection and set to false if the credentials
change. The default value is false.
BUG: 27855896
Change-Id: I1af8f4ad7aac622b48f3c90d88b0debd671a1f40
Add internal comments to the |flags| and |capabilities| fields of
ScanResult to clarify their relationship to the fields in the per-BSS
scan results from WPA supplicant.
BUG: None
Change-Id: I8685283f8cc1006ffd22f2cb2ee8f8605cc0fd2b
TEST: N/A
Adding a new field, meteredHint, to WifiConfiguration so that it
can be passed through and eventually used to set the meteredHint
field on WifiInfo.
BUG: 27120794
Change-Id: If08966c6a5e8eab0905f3335b1c6822975b2f0b5
Instead of minting it's own hander thread, have WifiManager use
the looper from ConnectivityThread.
Bug: 27432949
Change-Id: Iddeebeb8ab506c912f526c7569f304e10b9d7ab8
Now that WifiManager instances are separate and do not depend
on a single static AsyncChannel for the entire process, all
contexts within a process will create an async channel on init.
Since creating this channel requires special permissions that
some applications do not have, it is problematic for them all
to request it in the process of getting a WifiManager instance.
This CL defers AsyncChannel initialization until it is actually
going to be used. This allows callers to create WifiManager
instances without necessarily creating an AsyncChannel.
Depending on what parts of the API will be used, some callers
will never need one. Also, this means that these apps will
not run afoul of permissions exceptions that do not apply to
them unless they actually request functionality that requires
the AsyncChannel.
While here, this CL no longer catches SecurityException while
requesting a messenger from WifiService. That hack appeared to
be an artifact of the static instance of sAsyncChannel -- it
was not clear to WifiManager which context had permissions to
successfully create the messenger, so it was necessary to
silently fail the attempt especially since that attempt was
made in the constructor. With the restructuring to keep
mAsyncChannel per-instance and now only created at the time
specific API calls require it, a SecurityException is
completely relevant to the caller and should not be discarded.
Bug: 27694933
Test: Boot full image, repro b/27694933 with com.google.android.music
Change-Id: I680bf2443bc5b057e629544a687f985261201ded