Quellcode durchsuchen

Kernel: Use copy_n_from_user in sys$setgroups to check for overflow

Brian Gianforcaro vor 4 Jahren
Ursprung
Commit
d934e77522
1 geänderte Dateien mit 1 neuen und 1 gelöschten Zeilen
  1. 1 1
      Kernel/Syscalls/setuid.cpp

+ 1 - 1
Kernel/Syscalls/setuid.cpp

@@ -150,7 +150,7 @@ int Process::sys$setgroups(ssize_t count, Userspace<const gid_t*> user_gids)
 
     Vector<gid_t> gids;
     gids.resize(count);
-    if (!copy_from_user(gids.data(), user_gids.unsafe_userspace_ptr(), sizeof(gid_t) * count))
+    if (!copy_n_from_user(gids.data(), user_gids, count))
         return -EFAULT;
 
     HashTable<gid_t> unique_extra_gids;