Commit graph android_packages_modules_Co.../framework
Message SHA1
[JS01]Remove hidden API usage of Connectivity Sevice
The Connectivity service will become the mainline module.
Therefore, remove the caller of using Connectivity's
hidden API outside the module and expose the required
connectivity API used in Jobscheduler.

Bug: 183456204
CTS-Coverage-Bug: 170598012
Test: atest JobStoreTest
Change-Id: Ie6bc81ff382fb242b98f35d28a96defc207c7987
Merged-In: Ie6bc81ff382fb242b98f35d28a96defc207c7987
           (cherry-picked from ag/13946348)

lifr   commited 2021-03-30 11:41:50 +08:00
b4dab37e28
Merge changes If539cf5d,I9765f1c9,I6d3007a1 am: f2babbbd67 am: e18ea6cb80 am: 34792dd0c9
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1652262

Change-Id: I94e5cf19a7b7dac8400cb7acf80b39a864099956

Lorenzo Colitti   authored and   Automerger Merge Worker   commited 2021-03-30 02:24:00 +00:00
27e1d0473e
Merge "Add session ID to VpnTransportInfo" into sc-dev
Lorenzo Colitti   authored and   Android (Google) Code Review   commited 2021-03-30 00:39:38 +00:00
a27075fe12
Add a setTeardownDelayMs API to NetworkAgent.
This allows transports to request that when the network is
disconnected, the system should delay destroying the native
network until the specified time has passed after the network
disconnected.

Bug: 181941583
Test: next CL in the stack
Change-Id: I9765f1c9d1e55c23c6d583d6709dbe06505975b1

Lorenzo Colitti   commited 2021-03-29 21:33:08 +09:00
9364b3a406
Address comments on onBlockedStatusChanged(Network, int) CL.
Test: m
Bug: 165835257
Change-Id: I6d3007a1eac54ee6650b350aee56ed398a2c950d

Lorenzo Colitti   commited 2021-03-29 20:12:09 +09:00
a1bd6f6d51
Add new network capabilities to support automotive head unit via USB
- Add a new transport type for USB and a new network capability
to support automotive head unit.
- In order to pass DnsManagerTest#testTransportTypesEqual, Android.bp
needs to link to dnsresolver_aidl_interface-V8-java. That test checks
whether the TRANSPORT types defined in NetworkCapabilities are the
same as IDnsResolver.aidl.

Bug: 181742019
Test: atest FrameworksNetTests
Change-Id: Iec2df09a776d779108f95098e01b7ffdf6f8867a

lucaslin   authored and   Lucas Lin   commited 2021-03-29 10:59:06 +00:00
593a1b4dfa
[TL02]Remove hidden API usage of NetworkAgent
The connection service will become the mainline module.
Remove the hidden API usage of NetworkAgent.

Bug: 170598012
CTS-Coverage-Bug: 170598012
Test: atest FrameworksNetTests FrameworksTelephonyTests
      atest FrameworksWifiTests
Change-Id: I4e4040ae7f94bdf479c7df9ec2ffabafbe06331c
Merged-In: I4e4040ae7f94bdf479c7df9ec2ffabafbe06331c

lifr   commited 2021-03-29 15:33:44 +08:00
d90927f218
Merge "Re-implement NetworkUtils#queryUserAccess."
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-03-29 04:57:40 +00:00
43dc028b9f
Re-implement NetworkUtils#queryUserAccess.
Currently, queryUserAccess talks to netd via FwmarkServer.
Doing this from the module would require exposing queryUserAccess
as an NDK API or reimplementing FwmarkClient.

Because queryUserAccess really only uses information that comes
from ConnectivityService/PermissionMonitor anyway, just use that
information without calling to net.

Test: atest HostsideVpnTests
Bug: 171540887
Merged-In: If855de1ea3e1fd2ed30f2795d9b4acfcf969a2dc

Change-Id: If855de1ea3e1fd2ed30f2795d9b4acfcf969a2dc

Lorenzo Colitti   authored and   Remi NGUYEN VAN   commited 2021-03-29 12:11:19 +09:00
3f1a21ee00
Add session ID to VpnTransportInfo
- This will be visible only to apps with the NETWORK_SETTINGS
  permissions (signature), and will be redacted for all other callers.
