[PATCH RFC 00/12] client-side RPC-with-TLS
From: Chuck Lever <cel@kernel.org>
Date: 2023-05-16 19:39:47
Now that TLS handshake support is available in the kernel, let's
have a look at what is needed to support NFS in-transit confiden-
tiality in the Linux NFS client.
These apply to v6.4-rc2 (actually, net-next to be precise), but
previously they've been tested at multiple NFS bake-a-thon events.
---
Chuck Lever (12):
NFS: Improvements for fs_context-related tracepoints
SUNRPC: Plumb an API for setting transport layer security
SUNRPC: Trace the rpc_create_args
SUNRPC: Refactor rpc_call_null_helper()
SUNRPC: Add RPC client support for the RPC_AUTH_TLS auth flavor
SUNRPC: Ignore data_ready callbacks during TLS handshakes
SUNRPC: Capture CMSG metadata on client-side receive
SUNRPC: Add a connect worker function for TLS
SUNRPC: Add RPC-with-TLS support to xprtsock.c
SUNRPC: Add RPC-with-TLS tracepoints
NFS: Have struct nfs_client carry a TLS policy field
NFS: Add an "xprtsec=" NFS mount option
fs/nfs/client.c | 7 +
fs/nfs/fs_context.c | 55 +++++
fs/nfs/internal.h | 2 +
fs/nfs/nfs3client.c | 1 +
fs/nfs/nfs4client.c | 18 +-
fs/nfs/super.c | 12 ++
include/linux/nfs_fs_sb.h | 3 +-
include/linux/sunrpc/auth.h | 1 +
include/linux/sunrpc/clnt.h | 2 +
include/linux/sunrpc/xprt.h | 17 ++
include/linux/sunrpc/xprtsock.h | 3 +
include/trace/events/sunrpc.h | 96 ++++++++-
net/sunrpc/Makefile | 2 +-
net/sunrpc/auth.c | 2 +-
net/sunrpc/auth_tls.c | 120 +++++++++++
net/sunrpc/clnt.c | 22 +-
net/sunrpc/xprtsock.c | 343 +++++++++++++++++++++++++++++++-
17 files changed, 677 insertions(+), 29 deletions(-)
create mode 100644 net/sunrpc/auth_tls.c
--
Chuck Lever