Hello,
On 3/22/24 6:36 AM, Chen Hanxiao wrote:
namlen is not a valid option for NFSv4.
Currently, we could pass a namlen=xxx in a NFSv4 mount,
the mount command succeed and namlen is ignored silently
I'm not sure it makes senses to fail a mount for
a parameter that is ignored. Maybe throw a warning
that the par is being ignored...
What problem did this patch solve for you?
steved.
# mount -o vers=4,namlen=100 192.168.122.19:/nfsroot /mnt/ -vvv
mount.nfs: timeout set for Fri Mar 22 14:22:18 2024
mount.nfs: trying text-based options 'namlen=100,vers=4.2,
addr=192.168.122.19,clientaddr=192.168.122.15'
This patch reject "namlen=" option in a NFSv4 mount.
Signed-off-by: Chen Hanxiao <chenhx.fnst@xxxxxxxxxxx>
---
utils/mount/stropts.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c
index dbdd11e7..028ff6a6 100644
--- a/utils/mount/stropts.c
+++ b/utils/mount/stropts.c
@@ -780,6 +780,15 @@ static int nfs_do_mount_v4(struct nfsmount_info *mi,
goto out_fail;
}
+ if (po_contains(options, "namlen")) {
+ if (verbose) {
+ printf(_("%s: Unsupported nfs4 mount option(s) passed '%s'\n"),
+ progname, *mi->extra_opts);
+ }
+ errno = EINVAL;
+ goto out_fail;
+ }
+
if (mi->version.v_mode != V_SPECIFIC) {
char *fmt;
switch (mi->version.minor) {