- This string is expected to be the same as set by
  VpnService#setSession, and in general, VpnConfig.session. But it
  will be a general API that Vpn.java can call when setting the
  VpnTransportInfo.
- This string cannot be updated once the VPN NetworkAgent is connected.

Bug: 171872481
Test: atest ConnectivityServiceTest
      atest VpnTransportInfoTest
      atest android.net.cts.NetworkAgentTest
Change-Id: I8d09e25b83f7ee8be21ec9c9bd3c72a251f1370d

lifr   commited 2021-03-29 10:12:17 +08:00
4d604c81db
Expose BIP and VSIM relavent definitions
In order to support special APNs below, OEM may need extra
NetworkCapabilities and apn type definition to support the
carriers request. Add corresponding definition into API
surface.

VSIM: for Virtual SIM service
BIP: for Bearer Independent Protocol

Bug: 130869457
Test: make update-api
Change-Id: I41e881c6fe39e92d5cdac2d0a02fa8a8e814c9c5
Merged-In: I41e881c6fe39e92d5cdac2d0a02fa8a8e814c9c5

Chiachang Wang   commited 2021-03-26 06:17:25 +00:00
eab4a9c984
Move deduceRestrictedCapability to libs/net and rename it
NetworkCapabilities is included in framework-connectivity, so external
module cannot have dependencies on its hidden API. Move the method to
libs/net so that external modules can use it by including the library.

Bug: 178777253
Test: FrameworksNetTests
(cherry-picked from ag/13921626)
Merged-In: I77970b3a5e5e0e9d263639694b1f06519169bf64
Change-Id: I77970b3a5e5e0e9d263639694b1f06519169bf64

Aaron Huang   authored and   Chiachang Wang   commited 2021-03-26 14:13:51 +08:00
7f7c26b429
Merge "Add network disconnected callback"
Treehugger Robot   authored and   Gerrit Code Review   commited 2021-03-26 05:47:33 +00:00
c1657fb7f8
Merge changes from topic "blocked-reasons-callback-tests" am: 2108a92452 am: 05c65a10f5 am: 5aa6b8d707
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1652214

Change-Id: I4d69b1ce096d83c311620950650460024ae348c0

Lorenzo Colitti   authored and   Automerger Merge Worker   commited 2021-03-26 05:27:47 +00:00
92aa222f02
Merge changes from topic "ns05" into sc-dev
* changes:
  [NS06] Implement the don't-reap mechanism
  [NS05] Feed network offer callbacks

Chalard Jean   authored and   Android (Google) Code Review   commited 2021-03-26 05:07:39 +00:00
1a0debaab0
Add network disconnected callback
Create a network callback to notify network agent after the
native network being destroyed by netd which means the network
is fully disconnected. The NetworkAgent may handle this event
after sending disconnect state to ConnectivityService to proceed
its pending works that have to be done after it.

Bug: 178725261
Test: make update-api
Change-Id: I602ff2c688909473b03b72c9407d4286608cff4c
Merged-In: I602ff2c688909473b03b72c9407d4286608cff4c

Chiachang Wang   commited 2021-03-26 02:53:29 +00:00
1c5f57f921
Merge "Expose BIP and VSIM relavent definitions" into sc-dev
Chiachang Wang   authored and   Android (Google) Code Review   commited 2021-03-26 02:38:34 +00:00
ebbc803638
API to get network visible network capability name
Test: atest DataConnectionTest, DcTrackerTest
Bug: 181916712
CTS-Coverage-Bug: 183553812
Change-Id: Iae63ac4d62641cee2bd0f0c5f50dd729750d514c
Merged-In: Iae63ac4d62641cee2bd0f0c5f50dd729750d514c

Sarah Chin   commited 2021-03-25 15:10:39 -07:00
8fc279e0cc
Add onBlockedStatusChanged(Network, int) to NetworkCallback.
This is similar to onBlockedStatusChanged(Network, boolean) but
it allows the callback holder to know the exact reason why
networking was blocked. It is useful to privileged system
components such as JobScheduler that are able to ignore some
blocked reasons but not others.

