Alexander Mikhalitsyn
7b26952a91
net: core: add getsockopt SO_PEERPIDFD
...
Add SO_PEERPIDFD which allows to get pidfd of peer socket holder pidfd.
This thing is direct analog of SO_PEERCRED which allows to get plain PID.
Cc: "David S. Miller" <davem@davemloft.net >
Cc: Eric Dumazet <edumazet@google.com >
Cc: Jakub Kicinski <kuba@kernel.org >
Cc: Paolo Abeni <pabeni@redhat.com >
Cc: Leon Romanovsky <leon@kernel.org >
Cc: David Ahern <dsahern@kernel.org >
Cc: Arnd Bergmann <arnd@arndb.de >
Cc: Kees Cook <keescook@chromium.org >
Cc: Christian Brauner <brauner@kernel.org >
Cc: Kuniyuki Iwashima <kuniyu@amazon.com >
Cc: Lennart Poettering <mzxreary@0pointer.de >
Cc: Luca Boccassi <bluca@debian.org >
Cc: Daniel Borkmann <daniel@iogearbox.net >
Cc: Stanislav Fomichev <sdf@google.com >
Cc: bpf@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: netdev@vger.kernel.org
Cc: linux-arch@vger.kernel.org
Reviewed-by: Christian Brauner <brauner@kernel.org >
Acked-by: Stanislav Fomichev <sdf@google.com >
Tested-by: Luca Boccassi <bluca@debian.org >
Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com >
Reviewed-by: Eric Dumazet <edumazet@google.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
2023-06-12 10:45:50 +01:00
Alexander Mikhalitsyn
5e2ff6704a
scm: add SO_PASSPIDFD and SCM_PIDFD
...
Implement SCM_PIDFD, a new type of CMSG type analogical to SCM_CREDENTIALS,
but it contains pidfd instead of plain pid, which allows programmers not
to care about PID reuse problem.
We mask SO_PASSPIDFD feature if CONFIG_UNIX is not builtin because
it depends on a pidfd_prepare() API which is not exported to the kernel
modules.
Idea comes from UAPI kernel group:
https://uapi-group.org/kernel-features/
Big thanks to Christian Brauner and Lennart Poettering for productive
discussions about this.
Cc: "David S. Miller" <davem@davemloft.net >
Cc: Eric Dumazet <edumazet@google.com >
Cc: Jakub Kicinski <kuba@kernel.org >
Cc: Paolo Abeni <pabeni@redhat.com >
Cc: Leon Romanovsky <leon@kernel.org >
Cc: David Ahern <dsahern@kernel.org >
Cc: Arnd Bergmann <arnd@arndb.de >
Cc: Kees Cook <keescook@chromium.org >
Cc: Christian Brauner <brauner@kernel.org >
Cc: Kuniyuki Iwashima <kuniyu@amazon.com >
Cc: Lennart Poettering <mzxreary@0pointer.de >
Cc: Luca Boccassi <bluca@debian.org >
Cc: linux-kernel@vger.kernel.org
Cc: netdev@vger.kernel.org
Cc: linux-arch@vger.kernel.org
Tested-by: Luca Boccassi <bluca@debian.org >
Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com >
Reviewed-by: Christian Brauner <brauner@kernel.org >
Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com >
Reviewed-by: Eric Dumazet <edumazet@google.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
2023-06-12 10:45:49 +01:00
Erin MacNeil
6fd1d51cfa
net: SO_RCVMARK socket option for SO_MARK with recvmsg()
...
Adding a new socket option, SO_RCVMARK, to indicate that SO_MARK
should be included in the ancillary data returned by recvmsg().
Renamed the sock_recv_ts_and_drops() function to sock_recv_cmsgs().
Signed-off-by: Erin MacNeil <lnx.erin@gmail.com >
Reviewed-by: Eric Dumazet <edumazet@google.com >
Reviewed-by: David Ahern <dsahern@kernel.org >
Acked-by: Marc Kleine-Budde <mkl@pengutronix.de >
Link: https://lore.kernel.org/r/20220427200259.2564-1-lnx.erin@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org >
2022-04-28 13:08:15 -07:00
Martin KaFai Lau
13a748ea6d
bpf: Sync asm-generic/socket.h to tools/
...
SO_DETACH_REUSEPORT_BPF is needed for the test in the next patch.
It is defined in the socket.h.
Signed-off-by: Martin KaFai Lau <kafai@fb.com >
Reviewed-by: Stanislav Fomichev <sdf@google.com >
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net >
2019-06-15 01:21:45 +02:00