public inbox for linux-nfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/2] nfs-utils: signed filehandle support
@ 2026-01-21 20:37 Benjamin Coddington
  2026-01-21 20:37 ` [PATCH v2 1/2] exportfs: Add support for export option sign_fh Benjamin Coddington
  2026-01-21 20:37 ` [PATCH v2 2/2] nfsdctl/rpc.nfsd: Add support for passing encrypted filehandle key Benjamin Coddington
  0 siblings, 2 replies; 4+ messages in thread
From: Benjamin Coddington @ 2026-01-21 20:37 UTC (permalink / raw)
  To: Steve Dickson, Benjamin Coddington
  Cc: linux-nfs, Chuck Lever, NeilBrown, Jeff Layton

Here are two patches allowing userspace to set a secret key for kNFSD to
sign filehandles, and also set the option to sign filehandles for an
export.

The secret key passed to the server is the first 128 bits of a sha1 hash of
the contents of a file configured via the nfs.conf server section
"fh_key_file".  Exports that have the option "sign_fh" set will cause the
server to use this key to append an 8-byte siphash of the filehandle onto
each filehandle.

This version of the userspace patches correspond with the v2 of the kernel
changes which have been posted here:
https://lore.kernel.org/linux-nfs/cover.1769026777.git.bcodding@hammerspace.com

This work is based on a branch that includes Jeff Layton's patch for
min-threads:
https://lore.kernel.org/linux-nfs/20260112-minthreads-v1-1-30c5f4113720@kernel.org/

Comments and critique welcomed.

Changes since v1:
	- fh_key hash is passed as an optional attr to threads verb
	- include missing hash_fh_key_file() function hunk
	- wording updates (thanks NeilBrown)

Benjamin Coddington (2):
  exportfs: Add support for export option sign_fh
  nfsdctl/rpc.nfsd: Add support for passing encrypted filehandle key

 configure.ac                 |  4 +-
 nfs.conf                     |  1 +
 support/include/nfs/export.h |  2 +-
 support/include/nfslib.h     |  2 +
 support/nfs/Makefile.am      |  4 +-
 support/nfs/exports.c        |  4 ++
 support/nfs/fh_key_file.c    | 80 ++++++++++++++++++++++++++++++++++++
 systemd/nfs.conf.man         |  1 +
 utils/exportfs/exportfs.c    |  2 +
 utils/exportfs/exports.man   |  9 ++++
 utils/nfsd/nfsd.c            | 16 +++++++-
 utils/nfsd/nfssvc.c          | 26 ++++++++++++
 utils/nfsd/nfssvc.h          |  1 +
 utils/nfsdctl/nfsd_netlink.h |  2 +
 utils/nfsdctl/nfsdctl.c      | 35 ++++++++++++++--
 15 files changed, 179 insertions(+), 10 deletions(-)
 create mode 100644 support/nfs/fh_key_file.c


base-commit: 612e407c46b848932c32be00b835a7b5317e3d08
prerequisite-patch-id: cc4d768b1f6935b3c94ae87bd0389270717bc5b0
-- 
2.50.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-01-22 14:13 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-21 20:37 [PATCH v2 0/2] nfs-utils: signed filehandle support Benjamin Coddington
2026-01-21 20:37 ` [PATCH v2 1/2] exportfs: Add support for export option sign_fh Benjamin Coddington
2026-01-22 14:13   ` Jeff Layton
2026-01-21 20:37 ` [PATCH v2 2/2] nfsdctl/rpc.nfsd: Add support for passing encrypted filehandle key Benjamin Coddington

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox