Add support for Kprobe, extend su_kps array to 6 elements to accommodate more hook functions

This commit is contained in:
ShirkNeko
2025-04-23 15:08:05 +08:00
parent dfaada7134
commit 527d362b85

View File

@@ -386,7 +386,7 @@ static void destroy_kprobe(struct kprobe **kp_ptr)
*kp_ptr = NULL;
}
static struct kprobe *su_kps[4];
static struct kprobe *su_kps[6];
#endif
// sucompat: permited process can execute 'su' to gain root access.
@@ -394,9 +394,11 @@ void ksu_sucompat_init()
{
#ifdef CONFIG_KSU_HOOK_KPROBES
su_kps[0] = init_kprobe(SYS_EXECVE_SYMBOL, execve_handler_pre);
su_kps[1] = init_kprobe(SYS_FACCESSAT_SYMBOL, faccessat_handler_pre);
su_kps[2] = init_kprobe(SYS_NEWFSTATAT_SYMBOL, newfstatat_handler_pre);
su_kps[3] = init_kprobe("pts_unix98_lookup", pts_unix98_lookup_pre);
su_kps[1] = init_kprobe(SYS_EXECVE_COMPAT_SYMBOL, execve_handler_pre);
su_kps[2] = init_kprobe(SYS_FACCESSAT_SYMBOL, faccessat_handler_pre);
su_kps[3] = init_kprobe(SYS_NEWFSTATAT_SYMBOL, newfstatat_handler_pre);
su_kps[4] = init_kprobe(SYS_FSTATAT64_SYMBOL, newfstatat_handler_pre);
su_kps[5] = init_kprobe("pts_unix98_lookup", pts_unix98_lookup_pre);
#else
ksu_faccessat_hook = true;
ksu_stat_hook = true;