@@ -73,9 +73,9 @@ use crate::{
7373 caps:: { sys_capget, sys_capset} ,
7474 clone:: sys_clone,
7575 creds:: {
76- sys_getegid, sys_geteuid, sys_getgid, sys_getresgid , sys_getresuid , sys_getsid ,
77- sys_gettid, sys_getuid, sys_setfsgid, sys_setfsuid, sys_setgid, sys_setregid ,
78- sys_setresgid, sys_setresuid, sys_setreuid, sys_setsid, sys_setuid,
76+ sys_getegid, sys_geteuid, sys_getgid, sys_getgroups , sys_getresgid , sys_getresuid ,
77+ sys_getsid , sys_gettid, sys_getuid, sys_setfsgid, sys_setfsuid, sys_setgid,
78+ sys_setregid , sys_setresgid, sys_setresuid, sys_setreuid, sys_setsid, sys_setuid,
7979 } ,
8080 epoll:: { sys_epoll_create1, sys_epoll_ctl, sys_epoll_pwait} ,
8181 exec:: sys_execve,
@@ -620,6 +620,7 @@ pub async fn handle_syscall(mut ctx: ProcessCtx) {
620620 0x9b => sys_getpgid ( & ctx, arg1 as _ ) ,
621621 0x9c => sys_getsid ( & ctx) . await ,
622622 0x9d => sys_setsid ( & ctx) . await ,
623+ 0x9e => sys_getgroups ( & ctx, arg1 as _ , TUA :: from_value ( arg2 as _ ) ) . map_err ( |e| match e { } ) ,
623624 0xa0 => sys_uname ( TUA :: from_value ( arg1 as _ ) ) . await ,
624625 0xa1 => sys_sethostname ( & ctx, TUA :: from_value ( arg1 as _ ) , arg2 as _ ) . await ,
625626 0xa3 => Err ( KernelError :: InvalidValue ) ,
0 commit comments