Commit Graph

594 Commits

Author SHA1 Message Date
Chavi Weingarten
612711c345 Introduce SystemAPI MediaProjectionGlobal
This API can be used from calls outside applications to create a virtual
display for mirroring. The permission checks in system server are still
in place so the caller must have CAPTURE_VIDEO_OUTPUT permission. This
class is intented to be used by systems that to stream device content,
but not from an application. In most cases, this will be called from
Shell or a system application.

Test: MediaProjectGlobalTest
Bug: 237664947
Change-Id: I43f79c83db7c82c0b682ef174fb1a5ab83795489
2022-09-16 13:13:04 +00:00
Yohei Yukawa
b869c78380 Protect isInputMethodPickerShown() with TEST_INPUT_METHOD permission
IInputMethodManager#isInputMethodPickerShownForTest() was introduced
in Android P (API 28) to verify IME picker visibility in CTS [1].

To make it clear that that IPC method must be available only for
special testing purpose, this CL introduces an @hide permission

   android.permission.TEST_INPUT_METHOD

and requires it in

   InputMethodManagerService#isInputMethodPickerShownForTest().

This CL grants that permission to the shell process hence CTS tests
can still access to the corresponding test API by using
UiAutomation#adoptShellPermissionIdentity().

 [1]: I4e21625c32a0ca1abc740229efb3c7fcd97141cc
      eb5706183f

Bug: 237317525
Test: atest CtsInputMethodTestCases
Test: Manually verified as follows.
 1. adb logcat -b events | grep 237317525
 2. atest CtsInputMethodTestCases:InputMethodManagerTest#testIsInputMethodPickerShownProtection
Ignore-AOSP-First: For a security fix
Change-Id: Ie79a3e9d41ce22605ae083594d639c37d08b7def
2022-07-12 19:03:26 -07:00
Jimmy Chen
318410fe93 Merge "p2p: add CONFIGURE_WIFI_DISPLAY permssion for P2P test" am: 1bf4072c78 am: a29505af31 am: a6b28ca5eb am: f1223c1738 am: 5a6c0e7802
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2115076

Change-Id: Icd950eb147b5b0828dbed889cdf3b4f91a0df85d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-16 02:08:54 +00:00
Jimmy Chen
a6b28ca5eb Merge "p2p: add CONFIGURE_WIFI_DISPLAY permssion for P2P test" am: 1bf4072c78 am: a29505af31
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2115076

Change-Id: Id14c36a6cdfc6b01e97846c38238f14fc231cfe0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-16 01:44:21 +00:00
Jimmy Chen
f46b780f16 p2p: add CONFIGURE_WIFI_DISPLAY permssion for P2P test
Bug: 230699791
Test: atest android.net.wifi.cts.ConcurrencyTest#testP2pSetWfdInfo
Change-Id: Ic25dc6d7b18bad38863acfd32d839155da28141b
2022-06-08 15:38:18 +08:00
Neil Fuller
808b9f1b73 Merge "Add a Y2038 check into the time_detector" 2022-05-10 11:44:09 +00:00
Neil Fuller
2ff5ec1aad Add a Y2038 check into the time_detector
Add a Y2038 check into the time_detector and add infrastructure to allow
command-line testing to confirm it works.

This is before removing a Y2038 check from NITZ parsing code in the
telephony process. After this change, Androdi will consistently block
>= Y2038 suggestions, not just time signals that come in via telephony.

The initial checks attempt to limit the restriction to devices with
32-bit ABIs, since the main issue we're aware of is that time_t is a
32-bit signed int under bionic, hence there could be issues with that
type in 32-bit processes on 32-bit / mixed 32/64-bit devices.

Bug: 204193177
Test: adb shell cmd time_detector suggest_network_time --reference_time 2480587 --unix_epoch_time 1646473966056
Test: Run with 32-bit + 64-bit only builds, inspect adb shell dumpsys time_detector
Merged-In: Ib9d6472f5ca7a62d59b3224f1845846f99a0b52d
Change-Id: Ib9d6472f5ca7a62d59b3224f1845846f99a0b52d
2022-05-10 10:01:58 +00:00
Neil Fuller
68d98c0673 Merge "Add a Y2038 check into the time_detector" into tm-dev-plus-aosp am: 4b8d4c830c am: c37cbfd6c4 am: 9ee897724d
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/18142264

