Commit Graph

276 Commits

Author SHA1 Message Date
Chiachang Wang
9bd228e4da Merge changes from topic "replaceUidRange" am: 7b582e9749 am: 38794c5290 am: 28f5f912c5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1626206

Change-Id: Ibc5e47f175a0e5433492f81068da9f42496e660b
2021-03-18 18:26:42 +00:00
Chiachang Wang
332f379a59 Merge "Expose APIs for Settings" am: 53178361ae am: 94e9fb339f am: 259c30a6de
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1644202

Change-Id: I13a56aa7dcc19efef3dc268fabfa52069360eb18
2021-03-18 18:26:16 +00:00
Chalard Jean
4ec606c49d Merge "Move constants to MODULE_LIB" am: 229cf59510 am: 39356af73f am: 80e68e5d1d
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1640141

Change-Id: I514f5a3d1a4b1498f58170ac652ede394ddf6aeb
2021-03-18 18:24:57 +00:00
Paul Hu
9d73b70404 resolve merge conflicts of 82227141f6 to sc-dev
Bug: 182538166
Test: atest FrameworksNetTests
Change-Id: Idd5d75e0e9a7ad4f840b88da55d28fbaa2275dd0
2021-03-18 14:50:05 +00:00
Remi NGUYEN VAN
69f81f2ff7 Merge changes I4ad0ca60,I8a03162b into sc-dev
* changes:
  Expose isUidNetworkingBlocked and isUidRestrictedOnMeteredNetworks
  Add multipath preference, background status API
2021-03-18 14:07:12 +00:00
Chiachang Wang
7b582e9749 Merge changes from topic "replaceUidRange"
* changes:
  Expose uids related APIs in NetworkRequest and NetworkCapabilities
  Replace the usage of UidRange
2021-03-18 13:36:39 +00:00
Chiachang Wang
53178361ae Merge "Expose APIs for Settings" 2021-03-18 13:27:47 +00:00
Chalard Jean
229cf59510 Merge "Move constants to MODULE_LIB" 2021-03-18 12:29:38 +00:00
Paul Hu
9abe34a466 Merge "Add more connectivity module settings" 2021-03-18 12:22:55 +00:00
Remi NGUYEN VAN
4d49a1922a Migrate framework-connectivity internal resources
Use ServiceConnectivityResources instead.
Start by creating resources in the ServiceConnectivityResources package
to match the internal configuration, and common overlays.

Bug: 182125649
Test: device boots, has connectivity
Change-Id: I77a3efca2cd644f9828db1ed5d3cae8070fb8363
2021-03-18 09:02:13 +00:00
Remi NGUYEN VAN
d2f03002c9 Add connectivity protos to framework-connectivity
The protos are built separately by framework-connectivity from framework
protos, keeping only android.net protos for the connectivity jar.

Bug: 171860710
Test: m framework-connectivity.impl
Change-Id: I2c4a37ff2ee9e8efde49885feeafa27dcff7ca2c
2021-03-18 08:07:20 +00:00
Remi NGUYEN VAN
92f20605d8 Add multipath preference, background status API
Add APIs for getMultipathPreference and getRestrictBackgroundStatus.
Both are used by Connectivity to back the external
ConnectivityManager.getRestrictBackgroundStatus, and
ConnectivityManager.getMultipathPreference APIs.

Test: atest CtsNetTestCases
      atest ConnectivityServiceTests
      atest NetworkPolicyManagerServiceTest
Bug: 176289731
Change-Id: I8a03162b2f6691086bb64e75ffd354cdfca7f86a
2021-03-18 06:08:00 +00:00
Remi NGUYEN VAN
9416eece40 Merge "Add framework-connectivity.impl" am: 0fcb8d6db4 am: 74a87c1b2a am: 6e77056745
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1635039

Change-Id: Ief30f77f949669d9b52ae3a6fe84f8db91179841
2021-03-18 04:36:38 +00:00
paulhu
79260c21a8 Add more connectivity module settings
Add more connectivity module settings and update all references
to ConnectivitySettingsManager.

