Commit Graph

1278 Commits

Author SHA1 Message Date
topjohnwu 910a36fdc1 Make sepolicy.rules relative if possible 2022-07-20 19:28:38 -07:00
canyie 8423dc8d63 Later check persistent_properties
`daemon_entry` calls `getprop` which initializes sysprop impl and checks whether we need to load persistent property file. On FDE devices, magiskd starts before /data is actually decrypted, and the check always fails. Thus `persist_getprop("persist.sys.safemode")` will always fail.
2022-07-20 09:58:20 -07:00
Andrew Gunnerson 1f8c063dc6 Fix booting into recovery with Android 13 GKI kernels
With Android 13 GKI kernels, the boot partition has no ramdisk, so
Magisk constructs one from scratch. In this scenario, there's no backup
init binary at /.backup/init. For normal boot, magiskinit will symlink
/init -> /system/bin/init if needed. This commit implements the same
for booting into recovery. Before, magiskinit would just exec itself
over and over again because it couldn't restore the backup init.

Signed-off-by: Andrew Gunnerson <chillermillerlong@hotmail.com>
2022-07-18 13:33:50 -07:00
topjohnwu 70fd03d5fc Rearchitect logging 2022-07-06 01:16:08 -07:00
topjohnwu 2e52875b50 Move all logging into Rust 2022-07-05 21:13:09 -07:00
vvb2060 c2978eb9c3 More log for get_manager 2022-07-01 15:13:38 -07:00
topjohnwu b4863eb51b Setup logging infra in the Rust side 2022-07-01 04:54:00 -07:00
LoveSy 3817167ba1 Correct ro.crypto.state check
Fix #6042

Co-authored-by: vvb2060 <vvb2060@gmail.com>
2022-06-30 19:32:43 -07:00
topjohnwu 26116ac414 Setup preliminary rust infrastructure 2022-06-30 14:50:21 -07:00
LoveSy 3ae7344747 Create /dev on stub cpio 2022-06-22 04:05:50 -07:00
canyie 00247c7901 Fix meizu non-SAR 2SI compatibility again
Meizu devices using 2SI won't switch root to /system and still on rootfs, and /init is the 1st stage's, which cannot handle the 2nd stage. So we have to manually execute /system/bin/init for the 2nd stage.
2022-06-19 01:22:18 -07:00
topjohnwu 3c75f474c6 Embed version info in prop format 2022-06-19 00:43:38 -07:00
topjohnwu db1f5b0397 Reduce files relying on flags.h 2022-06-19 00:43:38 -07:00
vvb2060 b9c93c66f6 Force app version not lower than daemon 2022-06-17 11:53:16 -07:00
topjohnwu 741b679306 Cleanup libbase 2022-06-17 02:36:04 -07:00
LoveSy 4e2ecdb920 Fix env overflow
Fix #5989
2022-06-17 02:02:44 -07:00
topjohnwu 9469e79e3c Proper namespacing
The IDE will get confused when #include is in a namespace
2022-06-15 02:38:56 -07:00
topjohnwu db78c20161 Add dtb test command 2022-06-15 02:26:50 -07:00
topjohnwu 1699da1754 Update help message and make behavior consistent 2022-06-14 21:19:17 -07:00
canyie 754e690274 Fix config backup for legacy SAR 2022-06-14 02:57:47 -07:00
vvb2060 42606efe56 Always remove task 2022-06-09 21:02:31 -07:00
vvb2060 cae58c8790 Update hijack bins 2022-06-08 23:30:22 -07:00
topjohnwu 3a39dd4049 Update ramdisk restore implementation 2022-06-08 23:23:39 -07:00
canyie 89ff3c6572 Don't backup ramdisk created by Magisk
Fix topjohnwu#5938, fix topjohnwu#5944
2022-06-08 04:53:43 -07:00
topjohnwu 7bf9c74216 Don't skip backup even if original does not exist
Close #5945, fix #5944
2022-06-08 03:58:25 -07:00
vvb2060 569e9ad937 Use noHistory attribute for SuRequestActivity 2022-06-06 02:58:52 -07:00
vvb2060 9679874874 Disable repack on android 5.0
am does not support -p
2022-06-01 02:05:15 -07:00
topjohnwu 8186f253e8 Fix zygisk code unloading 2022-06-01 01:50:42 -07:00
topjohnwu d4fe8632ec Support SELinux disabled on debug builds 2022-05-31 22:24:13 -07:00
vvb2060 d7776f6597 Return empty on failure to get context 2022-05-31 18:35:56 -07:00
topjohnwu e4094c0caa Update build scripts 2022-05-30 03:47:31 -07:00
topjohnwu 2e51fe20a1 Move things to the correct location 2022-05-30 02:09:07 -07:00
topjohnwu 50e2f33d1c More debug indication in UI
Close #5874
2022-05-30 01:53:07 -07:00
topjohnwu 5e6eb8dd01 Avoid non-blocking I/O 2022-05-30 01:21:38 -07:00
topjohnwu bf2f823b8c Prune unused UID at boot 2022-05-29 23:43:22 -07:00
topjohnwu d0c4226997 Proper package state management 2022-05-29 23:31:57 -07:00
topjohnwu 4ea8bd0229 Fix incorrect use of compare_exchange 2022-05-29 22:19:56 -07:00
vvb2060 d19fcd5e21 Check path when start daemon 2022-05-29 09:08:05 -07:00
vvb2060 0b5f973b31 Print message when getting original app_process fails 2022-05-29 03:46:31 -07:00
topjohnwu 490a784993 Handle zygote restarts 2022-05-28 22:39:44 -07:00
topjohnwu 9c774f96db Use exec for boot_complete 2022-05-28 16:53:04 -07:00
topjohnwu 8dfb30fefe Skip cert check on debug builds 2022-05-24 05:39:16 -07:00
topjohnwu 2a252d13b8 Enforce dyn APK signature in stub app 2022-05-24 05:21:36 -07:00
topjohnwu 083ef803fe Enforce package signature verification 2022-05-20 04:37:58 -07:00
topjohnwu 351f0269ae Install stub if necessary 2022-05-19 22:54:49 -07:00
topjohnwu a29ae15ff7 Proper get_manager implementation 2022-05-19 02:39:57 -07:00
topjohnwu 34dded3b25 Fix denylist on shared UID apps 2022-05-18 01:59:45 -07:00
topjohnwu 975b1a5e36 Prune unused UIDs from su policies 2022-05-18 01:55:58 -07:00
topjohnwu c11ccbae2d Extract vbmeta from footer
Do not scan manually, extract properly from footer like libavb
2022-05-13 02:49:18 -07:00
topjohnwu 985249c3d0 Support GKIs without ramdisk
Fix #5819
2022-05-12 03:04:55 -07:00