-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathplatform_packages_modules_Permission.patch
More file actions
116 lines (100 loc) · 5.2 KB
/
platform_packages_modules_Permission.patch
File metadata and controls
116 lines (100 loc) · 5.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
From 35dc0c5d94a8baabde46c665bf242fa06fa701e6 Mon Sep 17 00:00:00 2001
From: Daniel Zhang <danielzhang130@gmail.com>
Date: Fri, 29 Dec 2023 22:28:13 -0500
Subject: [PATCH 1/3] Make FAKE_PACKAGE_SIGNATURE runtime permission
Change-Id: If9ded0a8d6b8dd7044417e9319c413e4927fb23a
Signed-off-by: Daniel Zhang <danielzhang130@gmail.com>
---
.../permissioncontroller/permission/utils/PermissionMapping.kt | 1 +
1 file changed, 1 insertion(+)
diff --git a/PermissionController/src/com/android/permissioncontroller/permission/utils/PermissionMapping.kt b/PermissionController/src/com/android/permissioncontroller/permission/utils/PermissionMapping.kt
index a3446f8..29278ae 100644
--- a/PermissionController/src/com/android/permissioncontroller/permission/utils/PermissionMapping.kt
+++ b/PermissionController/src/com/android/permissioncontroller/permission/utils/PermissionMapping.kt
@@ -182,6 +182,7 @@ object PermissionMapping {
}
PLATFORM_PERMISSIONS[Manifest.permission.BODY_SENSORS] = Manifest.permission_group.SENSORS
+ PLATFORM_PERMISSIONS[Manifest.permission.FAKE_PACKAGE_SIGNATURE] = Manifest.permission_group.FAKE_PACKAGE
if (SdkLevel.isAtLeastT()) {
PLATFORM_PERMISSIONS[Manifest.permission.POST_NOTIFICATIONS] =
--
2.34.1
From 407cbe767912e17d9996fd28fc032651c66cb764 Mon Sep 17 00:00:00 2001
From: Daniel Zhang <danielzhang130@gmail.com>
Date: Sun, 23 Nov 2025 15:44:29 -0500
Subject: [PATCH 2/3] fix dialer custom permission
Change-Id: I7c819029ca7d4fe9250a5e66b308ea1c7b7d28a4
---
PermissionController/res/xml/roles.xml | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/PermissionController/res/xml/roles.xml b/PermissionController/res/xml/roles.xml
index 3d858a9..a5759ba 100644
--- a/PermissionController/res/xml/roles.xml
+++ b/PermissionController/res/xml/roles.xml
@@ -101,6 +101,10 @@
featureFlag="android.companion.virtualdevice.flags.Flags.activityControlApi" />
</permission-set>
+ <permission-set name="fake_package_signature">
+ <permission name="android.permission.FAKE_PACKAGE_SIGNATURE" />
+ </permission-set>
+
<role
name="android.app.role.ASSISTANT"
behavior="AssistantRoleBehavior"
@@ -257,6 +261,7 @@
<permission-set name="microphone" />
<permission-set name="camera" />
<permission-set name="notifications" />
+ <permission-set name="fake_package_signature" />
</permissions>
<app-op-permissions>
<app-op-permission name="android.permission.SYSTEM_ALERT_WINDOW" />
--
2.34.1
From a3285aa30f26eef1a2816b5392818133a7202bc0 Mon Sep 17 00:00:00 2001
From: Daniel Zhang <danielzhang130@gmail.com>
Date: Sun, 18 Aug 2024 09:59:10 -0400
Subject: [PATCH 3/3] Add logging to permission controller
Change-Id: I066d8f5464a8a7b2ca73a5cb01d3814e118fe9a0
Signed-off-by: Daniel Zhang <danielzhang130@gmail.com>
---
.../com/android/role/controller/model/Permissions.java | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/PermissionController/role-controller/java/com/android/role/controller/model/Permissions.java b/PermissionController/role-controller/java/com/android/role/controller/model/Permissions.java
index 820ff3d..c5f6f01 100644
--- a/PermissionController/role-controller/java/com/android/role/controller/model/Permissions.java
+++ b/PermissionController/role-controller/java/com/android/role/controller/model/Permissions.java
@@ -157,6 +157,7 @@ public class Permissions {
if (isRuntimePermission(permission, context) && !ArrayUtils.contains(
disabledSystemPackageInfo.requestedPermissions, permission)) {
permissionsToGrant.removeAt(i);
+ Log.w(LOG_TAG, "permissions removed. " + packageName);
}
}
if (permissionsToGrant.isEmpty()) {
@@ -214,12 +215,13 @@ public class Permissions {
@NonNull String permission, boolean overrideUserSetAndFixed, boolean setGrantedByRole,
boolean setGrantedByDefault, boolean setSystemFixed, @NonNull UserHandle user,
@NonNull Context context) {
+ Log.w(LOG_TAG, "grantSingleAsUser " + permission);
boolean wasPermissionOrAppOpGranted = isPermissionAndAppOpGrantedAsUser(packageName,
permission, user, context);
if (isPermissionFixedAsUser(packageName, permission, false,
overrideUserSetAndFixed, user, context)
&& !wasPermissionOrAppOpGranted) {
- // Stop granting if this permission is fixed to revoked.
+ Log.w(LOG_TAG, "Stop granting if this permission is fixed to revoked. role=" + setGrantedByRole);
return false;
}
@@ -238,8 +240,8 @@ public class Permissions {
}
if (!isAnyForegroundPermissionGranted) {
- // Stop granting if this background permission doesn't have a granted foreground
- // permission.
+ Log.w(LOG_TAG, "Stop granting if this background permission doesn't have a granted foreground"+
+ " permission. role=" + setGrantedByRole);
return false;
}
}
--
2.34.1