Commit Graph

13437 Commits

Author SHA1 Message Date
Remi NGUYEN VAN
b90fb723bd Merge "[NS04] Introduce Network Offers and their callbacks" am: d603e40fa5 am: 06e72bc268
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1556102

Change-Id: Ifc7c32e77a4aa7c183b0d074a8d04fe95a54d288
2021-05-13 15:52:52 +00:00
Lorenzo Colitti
8ff101f540 Merge changes Ia5bc896c,I0c9406f4,I3108ee94 am: dff00cd42b am: e85055d0a8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1705389

Change-Id: Ie2c28214c2158f49b6282d398ac41038014972bf
2021-05-13 15:51:59 +00:00
Remi NGUYEN VAN
06e72bc268 Merge "[NS04] Introduce Network Offers and their callbacks" am: d603e40fa5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1556102

Change-Id: Ifcdc55f7b202b9fe1ea10c9546c07d4563e9988c
2021-05-13 15:35:10 +00:00
Lorenzo Colitti
e85055d0a8 Merge changes Ia5bc896c,I0c9406f4,I3108ee94 am: dff00cd42b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1705389

Change-Id: I30c22bae1e2df6497483fd863396f2abb6def278
2021-05-13 15:30:59 +00:00
Remi NGUYEN VAN
d603e40fa5 Merge "[NS04] Introduce Network Offers and their callbacks" 2021-05-13 15:11:45 +00:00
Lorenzo Colitti
dff00cd42b Merge changes Ia5bc896c,I0c9406f4,I3108ee94
* changes:
  Make VcnTransportInfoTest pass on AOSP.
  Immediately redact VcnTransportInfo.
  Do not automatically redact TransportInfo objects.
2021-05-13 15:11:01 +00:00
Paul Hu
7e6d9da39e Merge "Update mobile data preference getter/setter" am: d0b2ba479b am: 6d5c51149c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1702486

Change-Id: I950d4f95759fe17e2164014ab016d39d46ad5539
2021-05-13 14:29:43 +00:00
Paul Hu
6d5c51149c Merge "Update mobile data preference getter/setter" am: d0b2ba479b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1702486