Bug: 182538166
Test: atest FrameworksNetTests
Change-Id: Ie96fbd0996ed3acb37099b6270bf3d4c2e558e9a
2021-03-18 11:58:29 +08:00
Remi NGUYEN VAN
74a87c1b2a Merge "Add framework-connectivity.impl" am: 0fcb8d6db4
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1635039

Change-Id: I9956c78228c2d04e20edf6fee1061861e26978b9
2021-03-18 03:33:42 +00:00
Chiachang Wang
0cefc1c20a Expose APIs for Settings
ConnectivityManager will be a part of incoming connectivity
mainline. Settings will no longer to access the hidden methods.
For those methods that accept the interaction from users, they
should be exposed as formal interface to allow the
functionality. Expose them to API surface.

Bug: 172183305
Test: make update-api
Change-Id: Id4533b94291766bb060af0091b5ccb81a00630fd
2021-03-18 11:18:56 +08:00
Paul Hu
1ef84e6de6 Merge "Add ConnectivitySettingsManager" am: 3e17e82ab1 am: af229a6c7b am: b43a0ed287
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1641759

Change-Id: Ib5ec1f8cc443d1b92215e6ab200fa383d719d053
2021-03-17 22:21:22 +00:00
Remi NGUYEN VAN
a481bd785f Merge "Remove Protocol.BASE_* usage in Connectivity" am: 7ffb87e4ce am: e4a8d2ff33 am: ec5b8f3b24
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1629266

Change-Id: I0bb7aec183efdeed894447a3b5abc446b9ca46c8
2021-03-17 22:20:59 +00:00
Lucas Lin
d04269e96d Merge "Modify the comment of getPrivateDnsMode" am: de9a3af4de am: e0e9636048 am: 388c821087
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1640143

Change-Id: I60147e1c828e5d82556e58b67b8f138f63228e8f
2021-03-17 22:19:20 +00:00
Chalard Jean
63d9588dca Merge changes I335e82e2,I84ba363d,I8f18083b,I854a952d,I00e23441 am: bf97a3ab5e am: ba22df4f9d am: 2d82b40262
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1622621

Change-Id: I5fa8e7b8bf35a5464868fdca4d115b3f9132c65f
2021-03-17 22:13:06 +00:00
Remi NGUYEN VAN
8d2f1d6f06 Merge "Remove MessageUtils usage in VpnTransportInfo" am: 0b33d35188 am: e1aa50a18a am: 8248cbc3da
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1635041

Change-Id: Ibf1592220cedb387d8edba27a7bbe49a36f42dc0
2021-03-17 22:10:16 +00:00
Junyu Lai
f4cbe4d191 Merge "[VCN14] Expose registerBestMatchingNetworkCallback" am: 29908cf3c4 am: 789f3829a0 am: b77d000812
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1635047

Change-Id: Ic0cb87f3ac4e9df7b0b6e2d0344c43e66499900e
2021-03-17 22:08:56 +00:00
Junyu Lai
2ac4e6eee4 Merge "[VCN13] Implement tracking best matching network" am: f98037abb3 am: 4377c5d40c am: b56ee13b44
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1633519

Change-Id: Ie252014cd9047c27fad3e451b80047493935dc3d
2021-03-17 16:08:50 +00:00
Paul Hu
082ec98e2a Merge "Replace interal okhttp APIs" am: e3ed08a24d am: c7b4df71f6 am: 970d67d760
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1622669

Change-Id: Ida687a8987385ef4525e41e609d7c8fedda9f1da
2021-03-17 16:07:31 +00:00
Lucas Lin
51121bf08f Merge "Add comments to describe the value of converting hex to decimal" am: 26f778d2bd am: dc6444c414 am: 8885169a2e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1635221

Change-Id: I0f978fd5fa0283a40db2897478483d680d44e9e9
2021-03-17 16:05:47 +00:00
Chalard Jean
1cda30b0a2 Merge "[NS01] Add NetworkScore" am: 98de10a7a1 am: 18294fcbb3 am: a73e64726f
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1556099

