diff --git a/Kernel/StdLib.h b/Kernel/StdLib.h index 37eb932394..0b9c3f9158 100644 --- a/Kernel/StdLib.h +++ b/Kernel/StdLib.h @@ -167,3 +167,11 @@ template return EOVERFLOW; return copy_to_user(dest.unsafe_userspace_ptr(), src, size.value()); } + +template +inline KResultOr copy_typed_from_user(Userspace user_data) +{ + T data {}; + TRY(copy_from_user(&data, user_data)); + return data; +}