Also add a new BLOCKED_REASON_LOCKDOWN_VPN that is used when
networking is blocked because an always-on VPN is in
lockdown mode.

Also move BLOCKED_METERED_REASON_MASK to ConnectivityManager.
This is necessary because ConnectivityService must ensure that
the blocked status callbacks are correctly sent when meteredness
changes (e.g., a UID that is blocked on metered networks will
become unblocked on a network that becomes unmetered). In order
to do this it needs to know which reasons apply only on metered
networks.

Bug: 165835257
Test: unit tests in subsequent CLs in the stack
Change-Id: I647db4f5a01280be220288e73ffa85c15bec9370

Lorenzo Colitti   commited 2021-03-26 02:37:19 +09:00
8ad5812ebc
Add MOBILE_DATA_PREFERRED_APPS setting
This setting is OEM upstream requirement for mobile data
preferred apps feature.

Bug: 171872461
Test: atest FrameworksNetTests
Merged-In: Ic5e0515b2b948de3d333c8d8e073d0b15514562a
Change-Id: Iba17bf68cffbe39d1c08ad94364b41bbf851bf57

paulhu   authored and   Lorenzo Colitti   commited 2021-03-26 02:37:19 +09:00
7a4eeed62f
Add PRIVATE_DNS_MODE setting setter
Bug: 182538166
Test: atest FrameworksNetTests
Merged-In: If234426f041606c4881de1eca31b6f5bdb3c6bfe
Change-Id: Iaa9e6cc92f1805ab341c308fc60e947ec4c674f0

paulhu   authored and   Lorenzo Colitti   commited 2021-03-26 02:37:16 +09:00
6865eb6dda
Expose ConnectivitySettingsManager as module-lib API
Have getter/setter methods for external modules that can
get/set the setting values.

Bug: 182538166
Test: atest FrameworksNetTests
Merged-In: I82225a43f95e3e1d3e52c4e7a0fc541c0087292e
Change-Id: I61cb00216494e35b6e0dfe444b177cad36ad8afb

paulhu   authored and   Lorenzo Colitti   commited 2021-03-26 02:35:07 +09:00
9443095517
Merge "Add MOBILE_DATA_PREFERRED_APPS setting" into sc-dev
Paul Hu   authored and   Android (Google) Code Review   commited 2021-03-25 15:01:30 +00:00
1cda176f02
Merge "Use connectivity APIs from framework-connectivity" into sc-dev
Remi NGUYEN VAN   authored and   Android (Google) Code Review   commited 2021-03-25 14:51:55 +00:00
e0a1a2a73a
[NS06] Implement the don't-reap mechanism
This exposes a mechanism for network providers to tell
the network stack that a given network must be kept up
for some specific reason. This is meant to be easier
for them than to have to file a request, in particular
because there is no guaranteed way to make sure the
request will be best matched by any given network.

Test: new test for this
Bug: 167544279
Change-Id: I238a3ee5ee9262477a23b897e4141769dd1505d1

Chalard Jean   commited 2021-03-25 14:10:06 +00:00
fa33bef466
Merge "Add PRIVATE_DNS_MODE setting setter" into sc-dev
Paul Hu   authored and   Android (Google) Code Review   commited 2021-03-25 13:59:18 +00:00
fe704c3d7e
Merge "Expose ConnectivitySettingsManager as module-lib API" into sc-dev
Paul Hu   authored and   Android (Google) Code Review   commited 2021-03-25 13:50:45 +00:00
50c73a6865
Merge "Add network created callback support"
Chiachang Wang   authored and   Gerrit Code Review   commited 2021-03-25 13:22:17 +00:00
1b7563cb1e
Expose BIP and VSIM relavent definitions
In order to support special APNs below, OEM may need extra
NetworkCapabilities and apn type definition to support the
carriers request. Add corresponding definition into API
surface.

VSIM: for Virtual SIM service
BIP: for Bearer Independent Protocol

Bug: 130869457
Test: make update-api
Change-Id: I41e881c6fe39e92d5cdac2d0a02fa8a8e814c9c5

