1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-02 23:12:08 +00:00

Kernel: Use copy_typed_from_user<T> for fetching syscall parameters

This commit is contained in:
Andreas Kling 2021-09-05 17:51:37 +02:00
parent d7e5768763
commit 789db813d3
24 changed files with 42 additions and 81 deletions

View file

@ -939,8 +939,7 @@ KResultOr<FlatPtr> Process::sys$execve(Userspace<const Syscall::SC_execve_params
// NOTE: Be extremely careful with allocating any kernel memory in exec().
// On success, the kernel stack will be lost.
Syscall::SC_execve_params params;
TRY(copy_from_user(&params, user_params));
auto params = TRY(copy_typed_from_user(user_params));
if (params.arguments.length > ARG_MAX || params.environment.length > ARG_MAX)
return E2BIG;