Change-Id: I953a773f8914152578a98d71b43d0a2e30a51aba
2021-03-17 16:04:22 +00:00
Remi NGUYEN VAN
5a66dd85b2 Merge "Add ParseException constructors to API" am: ef7b38b334 am: 2299e83d12 am: 40078d1567
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1635044

Change-Id: I4e4b1f4a70fcfaa43fa9b612e7fbd151093fd8fe
2021-03-17 16:03:23 +00:00
Remi NGUYEN VAN
1142754c99 Add framework-connectivity.impl
The library will be included in the connectivity module APEX when
migrating its sources out of framework-minus-apex.

Bug: 171540887
Test: m
Change-Id: I1595521eaced6e6997c076bb56b06ffdd22a4fa0
2021-03-18 00:29:08 +09:00
Paul Hu
af229a6c7b Merge "Add ConnectivitySettingsManager" am: 3e17e82ab1
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1641759

Change-Id: I84e3e2eb6f507abf6220b43886f6ab9e1fad4218
2021-03-17 15:27:02 +00:00
Remi NGUYEN VAN
e4a8d2ff33 Merge "Remove Protocol.BASE_* usage in Connectivity" am: 7ffb87e4ce
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1629266

Change-Id: Ieca69d4ff1d2a7f3b369bb4dcabaa702fbab4594
2021-03-17 15:19:31 +00:00
Chiachang Wang
f379ceec8e Expose uids related APIs in NetworkRequest and NetworkCapabilities
NetworkRequest is moving into the incoming connectivity mainline
module. The hidden setUids becomes inaccessible outside the
module. Shims for support cts in different API levels will need
to use it to verify the behavior of NetworkRequest. Thus, expose
it to the API surface.

Also, VPN uses getUids and setUids to control network
capabilities. Networkcapabilities is a part of incoming
connectivity mainline module but VPN is not. Thus, exposing these
two methods are needed to allow VPN to continue using it.

Test: make update-api
Bug: 172183305
Change-Id: I107c329d4d7130d488772166eae8b5e7aaa2ff04
2021-03-17 23:13:39 +08:00
Chiachang Wang
bb2439a884 Replace the usage of UidRange
UidRange is used in a shared way between ConnectivityService
and VPN through the use of NetworkCapabilities. UidRange will
be part of the ConnectivityService mainline but Vpn.java will
stay in the framework. We need a way to replace the APIs using
UidRange, or to make UidRange system API. The only really
relevant surface here is NetworkCapabilities#{setUids, getUids}.
The need for UidRange could be replaced by an integer Range, so
replace the usage of UidRange by a integer Range in
NetworkCapabilities#{setUids, getUids} and update the relevant
callers.

Bug: 172183305
Test: atest FrameworksNetTests CtsNetTestCasesLatestSdk
Change-Id: I4e5aec6ef1ea02e038fcd7ed117a3b67b69c5cb9
2021-03-17 23:02:22 +08:00
Paul Hu
3e17e82ab1 Merge "Add ConnectivitySettingsManager" 2021-03-17 14:57:32 +00:00
Remi NGUYEN VAN
7ffb87e4ce Merge "Remove Protocol.BASE_* usage in Connectivity" 2021-03-17 14:53:26 +00:00
Remi NGUYEN VAN
be83a4afc5 Merge "Remove extra comment" 2021-03-17 12:16:09 +00:00
Remi NGUYEN VAN
a711b3f96c Remove Protocol.BASE_* usage in Connectivity
ConnectivityManager and NetworkAgent do not share their handler with any
other component, so there is no reason to use addresses that do not
overlap. Protocol.BASE_* was written to allow for interaction "between
different StateMachine implementations without a conflict", but the
classes do not use StateMachine, and they do not have such interactions.

Bug: 177046265
Test: atest FrameworksNetTests
Change-Id: I18c341d4a2c01cb9559d682a9ad1ff259e6b5855
2021-03-17 20:56:50 +09:00
Remi NGUYEN VAN
eade234e2a Remove extra comment
This fixes a merge conflict with downstream branches due to an
incomplete cherry-pick.