Change-Id: I5e816029c9978d1a313ddba9a2904d8ac9dc79ba
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-07 01:26:53 +00:00
Neil Fuller
4b8d4c830c Merge "Add a Y2038 check into the time_detector" into tm-dev-plus-aosp 2022-05-06 16:53:29 +00:00
Treehugger Robot
95671fc41a Merge "Add USE_CUSTOM_VIRTUAL_MACHINE permission to Shell" am: 87e124332d am: ea4f257004 am: e0ceb9de72 am: 9fa6409399 am: d28e148bd9
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2081684

Change-Id: I2c3d0fe1279cf740ab6e85afeed1df1325472d9c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-05 03:31:58 +00:00
Treehugger Robot
e0ceb9de72 Merge "Add USE_CUSTOM_VIRTUAL_MACHINE permission to Shell" am: 87e124332d am: ea4f257004
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2081684

Change-Id: I5f93d5daaaf09eb1d1a257df44bb2781828b734d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-05 02:19:17 +00:00
Neil Fuller
b1f132b5e6 Add a Y2038 check into the time_detector
Add a Y2038 check into the time_detector and add infrastructure to allow
command-line testing to confirm it works.

This is before removing a Y2038 check from NITZ parsing code in the
telephony process. After this change, Androdi will consistently block
>= Y2038 suggestions, not just time signals that come in via telephony.

The initial checks attempt to limit the restriction to devices with
32-bit ABIs, since the main issue we're aware of is that time_t is a
32-bit signed int under bionic, hence there could be issues with that
type in 32-bit processes on 32-bit / mixed 32/64-bit devices.

Bug: 204193177
Test: adb shell cmd time_detector suggest_network_time --reference_time 2480587 --unix_epoch_time 1646473966056
Test: Run with 32-bit + 64-bit only builds, inspect adb shell dumpsys time_detector
Ignore-AOSP-First: The change will be cherry-picked upstream
Change-Id: Ib9d6472f5ca7a62d59b3224f1845846f99a0b52d
2022-05-03 19:19:53 +00:00
Inseob Kim
0052c6c370 Add USE_CUSTOM_VIRTUAL_MACHINE permission to Shell
The permission allows a package to create a protected VM with custom
config. It's used by MicrodroidHostTestCases.

Bug: 207769805
Test: atest MicrodroidHostTestCases
Change-Id: If049d26c0ef97695098979c4a36fe1f7f607af5a
2022-05-02 18:05:26 +09:00
Seth Moore
bcc8929a4c Add new privileged permission for unique id attestation
This permission will eventually replace the sepolicy that we have now,
making it possible to test unique id attestation, which is no longer
possible due to the deprecation of shared uids.

Skipping automerger because the framework manifest has diverged too
much across aosp and tm-dev to allow for clean auto merges, and
presubmits block.

Test: KeyAttestationTest
Bug: 216778747
Ignore-AOSP-First: "do not merge" blocked automerging -- pick to master
Merged-In: Iecde35b9a79456b293118d8089dd2a3b0905f5f3
Change-Id: Iecde35b9a79456b293118d8089dd2a3b0905f5f3
2022-04-18 09:09:45 -07:00
TreeHugger Robot
9dac2d8576 Merge "Make READ_NEARBY_STREAMING_POLICY adoptable by shell for CTS tests" into tm-dev am: c0fc0ae2c7 am: cbfd0d3f77
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17729989

Change-Id: Ifcecaf6223dde8bb0d0feecc199a495e2d5bd140
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-14 16:44:48 +00:00
Iris Yang
d24c070acb Make READ_NEARBY_STREAMING_POLICY adoptable by shell for CTS tests
Bug: 217224856
Test: atest android.devicepolicy.cts.NearbyAppStreamingPolicyTest && atest android.devicepolicy.cts.NearbyNotificationStreamingPolicyTest
Ignore-AOSP-First: This new permission is part of a T-targeting feature
Change-Id: I303549d4f9fcf639da3d4981a8887c3ba55434fc
2022-04-14 21:52:23 +08:00
Seth Moore
d690893b54 Merge "Add new privileged permission for unique id attestation" 2022-04-06 12:40:27 +00:00
Seth Moore
d18fe9e3ce Add new privileged permission for unique id attestation
This permission will eventually replace the sepolicy that we have now,
making it possible to test unique id attestation, which is no longer
possible due to the deprecation of shared uids.

