Commit Graph

86 Commits

Author SHA1 Message Date
Treehugger Robot
6eeaa90005 Merge "Use CS identity to update setting while performing factory reset" am: 049dbc5697 am: ab42076b53
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1695309

Change-Id: I7c23d33349e7f28a6fc17f5191e973f60e1eb96d
2021-05-21 02:08:51 +00:00
Treehugger Robot
049dbc5697 Merge "Use CS identity to update setting while performing factory reset" 2021-05-21 01:26:05 +00:00
Cody Kesting
31cee3ca28 Merge "Check location permission for ConnDiags last." am: c5f9939bf3 am: 7cc1a8b2e7
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1699069

Change-Id: I6ca0b27d9280e9246fbf6ea105f18d6f1d073388
2021-05-20 22:18:05 +00:00
Cody Kesting
c5f9939bf3 Merge "Check location permission for ConnDiags last." 2021-05-20 21:27:46 +00:00
TreeHugger Robot
50f787f627 Merge "Check NETWORK_SETTINGS permission for getAllNetworkStateSnapshots" into sc-dev am: 6f0f141cd5
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14601670

Change-Id: Ib259c6351471aca6656dc4d46bb7242228a226c2
2021-05-20 04:21:42 +00:00
TreeHugger Robot
6f0f141cd5 Merge "Check NETWORK_SETTINGS permission for getAllNetworkStateSnapshots" into sc-dev 2021-05-20 03:59:55 +00:00
Remi NGUYEN VAN
7e7aa6e163 Merge "Remove legacy resources fallback from Connectivity" into sc-dev am: 4c0e93f15b
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14622504

Change-Id: Iee4dd439c3f98e600c6a6b1ed6a73384f9a1c2ac
2021-05-20 03:35:35 +00:00
Remi NGUYEN VAN
4c0e93f15b Merge "Remove legacy resources fallback from Connectivity" into sc-dev 2021-05-20 03:03:16 +00:00
Chiachang Wang
bc66712394 Use CS identity to update setting while performing factory reset
When apps try to call factoryReset to do networking reset, it
will result in updating the setting in SettingsProvider.
ContentProvider will verify if the package name of the caller
that initiated the request being processed on the current thread.
The package should belong to the calling UID. The setting update
started from the ConnectivityService context, so the package will
be android but the calling UID will be the calling app. It will
cause a SecurityException. The behavior is fine previously as its
known caller(Settings) shares system UID. But it will be a
problem for other callers, such as CTS. Thus, clear the identity
since the necessary permission check should be examined at the
top of the method. The following actions should be fine to be
proceed from the system itself. Also replace the user restriction
check via hasUserRestrictionForUser with the UserHandle created
from the calling uid to ensure it's verified with correct user.

Bug: 186061922
Test: Factory reset from Settings
Change-Id: If2dd69f702a1eafff331f9e71f6b92aeadfb715d
2021-05-20 10:01:50 +08:00
Junyu Lai
458a60dab5 Merge changes I3ba50cbd,I970ee365 into sc-dev
* changes:
  [FUI29] Migrate ConnectivityService to use getAllNetworkStateSnapshots
  [FUI27] Fix internal naming of notifyNetworkStatus
2021-05-19 12:36:03 +00:00
Remi NGUYEN VAN
1ac0e834c9 Merge "Move config_apf* resources to NetworkStack" into sc-dev 2021-05-19 07:54:19 +00:00
Remi NGUYEN VAN
1423347938 Remove legacy resources fallback from Connectivity
Stop reading legacy resources as fallback, and only use resources in
ServiceConnectivityResources.

Bug: 185850634
Test: atest CtsNetTestCases FrameworksNetTests
Change-Id: I224f1ef9a1a8d6e636c7e9550845ab3e1394d7f3
2021-05-19 12:13:48 +09:00
Remi NGUYEN VAN
38670e2722 Merge "Move config_apf* resources to NetworkStack" am: 999427e138 am: 625ead50f8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1684656

