Moreover, we may need to abandon PLT hooks in the future. Currently, there aren't many symbols found in the section .dynsym that are hooked targets of LSPlant, and more of them are found in the .symtab section. In Android 16 DP1, hooked art symbols in .dynsym (thus could be hooked using the PLT hook) are: 1. _ZN3art6mirror5Class9SetStatusENS_6HandleIS1_EENS_11ClassStatusEPNS_6ThreadE 2. _ZN3art3jit12JitCodeCache12DoCollectionEPNS_6ThreadE , while symbols in .symtab (must be hooked using inline hook) are: 1. _ZN3art11ClassLinker22FixupStaticTrampolinesEPNS_6ThreadENS_6ObjPtrINS_6mirror5ClassEEE 2. _ZN3art11ClassLinker14RegisterNativeEPNS_6ThreadEPNS_9ArtMethodEPKv 3. _ZN3art11ClassLinker16UnregisterNativeEPNS_6ThreadEPNS_9ArtMethodE 4. _ZN3art11ClassLinker26VisiblyInitializedCallback22MarkVisiblyInitializedEPNS_6ThreadE Hence, PLT hooks no longer provide sufficient advantages over inline hooks. Also, we may consider using shadowhook to replace Doddy for the arm CPU archs. |
||
|---|---|---|
| .. | ||
| magisk_module | ||
| src | ||
| update | ||
| .gitignore | ||
| build.gradle.kts | ||
| proguard-rules.pro | ||