Browse Source

Kernel: Use copy_n_from_user in sys$setkeymap

Brian Gianforcaro 4 years ago
parent
commit
1c0e2947d7
1 changed files with 5 additions and 5 deletions
  1. 5 5
      Kernel/Syscalls/keymap.cpp

+ 5 - 5
Kernel/Syscalls/keymap.cpp

@@ -44,15 +44,15 @@ int Process::sys$setkeymap(Userspace<const Syscall::SC_setkeymap_params*> user_p
 
     Keyboard::CharacterMapData character_map_data;
 
-    if (!copy_from_user(character_map_data.map, params.map, CHAR_MAP_SIZE * sizeof(u32)))
+    if (!copy_n_from_user(character_map_data.map, params.map, CHAR_MAP_SIZE))
         return -EFAULT;
-    if (!copy_from_user(character_map_data.shift_map, params.shift_map, CHAR_MAP_SIZE * sizeof(u32)))
+    if (!copy_n_from_user(character_map_data.shift_map, params.shift_map, CHAR_MAP_SIZE))
         return -EFAULT;
-    if (!copy_from_user(character_map_data.alt_map, params.alt_map, CHAR_MAP_SIZE * sizeof(u32)))
+    if (!copy_n_from_user(character_map_data.alt_map, params.alt_map, CHAR_MAP_SIZE))
         return -EFAULT;
-    if (!copy_from_user(character_map_data.altgr_map, params.altgr_map, CHAR_MAP_SIZE * sizeof(u32)))
+    if (!copy_n_from_user(character_map_data.altgr_map, params.altgr_map, CHAR_MAP_SIZE))
         return -EFAULT;
-    if (!copy_from_user(character_map_data.shift_altgr_map, params.shift_altgr_map, CHAR_MAP_SIZE * sizeof(u32)))
+    if (!copy_n_from_user(character_map_data.shift_altgr_map, params.shift_altgr_map, CHAR_MAP_SIZE))
         return -EFAULT;
 
     auto map_name = get_syscall_path_argument(params.map_name);