Change-Id: Ieb72b4f0284d5439f62037b9d68da054f276120d
2021-05-13 14:07:56 +00:00
Paul Hu
d0b2ba479b Merge "Update mobile data preference getter/setter" 2021-05-13 13:42:05 +00:00
Chalard Jean
97063fe5a1 [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
Merged-In: Idec1fe8eb4ac6f562bf098e3dd470f11024d04f2
(clean cherry-pick)

Change-Id: Idec1fe8eb4ac6f562bf098e3dd470f11024d04f2
2021-05-13 13:20:43 +00:00
Remi NGUYEN VAN
4f15e675cd Merge "Move net unit tests to packages/Connectivity" am: 5b48156498 am: 8c3d83c0cc
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1706685

Change-Id: Ibe1d2241c37d2945d3e9278948d4fa614f05ae08
2021-05-13 11:51:45 +00:00
Remi NGUYEN VAN
8c3d83c0cc Merge "Move net unit tests to packages/Connectivity" am: 5b48156498
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1706685

Change-Id: I86852c79cf06a3bc7b7ccaa18d83f70a2043b258
2021-05-13 11:32:36 +00:00
Lorenzo Colitti
e61ffc1a50 Do not automatically redact TransportInfo objects.
Currently, NetworkCapabilities always redacts the TransportInfo
objects it contains whenever a defensive copy is made. This makes
it impossible to make a defensive copy on a TransportInfo
parcelled from another process without redacting it.

Stop redacting by default; instead rely on ConnectivityService
explicitly calling NetworkCapabilities' redacting constructor
when it returns a NetworkCapabilities object to an app via a
callback or synchronous call. This is currently done by
- createWithLocationInfoSanitizedIfNecessaryWhenParceled, which
  is called from callCallbackForRequest, getNetworkCapabilities,
  and getDefaultNetworkCapabilitiesForUser.
- getNetworkCapabilitiesWithoutUids, which is used when sending
  ConnectivityDiagnosticsManager callbacks. In this method,
  unconditionally redact all information, which is what the code
  did previously due to the default redaction setting for empty
  NetworkCapabilities objects being REDACT_ALL.

Bug: 183938194
Test: atest NetworkCapabilitiesTest
Test: atest FrameworksNetTests CtsNetTestCases HostsideVpnTests
Change-Id: I3108ee94cb0930958e071ba678c3554525b0db82
2021-05-13 20:24:19 +09:00
paulhu
96a65940d8 Update mobile data preference getter/setter
To satisfy OEM's requests, setting mobile data preference
should be by uid. Thus, update the getter/setter to
return/accept set of uids that need to apply mobile data
preference.

Bug: 171872461
Test: atest FrameworksNetTests
Change-Id: Id44efd2a6d820867f4405426c91e65b9ef155898
2021-05-13 10:35:29 +00:00
Remi NGUYEN VAN
0d51e44e09 Move net unit tests to packages/Connectivity
Move the tests together with packages/Connectivity code, so both can be
moved to packages/modules/Connectivity together.

Also reorganize unit tests in a unit/ directory, as other tests
(integration/, common/ etc.) have been added in tests/net since they
were created. This makes the directory structure consistent.

Test: atest FrameworksNetTests
Bug: 187814163
Merged-In: I254ffd1c08ec058d594b4ea55cbae5505f8497cc

Change-Id: I254ffd1c08ec058d594b4ea55cbae5505f8497cc
2021-05-13 08:30:33 +00:00
Paul Hu
b8df949555 Merge "Add RESTRICTED_ALLOWED_APPS setting" am: 26cc1ff94e am: 93cbfdb5ff
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1689208

Change-Id: I9a30162499954c4ec3bcd97233256f973662f7ab
2021-05-13 06:19:25 +00:00
Paul Hu
93cbfdb5ff Merge "Add RESTRICTED_ALLOWED_APPS setting" am: 26cc1ff94e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1689208

Change-Id: I93c004e7356559436c7dbd95716e52db8fc1ba0d
2021-05-13 05:54:31 +00:00
Paul Hu
26cc1ff94e Merge "Add RESTRICTED_ALLOWED_APPS setting" 2021-05-13 05:32:19 +00:00
Ken Chen
544e7294c1 Merge "Add testVpnTypesEqual to verify consistency" am: edeab9051e am: f16388a8f5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1705385

Change-Id: Id2e9d16c88088ef5d3ffe6f698af5ee8201c7716
2021-05-13 02:45:06 +00:00
Ken Chen
31aef231ab Merge "Better log in createNativeNetwork" am: 37dec89b65 am: 4728eb0924
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1704925

Change-Id: If8c106b8d0f2f71e47942a151de49daf1b65b852
2021-05-13 02:44:48 +00:00
Ken Chen
05f062fb64 Merge "Switch from networkCreate[Physical/Vpn] to networkCreate" am: a0b65e1870 am: aa243fe3ba
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1669648

Change-Id: Iec819a213f8c0daf50cdfdd5d580234ee5f8de68
2021-05-13 02:44:30 +00:00
paulhu
d82ece857d Add RESTRICTED_ALLOWED_APPS setting
This setting is OEM upstream requirement for third party apps
using restricted networks.

Bug: 185149952
Test: atests FrameworksNetTests
Change-Id: I5e16b46cf2935f38ee1e516bb8b85fa487cf9f61
2021-05-13 10:09:31 +08:00
Ken Chen
f16388a8f5 Merge "Add testVpnTypesEqual to verify consistency" am: edeab9051e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1705385

Change-Id: I18b5716252efc4f7c33ec8263c09df1f9396d1fe
2021-05-13 02:05:37 +00:00
Ken Chen
4728eb0924 Merge "Better log in createNativeNetwork" am: 37dec89b65
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1704925

Change-Id: Ic8afb71d7ac099f6c492dda8f9f54a5da3c79649
2021-05-13 02:01:21 +00:00
Ken Chen
aa243fe3ba Merge "Switch from networkCreate[Physical/Vpn] to networkCreate" am: a0b65e1870
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1669648

Change-Id: Ia7b8d56ee75194cfe289dbb3e73667f43344cda3
2021-05-13 01:34:23 +00:00
Ken Chen
edeab9051e Merge "Add testVpnTypesEqual to verify consistency" 2021-05-13 01:22:08 +00:00
Ken Chen
37dec89b65 Merge "Better log in createNativeNetwork" 2021-05-13 01:21:47 +00:00
Ken Chen
a0b65e1870 Merge "Switch from networkCreate[Physical/Vpn] to networkCreate" 2021-05-13 01:20:39 +00:00
Lucas Lin
c3ab7b66d3 Merge "Update PrivateDnsMode from StringDef to IntDef" am: 0604a2e93e am: 735250d758
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1675562

Change-Id: I0b2ad20c59397395175b82688cfe657af43a1b19
2021-05-12 17:59:57 +00:00
Lucas Lin
8ca73028d2 [automerger skipped] Merge "Remove sendNetworkConditionsBroadcast" into rvc-dev am: 542d796a9f am: 36fa4a55b4 -s ours
am skip reason: Merged-In I7b43940dc32826c70fa82f471b35bc5cb8394aad with SHA-1 d6f8dbd75b is already in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14455604

Change-Id: I27cd7672349c0f1f4c4831c3c3cab720720ac373
2021-05-12 17:59:35 +00:00
Lucas Lin
735250d758 Merge "Update PrivateDnsMode from StringDef to IntDef" am: 0604a2e93e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1675562

Change-Id: I391d8dd2615f090d3112af69248aea70e334f62f
2021-05-12 17:23:45 +00:00
Lucas Lin
36fa4a55b4 Merge "Remove sendNetworkConditionsBroadcast" into rvc-dev am: 542d796a9f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14455604

Change-Id: I4a64821743d6ee4e4ae9b9d2759e38369cde5656
2021-05-12 17:21:55 +00:00
Lucas Lin
0604a2e93e Merge "Update PrivateDnsMode from StringDef to IntDef" 2021-05-12 17:09:50 +00:00
Chalard Jean
6e2a3affcc Merge "Allow any transport with TEST if the network is restricted" am: 03de4e884b am: e32987bcb9
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1702489

Change-Id: I8b42aa698f279774b8d5781811dc848c7d7ff713
2021-05-12 14:33:13 +00:00
Chalard Jean
e32987bcb9 Merge "Allow any transport with TEST if the network is restricted" am: 03de4e884b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1702489

Change-Id: Ic688c9d328242962c57631632b33236a69852ed6
2021-05-12 14:29:56 +00:00
Remi NGUYEN VAN
126dfaf776 Merge "Use jniThrowErrnoException from JNIHelp" am: 60ce73bdc5 am: cb58eb4732
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1703087

Change-Id: I52864a1dff894d827e97332ce9ddd506ae297270
2021-05-12 14:25:42 +00:00
Remi NGUYEN VAN
169d66303b Merge "Move NetworkUtils JNI out of core/jni" am: 8842198f2e am: ba0f6837cc
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1703086

Change-Id: Icc10740c6f18755a86d4f3cc9fb59bcb6a933910
2021-05-12 14:25:23 +00:00
Remi NGUYEN VAN
32df5aa7bb Merge "Build framework-connectivity using module_current" am: 40d3b1fbea am: 6e64634da0
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1703085

Change-Id: I47046e76bab062d0f887f2f965c054054acba0c5
2021-05-12 14:25:00 +00:00
Remi NGUYEN VAN
cb58eb4732 Merge "Use jniThrowErrnoException from JNIHelp" am: 60ce73bdc5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1703087

Change-Id: I6a1d75a1792883a7dc96c1beb108e83653c668a0
2021-05-12 14:17:28 +00:00
Remi NGUYEN VAN
ba0f6837cc Merge "Move NetworkUtils JNI out of core/jni" am: 8842198f2e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1703086

Change-Id: Icd812cda9e75015093080126bd20210034af5839
2021-05-12 14:13:20 +00:00
Remi NGUYEN VAN
6e64634da0 Merge "Build framework-connectivity using module_current" am: 40d3b1fbea
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1703085

Change-Id: I67461b530e5292f94e3e1426ff0ec93ea657cf21
2021-05-12 14:05:55 +00:00
Chalard Jean
03de4e884b Merge "Allow any transport with TEST if the network is restricted" 2021-05-12 13:57:31 +00:00
Remi NGUYEN VAN
60ce73bdc5 Merge "Use jniThrowErrnoException from JNIHelp" 2021-05-12 13:12:32 +00:00
Remi NGUYEN VAN
8842198f2e Merge "Move NetworkUtils JNI out of core/jni" 2021-05-12 13:12:09 +00:00
Remi NGUYEN VAN
40d3b1fbea Merge "Build framework-connectivity using module_current" 2021-05-12 13:11:22 +00:00
Chiachang Wang
7e3fb2c18a Merge "Remove sendNetworkConditionsBroadcast" am: 536e82f56b am: d37e995263
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1702485

Change-Id: Ib6299c1022f196453aa6f072bcc9ba7227bfe8f4
2021-05-12 10:04:29 +00:00
Chiachang Wang
d37e995263 Merge "Remove sendNetworkConditionsBroadcast" am: 536e82f56b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1702485

Change-Id: I858f2364a40d409981b88946887f9619f11cdce4
2021-05-12 09:57:07 +00:00
Lorenzo Colitti
bcede3e59b Merge "Rename unwanted capabilities to forbidden capabilities." am: dacc5e5f93 am: a50875391b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1687485

Change-Id: I9b8a61b4c4a0059af294c2575e5339e7e3b9f3ed
2021-05-12 09:56:38 +00:00
Paul Hu
d59739e116 Merge "Add MATCH_ANY_USER flag to PackageInfo queries" am: eda29f73aa am: 8f03d96e83
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1689207

Change-Id: I44318046f675749fe056fa253da3d48c88129441
2021-05-12 09:56:19 +00:00
Ken Chen
4812a3ab7a Add testVpnTypesEqual to verify consistency
VPN types are defined in both VpnManager.java and NativeVpnType.aidl.
The definitions on both sides should match (except TYPE_VPN_NONE).

VpnManager.java:
TYPE_VPN_NONE = -1
TYPE_VPN_SERVICE = 1
TYPE_VPN_PLATFORM = 2
TYPE_VPN_LEGACY = 3
TYPE_VPN_OEM = 4

NativeVpnType.aidl:
SERVICE = 1
PLATFORM = 2
LEGACY = 3
OEM = 4

Bug: N/A
Test: atest android.net.VpnManagerTest#testVpnTypesEqual
Change-Id: Ie618e227d861100c5318da696140e486af1093a0
2021-05-12 17:34:34 +08:00