Chiachang Wang   commited 2021-03-25 21:19:37 +08:00
d3881b98ed
Add MOBILE_DATA_PREFERRED_APPS setting
This setting is OEM upstream requirement for mobile data
preferred apps feature.

Bug: 171872461
Test: atest FrameworksNetTests
Change-Id: Ic5e0515b2b948de3d333c8d8e073d0b15514562a

paulhu   authored and   Paul Hu   commited 2021-03-25 13:13:15 +00:00
63cf0d0e82
[NS05] Feed network offer callbacks
The design is very simply expressed :
An offer is needed for a request if and only if that offer
might beat the satisfier for that request.

The implementation of "might beat" is NetworkRanker#mightBeat.

Test: FrameworksNetTests FrameworksWifiTests NetworkStackTests
Bug: 167544279
Change-Id: I0fe911eef2483ecbac48c733d56283b81538690a

Chalard Jean   commited 2021-03-25 22:13:10 +09:00
428b913abd
Add PRIVATE_DNS_MODE setting setter
Bug: 182538166
Test: atest FrameworksNetTests
Change-Id: If234426f041606c4881de1eca31b6f5bdb3c6bfe

paulhu   authored and   Paul Hu   commited 2021-03-25 13:11:54 +00:00
d559441862
Merge "Add network disconnected callback" into sc-dev
Chiachang Wang   authored and   Android (Google) Code Review   commited 2021-03-25 12:24:20 +00:00
edf9d3f2d6
Expose ConnectivitySettingsManager as module-lib API
Have getter/setter methods for external modules that can
get/set the setting values.

Bug: 182538166
Test: atest FrameworksNetTests
Change-Id: I82225a43f95e3e1d3e52c4e7a0fc541c0087292e

paulhu   commited 2021-03-25 20:12:43 +08:00
b05c16b2a4
Merge "Expose some APIs from ConnectivityManager"
Lucas Lin   authored and   Gerrit Code Review   commited 2021-03-25 11:29:08 +00:00
8e4ae68ddd
Merge changes Ic2357dcf,Iddf8c71a
* changes:
  Expose NetworkAgent constructor taking a NetworkScore parameter
  Expose NetworkScore to external caller

Lucas Lin   authored and   Gerrit Code Review   commited 2021-03-25 11:28:28 +00:00
514e8ad39c
Add network created callback support
Create a network callback to notify network agent after
netd has created the network, so that the NetworkAgent may
wait for this callback and ensure the pre-work to communicate
with netd completed.

Bug: 178725261
Test: make update-api
Change-Id: I8c2ff7bd6980ae838abc5669f9419d62741b8666
Merged-In: I8c2ff7bd6980ae838abc5669f9419d62741b8666

Chiachang Wang   commited 2021-03-25 18:27:24 +08:00
e211de2893
Add network disconnected callback
Create a network callback to notify network agent after the
native network being destroyed by netd which means the network
is fully disconnected. The NetworkAgent may handle this event
after sending disconnect state to ConnectivityService to proceed
its pending works that have to be done after it.

Bug: 178725261
Test: make update-api
Change-Id: I602ff2c688909473b03b72c9407d4286608cff4c
CTS-Coverage-Bug: 178725261

Chiachang Wang   commited 2021-03-25 09:58:48 +00:00
9affe28062
Merge "[NS04.8] Address comments from NS04 and NS04.5" into sc-dev
Chalard Jean   authored and   Android (Google) Code Review   commited 2021-03-25 09:34:05 +00:00
59e0788b7d
Merge "Add network created callback support" into sc-dev
TreeHugger Robot   authored and   Android (Google) Code Review   commited 2021-03-25 08:52:56 +00:00
affca14fe6
Expose NetworkAgent constructor taking a NetworkScore parameter
Vpn constructs NetworkAgent with this exposed NetworkAgent
constructor. Given NetworkAgent is moving into the incoming
connectivity module, Vpn which is outside the module will not
be able to access it if it's not in the API surface. Thus,
expose it to allow Vpn to use it.

