diff options
| author | Chuck Lever <cel@kernel.org> | 2026-10-06 11:31:14 -0400 |
|---|---|---|
| committer | Anna Schumaker <anna.schumaker@hammerspace.com> | 2026-10-12 16:28:07 -0400 |
| commit | 7856eb255ef9ea70a3a4f5764c8f1fcdb72b0896 (patch) | |
| tree | d637b497c323654c27db171924214f972417f219 /include/linux/sunrpc | |
| parent | d8884f64c93d1b96b3c7f596c8c41c5e5e3e832a (diff) | |
| download | linux-next-7856eb255ef9ea70a3a4f5764c8f1fcdb72b0896.tar.gz linux-next-7856eb255ef9ea70a3a4f5764c8f1fcdb72b0896.zip | |
SUNRPC: pass a keyring serial number to the TLS handshake
The handshake upcall links the keyring named in ta_keyring into
tlshd's process keyring before tlshd reads the client certificate and
private key. That link is how tlshd gains possession of keys that
grant no user read permission. xprtsock never fills the field, so an
x509 handshake can present only keys that tlshd's own credentials can
read.
Add a keyring serial number to struct xprtsec_parms and pass it to
the x509 handshake, so an RPC client can name the keyring that holds
its credentials.
Signed-off-by: Chuck Lever <cel@kernel.org>
Signed-off-by: Anna Schumaker <anna.schumaker@hammerspace.com>
Diffstat (limited to 'include/linux/sunrpc')
| -rw-r--r-- | include/linux/sunrpc/xprt.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/sunrpc/xprt.h b/include/linux/sunrpc/xprt.h index a82045804d34..005730623f3b 100644 --- a/include/linux/sunrpc/xprt.h +++ b/include/linux/sunrpc/xprt.h @@ -145,6 +145,7 @@ struct xprtsec_parms { enum xprtsec_policies policy; /* authentication material */ + key_serial_t keyring_serial; key_serial_t cert_serial; key_serial_t privkey_serial; }; |
