Languages: English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Français | Deutsch | Español | Italiano | Русский | العربية
Interposes do_faccessat at its entry point using neverc_krt_interpose_register. Demonstrates:
- Auto-chain: multiple handlers on the same target, dispatched by priority
- Call-original pattern: handler receives
origpointer to invoke the original function - Priority control: lower value runs first; use negative to run before other interposes
- Coexistence: works even if the target is already interposed by another module
int neverc_krt_interpose_register(void *target, void *handler, int priority,
void **orig, struct neverc_krt_interpose_ref *ref);
int neverc_krt_interpose_unregister(struct neverc_krt_interpose_ref *ref);Handler signature:
long my_interpose(void *orig, void *a0, void *a1, void *a2, void *a3, void *a4, void *a5);cd examples/android-kernel-inline-interpose
neverc makeChange KERNEL to 515, 601, 606, 612, or 618 for other kernel versions.
neverc make runOr manually:
adb push nvk_interpose_demo.ko /data/local/tests/
adb shell su -c 'insmod /data/local/tests/nvk_interpose_demo.ko'
adb shell su -c 'dmesg | grep neverc_krt_interpose_demo'neverc make rmmod