Bug: 182963397
Test: make update-api
Change-Id: Ic2357dcfff3233e0dd17b48b0e376a5095ef60fa
Merged-In: Ic2357dcfff3233e0dd17b48b0e376a5095ef60fa
CTS-Coverage-Bug: 172183305
  (cherry-picked from ag/13966707)

Chiachang Wang   authored and   Lucas Lin   commited 2021-03-25 08:40:27 +00:00
4694a2ab04
Expose NetworkScore to external caller
NetworkScore will be a part of mainline module, so the external
callers cannot call its hidden APIs. Expose needed APIs to
the external callers.

CTS-Coverage-Bug: 182963397
Bug: 182963397
Test: m
Change-Id: Iddf8c71a5f51a40bc6ff78626b3e8ee530d1b7eb
Merged-In: Iddf8c71a5f51a40bc6ff78626b3e8ee530d1b7eb
  (cherry-picked from ag/13947595)

lucaslin   authored and   Lucas Lin   commited 2021-03-25 08:15:09 +00:00
39907ba9d6
Expose some APIs from ConnectivityManager
- Expose setRequireVpnForUids to Vpn.java
- Expose setLegacyLockdownVpnEnabled to LockdownVpnTracker.java
- Expose requestRouteToHostAddress to
  GnssNetworkConnectivityHandler.java

Bug: 182963397
Test: m
Change-Id: I1fb5ecfbe37878ba3534e6c6c7599ca29db2735c
Merged-In: I1fb5ecfbe37878ba3534e6c6c7599ca29db2735c
  (cherry-picked from ag/13927657)

lucaslin   authored and   Lucas Lin   commited 2021-03-25 08:07:53 +00:00
29278eef92
Use connectivity APIs from framework-connectivity
Instead of compiling framework-connectivity source into
frameworks-minus-apex, have the APIs loaded separately from
framework-connectivity.

Bug: 171540887
Test: device boots, has connectivity
Change-Id: I8f07ff2082c3de80821e121807e66a43a870de7b

Remi NGUYEN VAN   commited 2021-03-25 06:34:52 +00:00
75c959e718
[NS04.8] Address comments from NS04 and NS04.5
Bug: 167544279
Test: ConnectivityServiceTest
Change-Id: Ia930b3d3e723075cb47e267d589c576ee2d4490f

Chalard Jean   commited 2021-03-25 13:35:56 +09:00
61e231fa4b
Merge "Merge framework-connectivity impl and stub targets" into sc-dev
Remi NGUYEN VAN   authored and   Android (Google) Code Review   commited 2021-03-25 02:05:06 +00:00
cbeeca6221
Add network created callback support
Create a network callback to notify network agent after
netd has created the network, so that the NetworkAgent may
wait for this callback and ensure the pre-work to communicate
with netd completed.

Bug: 178725261
Test: make update-api
Change-Id: I8c2ff7bd6980ae838abc5669f9419d62741b8666
CTS-Coverage-Bug: 178725261

Chiachang Wang   commited 2021-03-25 00:27:11 +00:00
18d4281317
Merge "Add 5G/NR QOS support" am: 0deb814870 am: 05e4507857 am: 6c981f1bd3
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1643762

Change-Id: I74c0d7d771d0b7e067dddc582389f77b8a899542

Jayachandran Chinnakkannu   authored and   Automerger Merge Worker   commited 2021-03-24 18:58:50 +00:00
dd89c6876a
Merge "Add 5G/NR QOS support"
Jayachandran Chinnakkannu   authored and   Gerrit Code Review   commited 2021-03-24 17:44:48 +00:00
0deb814870
Move BLOCKED_REASON_* constants from NPMS into ConnectivityManager.
These constants will now be including all the reasons for why an
uid's network access can be blocked, instead of only the
restrictions that could be imposed by NPMS.

Bug: 183473548
Test: atest ./tests/cts/hostside/src/com/android/cts/net/HostsideRestrictBackgroundNetworkTests.java
Merged-In: I4c544415e12adf442fd2415c371b1b70a39c3aa4
Change-Id: I6dcea43fbefa9eac8b5a971b822a5be5422a54b4

Sudheer Shanka   authored and   Lorenzo Colitti   commited 2021-03-25 01:33:26 +09:00
f1520bb8dc