nfsd: new Kconfig option for legacy client tracking
authorJeff Layton <jlayton@kernel.org>
Fri, 13 Oct 2023 13:03:53 +0000 (09:03 -0400)
committerChuck Lever <chuck.lever@oracle.com>
Sun, 7 Jan 2024 22:54:24 +0000 (17:54 -0500)
commit74fd48739d0488e39ae18b0168720f449a06690c
treef7618f1ddd1b978efd3e3a0f9fd64f6451c397a3
parent0dd3ee31125508cd67f7e7172247f05b7fd1753a
nfsd: new Kconfig option for legacy client tracking

We've had a number of attempts at different NFSv4 client tracking
methods over the years, but now nfsdcld has emerged as the clear winner
since the others (recoverydir and the usermodehelper upcall) are
problematic.

As a case in point, the recoverydir backend uses MD5 hashes to encode
long form clientid strings, which means that nfsd repeatedly gets dinged
on FIPS audits, since MD5 isn't considered secure. Its use of MD5 is not
cryptographically significant, so there is no danger there, but allowing
us to compile that out allows us to sidestep the issue entirely.

As a prelude to eventually removing support for these client tracking
methods, add a new Kconfig option that enables them. Mark it deprecated
and make it default to N.

Acked-by: NeilBrown <neilb@suse.de>
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
fs/nfsd/Kconfig
fs/nfsd/nfs4recover.c
fs/nfsd/nfsctl.c