diff options
-rw-r--r-- | sbin/mount_nfs/mount_nfs.c | 8 | ||||
-rw-r--r-- | sys/nfsclient/nfs_vfsops.c | 12 |
2 files changed, 12 insertions, 8 deletions
diff --git a/sbin/mount_nfs/mount_nfs.c b/sbin/mount_nfs/mount_nfs.c index fdfecc44be87..47219430070c 100644 --- a/sbin/mount_nfs/mount_nfs.c +++ b/sbin/mount_nfs/mount_nfs.c @@ -584,25 +584,25 @@ fallback_mount(struct iovec *iov, int iovlen, int mntflags) } if (findopt(iov, iovlen, "acregmin", &opt, NULL) == 0) { ret = sscanf(opt, "%d", &args.acregmin); - if (ret != 1 || args.acregmin <= 0) { + if (ret != 1 || args.acregmin < 0) { errx(1, "illegal acregmin: %s", opt); } } if (findopt(iov, iovlen, "acregmax", &opt, NULL) == 0) { ret = sscanf(opt, "%d", &args.acregmax); - if (ret != 1 || args.acregmax <= 0) { + if (ret != 1 || args.acregmax < 0) { errx(1, "illegal acregmax: %s", opt); } } if (findopt(iov, iovlen, "acdirmin", &opt, NULL) == 0) { ret = sscanf(opt, "%d", &args.acdirmin); - if (ret != 1 || args.acdirmin <= 0) { + if (ret != 1 || args.acdirmin < 0) { errx(1, "illegal acdirmin: %s", opt); } } if (findopt(iov, iovlen, "acdirmax", &opt, NULL) == 0) { ret = sscanf(opt, "%d", &args.acdirmax); - if (ret != 1 || args.acdirmax <= 0) { + if (ret != 1 || args.acdirmax < 0) { errx(1, "illegal acdirmax: %s", opt); } } diff --git a/sys/nfsclient/nfs_vfsops.c b/sys/nfsclient/nfs_vfsops.c index 00332f0c4183..9118d302e39a 100644 --- a/sys/nfsclient/nfs_vfsops.c +++ b/sys/nfsclient/nfs_vfsops.c @@ -976,39 +976,43 @@ nfs_mount(struct mount *mp, struct thread *td) } if (vfs_getopt(mp->mnt_optnew, "acregmin", (void **)&opt, NULL) == 0) { ret = sscanf(opt, "%d", &args.acregmin); - if (ret != 1 || args.acregmin <= 0) { + if (ret != 1 || args.acregmin < 0) { vfs_mount_error(mp, "illegal acregmin: %s", opt); error = EINVAL; goto out; } + args.flags |= NFSMNT_ACREGMIN; } if (vfs_getopt(mp->mnt_optnew, "acregmax", (void **)&opt, NULL) == 0) { ret = sscanf(opt, "%d", &args.acregmax); - if (ret != 1 || args.acregmax <= 0) { + if (ret != 1 || args.acregmax < 0) { vfs_mount_error(mp, "illegal acregmax: %s", opt); error = EINVAL; goto out; } + args.flags |= NFSMNT_ACREGMAX; } if (vfs_getopt(mp->mnt_optnew, "acdirmin", (void **)&opt, NULL) == 0) { ret = sscanf(opt, "%d", &args.acdirmin); - if (ret != 1 || args.acdirmin <= 0) { + if (ret != 1 || args.acdirmin < 0) { vfs_mount_error(mp, "illegal acdirmin: %s", opt); error = EINVAL; goto out; } + args.flags |= NFSMNT_ACDIRMIN; } if (vfs_getopt(mp->mnt_optnew, "acdirmax", (void **)&opt, NULL) == 0) { ret = sscanf(opt, "%d", &args.acdirmax); - if (ret != 1 || args.acdirmax <= 0) { + if (ret != 1 || args.acdirmax < 0) { vfs_mount_error(mp, "illegal acdirmax: %s", opt); error = EINVAL; goto out; } + args.flags |= NFSMNT_ACDIRMAX; } if (vfs_getopt(mp->mnt_optnew, "deadthresh", (void **)&opt, NULL) == 0) { ret = sscanf(opt, "%d", &args.deadthresh); |