Commit graph android_packages_modules_Co.../framework
Message SHA1
Merge "Expose NetworkAgent constructor taking a NetworkScore parameter" into sc-dev
TreeHugger Robot   authored and   Android (Google) Code Review   commited 2021-03-23 12:45:24 +00:00
3cccf48918
[NS04.5] Have NetworkOffer embark a provider ID
...instead of a Messenger.
This will be useful later to compare whether a given offer is
offered by the same provider satisfying a request.

Bug: 167544279
Test: ConnectivityServiceTest
Change-Id: I975a9439021c7fa511c50ac982819b6dd146291e

Chalard Jean   commited 2021-03-23 21:41:11 +09:00
148dcce559
[NS04] Introduce Network Offers and their callbacks
This patch introduces the concept of a network offer that
providers send to Connectivity to register for relevant
requests. This lets them see only requests that they can
hope to satisfy considering their capabilities and score
filters.

This is meant to replace the filtering mechanism currently
implemented by NetworkFactory. The reason for replacing
this mechanism is that the old mechanism does caps and
score filtering on the factory side, which requires these
two filters to be contextless and available system-wide,
including in separate processes from the system server.
These constraints severely limit and complexify in
particular what the score comparisons may look like. In
the past the score comparison was only integer-based,
making the code duplication not much of a problem, but as
this scheme is becoming unsustainable by spreading the
complexity of the selection across the entire stack, a
centralized mechanism is now necessary.

This patch only introduces the new objects and has CS
keep track of them, but does not actually use them yet.
Followup patches will implement the logic of calling
the offer callbacks.

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

Chalard Jean   commited 2021-03-23 21:41:11 +09:00
d1b498b16d
Merge "Expose NetworkScore to external caller" into sc-dev
Lucas Lin   authored and   Android (Google) Code Review   commited 2021-03-23 12:18:23 +00:00
d8e8a9557b
Merge "Add NetworkRequest.Builder creating from an existing instance"
Chiachang Wang   authored and   Gerrit Code Review   commited 2021-03-23 10:46:20 +00:00
074c7d7537
Merge "[JS01]Remove hidden API usage of Connectivity Sevice" into sc-dev
Frank Li   authored and   Android (Google) Code Review   commited 2021-03-23 10:22:28 +00:00
d968d80146
Remove Network, NetworkRequest metrics from jobscheduler
These metrics are deprecated so remove them from jobscheduler.
Also remove dumpDebug method from Network, NetworkRequest and
NetworkCapabilities because there's no caller anymore.

This change also for connectivity mainline module. These
three classes are inculded in framework-connectivity so
external module cannot have dependencies on its hidden API.
With this change, the dependencies can be removed.

Bug: 178777253
Test: FrameworksNetTests
      JobStoreTest
      adb shell dumpsys jobscheduler --proto
      CtsIncidentHostTestCases:JobSchedulerIncidentTest
Change-Id: Ie0c540303ba06b8fba029d2b98ae753afb08c963

Aaron Huang   commited 2021-03-23 10:19:41 +00:00
967f77c269
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
CTS-Coverage-Bug: 172183305

Chiachang Wang   commited 2021-03-23 08:51:05 +00:00
3ee63e5132
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

lucaslin   commited 2021-03-23 16:17:37 +08:00
18158aa33b
Merge "Add NDK API for getprocnetwork" into sc-dev
Remi NGUYEN VAN   authored and   Android (Google) Code Review   commited 2021-03-23 07:11:06 +00:00
56db6551f5
Add NetworkRequest.Builder creating from an existing instance
Provide a formal way to construct a new NetworkRequest from an
existing instance. The network capabilities inside the
NetworkRequest is hidden. There is no way to pass a
NetworkRequest and update its capabilities. Add
NetworkRequest.Builder creating from an existing instance to
allow to clone the network capabilities.

Bug: 172183305
Test: make update-api
Change-Id: I068462b2a1410daf67b0c95f2b643d396f079531
Merged-In: I068462b2a1410daf67b0c95f2b643d396f079531