Change-Id: I93f5fd10f6c365365ff0e89ca4221d58d420c5ac
2021-05-19 03:11:41 +00:00
Remi NGUYEN VAN
be047e2855 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
2021-05-19 11:00:58 +09:00
Remi NGUYEN VAN
999427e138 Merge "Move config_apf* resources to NetworkStack" 2021-05-19 00:58:52 +00:00
Chiachang Wang
646af9c067 Merge "Dump only NORMAL priority information if no priority assigned" into sc-dev 2021-05-18 11:57:53 +00:00
Lorenzo Colitti
59871f3c96 Merge "Allow unprivileged NetworkCallbacks to see other UIDs' networks." into sc-dev am: 846ae25be5
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14597477

Change-Id: I83b704af8a5ee4a132030e973d301539c2e57fc3
2021-05-18 07:12:50 +00:00
Lorenzo Colitti
86714b1fd2 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
2021-05-18 12:24:07 +09:00
Chiachang Wang
4018d45d9e Merge "Dump only NORMAL priority information if no priority assigned" am: f93d99deae am: 0b80e965ac
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1708333

Change-Id: Id1564d19efab63fbcfe161442fc85ba64a481160
2021-05-18 03:07:26 +00:00
Cody Kesting
8533f883c2 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
2021-05-17 19:36:47 -07:00
Chiachang Wang
12d32a673f Dump only NORMAL priority information if no priority assigned
The legacy design of "dumpsys connectivity" will only dump
information with NORMAL priority. It was updated to provide
both NORMAL and HIGH priority information in order to support
dump in bugreport. However, it will also affect the result
using dumpsys connectivity.

Update design to dump NORMAL priority only to align with legacy
design.

Bug: 188387185
Test: adb shell dumpsys connectivity
Test: adb bugreport and check the result in bugreport
Change-Id: I6825c5038e48e3060c0c3ad1512bd584ef6d10a7
Merged-In: I6825c5038e48e3060c0c3ad1512bd584ef6d10a7
2021-05-18 02:13:42 +00:00
Aaron Huang
a9d7b6dd4a Merge "Add ConnectivityAnnotations class" into sc-dev am: 1bbb7a7570
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14186142

Change-Id: Ib74156e9f29e62e861d19f5b58a12ab106478b4c
2021-05-17 14:26:25 +00:00
Aaron Huang
1bbb7a7570 Merge "Add ConnectivityAnnotations class" into sc-dev 2021-05-17 14:07:45 +00:00
junyulai
7968fba7ad Check NETWORK_SETTINGS permission for getAllNetworkStateSnapshots
This is declared in the API surface, but the implementation
does not match.

Ignore-AOSP-First: Needs cherry-picks
Test: atest CtsNetTestCases:android.net.cts.ConnectivityManagerTest#testGetAllNetworkStateSnapshots
Bug: 188140631
Change-Id: I97aa69651461ebe5c323ec669372f9a61b84e6a6
2021-05-17 21:53:18 +08:00
Chiachang Wang
c13a0a066c Dump only NORMAL priority information if no priority assigned
The legacy design of "dumpsys connectivity" will only dump
information with NORMAL priority. It was updated to provide
both NORMAL and HIGH priority information in order to support
dump in bugreport. However, it will also affect the result
using dumpsys connectivity.

Update design to dump NORMAL priority only to align with legacy
design.

Bug: 188387185
Test: adb shell dumpsys connectivity
Test: adb bugreport and check the result in bugreport
Change-Id: I6825c5038e48e3060c0c3ad1512bd584ef6d10a7
2021-05-17 17:31:07 +08:00
Paul Hu
9be9f5832b Merge "Register APPS_ALLOWED_ON_RESTRICTED_NETWORKS setting observer" am: 43864e564b am: 87938ce71d
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1689573

Change-Id: Ide30d62481724f0c93b6302ddc871ef7fe10cfd8
2021-05-17 08:06:08 +00:00
Paul Hu
43864e564b Merge "Register APPS_ALLOWED_ON_RESTRICTED_NETWORKS setting observer" 2021-05-17 06:45:52 +00:00
junyulai
0f57022302 [FUI29] Migrate ConnectivityService to use getAllNetworkStateSnapshots
Test: atest FrameworksNetTests
Bug: 174123988
Merged-In: I3ba50cbd8a7f60779c69ba85e10dc3cc8a52f8b1
Change-Id: I3ba50cbd8a7f60779c69ba85e10dc3cc8a52f8b1
  (cherry-picked from aosp/1620859)
