2024-04-03 07:02:47

by Chen Hanxiao

[permalink] [raw]
Subject: [nfs-utils PATCH] mount: warning "namlen=" option for a NFSv4 mount

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

# 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 will remove "namlen=" option in a NFSv4 mount,
and give a warning message in verbose mode.

Signed-off-by: Chen Hanxiao <[email protected]>
---
utils/mount/stropts.c | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c
index dbdd11e7..a92c4200 100644
--- a/utils/mount/stropts.c
+++ b/utils/mount/stropts.c
@@ -780,6 +780,14 @@ static int nfs_do_mount_v4(struct nfsmount_info *mi,
goto out_fail;
}

+ if (po_contains(options, "namlen")) {
+ po_remove_all(options, "namlen");
+ if (verbose) {
+ printf(_("%s: Ignore unsupported nfs4 mount option 'namlen' in '%s'\n"),
+ progname, *mi->extra_opts);
+ }
+ }
+
if (mi->version.v_mode != V_SPECIFIC) {
char *fmt;
switch (mi->version.minor) {
--
2.39.1



2024-04-11 17:45:05

by Steve Dickson

[permalink] [raw]
Subject: Re: [nfs-utils PATCH] mount: warning "namlen=" option for a NFSv4 mount



On 4/3/24 3:02 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
>
> # 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 will remove "namlen=" option in a NFSv4 mount,
> and give a warning message in verbose mode.
>
> Signed-off-by: Chen Hanxiao <[email protected]>
Committed... (tag: nfs-utils-2-7-1-rc6

steved.
> ---
> utils/mount/stropts.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c
> index dbdd11e7..a92c4200 100644
> --- a/utils/mount/stropts.c
> +++ b/utils/mount/stropts.c
> @@ -780,6 +780,14 @@ static int nfs_do_mount_v4(struct nfsmount_info *mi,
> goto out_fail;
> }
>
> + if (po_contains(options, "namlen")) {
> + po_remove_all(options, "namlen");
> + if (verbose) {
> + printf(_("%s: Ignore unsupported nfs4 mount option 'namlen' in '%s'\n"),
> + progname, *mi->extra_opts);
> + }
> + }
> +
> if (mi->version.v_mode != V_SPECIFIC) {
> char *fmt;
> switch (mi->version.minor) {