History log of /system/connectivity/wificond/scanning/scan_utils.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
0482e6d44600d35f159d9705050277196d6aa59c 31-Jan-2018 Roshan Pius <rpius@google.com> wificond: Parse radio chain info in scan results

Bug: 68335251
Test: Existing unit tests (./system/connectivity/wificond/runtests.sh)
Note: There are no existing unit tests for scan result parsing because
it's non trivial to add them.
Test: Verified scans are working with DBS & without DBS flags on taimen.

Change-Id: I2a34baa8a798043268a96e540ac375d1abaea67a
/system/connectivity/wificond/scanning/scan_utils.h
9d096b2f0027b91e5eed40c0e2482d238cdf7c8a 31-Jan-2018 Roshan Pius <rpius@google.com> wificond: Send DBS scan flags if supported

If the device supports the new DBS scan params then,
a) For single scans, set the scan flag attribute corresponding to the
incoming scan type.
b) For PNO scans, always set the low power scan flag attribute.

Bug: 68335251
Test: ./system/connectivity/wificond/runtests.sh
Change-Id: I9bca3c0dfc4217f9b9c2b9e625863978967ccdbe
/system/connectivity/wificond/scanning/scan_utils.h
c6ecdf8ea59f7de47edfd6161f059b8ab45d1f8f 10-Aug-2017 Ningyuan Wang <nywang@google.com> Support different rssi thresholds for 2g and 5g bands

Bug: 36121542
Test: compile, unit tests
Test: will do integration test

Change-Id: Ia4528cd30eed5e45a661224fd948fad52eb43ac1
/system/connectivity/wificond/scanning/scan_utils.h
dfbe7e4e12824527fac840391f31d2b4a4578e3e 19-Jul-2017 Ningyuan Wang <nywang@google.com> Support scan plan attribute for scheduled scan

This adds the support of the scan plan attribute.
With kernel updates, driver can no longer diffrentiate interval
attribute from single scan plan attribute, so driver's pno scan
back off logic cannot be triggered in that case.
To solve the PNO back-off problem, this CL allows wificond to explicitly
specify scan plans (if the driver supports it). With explicit scan
plans, the driver will have the information it needs to back-off PNO
scans.

Bug: 63837760
Test: compile, unit tests
Test: Manually test that pno scan works on multiple devices
Test: Integration sanity test

Change-Id: Ic7e38caa482a2d72f45bf3c8177fa656e534db08
/system/connectivity/wificond/scanning/scan_utils.h
1aadd2c3781ee882e77dae2f4dc38fe3574fdca7 09-Jun-2017 Ningyuan Wang <nywang@google.com> Use new netlink attribute for scan result timestamp

Bug: 37758502
Test: compile, manual test
Test: integration test
Test: manually test that on new and old devices, there should
be only a small portion of scan results filtered out.

Change-Id: I2cbcb6f4c5b58b6a56a746de97afe491a9e338ac
/system/connectivity/wificond/scanning/scan_utils.h
793978cb7f2f227f1ab28135caeb75dd4ed48e6c 15-Jun-2017 Ningyuan Wang <nywang@google.com> Restart wificond on ENODEV scan failure

ENODEV scan failure implies that driver entered a bad state.
In order to recover wificond, we should treat it as an fatal
error. The crashing of wificond will trigger the restarting
of framework, bringing everything back to work.

Bug: 36894921
Test: compile, unit tests
Test: manual test:
Use "iw wlan0 del" to remove kernel interface.
Observe that wificond restarts and wifi continues to work.

Change-Id: I89f4403bcb570d7f413fa4cc9ca50378de428d3d
/system/connectivity/wificond/scanning/scan_utils.h
ecb6bb205f5263c06570f14b148d6b171b1f74ad 20-Jun-2017 Ningyuan Wang <nywang@google.com> Revert "Use new netlink attribute for scan result timestamp"

This reverts commit 74db77ecd5314fa28ac2b78ccc3ca18788eeef60.

