Преглед на файлове

Kernel: Use try_copy_kstring_from_user() in IPv4Socket::ioctl()

Andreas Kling преди 4 години
родител
ревизия
b96ad76cba
променени са 1 файла, в които са добавени 4 реда и са изтрити 4 реда
  1. 4 4
      Kernel/Net/IPv4Socket.cpp

+ 4 - 4
Kernel/Net/IPv4Socket.cpp

@@ -589,11 +589,11 @@ KResult IPv4Socket::ioctl(FileDescription&, unsigned request, Userspace<void*> a
         if (!copy_from_user(&route, user_route))
         if (!copy_from_user(&route, user_route))
             return EFAULT;
             return EFAULT;
 
 
-        auto copied_ifname = copy_string_from_user(route.rt_dev, IFNAMSIZ);
-        if (copied_ifname.is_null())
-            return EFAULT;
+        auto ifname_or_error = try_copy_kstring_from_user(route.rt_dev, IFNAMSIZ);
+        if (ifname_or_error.is_error())
+            return ifname_or_error.error();
 
 
-        auto adapter = NetworkingManagement::the().lookup_by_name(copied_ifname);
+        auto adapter = NetworkingManagement::the().lookup_by_name(ifname_or_error.value()->view());
         if (!adapter)
         if (!adapter)
             return ENODEV;
             return ENODEV;