- 19 Jun, 2018 7 commits
-
-
Sheryl Hohman authored
-
osm0sis authored
-
npes87184 authored
The &cmd will return a pointer which point to a pointer of cmdline. It is a memory address which is usually 8 bytes in 64 bits machine. However, the struct cmdline is 4 bytes. This will cause setting zero beyond the bound. Below is a simple example to show the differentiation: struct cmdline { char skip_initramfs; char slot[3]; }; static void parse_cmdline(struct cmdline *cmd) { printf("%lu\n", sizeof(*cmd)); /* 4 */ printf("%lu\n", sizeof(&cmd)); /* 8 */ } int main() { struct cmdline cmd; parse_cmdline(&cmd); return 0; } This patch prevents this. Signed-off-by:
npes87184 <npes87184@gmail.com>
-
John Wu authored
Check all possible APK locations before actually running the verification
-
XiNGRZ authored
-
topjohnwu authored
-
topjohnwu authored
In previous implementations, proc_monitor checks whether the mount namespace of an app is actually separated from zygote using a list generated at startup. However, for some unknown reason, some devices (e.g. Samsung) has multiple zygote servers running in the background. This means that app processes spawned from the unlisted zygotes are not checked whether the separation is done or not, causing MagiskHide unmount stuffs in the namespace of zygote, and since zygote is the "mother" of all apps, all apps will no longer have root access. Since I'm not sure of the reason why multiple zygotes exists, so instead of checking the namespace against a list, compare the current namespace against the parent process's namespace. This will make sure the namespace is NOT the same as the parent process, which is supposed to be the zygote server.
-
- 17 Jun, 2018 2 commits
- 16 Jun, 2018 5 commits
- 13 Jun, 2018 3 commits
- 12 Jun, 2018 1 commit
-
-
topjohnwu authored
-
- 11 Jun, 2018 1 commit
-
-
topjohnwu authored
-
- 10 Jun, 2018 4 commits
- 09 Jun, 2018 5 commits
-
-
Jason A. Donenfeld authored
It's not important to check the return value of unlink(2) or even verify that the file exists. If this code is running, it means the system has rebooted, and thus the update file, if any, should be removed so that MagiskManager doesn't keep displaying the same message. We also handle this before we handle "disable" so that disabled modules don't keep requesting a reboot to update.
-
Alexandre Boeglin authored
-
topjohnwu authored
-
topjohnwu authored
-
topjohnwu authored
-
- 03 Jun, 2018 5 commits
-
-
msdx321 authored
Unlike other common OEMs, Samsung use uppper case partition name. e.g: /dev/block/platform/11120000.ufs/by-name/SYSTEM This will cause setup_block() fails to find a match partition. Thus, we should use strcasecmp instead of strcmp. Signed-off-by:
msdx321 <msdx321@gmail.com>
-
topjohnwu authored
-
Andrew Gunnerson authored
This fixes an issue where if /system or /vendor was already mounted prior to magiskinit running, then they would get unmounted. Signed-off-by:
Andrew Gunnerson <andrewgunnerson@gmail.com>
-
topjohnwu authored
-
topjohnwu authored
-
- 27 May, 2018 2 commits
- 26 May, 2018 3 commits
- 20 May, 2018 1 commit
-
-
topjohnwu authored
-
- 19 May, 2018 1 commit
-
-
topjohnwu authored
-