summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Dickson <steved@redhat.com>2017-06-19 11:19:55 -0400
committerSteve Dickson <steved@redhat.com>2017-06-21 12:15:11 -0400
commit90790d3129cf6f5fe095cf01e37d2d0a89d8dbec (patch)
treede3c1f35594104a22f55eba88588f806103ef156
parent62a4d95854e5cda4b772fa132cbd16c4429412c8 (diff)
downloadnfs-utils-90790d3129cf6f5fe095cf01e37d2d0a89d8dbec.tar.gz
nfs-utils-90790d3129cf6f5fe095cf01e37d2d0a89d8dbec.tar.xz
nfs-utils-90790d3129cf6f5fe095cf01e37d2d0a89d8dbec.zip
mount.nfs: Use default minor version when -o v4 is specified
When v4 is specified on the command line the default minor version needs to be used. Signed-off-by: Steve Dickson <steved@redhat.com>
-rw-r--r--utils/mount/stropts.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c
index fbea6fb..c2a739b 100644
--- a/utils/mount/stropts.c
+++ b/utils/mount/stropts.c
@@ -119,14 +119,22 @@ static void nfs_default_version(struct nfsmount_info *mi)
if (mi->version.v_mode == V_DEFAULT &&
config_default_vers.v_mode != V_DEFAULT) {
mi->version.major = config_default_vers.major;
- mi->version.minor = config_default_vers.minor;
+ if (config_default_vers.v_mode == V_SPECIFIC)
+ mi->version.minor = config_default_vers.minor;
+ else
+ mi->version.minor = NFS_DEFAULT_MINOR;
return;
}
if (mi->version.v_mode == V_GENERAL) {
if (config_default_vers.v_mode != V_DEFAULT &&
- mi->version.major == config_default_vers.major)
- mi->version.minor = config_default_vers.minor;
+ mi->version.major == config_default_vers.major) {
+ if (config_default_vers.v_mode == V_SPECIFIC)
+ mi->version.minor = config_default_vers.minor;
+ else
+ mi->version.minor = NFS_DEFAULT_MINOR;
+ } else
+ mi->version.minor = NFS_DEFAULT_MINOR;
return;
}
@@ -741,13 +749,9 @@ static int nfs_do_mount_v4(struct nfsmount_info *mi,
}
if (mi->version.v_mode != V_SPECIFIC) {
- if (mi->version.v_mode == V_GENERAL)
- snprintf(version_opt, sizeof(version_opt) - 1,
- "vers=%lu", mi->version.major);
- else
- snprintf(version_opt, sizeof(version_opt) - 1,
- "vers=%lu.%lu", mi->version.major,
- mi->version.minor);
+ snprintf(version_opt, sizeof(version_opt) - 1,
+ "vers=%lu.%lu", mi->version.major,
+ mi->version.minor);
if (po_append(options, version_opt) == PO_FAILED) {
errno = EINVAL;