Bug: 171540887
Test: m

Change-Id: I27a8f20f1a1d83b472700648f3f5a68413a76ac3
Merged-In: I7432fe4c87cd3cab04dcb6185c9a4f3f84376549
2021-03-17 10:58:08 +00:00
paulhu
1510c9c29f Add ConnectivitySettingsManager
This class is used to manager the connectivity module related
settings.

Bug: 182538166
Test: make
Change-Id: I5e02e719ce0d305d7c8a45fefb850d7b981f07eb
2021-03-17 18:24:16 +08:00
lucaslin
73c9860a06 Modify the comment of getPrivateDnsMode
Bug: 172183305
Test: m
Change-Id: I2f1b44cf2a362b42f052ea5d34a5cec03d46e661
2021-03-17 14:53:35 +08:00
Lucas Lin
8d638d9434 Merge "Change the parameter type from ContentResolver to Context" 2021-03-17 06:35:21 +00:00
Chalard Jean
560d4032c4 Move constants to MODULE_LIB
These constants are used by a MODULE_LIBRARIES API, they should
have the same visibility.

Test: ConnectivityServiceTest
Change-Id: I14cb189d949fe552f463cae3002801fd8cf8230c
2021-03-17 14:59:24 +09:00
Chalard Jean
bf97a3ab5e Merge changes I335e82e2,I84ba363d,I8f18083b,I854a952d,I00e23441
* changes:
  Remove per-user preference when the user is removed
  Expose the enterprise per-profile networking API.
  Implement setNetworkPreferenceForUser.
  Public API for per-profile network preference.
  Add tests for setNetworkPreferenceForUser
2021-03-17 05:48:18 +00:00
Lucas Lin
576f7c849f Merge "Change the parameter type from ContentResolver to Context" into sc-dev 2021-03-17 03:27:28 +00:00
Remi NGUYEN VAN
0b33d35188 Merge "Remove MessageUtils usage in VpnTransportInfo" 2021-03-17 00:14:10 +00:00
junyulai
bd62226850 [VCN14] Expose registerBestMatchingNetworkCallback
Test: m -j doc-comment-check-docs
Bug: 175662146
Change-Id: Ie67dd2f4f8d973de37bc64a03908d7cbb7c2b7ad
2021-03-16 21:30:56 +08:00
junyulai
8cae3c748f [VCN13] Implement tracking best matching network
This is done by:
  1. In requestNetwork, provide a basic permission check.
  2. rematchNetworksAndRequests: no change, since non listen
     requests will be automatically processed to track
     best satisfying network.
  3. applyNetworkReassignment: no change, since non-request
     will not be sent to factories.

Test: atest ConnectivityServiceTest#testRegisterBestMatchingNetworkCallback_noIssueToFactory
Test: atest ConnectivityServiceTest#testRegisterBestMatchingNetworkCallback_trackBestNetwork
Bug: 175662146
Change-Id: I8cf4ab334df6812d84cdda160e9b72b6f54062af
2021-03-16 21:30:55 +08:00
Paul Hu
e3ed08a24d Merge "Replace interal okhttp APIs" 2021-03-16 12:18:49 +00:00
Chalard Jean
cc9ad15cd2 Expose the enterprise per-profile networking API.
Also unify the listener for Oem settings, which have
never been released as public API (it is slated to be
released in S).

Test: FrameworksNetTests
Change-Id: I84ba363dd0ec03871c37b1c3a31e5557d9aa12e7
2021-03-16 12:14:00 +00:00
Chalard Jean
9d96818bf2 Implement setNetworkPreferenceForUser.
Test: FrameworksNetTests
Change-Id: I8f18083b5857289892fe8adea5f5ea3f5dbe0809
2021-03-16 12:13:46 +00:00
Chalard Jean
03433057cb Public API for per-profile network preference.
This patch defines the API, but does not make it public
yet as there is no implementation yet.

Test: none so far
Change-Id: I854a952dfe35cc80847eb62f522b1667b8e9b8a0
2021-03-16 12:13:27 +00:00