2021-05-17 14:07:00 +08:00
Paul Hu
c5f851c933 Merge "Read APPS_ALLOWED_ON_RESTRICTED_NETWORKS setting from PermissionMonitor" am: 8665f56ca1 am: 8aa632a19e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1689572

Change-Id: I216224011720d64316b9801ef54859b8de2bdb89
2021-05-17 03:52:42 +00:00
Paul Hu
8665f56ca1 Merge "Read APPS_ALLOWED_ON_RESTRICTED_NETWORKS setting from PermissionMonitor" 2021-05-17 03:04:59 +00:00
paulhu
f11da7e205 Register APPS_ALLOWED_ON_RESTRICTED_NETWORKS setting observer
PermissionMonitor register APPS_ALLOWED_ON_RESTRICTED_NETWORKS
setting observer to listen setting changed callback. Then update
or revoke permission for those apps.

Bug: 185149952
Test: atest FrameworksNetTests
Change-Id: I4b6a21bd3f47b7bcaac36fcabf1202a5a84a4520
2021-05-16 15:52:36 +00:00
paulhu
a7b9535fde Read APPS_ALLOWED_ON_RESTRICTED_NETWORKS setting from PermissionMonitor
Let PermissionMonitor read APPS_ALLOWED_ON_RESTRICTED_NETWORKS
setting and grant netd system permission to uids whose package
name is listed in setting.

Bug: 185149952
Test: atest FrameworksNetTests
Change-Id: I856b545c0339a262abbe9d432cfda125bc82dc12
2021-05-16 23:48:55 +08:00
Junyu Lai
8bf72687e7 Merge changes I3ba50cbd,I970ee365 am: 2a7ab18c0b am: c8cdc6917c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1620859

Change-Id: If9a3e37e5359b955e330002d81cbeb48f90ee22b
2021-05-15 17:24:42 +00:00
junyulai
5744432f28 [FUI29] Migrate ConnectivityService to use getAllNetworkStateSnapshots
Test: atest FrameworksNetTests
Bug: 174123988
Change-Id: I3ba50cbd8a7f60779c69ba85e10dc3cc8a52f8b1
2021-05-14 19:48:17 +08:00
Treehugger Robot
5c6bb2dfdb Merge "Reference unreachable netId from INetd" am: 01be14fd53 am: 68413f8a69 am: 3bf71e4e85
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1708326

Change-Id: Ia8db25ba86450341d4b9278eba350014fa3b880c
2021-05-14 10:06:00 +00:00
Chalard Jean
b9e49ec514 Address comments on ag/14486203
Bug: 186458024
Test: comment-only change
Change-Id: I7b086abbb57354086e8fb1a41c63140f2227173f
2021-05-14 17:31:30 +09:00
Ken Chen
4f612fae1f Reference unreachable netId from INetd
Bug: 181579204
Test: m; atest FrameworksNetTests
Change-Id: Id0d30363abe583459a8022e7400aab1dd4f72939
2021-05-14 14:30:43 +08:00
Chalard Jean
6948544a4d Make yield-to-bad-wifi behavior backward compatible with R
Yielding cell wins to exiting wifi (whether good or bad).
It loses to bad wifi that's not exiting.

In R, yielding to bad wifi only affects wifis that are
unvalidated, but a wifi that is exiting should still be
dropped in favor of a cell that yields to bad wifi.

I had misunderstood the policy and implemented it wrong.
Now it's implemented right, and has careful tests.

Test: new tests for this
Bug: 186458024
Change-Id: Ib8637100d491e72a2edb837584ce55b7dda58524
2021-05-14 15:27:12 +09:00
Aaron Huang
6a7e6ad55c 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
2021-05-14 10:30:49 +08:00
Remi NGUYEN VAN
c71c789184 Move NetIdManager, ProfileNetworkPreferences
Move NetIdManager and ProfileNetworkPreferences from services/core to
packages/Connectivity/service.

