DivestOS/Patches/LineageOS-20.0/ASB2023-09/launcher-01.patch

49 lines
2.1 KiB
Diff
Raw Normal View History

20.0: September ASB picks wget https://github.com/GrapheneOS/platform_packages_services_Telephony/commit/b96ee4a2d1ec8c552af40820077fe85f9b2fa01f.patch -O telephony-01.patch wget https://github.com/GrapheneOS/platform_packages_providers_MediaProvider/commit/c16e6e78c1c8ba40f8c2ff6a4d87afe44590eb7f.patch -O media-01.patch wget https://github.com/GrapheneOS/platform_packages_providers_MediaProvider/commit/d5771450d7b2acde9fa051dedbb6c115b001d48b.patch -O media-02.patch wget https://github.com/GrapheneOS/platform_packages_modules_NeuralNetworks/commit/a1370bd00c106e4d172dc68638778fa111f6ecbe.patch -O nn-01.patch wget https://github.com/GrapheneOS/platform_packages_modules_Bluetooth/commit/ce2776f4ca4fba080bd64bffa2c8fa2d0188bd45.patch -O bt-01.patch wget https://github.com/GrapheneOS/platform_packages_modules_Bluetooth/commit/585f583ef5e6c2446df7700d8959774771d2a9d8.patch -O bt-02.patch wget https://github.com/GrapheneOS/platform_packages_modules_Bluetooth/commit/c9905e7968f603014d8ebd631393f9ba1ffd98c9.patch -O bt-03.patch wget https://github.com/GrapheneOS/platform_packages_modules_Bluetooth/commit/c93ec045f59462f2fb64242da1a119a7b49c3d50.patch -O bt-04.patch wget https://github.com/GrapheneOS/platform_packages_modules_Bluetooth/commit/89fb17d17249382f8bd5c4c9b0912447ea7ff676.patch -O bt-05.patch wget https://github.com/GrapheneOS/platform_packages_modules_Bluetooth/commit/14aed2455e4e800e4bde6175ad3c4910ffcf7b0e.patch -O bt-06.patch wget https://github.com/GrapheneOS/platform_packages_modules_Bluetooth/commit/cd438ebc524bc27b6200c70ccb6ed9f8d0271a10.patch -O bt-07.patch wget https://github.com/GrapheneOS/platform_packages_apps_Nfc/commit/27e7cdc4e5748e2ad85552433cf9c120fd7a936b.patch -O nfc-01.patch wget https://github.com/GrapheneOS/platform_packages_apps_Launcher3/commit/dfeb4270b8ecad08bc5361f122af9453881a5987.patch -O launcher-01.patch wget https://github.com/GrapheneOS/platform_frameworks_native/commit/b1993f6cec45bc638ea1d2875c91d069e89ca57e.patch -O native-01.patch wget https://github.com/GrapheneOS/platform_frameworks_base/commit/df4a9362cd39867ca7deee537934649bd6a2589f.patch -O fwb-01.patch wget https://github.com/GrapheneOS/platform_frameworks_base/commit/b55563bb9d534210c3f4c5e21ba07a63360c2094.patch -O fwb-02.patch wget https://github.com/GrapheneOS/platform_frameworks_base/commit/a80971a28168f2667a2821d008964ba001cad059.patch -O fwb-03.patch wget https://github.com/GrapheneOS/platform_frameworks_base/commit/7e173b43837c419a7cb77f5758191a557fdc76fa.patch -O fwb-04.patch wget https://github.com/GrapheneOS/platform_frameworks_base/commit/44191b1c6b55d9e09d8b5fca96176035abc18c31.patch -O fwb-05.patch wget https://github.com/GrapheneOS/platform_frameworks_base/commit/8dc8dfe572ce5e4bcb64418275b6d8c4e05284ac.patch -O fwb-06.patch wget https://github.com/GrapheneOS/platform_frameworks_av/commit/00a42241007a2c2a03b97656c958236091553b80.patch -O av-01.patch wget https://github.com/GrapheneOS/platform_packages_apps_Settings/commit/21623d1f437beb59ceee1fc88cd07d48e3f6a13e.patch -O settings-01.patch wget https://github.com/GrapheneOS/platform_packages_apps_Settings/commit/fa5ec443d94922424112fe8a7c7f9d3b36dca67d.patch -O settings-02.patch wget https://github.com/GrapheneOS/platform_packages_apps_Settings/commit/ba4da9c7b3a711a5e1c73dcf361b0c14fe02ebf4.patch -O settings-03.patch Signed-off-by: Tad <tad@spotco.us>
2023-09-06 19:26:45 +00:00
From dfeb4270b8ecad08bc5361f122af9453881a5987 Mon Sep 17 00:00:00 2001
From: Pinyao Ting <pinyaoting@google.com>
Date: Thu, 1 Jun 2023 18:12:44 -0700
Subject: [PATCH] Fix permission issue in legacy shortcut
When building legacy shortcut, Launcher calls
PackageManager#resolveActivity to retrieve necessary permission to
launch the intent.
However, when the source app wraps an arbitrary intent within
Intent#createChooser, the existing logic will fail because launching
Chooser doesn't require additional permission.
This CL fixes the security vulnerability by performing the permission
check against the intent that is wrapped within.
Bug: 270152142
Test: manual
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:c53818a16b4322a823497726ac7e7a44501b4442)
Merged-In: If35344c08975e35085c7c2b9b814a3c457a144b0
Change-Id: If35344c08975e35085c7c2b9b814a3c457a144b0
---
.../android/launcher3/util/PackageManagerHelper.java | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/src/com/android/launcher3/util/PackageManagerHelper.java b/src/com/android/launcher3/util/PackageManagerHelper.java
index a6a2751dc7..586e0c9e89 100644
--- a/src/com/android/launcher3/util/PackageManagerHelper.java
+++ b/src/com/android/launcher3/util/PackageManagerHelper.java
@@ -145,6 +145,18 @@ public static boolean isAppSuspended(ApplicationInfo info) {
* any permissions
*/
public boolean hasPermissionForActivity(Intent intent, String srcPackage) {
+ // b/270152142
+ if (Intent.ACTION_CHOOSER.equals(intent.getAction())) {
+ final Bundle extras = intent.getExtras();
+ if (extras == null) {
+ return true;
+ }
+ // If given intent is ACTION_CHOOSER, verify srcPackage has permission over EXTRA_INTENT
+ intent = (Intent) extras.getParcelable(Intent.EXTRA_INTENT);
+ if (intent == null) {
+ return true;
+ }
+ }
ResolveInfo target = mPm.resolveActivity(intent, 0);
if (target == null) {
// Not a valid target