Chiachang Wang   commited 2021-03-23 14:50:03 +08:00
e2179dd1cc
[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

lifr   commited 2021-03-23 13:58:48 +08:00
308bcccd2b
Merge "[VCN15] expose addUnwantedCapability and related APIs"
Junyu Lai   authored and   Gerrit Code Review   commited 2021-03-23 05:02:22 +00:00
84ebe6693a
Merge "Have a new method in NetworkAgentConfig.Builder to set allowBypass"
Lorenzo Colitti   authored and   Gerrit Code Review   commited 2021-03-23 04:40:50 +00:00
1a6e0ea3fd
Merge "[TL02]Remove hidden API usage of NetworkAgent" into sc-dev
Frank Li   authored and   Android (Google) Code Review   commited 2021-03-23 02:03:59 +00:00
6fa238f167
[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

lifr   authored and   Paul Hu   commited 2021-03-23 02:01:38 +00:00
c4fd62072b
Merge changes I638ed5cd,I29f15571,I21a22ed1
* changes:
  Expose registerDefaultNetworkCallbackAsUid.
  Support calling registerDefaultNetworkCallback for another UID.
  Store the effective UID in NetworkRequestInfo.

Lorenzo Colitti   authored and   Gerrit Code Review   commited 2021-03-23 01:27:58 +00:00
750e8ca69e
Merge "[VCN15] expose addUnwantedCapability and related APIs" into sc-dev
Lorenzo Colitti   authored and   Android (Google) Code Review   commited 2021-03-23 01:19:39 +00:00
1cd2428be0
Add NDK API for getprocnetwork
The API is the getter couterpart for setprocnetwork.
Use it in NetworkUtils so that the NDK API can be the source of truth
for the process network.

Bug: 171540887
Test: atest CtsNetTestCases
      Tests in change I311b58585033c2ca50ce5477ea9cd94b6f127507
Change-Id: Ie8f68cf1fa57deddb63324c1abf3d6fd5b0ef500

Remi NGUYEN VAN   commited 2021-03-23 01:01:06 +00:00
31f329e987
Have a new method in NetworkAgentConfig.Builder to set allowBypass
Have a new method in NetworkAgentConfig.Builder for Vpn to set
allowBypass.

Bug: 182963397
Test: m
Change-Id: I3f244464438325ee7f8a1b953d3fb28186293628

lucaslin   authored and   Lorenzo Colitti   commited 2021-03-23 09:01:40 +09:00
0e345e9b1a
Revert "Have a new method in NetworkAgentConfig.Builder to set allowBypass"
This reverts commit 974644dd3c.

Reason for revert: Broken build b/183416288

Change-Id: Id9ec9fb98b8f88eeb7db1d1442d76456aaf350d1

Joshua Mccloskey   commited 2021-03-22 18:55:32 +00:00
02da918919
Have a new method in NetworkAgentConfig.Builder to set allowBypass
Have a new method in NetworkAgentConfig.Builder for Vpn to set
allowBypass.

Bug: 182963397
Test: m
Change-Id: I3f244464438325ee7f8a1b953d3fb28186293628

lucaslin   authored and   Lucas Lin   commited 2021-03-22 18:44:48 +00:00
974644dd3c
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
Change-Id: I77970b3a5e5e0e9d263639694b1f06519169bf64

Aaron Huang   commited 2021-03-22 22:35:10 +08:00
f0fc6d7f68
Merge "Add NetworkRequest.Builder creating from an existing instance" into sc-dev
Chiachang Wang   authored and   Android (Google) Code Review   commited 2021-03-22 13:17:43 +00:00
577911cc62
Add NetworkRequest.Builder creating from an existing instance
Provide a formal way to construct a new NetworkRequest from an
existing instance. The network capabilities inside the
NetworkRequest is hidden. There is no way to pass a
NetworkRequest and update its capabilities. Add
NetworkRequest.Builder creating from an existing instance to
allow to clone the network capabilities.

Bug: 172183305
Test: make update-api
Change-Id: I068462b2a1410daf67b0c95f2b643d396f079531
CTS-Coverage-Bug: 172183305

Chiachang Wang   commited 2021-03-22 13:05:10 +00:00
7625498617
Merge "Move trimV4AddrZeros to libs/net" am: 22cb7841a5 am: bc1c1bc38e am: 7fd39d2852
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1636022

Change-Id: I7908772ff2f3b2c5fc1dd9a3510fce0f7ee78ba5

Treehugger Robot   authored and   Automerger Merge Worker   commited 2021-03-22 12:31:39 +00:00
80d92cb03c
Merge "Swap parameters in QosCallback#registerQosCallback" am: dcc2fb2a19 am: 507df2663e am: 2e744846a0
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1628901

Change-Id: Ice84bb2e6d855ed88e7e432cf49739e69c9e01de

Jayachandran Chinnakkannu   authored and   Automerger Merge Worker   commited 2021-03-22 12:30:40 +00:00
687d2a3118
[VCN15] expose addUnwantedCapability and related APIs
Test: m -j doc-comment-check-docs
Bug: 175662146
Change-Id: I3f2e6a99e015f09cc4405f6804eac4ae33e3dcc7

junyulai   authored and   Junyu Lai   commited 2021-03-22 11:11:26 +00:00
e76b5f7004
Expose registerDefaultNetworkCallbackAsUid.
Bug: 165835257
Test: atest FrameworksNetTests
Change-Id: I638ed5cd5273d456919630aba1e22f099df1b36c

Lorenzo Colitti   commited 2021-03-22 19:50:27 +09:00
b90bdbdbf4
Merge "Add NetworkFactory to connectivity jarjar rules" into sc-dev
Remi NGUYEN VAN   authored and   Android (Google) Code Review   commited 2021-03-22 09:27:06 +00:00
411f6477c6
Support calling registerDefaultNetworkCallback for another UID.
This is to be used by privileged components (e.g., JobScheduler)
to request callbacks about the state of other UIDs on the system.

Bug: 165835257
Test: new unit test coverage
Change-Id: I29f155710394e58c14fcef488db6271d8d83033a

Lorenzo Colitti   commited 2021-03-22 17:52:20 +09:00
5f26b19afd
[VCN15] expose addUnwantedCapability and related APIs
Test: m -j doc-comment-check-docs
Bug: 175662146
Merged-In: I3f2e6a99e015f09cc4405f6804eac4ae33e3dcc7
Change-Id: I3f2e6a99e015f09cc4405f6804eac4ae33e3dcc7
  (cherry-picked from ag/13929102)

junyulai   commited 2021-03-22 16:51:50 +08:00
b15b7dbdd4
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

lucaslin   commited 2021-03-22 11:51:27 +08:00
97fb10a3a6
Add NetworkFactory to connectivity jarjar rules
NetworkFactory is part of net-utils-device-common, but is outside of
the com.android.net.module.util and needs a separate jarjar rule.

Bug: 171540887
Test: atest FrameworksNetTests
Change-Id: Iec828a789175acdbe4e7f35e4cc942922540495c

Remi NGUYEN VAN   commited 2021-03-22 03:50:15 +00:00
8c1b75521a
Merge "Move trimV4AddrZeros to libs/net" am: 22cb7841a5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1636022

Change-Id: Ifbad5630a39f8990479a5f20e018a3a499334fe1

Treehugger Robot   authored and   Automerger Merge Worker   commited 2021-03-22 03:23:48 +00:00
bc1c1bc38e
Merge "Swap parameters in QosCallback#registerQosCallback" am: dcc2fb2a19
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1628901

Change-Id: I2c371b6f1dc25f84a389480e46d9d582e9da148b

Jayachandran Chinnakkannu   authored and   Automerger Merge Worker   commited 2021-03-22 03:18:17 +00:00
507df2663e
Merge "Remove Preconditions usage in TestNetworkSpecifier"
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-03-22 01:40:44 +00:00
83407b9b0c
Merge "Revert "Revert "Remove connectivity dependency on Preconditions"""
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-03-22 01:40:28 +00:00
ed231fdfeb
Merge "Move trimV4AddrZeros to libs/net"
Treehugger Robot   authored and   Gerrit Code Review   commited 2021-03-22 01:37:06 +00:00
22cb7841a5
Merge "Use jniThrowErrnoException from JNIHelp" into sc-dev
Remi NGUYEN VAN   authored and   Android (Google) Code Review   commited 2021-03-22 00:20:36 +00:00
e8753c9a7d
Remove Preconditions usage in TestNetworkSpecifier
Preconditions is a hidden API utility. It can be easily replace by
inline checks.

Bug: 177046265
Test: m
Change-Id: I3f722075fb9c74e12e40348ba4faad2f0fa67178
Merged-In: I3f722075fb9c74e12e40348ba4faad2f0fa67178

Remi NGUYEN VAN   commited 2021-03-22 00:02:10 +00:00
2125a97fb4
Revert "Revert "Remove connectivity dependency on Preconditions""
Preconditions.checkNotNull is deprecated to be replaced by
Objects.requireNonNull, and other methods can easily be replaced by
inline checks.

Preconditions is an internal API class that should not be used by
unbundled jars.

Bug: 177046265
Change-Id: I3a67d266b32142c034520acbcdc30f7213db5e13
Merged-In: I3a67d266b32142c034520acbcdc30f7213db5e13
Test: m

Remi NGUYEN VAN   commited 2021-03-22 00:01:43 +00:00
28028e5066
Merge "Swap parameters in QosCallback#registerQosCallback"
Jayachandran Chinnakkannu   authored and   Gerrit Code Review   commited 2021-03-21 21:02:36 +00:00
dcc2fb2a19
resolve merge conflicts of 454f122745 to stage-aosp-master
Merged-In: Ib9d7923104ac0a60f6af5a3a2d2b7f13bc0262e3
Change-Id: Ib9d7923104ac0a60f6af5a3a2d2b7f13bc0262e3

Roshan Pius   commited 2021-03-21 19:20:35 +00:00
122fc06389
resolve merge conflicts of 403b7fd0b0a6736bcee1817fb5c774f8c8a040de to stage-aosp-master
Change-Id: Ib9d7923104ac0a60f6af5a3a2d2b7f13bc0262e3

Roshan Pius   commited 2021-03-21 19:16:33 +00:00
1e97e45498
Merge changes from topics "revert-1645768-revert-1626206-replaceUidRange-MSYTKFNGUE-HIUTVTIGIR", "ti_redaction"
* changes:
  TransportInfo: Add a generic redaction mechanism
  Revert "Revert "Expose uids related APIs in NetworkRequest and N..."
  Revert^2 "Replace the usage of UidRange"

Treehugger Robot   authored and   Gerrit Code Review   commited 2021-03-21 16:41:13 +00:00
454f122745
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
Merged-In: I2c4a37ff2ee9e8efde49885feeafa27dcff7ca2c

Remi NGUYEN VAN   authored and   Lorenzo Colitti   commited 2021-03-20 22:51:35 +09:00
f96b26606a
Move connectivity AIDLs to android.net
java_sdk_libraries and apexes need to contain bootclasspath classes
under predefined packages. Tethering currently uses android.net, so make
sure all the connectivity bootclasspath classes are under android.net.

This avoids maintaining two packages for the tethering APEX, where
com.android.connectivity.aidl is only used by internal AIDL files.

Bug: 182984842
Test: m
Change-Id: I611f1941698c574e37aea912ee76dadc8b32e41a
Merged-In: I611f1941698c574e37aea912ee76dadc8b32e41a

Remi NGUYEN VAN   authored and   Lorenzo Colitti   commited 2021-03-20 22:51:35 +09:00
43dea2835e
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
Merged-In: I77a3efca2cd644f9828db1ed5d3cae8070fb8363

Remi NGUYEN VAN   authored and   Lorenzo Colitti   commited 2021-03-20 22:35:16 +09:00
5245c4c0f0
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
Merged-In: I8a03162b2f6691086bb64e75ffd354cdfca7f86a

Remi NGUYEN VAN   authored and   Lorenzo Colitti   commited 2021-03-20 22:23:16 +09:00
e62e7ff645