From d7c101e2449f16bfe3923f9537553c222522c2be Mon Sep 17 00:00:00 2001 From: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com> Date: Fri, 7 Nov 2025 11:33:02 +0800 Subject: [PATCH] kernel: Fix compilation --- kernel/core_hook.c | 2 ++ kernel/sucompat.c | 12 ++++++------ kernel/throne_tracker.c | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/kernel/core_hook.c b/kernel/core_hook.c index 0b8f8398..22d24b37 100644 --- a/kernel/core_hook.c +++ b/kernel/core_hook.c @@ -44,6 +44,8 @@ #include "supercalls.h" #include "sucompat.h" #include "sulog.h" +#include "throne_tracker.h" +#include "throne_comm.h" #ifdef CONFIG_KSU_MANUAL_SU #include "manual_su.h" diff --git a/kernel/sucompat.c b/kernel/sucompat.c index 4052b898..2b500acc 100644 --- a/kernel/sucompat.c +++ b/kernel/sucompat.c @@ -220,12 +220,6 @@ int ksu_handle_stat(int *dfd, const char __user **filename_user, int *flags) return 0; } -int ksu_handle_execveat(int *fd, struct filename **filename_ptr, void *argv, - void *envp, int *flags) -{ - return ksu_handle_execveat_sucompat(fd, filename_ptr, argv, envp, flags); -} - // the call from execve_handler_pre won't provided correct value for __never_use_argument, use them after fix execve_handler_pre, keeping them for consistence for manually patched code int ksu_handle_execveat_sucompat(int *fd, struct filename **filename_ptr, void *__never_use_argv, void *__never_use_envp, @@ -274,6 +268,12 @@ int ksu_handle_execveat_sucompat(int *fd, struct filename **filename_ptr, return 0; } +int ksu_handle_execveat(int *fd, struct filename **filename_ptr, void *argv, + void *envp, int *flags) +{ + return ksu_handle_execveat_sucompat(fd, filename_ptr, argv, envp, flags); +} + int ksu_handle_execve_sucompat(int *fd, const char __user **filename_user, void *__never_use_argv, void *__never_use_envp, int *__never_use_flags) diff --git a/kernel/throne_tracker.c b/kernel/throne_tracker.c index 548c738f..19909016 100644 --- a/kernel/throne_tracker.c +++ b/kernel/throne_tracker.c @@ -14,6 +14,7 @@ #include "manager.h" #include "throne_tracker.h" #include "kernel_compat.h" +#include "apk_sign.h" #include "dynamic_manager.h" #include "throne_comm.h" @@ -234,7 +235,6 @@ struct my_dir_context { #define FILLDIR_ACTOR_CONTINUE 0 #define FILLDIR_ACTOR_STOP -EINVAL #endif -extern bool is_manager_apk(char *path); FILLDIR_RETURN_TYPE my_actor(struct dir_context *ctx, const char *name, int namelen, loff_t off, u64 ino, unsigned int d_type)