summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Kling <awesomekling@gmail.com>2020-01-11 13:03:44 +0100
committerAndreas Kling <awesomekling@gmail.com>2020-01-11 13:03:44 +0100
commit83f59419cd8a0e988b73cca11cee6be6253f5625 (patch)
treef5c95f364c01e0a978a74dfd7365944ffa175f77
parenteede6cfd06d355c5627725075bad52cac6cb3307 (diff)
downloadserenity-83f59419cd8a0e988b73cca11cee6be6253f5625.zip
Kernel: Oops, recvfrom() is not quite ready for SMAP protections yet
-rw-r--r--Kernel/Process.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/Kernel/Process.cpp b/Kernel/Process.cpp
index cf6e0c2d86..efb3c39e33 100644
--- a/Kernel/Process.cpp
+++ b/Kernel/Process.cpp
@@ -2936,6 +2936,7 @@ ssize_t Process::sys$recvfrom(const Syscall::SC_recvfrom_params* user_params)
sockaddr* addr = params.addr;
socklen_t* addr_length = params.addr_length;
+ SmapDisabler disabler;
if (!validate(params.buffer))
return -EFAULT;
if (addr_length) {
@@ -2957,7 +2958,6 @@ ssize_t Process::sys$recvfrom(const Syscall::SC_recvfrom_params* user_params)
if (flags & MSG_DONTWAIT)
description->set_blocking(false);
- SmapDisabler disabler;
auto nrecv = socket.recvfrom(*description, params.buffer.data, params.buffer.size, flags, addr, addr_length);
if (flags & MSG_DONTWAIT)
description->set_blocking(original_blocking);