Procházet zdrojové kódy

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

Brian Gianforcaro před 4 roky
rodič
revize
d934e77522
1 změnil soubory, kde provedl 1 přidání a 1 odebrání
  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;
     Vector<gid_t> gids;
     gids.resize(count);
     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;
         return -EFAULT;
 
 
     HashTable<gid_t> unique_extra_gids;
     HashTable<gid_t> unique_extra_gids;