This is a partial cherry-pick of a downstream change.

Bug: 186628461
Test: m
Merged-In: I454e8a0a8d0e0f9e6d21a8e8faf5a9e299962ad4
Change-Id: I6734c181dac39518b8d69be1e49d7f5f0a0a18da
2021-05-13 18:18:42 +00:00
Remi NGUYEN VAN
cdb45f8e37 Move connectivity sources to packages/Connectivity
The service-connectivity sources should be in
packages/modules/Connectivity. Move them to
frameworks/base/packages/Connectivity, so that the whole directory can
be moved to the dedicated packages/modules/Connectivity git project.

Bug: 186628461
Test: m
Merged-In: I26d1a274058fa38763ad4f605549d880865b4d76
Change-Id: Ie0562db92ebee269b901926d763ae907bde61b98
2021-05-13 18:18:42 +00:00
Remi NGUYEN VAN
b11ba415f6 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

Change-Id: I7a15ddcad5af11fa307d9dbe3a77b31a1179e5b3
2021-05-13 14:40:10 +00:00
Remi NGUYEN VAN
028cb1b7a8 Move connectivity sources to packages/Connectivity
The service-connectivity sources should be in
packages/modules/Connectivity. Move them to
frameworks/base/packages/Connectivity, so that the whole directory can
be moved to the dedicated packages/modules/Connectivity git project.

Bug: 186628461
Test: m
Change-Id: I26d1a274058fa38763ad4f605549d880865b4d76
2021-05-13 12:44:09 +00:00
Bill Yi
fb03ac13e0 Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: I7f1f328ec7a68bc9219f11fffc32b650de1a3bf3
2021-04-29 13:56:51 +00:00
Remi NGUYEN VAN
9e15ad2566 Merge "Add AOSP certificates for connectivity resources" am: bef754dcd5 am: f6de130389 am: 343e810f30
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1684645

Change-Id: Ia7809d391c86f2a9aa5ce43a5d3f4c145bf12e2c
2021-04-23 06:56:38 +00:00
Remi NGUYEN VAN
03e53854e5 Merge "Use connectivity resources in service-connectivity" 2021-04-23 05:42:13 +00:00
Remi NGUYEN VAN
bef754dcd5 Merge "Add AOSP certificates for connectivity resources" 2021-04-23 05:40:58 +00:00
Remi NGUYEN VAN
962d13bd3e Use connectivity resources in service-connectivity
Migrate resource usage to the connectivity resource package.
For framework resources that have known overlays, keep a fallback until
the overlays can be migrated.

Bug: 182125649
Test: atest FrameworksNetTests
Merged-In: I778d94a5aac0c4e20e78b1ba3a002495c17a38a0
(clean cherry-pick)

Change-Id: I778d94a5aac0c4e20e78b1ba3a002495c17a38a0
2021-04-23 10:36:15 +09:00
Remi NGUYEN VAN
51b8cb4889 Add AOSP certificates for connectivity resources
Instead of the platform certificate, use a dedicated certificate.

The AOSP certificates are only used for testing as they have known keys,
and are replaced when resigning production images.

Key generated with:
openssl req -x509 -newkey rsa:4096 -nodes -days 999999 -keyout key.pem \
    -out com.android.connectivity.resources.x509.pem
openssl pkcs8 -topk8 -inform PEM -outform DER -in key.pem -out \
    com.android.connectivity.resources.pk8 -nocrypt

Fixes: 184808224
Fixes: 185462051
Test: m
Change-Id: I25cddc8d5ab948da9d3a2dbcd202ece1f61dd5a2
2021-04-22 16:52:19 +09:00
markchien
27bfb8d418 Change Connectivity resources SDK version to 30
S tethering module fail to sideload in R platform because package
manager fail to parse S version sdk in R platform.

Bug: 182409819
Test: m
Change-Id: I35c63e4bfe7657afe1e7364926ab139b042b403e
Merged-In: I35c63e4bfe7657afe1e7364926ab139b042b403e
2021-04-20 06:21:04 +00:00