]> www.infradead.org Git - users/hch/misc.git/commitdiff
nfsd: fix access checking for NLM under XPRTSEC policies
authorOlga Kornievskaia <okorniev@redhat.com>
Sat, 22 Mar 2025 00:13:04 +0000 (20:13 -0400)
committerChuck Lever <chuck.lever@oracle.com>
Sun, 11 May 2025 23:48:25 +0000 (19:48 -0400)
When an export policy with xprtsec policy is set with "tls"
and/or "mtls", but an NFS client is doing a v3 xprtsec=tls
mount, then NLM locking calls fail with an error because
there is currently no support for NLM with TLS.

Until such support is added, allow NLM calls under TLS-secured
policy.

Fixes: 4cc9b9f2bf4d ("nfsd: refine and rename NFSD_MAY_LOCK")
Cc: stable@vger.kernel.org
Signed-off-by: Olga Kornievskaia <okorniev@redhat.com>
Reviewed-by: NeilBrown <neil@brown.name>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
fs/nfsd/export.c

index 0363720280d4cb298f55f22f693ba497181c2fda..88ae410b411333531328c8f6dbce4a94f9998506 100644 (file)
@@ -1124,7 +1124,8 @@ __be32 check_nfsd_access(struct svc_export *exp, struct svc_rqst *rqstp,
                    test_bit(XPT_PEER_AUTH, &xprt->xpt_flags))
                        goto ok;
        }
-       goto denied;
+       if (!may_bypass_gss)
+               goto denied;
 
 ok:
        /* legacy gss-only clients are always OK: */