History log of /frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
f94833df7dbead3ebce2efeeae2b57fa0613c743 26-Jan-2018 Erik Kline <ek@google.com> Add Tethering's UID to the legacy type NetworkCapabilities

This is needed because satisfiedByNC() compares UIDs by default now, and
the NCs we receive in callbacks have Tethering's UID patched in.

Bug: 72498421
Test: as follows
- built
- flashed
- booted
- runtest frameworks-net passes, module library loading failures:
Caused by: java.lang.UnsatisfiedLinkError: dlopen failed: library "libdexfile.so" not found
- manually starting tethering works fine

Change-Id: I31f6516e2c1539809f8d052333fd2a616158cb92
(cherry picked from commit 89c6362def55a9ef20626b21c5b72f30dc8c2219)
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
60caf7d29132262dd4a077b68daa807d22773524 10-Oct-2017 Erik Kline <ek@google.com> Log upstream network suspend/resume callbacks

Also log signal strength while we're at it:

2017-10-10T14:05:00.968 - [UpstreamNetworkMonitor] preferred upstream type: WIFI
2017-10-10T14:06:07.654 - [UpstreamNetworkMonitor] upstream network signal strength: -62 -> -67
2017-10-10T14:06:13.704 - [UpstreamNetworkMonitor] upstream network signal strength: -67 -> -64

Test: as follows
- built
- flashed
- booted
- runtest frameworks-net passes
Bug: 29337859
Bug: 32163131
Bug: 64976634
Bug: 67396342

Change-Id: Id6e143edc9f5b0256aa637643680f6c8dce70d90
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
32179ff81511e00aef31e8fda705be3df074ece6 04-Jul-2017 Erik Kline <ek@google.com> Program offload-exempt local prefixes into the HAL

Additionally:
- move mOffloadController into MasterTetherSM

Test: as follows
- built
- flashed
- booted
- "runtest frameworks-net" passes
- observed calls to the HAL setLocalPrefixes in tethering log
Bug: 29337859
Bug: 32163131
Change-Id: Ifaf23c6179ead9de6ccfcf41e0c203025153167b
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
3a5278f2c4d71a8f69ce1085da42904283d62785 24-Jun-2017 Erik Kline <ek@google.com> Pass all offload-exempt prefixes into OffloadController

Additionally:
- eliminate useless TetherMasterUtilState

Test: as follows
- built
- flashed
- booted
- runtest frameworks passes
Bug: 29337859
Bug: 32163131

Merged-In: I6adcdbd6a4f14bd2cdaa056cfc0cf9c573a165b9
Merged-In: I5e689bcf5dd048ee9f9bd0c32b16d7c2e4c0268d
Merged-In: Ifd3817bd4569682d77a70f8192432391a573f6d8
Merged-In: I1ea57fbe322e26246f1d8b459519f18be1297467
Change-Id: I0482ac9dd9e8ba558b253643dbc01875ce9475ef
(cherry picked from commit be8ee08f5dcc3627cac6b0baa6664637684cce35)
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
1e2897dcff865cc0f00079f2a3c7d5188811544f 09-Jun-2017 Erik Kline <ek@google.com> make UpsreamNetworkMonitor the sole source of upstream network information

Test: as follows
- built
- flashed
- booted
- runtest frameworks-net passes
Bug: 29337859
Bug: 32163131

Merged-In: If45443143777e1446c812563742ae8af68d8f73e
Merged-In: Ifeb49f1b19ab36e438763b569c78a335b094f7d0
Merged-In: Idfebb9b79074f21aeccf773cac98aa7839bda9da
Change-Id: I66ce682cf9c31887264a095a4e4638d281d8ed39
(cherry picked from commit 5bbece747f7179a629eed942e2aa88507e744b6b)
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
3760999e347ae1cfa25087451638de8ddc79c9f6 05-Jun-2017 Erik Kline <ek@google.com> Move findPreferredUpstreamType into UNM

This changes the way in which available networks are found. Previously
Tethering asked ConnectivityService for NetworkInfo and checked for
whether or not it was in state CONNECTED.

Here we use the fact that ConnectivityService will not call UNM's
callbacks' onAvailable() methods until the networks in question have
become connected.

Test: as follows
- built
- flashed
- booted
- runtest framework-net passed
Bug: 29337859
Bug: 32163131

Merged-In: I9937297727aa1a063e499fccd5833ace229b1e8a
Merged-In: Ifa1a34a1fb32149085421a63cb0f2586d2862d6b
Merged-In: Ia215e55b69b856f5511e5d4f852e39fa6c11462e
Change-Id: I97abe225fdd3accb38bd9168f545445b761a90d8
(cherry picked from commit a1d368af2f01e2048240fb730f6cc399fc1cc1ab)
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
93c4afae07e15b89a1aaacdb5242cefa1c0c2fb2 04-Jun-2017 Erik Kline <ek@google.com> Minor upstream selection refactoring

Specifically:
- relocated "tryCell" handling
- minor logging change
- remove unneeded checkExpectedThread()

Test: as follows
- built
- flashed
- booted
- runtest frameworks-net passes
Bug: 32163131
Change-Id: I2f5428206503fd222b959e695c26326df53038f1
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
7747fd4ce055e8e1f6381062a58b867728f57d85 12-May-2017 Erik Kline <ek@google.com> Expand logging capabilities of Tethering subsystem

