Re: [PATCH v2 1/7] net/handshake: Store the key serial number on completion
From: Simon Horman <horms@kernel.org>
Date: 2025-09-05 13:18:29
Also in:
linux-doc, linux-nfs, linux-nvme, lkml
On Fri, Sep 05, 2025 at 12:46:53PM +1000, alistair23@gmail.com wrote: ...
quoted hunk ↗ jump to hunk
diff --git a/net/handshake/tlshd.c b/net/handshake/tlshd.c
...
quoted hunk ↗ jump to hunk
@@ -83,6 +87,13 @@ static void tls_handshake_remote_peerids(struct tls_handshake_req *treq, if (i >= treq->th_num_peerids) break; } + + nla_for_each_attr(nla, head, len, rem) { + if (nla_type(nla) == HANDSHAKE_A_DONE_SESSION_ID) { + treq->user_session_id = nla_get_u32(nla);
Hi Alistair, This appears to be addressed by patch 5/7 of this series. But struct tls_handshake_req does not have a user_session_id member with (only) this patch applied on top of net-next. This breaks bisection and should be addressed: when each patch is applied in turn the resulting source tree should compile. ...
quoted hunk ↗ jump to hunk
diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c index e2c5e0e626f9..1d5829aecf45 100644 --- a/net/sunrpc/svcsock.c +++ b/net/sunrpc/svcsock.c@@ -450,7 +450,8 @@ static void svc_tcp_kill_temp_xprt(struct svc_xprt *xprt) * is present" flag on the xprt and let an upper layer enforce local * security policy. */
Please also add user_session_id to the kernel doc for this function (above). Flagged by W=1 builds and ./scripts/kernel-doc -none
quoted hunk ↗ jump to hunk
-static void svc_tcp_handshake_done(void *data, int status, key_serial_t peerid) +static void svc_tcp_handshake_done(void *data, int status, key_serial_t peerid, + key_serial_t user_session_id) { struct svc_xprt *xprt = data; struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt);diff --git a/net/sunrpc/xprtsock.c b/net/sunrpc/xprtsock.c index c5f7bbf5775f..3489c4693ff4 100644 --- a/net/sunrpc/xprtsock.c +++ b/net/sunrpc/xprtsock.c@@ -2591,7 +2591,8 @@ static int xs_tcp_tls_finish_connecting(struct rpc_xprt *lower_xprt, * @peerid: serial number of key containing the remote's identity * */ -static void xs_tls_handshake_done(void *data, int status, key_serial_t peerid) +static void xs_tls_handshake_done(void *data, int status, key_serial_t peerid, + key_serial_t user_session_id)
Ditto.
{
struct rpc_xprt *lower_xprt = data;
struct sock_xprt *lower_transport =
--
2.50.1