Skipping automerger because the framework manifest has diverged too
much across aosp and tm-dev to allow for clean auto merges, and
presubmits block.

Test: KeyAttestationTest
Bug: 216778747
Merged-In: Iecde35b9a79456b293118d8089dd2a3b0905f5f3
Change-Id: Iecde35b9a79456b293118d8089dd2a3b0905f5f3
2022-04-05 13:56:27 -07:00
Peiyong Lin
67263ff42c Merge "Allow Shell to have permission for CTS." into tm-dev am: a2df99e5eb am: 41013feae6
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17508836

Change-Id: I9f4c39e6c56dd16de728306758db6e0050142b4d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-05 02:49:53 +00:00
Peiyong Lin
a2df99e5eb Merge "Allow Shell to have permission for CTS." into tm-dev 2022-04-05 02:23:55 +00:00
TreeHugger Robot
98a91b9feb Merge "Add Shell permission to support manual testing" into tm-dev am: 8bc8d1b1fc
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17505025

Change-Id: I739c01cbd5343e407953169500e5653d77abe011
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-03-30 21:56:01 +00:00
Peiyong Lin
7479cbc372 Allow Shell to have permission for CTS.
Add ACCESS_FPS_COUNTER to Shell in order to run CTS properly.

Ignore-AOSP-First: permission doesn't exist in AOSP yet.
Bug: b/220029298
Test: atest TaskFpsCallbackCtsTest
Test: atest TaskFpsCallbackCtsTest --instant
Change-Id: Ica37bafff368f4a0027f9549de6a31ce3254c986
2022-03-30 17:17:50 +00:00
Neil Fuller
fddc4e2741 Add Shell permission to support manual testing
Add android.permission.SUGGEST_TELEPHONY_TIME_AND_ZONE to the shell
process to enable command-line injection of time zone suggestions to the
time_zone_detector service.

Shell already has permissions like SET_TIME_ZONE that allow the time
zone to be set directly, so this is not a security regression.

Bug: 227337462
Test: adb shell cmd time_zone_detector suggest_telephony_time_zone --slot_index 0 --zone_id Europe/London --quality single --match_type country
Merged-In: I377cab85a1b39ef2887b452d1ffcdc5b00a8d5ab
Change-Id: I377cab85a1b39ef2887b452d1ffcdc5b00a8d5ab
2022-03-30 13:28:57 +00:00
Neil Fuller
c55590c810 Add Shell permission to support manual testing
Add android.permission.SUGGEST_TELEPHONY_TIME_AND_ZONE to the shell
process to enable command-line injection of time zone suggestions to the
time_zone_detector service.

Shell already has permissions like SET_TIME_ZONE that allow the time
zone to be set directly, so this is not a security regression.

Bug: 227337462
Test: adb shell cmd time_zone_detector suggest_telephony_time_zone --slot_index 0 --zone_id Europe/London --quality single --match_type country
Ignore-AOSP-First: Merge conflict, AOSP cherry-pick will land after
Change-Id: I377cab85a1b39ef2887b452d1ffcdc5b00a8d5ab
2022-03-30 13:28:01 +00:00
Antoan Angelov
3537456763 Merge "Add ACCESS_PDB_STATE to shell permissions" into tm-dev am: 1fdf546865
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17473103

Change-Id: I7718a8f64aca2a4678d49ef0f944446081e62b41
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-03-30 13:22:09 +00:00
arangelov
556bc1a363 Add ACCESS_PDB_STATE to shell permissions
This is needed for CtsPersistentDataBlockManagerTestCases