Introduce a SharedLog that can be shared among all Tethering
components. All log entries go to the same log, and each includes
its subsystem name. Additionally, all entries emitted to the
system log shared the same tag, so can easily be watched.

More subsystems can inherit a SharedLog, but to minimize cherry-pick
conflicts we limit ourselves to these changes only.

Test: as follows
- built
- flashed
- booted
- log output observed via dumpsys
- runtest frameworks-net passes
Bug: 32163131
Bug: 36988090
Bug: 38218697
Change-Id: I1229d4c55987402d84b0d4a2c8a595e0c829aa3e
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
ea9cc488eb0f096c9fd402eff49e3d30f5b6de2e 10-Mar-2017 Erik Kline <ek@google.com> Tethering: support Local-only Hotspot mode for downstreams

Test: as follows
- built (bullhead)
- flashed
- booted
- "runtest frameworks-net" passes
Bug: 31466854

Change-Id: Ia50e28c8ce0af8cdd7ac63217d921aff213668e7
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
465c46d555c867caf40333db197ef97cff75a754 07-Mar-2017 Erik Kline <ek@google.com> request{LinkProperties,NetworkCapabilities} no longer needed

Test: as follows
- built (bullhead)
- flashed
- booted
- runtest frameworks-net passes
- manual USB tethering toggling between WiFi and mobile
Bug: 32163131
Change-Id: I57edf5114b6361f320577c7870e40f8b3cdf74ce
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
b583b03675492280ab87f1eff30c05709cafba23 21-Feb-2017 Erik Kline <ek@google.com> Update UpstreamNetworkMonitor to use custom Handlers

Test: as follows
- built (bullhead)
- flashed
- booted
- runtest frameworks-net passes
Bug: 32130437
Bug: 32163131

Change-Id: I2bc3f87cdf7fa6392b4750eb8adb4ea33c6a3f43
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
32858e14caa09fbb3eb4081f114f2a99181c9643 21-Feb-2017 Erik Kline <ek@google.com> Don't request information on unregistered callbacks

Test: as follows
- build (bullhead)
- flashed
- booted
- runtest frameworks-net passes
Bug: 32163131
Bug: 35608572
Change-Id: I489e510ac131a7a624a652b12165104202a49f85
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
35bf06c968ecbae502efd9cfb13fff9b7ddf9d6a 26-Jan-2017 Erik Kline <ek@google.com> Add ConnectivityManager.networkCapabilitiesForType()

This static method returns a NetworkCapabilities instance with
transports and capabilities set according to the given legacy type.

Also:
- add NetworkRequest.Builder.setCapabilities(), to be able to use
the NetworkCapabilities instances returned from the above
- update UpstreamNetworkMonitor to make immediate use of this

Test: as follows
- build (bullhead)
- flashed
- booted
- runtest frameworks-net passes
- WiFi to DUN upstream tethering works
Bug: 32163131

Change-Id: Idfe1ddd2815c355cbf27cf29eb0e3de177de84e9
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
d2ec3919cb87931b2c143d0c1b98caf37039d882 24-Jan-2017 Erik Kline <ek@google.com> Switch to listening for all network changes.

This is for use while preferred upstreams are expressed as legacy types.

Test: as follows
- built (bullhead)
- flashed
- booted
- runtest frameworks-net passes
- USB tethering to WiFi and DUN works
Bug: 32163131
Change-Id: I76e7b6c95eb1b54e926096b2791163617bb0a818
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
efdd3f4ce04d3e1741831982ff86a58da6b542d3 20-Jan-2017 Erik Kline <ek@google.com> Address comments from previous change (320592)

Test: as follows
- built (bullhead)
- flashed
- booted
- runtest frameworks-net passes
- vanilla wifi-to-mobile tethering works
Bug: 32163131

Change-Id: I8788cb0d93606a2893c3dbc4f22e72f450f319b8
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
dd8e8911c69dd68d268f892373b174bc7b422db8 18-Jan-2017 Erik Kline <ek@google.com> Restore legacy types when registering mobile requests

Test: as follows
- built (bullhead)
- flashed
- booted
- runtest frameworks-net passes
- vanilla wifi to mobile tethering (no DUN)
- tested with DUN by:
- adding "dun" to the APN type
- adb shell settings put global tether_dun_required 1
- verified the bug exists without this fix
Bug: 32163131
Bug: 34364553
Change-Id: Idf1a9a2c8191c40abed29e1789f62aefb83ed1ce
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
885a9098cf19eaee5a164c5ca771aec5926f2efd 16-Jan-2017 Erik Kline <ek@google.com> Start of UpstreamNetworkMonitor unittests

Test only the ConnectivityManager request and callback registering
and releasing. Testing behaviour triggered by activating these
callbacks will be in a separate change.

Test: runtest frameworks-net
Bug: 32163131
Change-Id: Ibfe66bbe2e61d81e8f13ac3b98e000d0d4534efa
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java
9bba340fd4edd5aea91d612a332f964b0d63cf34 13-Jan-2017 Erik Kline <ek@google.com> Extract UpstreamNetworkMonitor to its own file

Test: as follows:
- built (bullhead)
- flashed
- booted
- runtest framworks-net passes
Bug: 32163131

Change-Id: I87ff041e008e45065c9722de8130df53684fb2a9
/frameworks/base/services/core/java/com/android/server/connectivity/tethering/UpstreamNetworkMonitor.java