Bug: 62818212
Bug: 37758502


Change-Id: Icd93d4caffab92a5bf79c8d6aa8fe4dceca3ec06
/system/connectivity/wificond/scanning/scan_utils.h
74db77ecd5314fa28ac2b78ccc3ca18788eeef60 09-Jun-2017 Ningyuan Wang <nywang@google.com> Use new netlink attribute for scan result timestamp

This CL prioritize the new netlink attribute
NL80211_BSS_LAST_SEEN_BOOTTIME to the old NL80211_BSS_TSF
because if driver supports the new attribute, the new
attribute will carry more accurate data. If not, we still
can fall back to NL80211_BSS_TSF.

Bug: 37758502
Test: compile, unit tests, integration test
Test: manual tests:
1. Test devices which have new kernel/driver supporting this attribute.
Test that most APs still consistantly show up in scan result.
1. Test devices which don't support this attribute. Insert logs to test
that wificond can fall back to the old attributes.

Change-Id: I14226b77e8bf50f4e035679fff3313affb800e86
/system/connectivity/wificond/scanning/scan_utils.h
33bbb8147436c2abf8f3e7b535b13b6c63bd3c64 06-Apr-2017 Daisuke Niwa <daisuke.x.niwa@sonymobile.com> Support abortScan

Support to abortScan instead of "ABORT_SCAN" command of
wpa_supplicant.
When STA scan triggered by wificond is ongoing, abortScan sends
NL80211_CMD_ABORT_SCAN to kernel to stop it.

Bug: 37227357
BUg: 37743832
Test: Manual test
Change-Id: I542088e7711bd7e32a22685397af8e7f3a8ccdf7
/system/connectivity/wificond/scanning/scan_utils.h
8f62fdd7479506aa865560941d74dc4e4c77e1b3 08-Feb-2017 Ningyuan Wang <nywang@google.com> Remove StartFullScan()

Bug: 35103495
Change-Id: I2004de17898b5c8f59eea88679fe60e6cb57dc87
Test: compile, unit tests
/system/connectivity/wificond/scanning/scan_utils.h
f46b54c4914c62d1cc64e498a68c44a55383737d 26-Jan-2017 Ningyuan Wang <nywang@google.com> Avoid unnecessary copies of scan result

This also fixes some typos.

Bug: None
Test: compile, unit tests, manaul tests
Change-Id: Idd3311bc4c9a9e1483e628d2a3856a876aa9aeaf
/system/connectivity/wificond/scanning/scan_utils.h
13b4064f889935091b0d55bbb056ec143972a9a4 10-Dec-2016 Ningyuan Wang <nywang@google.com> Add support of randomized mac address to wificond ScanUtils

Bug: 33218723
Change-Id: I81e3507f4cc46894b8ae35f0df0814006ddc1ead
Test: compile
/system/connectivity/wificond/scanning/scan_utils.h
65b365fe4b6a99f9dab98515c1b96bd725cb56a8 08-Dec-2016 Ningyuan Wang <nywang@google.com> Add unit tests for wificond ScanUtils

Bug: 30915875
Test: compile, unit tests

Change-Id: Ic8f913663110f64dfb0387502e60afdfb130b0b5
/system/connectivity/wificond/scanning/scan_utils.h
72312e2e46675ace1560ba71dff3f3020fa7969e 01-Dec-2016 Ningyuan Wang <nywang@google.com> Add netlink helper function to request a full scan

Bug: 33251936
Test: compile, unit tests, and manual test
Change-Id: I724adc9cd3a3a439f3d4ccbfb389e6752b6dc2d6
/system/connectivity/wificond/scanning/scan_utils.h
4d882abea2a9956689d32820a5c13e9f9625e0da 01-Oct-2016 Ningyuan Wang <nywang@google.com> Make wificond scan result parcelable

This includes the following changes:
1. Make ScanResult a parcelable class.
2. Move ScanResult to namespace com.android.server.wifi.wificond
3. Rename ScanResult to NativeScanResult to avoid naming confliction.
4. Add unit test for NativeScanResult class.

