From efc19ee2c9630e5c6724cff82a8cf7d4168201b8 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Thu, 15 Jul 2021 15:41:29 +0000 Subject: [PATCH] Changes for July 2021 --- buildbot_treble.sh | 1 + .../0001-core-Add-support-for-MicroG.patch | 106 ------------------ .../0001-treble-Don-t-handle-apns-conf.patch | 53 +++++++++ 3 files changed, 54 insertions(+), 106 deletions(-) delete mode 100644 patches/0001-core-Add-support-for-MicroG.patch create mode 100644 patches/0001-treble-Don-t-handle-apns-conf.patch diff --git a/buildbot_treble.sh b/buildbot_treble.sh index ca29170..2e1f02b 100755 --- a/buildbot_treble.sh +++ b/buildbot_treble.sh @@ -80,6 +80,7 @@ git revert 82b15278bad816632dcaeaed623b569978e9840d --no-edit # Update lineage.m git am $BL/patches/0001-Remove-fsck-SELinux-labels.patch git am $BL/patches/0001-treble-Add-overlay-lineage.patch git am $BL/patches/0001-treble-Don-t-specify-config_wallpaperCropperPackage.patch +git am $BL/patches/0001-treble-Don-t-handle-apns-conf.patch git am $BL/patches/0001-TEMP-treble-Fix-init.treble-environ.rc-hardcode-for-.patch cd ../../.. cd frameworks/native diff --git a/patches/0001-core-Add-support-for-MicroG.patch b/patches/0001-core-Add-support-for-MicroG.patch deleted file mode 100644 index 9dd11fa..0000000 --- a/patches/0001-core-Add-support-for-MicroG.patch +++ /dev/null @@ -1,106 +0,0 @@ -From c9b266ded8a63da3408c24479100ea53baf455b7 Mon Sep 17 00:00:00 2001 -From: gudenau -Date: Tue, 25 Sep 2018 09:44:26 +0200 -Subject: [PATCH] core: Add support for MicroG - --fake signatures, enabled per app by dynamic permission - -Change-Id: I84fc7e5c606f4b57012d948a4cc6cb521db6b03e ---- - core/res/AndroidManifest.xml | 7 ++++++ - core/res/res/values/config.xml | 2 ++ - core/res/res/values/strings.xml | 5 ++++ - .../server/pm/PackageManagerService.java | 23 +++++++++++++++++-- - 4 files changed, 35 insertions(+), 2 deletions(-) - -diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml -index 0c3b7a137b9..fc6f9d9a1ec 100644 ---- a/core/res/AndroidManifest.xml -+++ b/core/res/AndroidManifest.xml -@@ -2637,6 +2637,13 @@ - android:description="@string/permdesc_getPackageSize" - android:protectionLevel="normal" /> - -+ -+ -+ - -diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml -index 91f4cf3093e..91fb69f8066 100644 ---- a/core/res/res/values/config.xml -+++ b/core/res/res/values/config.xml -@@ -1856,6 +1856,8 @@ - - - com.android.location.fused -+ -+ com.google.android.gms - - - -diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml -index 152b131af8f..f8d87a37064 100644 ---- a/core/res/res/values/strings.xml -+++ b/core/res/res/values/strings.xml -@@ -827,6 +827,11 @@ - - - -+ -+ Spoof package signature -+ -+ Allows the app to pretend to be a different app. Malicious applications might be able to use this to access private application data. Legitimate uses include an emulator pretending to be what it emulates. Grant this permission with caution only! -+ - - disable or modify status bar - -diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java -index fb672a5231f..d5878ed9fc4 100644 ---- a/services/core/java/com/android/server/pm/PackageManagerService.java -+++ b/services/core/java/com/android/server/pm/PackageManagerService.java -@@ -4111,8 +4111,9 @@ public class PackageManagerService extends IPackageManager.Stub - final Set permissions = ArrayUtils.isEmpty(p.requestedPermissions) - ? Collections.emptySet() : permissionsState.getPermissions(userId); - -- PackageInfo packageInfo = PackageParser.generatePackageInfo(p, gids, flags, -- ps.firstInstallTime, ps.lastUpdateTime, permissions, state, userId); -+ PackageInfo packageInfo = mayFakeSignature(p, PackageParser.generatePackageInfo(p, gids, flags, -+ ps.firstInstallTime, ps.lastUpdateTime, permissions, state, userId), -+ permissions); - - if (packageInfo == null) { - return null; -@@ -4148,6 +4149,24 @@ public class PackageManagerService extends IPackageManager.Stub - } - } - -+ private PackageInfo mayFakeSignature(PackageParser.Package p, PackageInfo pi, -+ Set permissions) { -+ try { -+ if (permissions.contains("android.permission.FAKE_PACKAGE_SIGNATURE") -+ && p.applicationInfo.targetSdkVersion > Build.VERSION_CODES.LOLLIPOP_MR1 -+ && p.mAppMetaData != null) { -+ String sig = p.mAppMetaData.getString("fake-signature"); -+ if (sig != null) { -+ pi.signatures = new Signature[] {new Signature(sig)}; -+ } -+ } -+ } catch (Throwable t) { -+ // We should never die because of any failures, this is system code! -+ Log.w("PackageManagerService.FAKE_PACKAGE_SIGNATURE", t); -+ } -+ return pi; -+ } -+ - @Override - public void checkPackageStartable(String packageName, int userId) { - final int callingUid = Binder.getCallingUid(); --- -2.17.1 - diff --git a/patches/0001-treble-Don-t-handle-apns-conf.patch b/patches/0001-treble-Don-t-handle-apns-conf.patch new file mode 100644 index 0000000..23b48ad --- /dev/null +++ b/patches/0001-treble-Don-t-handle-apns-conf.patch @@ -0,0 +1,53 @@ +From 0e30d9db18a2ff9bbdc99f0b61e666c29850f5af Mon Sep 17 00:00:00 2001 +From: Andy CrossGate Yan +Date: Sun, 27 Jun 2021 15:37:56 +0000 +Subject: [PATCH] treble: Don't handle apns-conf + +LineageOS has its own well-maintained copy + +Change-Id: If568101f21098c75879af8b9b6141af179566960 +--- + base-pre.mk | 3 --- + base.mk | 8 ++------ + 2 files changed, 2 insertions(+), 9 deletions(-) + +diff --git a/base-pre.mk b/base-pre.mk +index 6a317e4..e69de29 100644 +--- a/base-pre.mk ++++ b/base-pre.mk +@@ -1,3 +0,0 @@ +-#Use a more decent APN config +-PRODUCT_COPY_FILES += \ +- device/sample/etc/apns-full-conf.xml:system/etc/apns-conf.xml +diff --git a/base.mk b/base.mk +index b11fde5..54144f9 100644 +--- a/base.mk ++++ b/base.mk +@@ -7,10 +7,6 @@ PRODUCT_COPY_FILES := \ + frameworks/native/data/etc/android.hardware.bluetooth.xml:system/etc/permissions/android.hardware.bluetooth.xml \ + frameworks/native/data/etc/android.hardware.bluetooth_le.xml:system/etc/permissions/android.hardware.bluetooth_le.xml \ + +-#Use a more decent APN config +-PRODUCT_COPY_FILES += \ +- device/sample/etc/apns-full-conf.xml:system/etc/apns-conf.xml +- + BOARD_PLAT_PRIVATE_SEPOLICY_DIR += device/phh/treble/sepolicy + DEVICE_PACKAGE_OVERLAYS += \ + device/phh/treble/overlay \ +@@ -31,11 +27,11 @@ PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ + ro.build.version.security_patch=$(PLATFORM_SECURITY_PATCH) \ + ro.adb.secure=0 \ + ro.logd.auditd=true +- ++ + #Huawei HiSuite (also other OEM custom programs I guess) it's of no use in AOSP builds + PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ + persist.sys.usb.config=adb \ +- ro.cust.cdrom=/dev/null ++ ro.cust.cdrom=/dev/null + + #VNDK config files + PRODUCT_COPY_FILES += \ +-- +2.25.1 +