summaryrefslogtreecommitdiff
path: root/net/socket.c
diff options
context:
space:
mode:
authorBreno Leitao <leitao@debian.org>2023-10-16 16:47:40 +0300
committerJens Axboe <axboe@kernel.dk>2023-10-19 23:05:37 +0300
commit3f31e0d14d44ad491a81b7c1f83f32fbc300a867 (patch)
treee69d7c1110eef9f75be5837577e5ba0df99cfd8a /net/socket.c
parenta615f67e1a426f35366b8398c11f31c148e7df48 (diff)
downloadlinux-3f31e0d14d44ad491a81b7c1f83f32fbc300a867.tar.xz
bpf: Add sockptr support for setsockopt
The whole network stack uses sockptr, and while it doesn't move to something more modern, let's use sockptr in setsockptr BPF hooks, so, it could be used by other callers. The main motivation for this change is to use it in the io_uring {g,s}etsockopt(), which will use a userspace pointer for *optval, but, a kernel value for optlen. Link: https://lore.kernel.org/all/ZSArfLaaGcfd8LH8@gmail.com/ Signed-off-by: Breno Leitao <leitao@debian.org> Acked-by: Martin KaFai Lau <martin.lau@kernel.org> Link: https://lore.kernel.org/r/20231016134750.1381153-3-leitao@debian.org Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'net/socket.c')
-rw-r--r--net/socket.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/socket.c b/net/socket.c
index 82cd6890a4f0..9a43f6e850c7 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -2288,7 +2288,7 @@ int __sys_setsockopt(int fd, int level, int optname, char __user *user_optval,
if (!in_compat_syscall())
err = BPF_CGROUP_RUN_PROG_SETSOCKOPT(sock->sk, &level, &optname,
- user_optval, &optlen,
+ optval, &optlen,
&kernel_optval);
if (err < 0)
goto out_put;