• topjohnwu's avatar
    Allow 3rd party code to load pre-specializing · da723b20
    topjohnwu authored
    Magisk's policy is to never allow 3rd party code to be loaded in the
    zygote daemon process so we have 100% control over injection and hiding.
    However, this makes it impossible for 3rd party modules to run anything
    before process specialization, which includes the ability to modify the
    arguments being sent to these original nativeForkAndXXX methods.
    
    The trick here is to fork before calling the original nativeForkAndXXX
    methods, and hook `fork` in libandroid_runtime.so to skip the next
    invocation; basically, we're moving the responsibility of process
    forking to our own hands.
    da723b20
Name
Last commit
Last update
.github Loading commit data...
app Loading commit data...
buildSrc Loading commit data...
docs Loading commit data...
gradle/wrapper Loading commit data...
native Loading commit data...
scripts Loading commit data...
stub Loading commit data...
tools Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gitmodules Loading commit data...
LICENSE Loading commit data...
README.MD Loading commit data...
build.gradle.kts Loading commit data...
build.py Loading commit data...
config.prop.sample Loading commit data...
gradle.properties Loading commit data...
gradlew Loading commit data...
gradlew.bat Loading commit data...
settings.gradle.kts Loading commit data...