Bug: 220030410
Test: none
Change-Id: I8d3e75caa1eece052d5495fc06c8beb3ca76b480
2022-03-29 18:17:11 +00:00
Seth Moore
14e9f41072 Merge "DO NOT MERGE Add new privileged permission for unique id attestation" into tm-dev 2022-03-29 15:04:06 +00:00
Seth Moore
4d8825e4da DO NOT MERGE Add new privileged permission for unique id attestation
This permission will eventually replace the sepolicy that we have now,
making it possible to test unique id attestation, which is no longer
possible due to the deprecation of shared uids.

Skipping automerger because the framework manifest has diverged too
much across aosp and tm-dev to allow for clean auto merges, and
presubmits block.

Test: KeyAttestationTest
Bug: 216778747
Change-Id: Iecde35b9a79456b293118d8089dd2a3b0905f5f3
2022-03-25 10:21:40 -07:00
Alex Johnston
f7a1a20815 Require TRIGGER_LOST_MODE permission for sendLostModeLocationUpdate
Changes:
* Use TRIGGER_LOST_MODE permission to gate the
  DevicePolicyManager API sendLostModeLocationUpdate

Bug: 223148704
Test: atest android.devicepolicy.cts.LostModeLocationTest
Change-Id: If15388a377c75b7581c9c2a35b3d9828f78e13fc
Merged-In: If15388a377c75b7581c9c2a35b3d9828f78e13fc
2022-03-24 12:29:28 +00:00
Arthur Hung
7298692865 Expose input association to be testable
- Expose api via TestApi
- Add ASSOCIATE_INPUT_DEVICE_TO_DISPLAY permission to Shell
- Add port for uinput command

Bug: 215631144
Test: atest CtsInputTestCases
Ignore-AOSP-First: Permission that should be kept internal until T releases
Change-Id: I55f2141aabceb71475f5e7f7d590b2f95e05c5aa
2022-03-21 13:05:08 +08:00
Jack He
8164e677af Merge "Shell: Grant BLUETOOTH_PRIVILEGED permission to Shell" am: 69e560995c am: eada5871f4 am: 384882aada am: 9d8b6c7b32
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2031463

Change-Id: Icc2703da9278250dffd6d594389f0d4fdc7fdb76
2022-03-19 01:01:56 +00:00
Jack He
9d8b6c7b32 Merge "Shell: Grant BLUETOOTH_PRIVILEGED permission to Shell" am: 69e560995c am: eada5871f4 am: 384882aada
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2031463

Change-Id: Id694d0b7240a3ffb757b9ba0f87469b97aca0dd8
2022-03-19 00:55:12 +00:00
Jack He
fedd79c9d7 Shell: Grant BLUETOOTH_PRIVILEGED permission to Shell
* So that we can run CTS test with Shell permission

Bug: 225250442
Test: make
Change-Id: I9bf52d9325732c8ea1fef102591da1198b8c4fae
2022-03-18 00:33:22 -07:00
Etan Cohen
05c20a91f1 Merge "Add MANAGE_WIFI_INTERFACES to the shell permission" am: dc2f8bfaee am: 8dcf52fdd9 am: ab6b6abfcd am: 19b2879e24
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2021397

Change-Id: I97f73829e18971abb41000b869274d4d10edccb2
2022-03-15 00:56:22 +00:00
Etan Cohen
19b2879e24 Merge "Add MANAGE_WIFI_INTERFACES to the shell permission" am: dc2f8bfaee am: 8dcf52fdd9 am: ab6b6abfcd
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2021397

Change-Id: I9356201e6a6817e3ab69c196e2f86ab622cc4c53
2022-03-15 00:21:17 +00:00
Etan Cohen
dc2f8bfaee Merge "Add MANAGE_WIFI_INTERFACES to the shell permission" 2022-03-14 23:03:25 +00:00
TreeHugger Robot
0c9e223e36 Merge "Add a system API to make a package become visible to other package" into tm-dev am: 78a0333f67
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17072124

Change-Id: I9d224d635a6bcfb6a665e38873975b5a306d95f3
2022-03-11 05:29:36 +00:00
TreeHugger Robot
78a0333f67 Merge "Add a system API to make a package become visible to other package" into tm-dev 2022-03-11 05:21:08 +00:00
Rhed Jao
829792d752 Add a system API to make a package become visible to other package
Expose a system API PackageManager#makeUidVisible for
mainline module to make a package become visible to the caller.

