diff --git a/core/jni/core/daemon.c b/core/jni/core/daemon.c index 4101ac09c..03ac1ba31 100644 --- a/core/jni/core/daemon.c +++ b/core/jni/core/daemon.c @@ -27,8 +27,8 @@ static void *request_handler(void *args) { free(args); client_request req = read_int(client); - struct ucred credentials; - get_client_cred(client, &credentials); + struct ucred credential; + get_client_cred(client, &credential); switch (req) { case LAUNCH_MAGISKHIDE: @@ -39,7 +39,7 @@ static void *request_handler(void *args) { case POST_FS: case POST_FS_DATA: case LATE_START: - if (credentials.uid != 0) { + if (credential.uid != 0) { write_int(client, ROOT_REQUIRED); close(client); return NULL; @@ -65,7 +65,7 @@ static void *request_handler(void *args) { ls_hide_list(client); break; case SUPERUSER: - su_daemon_receiver(client); + su_daemon_receiver(client, &credential); break; case CHECK_VERSION: write_string(client, MAGISK_VER_STR); diff --git a/core/jni/include/daemon.h b/core/jni/include/daemon.h index 1e7217e50..13f324575 100644 --- a/core/jni/include/daemon.h +++ b/core/jni/include/daemon.h @@ -6,6 +6,7 @@ #include #include +#include extern int is_daemon_init, seperate_vendor; @@ -77,6 +78,6 @@ void ls_hide_list(int client); * Superuser * *************/ -void su_daemon_receiver(int client); +void su_daemon_receiver(int client, struct ucred *credential); #endif diff --git a/core/jni/su b/core/jni/su index 8b15e4225..d946e4cf8 160000 --- a/core/jni/su +++ b/core/jni/su @@ -1 +1 @@ -Subproject commit 8b15e42253091a28c33a5e5e827d7750576d54dd +Subproject commit d946e4cf8667e79327b06ca24bbaeae600681c5e