Test: compile, unittests, manual test
Bug: 30746278
Change-Id: Ic1225ff52149fcd00855f9c7aa78c48485b0a08b
/system/connectivity/wificond/scanning/scan_utils.h
8044a946f4b350291ddd44c52db7ca34e21bad8f 30-Sep-2016 Ningyuan Wang <nywang@google.com> Add internal API for handling scheduled scan results

This allows an interface object to subscribe/unsubscribe
schedulded scan results.

Bug: 31839487
Test: compile, manual tests, unit tests

Change-Id: I023fe9ca1546148bdab2ef1458934efbcdee4e76
/system/connectivity/wificond/scanning/scan_utils.h
ebe363ff1e912429c1691a00a29bf6bc83e5c08a 26-Aug-2016 Ningyuan Wang <nywang@google.com> Add function StartScheduledScan()

This function starts scans repeatedly.
This is expected to be used to request Pno scans.

BUG=31067130
TEST=compile and manual tests

Change-Id: I6f0e0bc999197e84a8c6130c068204b305e71d2f
/system/connectivity/wificond/scanning/scan_utils.h
a5cc66dc98eeb29138164f497bb0e39352df5f36 25-Aug-2016 Ningyuan Wang <nywang@google.com> Add function StopScheduledScan()

BUG=31067130
TEST=compile and manual tests

Change-Id: I81bccf991314ff9eb478e98d5c5db17d0561587a
/system/connectivity/wificond/scanning/scan_utils.h
21ff4c7ad0b0ec8da8392c00eedbae022d6e21e5 19-Aug-2016 Ningyuan Wang <nywang@google.com> Get rid of NL80211Packet copying

This CL removes all NL80211Packet copying by introducing the use of
unique_ptr on NL80211Packet objects.

The copy constructor is not explicitly deleted because it helps write
readable unit tests.

BUG=30901326
TEST=compile, unit tests, manual tests

Change-Id: I8dc9b42cacc3e929aa720abbd8ff0a3862b33bd3
/system/connectivity/wificond/scanning/scan_utils.h
14de8b2ce5ef49218e48002a3ac0728847e90372 19-Aug-2016 Ningyuan Wang <nywang@google.com> Monitor scan results for current client interface

This CL includes the following changes:
1. Add functions which can subscribe and unsubscribe scan results
notification in ScanUtils, so we don't need to expose a NetlinkManager
object to ClientInterfaceImpl.

2. ClientInterfaceImpl subscribes the scan results when it is
initialized. It unsubscribes the scan results when it is destroyed.

3. ClientInterfaceImpl requests scan results objects using ScanUtils.
In later CLs these objects are supposed to be sent to java framework
through binder.

4. Add corresponding mock classes and unit tests adjustment for the
changes above.

This CL won't enable the scan results monitoring unless we uncomment
SubscribeToEvents() in NetlinkManager::Start().

BUG=30896985
TEST=compile, unit tests, manual tests
Manual test:
1. Uncomment SubscribeToEvents() in NetlinkManager::Start().
2. Call ScanResult::DebugLog() in ClientInterfaceImpl::
OnScanResultsReady().
After 1 and 2 we can see detail scan results in wificond logs.

Change-Id: I502fb4704ffce4dd2bf8de8d0d5d9293b2b43d9a
/system/connectivity/wificond/scanning/scan_utils.h
5a34c89bf63f387c38b5e60e8c733de7051e22ae 17-Aug-2016 Ningyuan Wang <nywang@google.com> Add helper functions to get and parse scan results

GetScanResult() is used for request the newest scan results from kernel.
ParseScanResult() is used for converting scan result packet to a scan
result object.
This CL also moves all the scanning helper functions to a new file.

BUG=30896985
TEST=manual tests
TEST=unit tests

Change-Id: I5bb0d98cb62daf9cc02da31a7cdf42f0c9fff16c
/system/connectivity/wificond/scanning/scan_utils.h