Bug: 222205552
Test: atest AppEnumerationTests
Test: atest PermissionPolicyTest
Ignore-AOSP-First: (for packages/Shell/AndroidManifest.xml) Permission
Change-Id: I6cf322ddfea09a8a4c0c442a6789af4e79d294d7
2022-03-11 10:53:08 +08:00
Oscar Shu
6e3cfa01c8 Merge "Rename MANAGE_WIFI_AUTO_JOIN to MANAGE_WIFI_NETWORK_SELECTION" am: 2349f6f641 am: 64c4227b11 am: c917ab08d9 am: 6793c6fd69
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2019225

Change-Id: Ic01393f0116753f3fcbaa40bad38192633b6d7f7
2022-03-11 01:36:01 +00:00
Oscar Shu
6793c6fd69 Merge "Rename MANAGE_WIFI_AUTO_JOIN to MANAGE_WIFI_NETWORK_SELECTION" am: 2349f6f641 am: 64c4227b11 am: c917ab08d9
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2019225

Change-Id: If94a79731f5a7605717e10cf978f9c42b78cea11
2022-03-11 01:32:42 +00:00
Etan Cohen
bee32e37f6 Add MANAGE_WIFI_INTERFACES to the shell permission
Enable CTS validatio of the protected APIs.

Bug: 223512835
Test: builds
Change-Id: Ie34564e2bc09937636629b395cc303b1f2c0a537
2022-03-10 22:23:32 +00:00
xshu
b869dbaee6 Rename MANAGE_WIFI_AUTO_JOIN to MANAGE_WIFI_NETWORK_SELECTION
Change to request for the updated permission.

Bug: 219947411
Test: compile
Change-Id: Iaf31a24080961a5e224bbd3871649fe7694dc3a5
2022-03-09 16:04:55 -08:00
kholoud mohamed
c82733f683 Add new permission PROVISION_DEMO_DEVICE am: 53a01ab1ed
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17071465

Change-Id: I53af33238928778f7350d9f872537fc82d984740
2022-03-07 15:03:43 +00:00
kholoud mohamed
53a01ab1ed Add new permission PROVISION_DEMO_DEVICE
The new permission allows holders to provision a demo device as a fully
managed device.

Bug: 222476910
Test: N/A
Change-Id: Ie36b05d62a8972a142d5b9b8792b0e59dd1f5602
2022-03-03 17:04:13 +00:00
Treehugger Robot
ba77198e3e Merge "Add shell permission for CTS test" am: 94dd832f60 am: 24d521a6bb am: a72c59093b am: cc2d08db85
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1972639

Change-Id: Ifd29b72961f7ad1c2cc94c052d308bb4e5c70b4e
2022-02-24 08:23:02 +00:00
Treehugger Robot
cc2d08db85 Merge "Add shell permission for CTS test" am: 94dd832f60 am: 24d521a6bb am: a72c59093b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1972639

Change-Id: Icabb84612057b380a581236d7e638d687589bf2e
2022-02-24 08:02:20 +00:00
Brian Lindahl
ee41663e2c Add shell permission for CTS test
The MEDIA_RESOURCE_OVERRIDE_PID permission is needed to create codecs on
behalf of other processes for correct MediaCodec resource reclaiming
behavior.

Bug: 217746837
Test: atest MediaCodecResourceTest
Change-Id: I75f2b33f7fee6d6e84ed7aec94eccd8aee5e4b20
2022-02-23 20:29:53 +00:00
TreeHugger Robot
8ddc255040 Merge "Require TRIGGER_LOST_MODE permission for sendLostModeLocationUpdate" 2022-02-22 22:27:20 +00:00
Xiaowen Lei
a650c2c4b7 Add role guarded APIs for subscribing to keyguard locked state in KeyguardManager.
Bug: 216630470
CTS-Coverage-Bug: 220371902
Test: manual
Test: atest CtsAppTestCases:KeyguardLockedStateApiTest
Ignore-AOSP-First: (for packages/Shell/AndroidManifest.xml) Permission
not yet publicly announced.

Change-Id: I1f44ec6799b0f74791613389ce28aadf84c9fe5c
2022-02-19 03:48:40 +00:00