Commit graph android_packages_modules_Co.../framework
Message SHA1
[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
Merged-In: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f
Merged-In: I0fe911eef2483ecbac48c733d56283b81538690a
Change-Id: I0fe911eef2483ecbac48c733d56283b81538690a
  (cherry-picked from 7b6a33bd50)

Chalard Jean   authored and   Junyu Lai   commited 2021-06-07 10:57:48 +00:00
0354d8c7e0
Merge "Move UIDS_ALLOWED_ON_RESTRICTED_NETWORKS setting" into sc-dev
Paul Hu   authored and   Android (Google) Code Review   commited 2021-06-07 09:29:56 +00:00
48fc715694
Merge "Revert "Add min_sdk_version to connectivity targets""
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-06-07 08:58:15 +00:00
3c5921caea
Revert "Add min_sdk_version to connectivity targets"
This reverts commit 326f7bb023.

Reason for revert: broke errorprone:
"Error: Call requires API level 31 (current min is 30)"

Bug: 190350403
Change-Id: Ib778ba7a882dabc4d42ab9689e1cc51d09d9be62
Merged-In: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f

Remi NGUYEN VAN   commited 2021-06-07 08:56:05 +00:00
0ad52839e7
Move UIDS_ALLOWED_ON_RESTRICTED_NETWORKS setting
Now, PermissionMonitor reigster observer to listen the change
from all users, but "uids allowed on restricted networks" should
affect to all users instead of per each user. Thus, move the
setting from Settings.Secure to Settings.Global.

Bug: 189705071
Test: atest FrameworksNetTests
Merged-In: Ibea354d8dda1f02652a193820f3f9eb573b9a956

Change-Id: Ibea354d8dda1f02652a193820f3f9eb573b9a956

paulhu   commited 2021-06-07 08:55:16 +00:00
4428044569
Merge "Add min_sdk_version to connectivity targets"
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-06-07 05:18:01 +00:00
51c61941ea
Merge changes Ia930b3d3,If614da81,I975a9439
* changes:
  [NS04.8] Address comments from NS04 and NS04.5
  [NS04.7] Reinstate a necessary change
  [NS04.5] Have NetworkOffer embark a provider ID

Junyu Lai   authored and   Gerrit Code Review   commited 2021-06-04 20:52:38 +00:00
9756b5d4f9
Merge "Update allowed on restricted networks getter/setter"
Paul Hu   authored and   Gerrit Code Review   commited 2021-06-04 10:31:50 +00:00
c30c57c210
Merge "Build connectivity JNI against libc++_static"
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-06-04 07:01:47 +00:00
84061f6102
Merge "Remove dependency on libnetd_client"
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-06-04 07:01:11 +00:00
5d3005cc98
[NS04.8] Address comments from NS04 and NS04.5
Bug: 167544279
Test: ConnectivityServiceTest
Merged-In: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f
Merged-In: Ia930b3d3e723075cb47e267d589c576ee2d4490f
Change-Id: Ia930b3d3e723075cb47e267d589c576ee2d4490f
  (cherry-picked from ag/13982288)

Chalard Jean   authored and   Junyu Lai   commited 2021-06-04 02:37:53 +00:00
a88fd95294
[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
Merged-In: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f
Merged-In: I975a9439021c7fa511c50ac982819b6dd146291e
Change-Id: I975a9439021c7fa511c50ac982819b6dd146291e
  (cherry-picked from 148dcce559)

Chalard Jean   authored and   Junyu Lai   commited 2021-06-04 02:36:58 +00:00
30689b8fd7
Merge "Add NDK API for getprocnetwork"
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-06-03 08:07:23 +00:00
ae471dd3f2
Move UIDS_ALLOWED_ON_RESTRICTED_NETWORKS setting
Now, PermissionMonitor reigster observer to listen the change
from all users, but "uids allowed on restricted networks" should
affect to all users instead of per each user. Thus, move the
setting from Settings.Secure to Settings.Global.

Bug: 189705071
Test: atest FrameworksNetTests
Ignore-AOSP-First: Need cherry-pick
Change-Id: Ibea354d8dda1f02652a193820f3f9eb573b9a956

paulhu   commited 2021-06-01 21:28:34 +08:00
a1ac564748
Add min_sdk_version to connectivity targets
All targets need min_sdk_version 30 to be included in the tethering
APEX. They will actually never be used on SDK 30 and are only loaded on
31, but this is necessary to be included in com.android.tethering.

Original change (project moved):
I190fd1f3c9fabff057d0a2bd7f45b63a4fe447b3

Bug: 171540887
Test: m
Merged-In: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f
Change-Id: Ied5faa1a370cbc8836f46388fdb9b42d2a263232

Remi NGUYEN VAN   commited 2021-06-01 18:43:03 +09:00
326f7bb023
Build connectivity JNI against libc++_static
Instead of including the whole libc++ library by linking it dynamically,
use the static version so that unused symbols can be stripped.

This allows reducing the APEX size by 1MB (3.7MB -> 2.7MB), as otherwise
libc++ is included twice for 32 and 64 bit variants.

Original change (project moved):
Ia66d795cf23d6f45997278300c103976433f7c5c

Bug: 171540887
Test: Device boots and has connectivity, size reduced

Merged-In: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f
Change-Id: Ie1c5b2ea274238a226ad2d827148439fd5758bb5

Remi NGUYEN VAN   commited 2021-06-01 18:40:25 +09:00
4be92df27b
Remove dependency on libnetd_client
NetworkUtils can just use the NDK to achieve the same.

Also make sure network handles can have the local nameservers flag, for
the JNI API, and create/parse them accordingly in Network.

Original change (project moved):
I2e7b78263f7ca0cab9458854858a7423f6bd2854

Bug: 171540887
Test: atest CtsNetTestCases (in particular MultinetworkApiTest,
          DnsResolverTest, NetworkTest)
Merged-In: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f
Change-Id: I7a523aac93094beef6ff40d50678c12fe8840940

Remi NGUYEN VAN   commited 2021-06-01 18:40:06 +09:00
8d1a96d9ea
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.

Original change (project moved):
Ie8f68cf1fa57deddb63324c1abf3d6fd5b0ef500

Bug: 171540887
Test: atest CtsNetTestCases
      Tests in change I311b58585033c2ca50ce5477ea9cd94b6f127507
Merged-In: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f
Change-Id: Iaf255f4aa29fd2ae02770baea5548ee8d5d407f2

Remi NGUYEN VAN   commited 2021-06-01 18:38:53 +09:00
a5e1148a4b
Remove framework-connectivity-annotations library
This library can be removed because the annotations are no longer
used out of module.

@RestrictBackgroundStatus and @MultipathPreference are defined
in connectivity mainline module. Annotate these in non-updatable
platform is not going to be manageable long term. For example,
if the module gets updated and the annotation gets more values
then it's a problem in non-updatable platform. So, it should
not have IntDef cross module boundaries.

Ignore-AOSP-First: AOSP doesn't include this change yet
Bug: 183972925
Test: build
Change-Id: I63f1fde73c4ffdaff9fda914e33cbb5a110ba64e

Aaron Huang   commited 2021-06-01 06:47:47 +00:00
cff22949d2
Update allowed on restricted networks getter/setter
As API review feedback, setting allowed on restricted networks
should be by uid instead of package name for security reason.
Thus, update the getter/setter to return/accept set of uids.

Bug: 188085693
Test: atest FrameworksNetTests
Merged-In: I979bf98075e6c9c0ed7e891582843fddb62643cb

Change-Id: I979bf98075e6c9c0ed7e891582843fddb62643cb

paulhu   commited 2021-05-27 16:24:50 +08:00
91e7806938
Use updated NetworkEventDispatcher API
(cherry picked from commit 1f4fa9ffd5)

Bug: 185153775
Test: m

Merged-In: Iae3cec4f751e1f74ccd26db6f22f55cf21dfc04a
Change-Id: I3259d8f23eebca7cb3e8ac507bb8c5b8774e85f1

Orion Hodson   commited 2021-05-26 16:44:18 +01:00
1cb94175ea
Merge "Use updated NetworkEventDispatcher API" into sc-dev
Orion Hodson   authored and   Android (Google) Code Review   commited 2021-05-26 13:34:07 +00:00
13f6148e22
Update allowed on restricted networks getter/setter
As API review feedback, setting allowed on restricted networks
should be by uid instead of package name for security reason.
Thus, update the getter/setter to return/accept set of uids.

Bug: 188085693
Test: atest FrameworksNetTests
Ignore-AOSP-First: Needs cherry-picks
Change-Id: I979bf98075e6c9c0ed7e891582843fddb62643cb

paulhu   commited 2021-05-26 16:16:57 +08:00
68aacb407a
Use updated NetworkEventDispatcher API
Bug: 185153775
Ignore-AOSP-First: addressing API council comments with deadline
Test: m
Change-Id: Iae3cec4f751e1f74ccd26db6f22f55cf21dfc04a

Orion Hodson   commited 2021-05-25 21:25:17 +01:00
1f4fa9ffd5
Merge history of packages/Connectivity
Modified License Import for:
- Tethering/common/TetheringLib/Android.bp
- framework/Android.bp
- service/Android.bp
- tests/common/Android.bp
- tests/deflake/Android.bp
- tests/integration/Android.bp
- tests/smoketest/Android.bp
- tests/unit/Android.bp
- tests/unit/jni/Android.bp

BUG: 186628461
TEST: TH
Merged-In: I7b5fd61cd551c7010f5b8ceabbfdd04f30f648dd
Merged-In: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f
Change-Id: Ia2185820f485e8ad2d3626a96eab7f5a874736cf

Baligh Uddin   authored and   Remi NGUYEN VAN   commited 2021-05-24 05:45:18 +00:00
3684713b8a
Merge history of packages/Connectivity
Modified Visibility / Includes for:
- Tethering/common/TetheringLib/Android.bp

Modified License Import for:
- framework/Android.bp
- service/Android.bp
- tests/common/Android.bp
- tests/deflake/Android.bp
- tests/integration/Android.bp
- tests/smoketest/Android.bp
- tests/unit/Android.bp
- tests/unit/jni/Android.bp
Modified Lint mapping for:
- framework/lint-baseline.xml
- service/lint-baseline.xml

BUG: 186628461
TEST: TH
Merged-In: Ie82d0fb34bda77543e31c82660c6f315efa87f62
Change-Id: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f

Baligh Uddin   commited 2021-05-24 04:40:14 +00:00
2afd0986d3
Check location permission for ConnDiags last.
This CL updates ConnectivityService to check location permissions for
ConnectivityDiagnostics callbacks last in the permission check process.
This minimizes misattribution of location access for networks that an
app is not administering.

This CL also updates ConnectivityDiagnosticsManager documentation to
clearly state that location permissions are required in order to receive
callbacks.

Bug: 187310575
Test: atest ConnectivityDiagnosticsManagerTest
Test: atest ConnectivityServiceTest
Change-Id: I2dbeddac6273e2392ccaeae51a1c7776d6d3da75
Merged-In: I2dbeddac6273e2392ccaeae51a1c7776d6d3da75
(cherry picked from commit f3d0fc49db)

Cody Kesting   commited 2021-05-21 16:22:50 +00:00
0b4be0203d
Merge "Move to renamed NDK symbol AFileDescriptor_getFd"
Orion Hodson   authored and   Gerrit Code Review   commited 2021-05-21 08:29:52 +00:00
544989351f
Merge "Check location permission for ConnDiags last."
Cody Kesting   authored and   Gerrit Code Review   commited 2021-05-20 21:27:46 +00:00
c5f9939bf3
Merge "[VCN21] Do not add NOT_VCN_MANAGED capability if specifier is present" into sc-dev
Junyu Lai   authored and   Android (Google) Code Review   commited 2021-05-19 11:31:39 +00:00
0dc5e2a8a2
[VCN21] Do not add NOT_VCN_MANAGED capability if specifier is present
Test: atest NetworkRequestTest#testBypassingVcn
Fix: 176939355
Fix: 188597540
Merged-In: I98dd3f4652dc067eb5c4666e952db6c854bcbb10
Change-Id: I98dd3f4652dc067eb5c4666e952db6c854bcbb10
  (cherry-picked from aosp/1705390)

junyulai   authored and   Junyu Lai   commited 2021-05-19 09:52:03 +00:00
35687f5979
Merge "Move config_apf* resources to NetworkStack" into sc-dev
Remi NGUYEN VAN   authored and   Android (Google) Code Review   commited 2021-05-19 07:54:19 +00:00
1ac0e834c9
Move config_apf* resources to NetworkStack
The resources are only read by NetworkStack through their respective
ApfCapabilities SystemApi methods.
As the resources are being migrated out of frameworks/base resources
anyway, move them directly to NetworkStack instead of moving them to
ServiceConnectivityResources.

Also test that the framework resources are not overlaid or modified.
This should avoid OEM integration errors where the overlays are kept as
in R, without overlaying the resource in the NetworkStack package.

Bug: 185850634
Test: atest CtsNetTestCases
BYPASS_INCLUSIVE_LANGUAGE_REASON=Need to mention legacy APIs

Merged-In: I7a15ddcad5af11fa307d9dbe3a77b31a1179e5b3
(clean cherry-pick)

Change-Id: I7a15ddcad5af11fa307d9dbe3a77b31a1179e5b3

Remi NGUYEN VAN   commited 2021-05-19 11:00:58 +09:00
be047e2855
Merge "Move config_apf* resources to NetworkStack"
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-05-19 00:58:52 +00:00
999427e138
Merge "[VCN21] Do not add NOT_VCN_MANAGED capability if specifier is present"
Treehugger Robot   authored and   Gerrit Code Review   commited 2021-05-18 08:35:06 +00:00
4eedd4ac23
Allow unprivileged NetworkCallbacks to see other UIDs' networks.
Currently, unprivileged apps can call getAllNetworks() to see
all networks on the system, even networks that do not apply to
them. Allow them to do this via NetworkCallbacks as well.

This is the last piece of information that was only available
through getAllNetworks, so this CL deprecates that API.

Bug: 187921303
Test: new unit tests
Test: CTS test in other CL in topic
Change-Id: I30f1021927d3c8eae6525116c61ff4a4acecff6d

Lorenzo Colitti   commited 2021-05-18 12:24:07 +09:00
86714b1fd2
Check location permission for ConnDiags last.
This CL updates ConnectivityService to check location permissions for
ConnectivityDiagnostics callbacks last in the permission check process.
This minimizes misattribution of location access for networks that an
app is not administering.

This CL also updates ConnectivityDiagnosticsManager documentation to
clearly state that location permissions are required in order to receive
callbacks.

Bug: 187310575
Test: atest ConnectivityDiagnosticsManagerTest
Test: atest ConnectivityServiceTest
Change-Id: I2dbeddac6273e2392ccaeae51a1c7776d6d3da75

Cody Kesting   commited 2021-05-17 19:36:47 -07:00
8533f883c2
Merge "Add ConnectivityAnnotations class" into sc-dev
Aaron Huang   authored and   Android (Google) Code Review   commited 2021-05-17 14:07:45 +00:00
1bbb7a7570
[VCN21] Do not add NOT_VCN_MANAGED capability if specifier is present
Test: atest NetworkRequestTest#testBypassingVcn
Fix: 176939355
Change-Id: I98dd3f4652dc067eb5c4666e952db6c854bcbb10

junyulai   authored and   Junyu Lai   commited 2021-05-17 07:04:13 +00:00
9ef2350d50
Merge "Replace clearAll with withoutDefaultCapabilities"
Chiachang Wang   authored and   Gerrit Code Review   commited 2021-05-17 01:56:52 +00:00
b4c624aece
Merge "QOS filter matching support based on remote address and port number for connected sockets" am: 6c5553aaaa am: f84276bde1 am: 9896622bd3
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1687813

Change-Id: I04ada71bdea2c3851fd6925126f6ff2bfdecad2c

Jayachandran Chinnakkannu   authored and   Automerger Merge Worker   commited 2021-05-14 21:19:17 +00:00
65a0e0d0e5
Merge "QOS filter matching support based on remote address and port number for connected sockets"
Jayachandran Chinnakkannu   authored and   Gerrit Code Review   commited 2021-05-14 20:02:30 +00:00
6c5553aaaa
Merge "Address [set|get]RestrictedAllowedApps API review feedback" am: 16c34f0d8b am: 38544887c7 am: 95f5f547fc
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1708327

Change-Id: Ia8e395132226d23fdfb8cd4c93c004c459386104

Paul Hu   authored and   Automerger Merge Worker   commited 2021-05-14 11:00:38 +00:00
5aa8c52638
Replace clearAll with withoutDefaultCapabilities
As the feedback from API review, the clearAll method in Builder
does not match the actual usage. Thus, remove it and replace
with withoutDefaultCapabilities to provide clearer usage.

Bug: 184735772
Test: make update-api ; m
Change-Id: Ida8d25d57504864f046e3403f593cc606fbfe982
Merged-In: Ida8d25d57504864f046e3403f593cc606fbfe982

Chiachang Wang   commited 2021-05-14 10:36:37 +00:00
cf6e5210ba
Merge "Replace clearAll with withoutDefaultCapabilities" into sc-dev
Chiachang Wang   authored and   Android (Google) Code Review   commited 2021-05-14 09:32:42 +00:00
ab124bea0c
Address [set|get]RestrictedAllowedApps API review feedback
- Rename [set|get]RestrictedAllowedApps to
  [set|get]AppsAllowedOnRestrictedNetworks
- Remove the regex of validate package name check

Bug: 188085693
Test: m update-api && m
Change-Id: I07966fb66093523a67e1e6a1ecfa05cc399e22f2

paulhu   commited 2021-05-14 15:27:36 +08:00
257a5cf7ad
Replace clearAll with withoutDefaultCapabilities
As the feedback from API review, the clearAll method in Builder
does not match the actual usage. Thus, remove it and replace
with withoutDefaultCapabilities to provide clearer usage.

Bug: 184735772
Test: make update-api ; m
Change-Id: Ida8d25d57504864f046e3403f593cc606fbfe982
CTS-Coverage-Bug: 186061922

Chiachang Wang   commited 2021-05-14 14:53:47 +08:00
df9611cab7
Add ConnectivityAnnotations class
This change is to address API review, add respective
@IntDef for network policy API.

Typedef cannot be exposed as SystemApi so add
ConnectivityAnnotations class and add an annotation library
so that it can be used in module and platform.

Bug: 183972925
Test: m, build doc target framework-doc-stubs_annotations.zip
      and check the APIs have an attribute IntDef annotation
Change-Id: Ie3ec40cf48818edd422a4550377774eae387d3b2

Aaron Huang   commited 2021-05-14 10:30:49 +08:00
6a7e6ad55c
QOS filter matching support based on remote address and port number for connected sockets
This CL adds APIs for telephony to perform filter matching based on
remote address if the socket is connected. Additional checks will be
performed on the state of socket to avoid the future callbacks in a
separate CL.

Bug: 181916576
Test: Manually verified in live T-Mobile network
      atest ConnectivityServiceTest
      atest com.android.internal.telephony.dataconnection.QosCallbackTrackerTest

Change-Id: I6fbd4e84c76bc4acbf4e59f06f8e86e0237bae29

Jayachandran C   commited 2021-05-13 09:50:13 -07:00
735e1ce55b
Merge "[NS04] Introduce Network Offers and their callbacks"
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2021-05-13 15:11:45 +00:00
393e7b3d6a