Blame SOURCES/nfs-utils-1.3.0-mount-v4arg-fix.patch

e19a30
diff -up nfs-utils-1.3.0/utils/mount/stropts.c.orig nfs-utils-1.3.0/utils/mount/stropts.c
e19a30
--- nfs-utils-1.3.0/utils/mount/stropts.c.orig	2016-12-18 10:59:32.526389233 -0500
e19a30
+++ nfs-utils-1.3.0/utils/mount/stropts.c	2016-12-18 11:02:17.564900647 -0500
e19a30
@@ -108,12 +108,6 @@ static void nfs_default_version(struct n
e19a30
 		return;
e19a30
 	}
e19a30
 
e19a30
-	if (mi->version.v_mode == V_GENERAL &&
e19a30
-		config_default_vers.v_mode == V_DEFAULT) {
e19a30
-		mi->version.v_mode = V_SPECIFIC;
e19a30
-		return;
e19a30
-	}
e19a30
-
e19a30
 	if (mi->version.v_mode == V_DEFAULT &&
e19a30
 		config_default_vers.v_mode != V_DEFAULT) {
e19a30
 		mi->version.major = config_default_vers.major;
e19a30
@@ -121,9 +115,9 @@ static void nfs_default_version(struct n
e19a30
 		return;
e19a30
 	}
e19a30
 
e19a30
-	if (mi->version.v_mode == V_GENERAL &&
e19a30
-		config_default_vers.v_mode != V_DEFAULT) {
e19a30
-		if (mi->version.major == config_default_vers.major)
e19a30
+	if (mi->version.v_mode == V_GENERAL) {
e19a30
+		if (config_default_vers.v_mode != V_DEFAULT &&
e19a30
+		    mi->version.major == config_default_vers.major)
e19a30
 			mi->version.minor = config_default_vers.minor;
e19a30
 		return;
e19a30
 	}
e19a30
@@ -751,8 +745,13 @@ static int nfs_do_mount_v4(struct nfsmou
e19a30
 	}
e19a30
 
e19a30
 	if (mi->version.v_mode != V_SPECIFIC) {
e19a30
-		snprintf(version_opt, sizeof(version_opt) - 1,
e19a30
-			"vers=%lu.%lu", mi->version.major, mi->version.minor);
e19a30
+		if (mi->version.v_mode == V_GENERAL)
e19a30
+			snprintf(version_opt, sizeof(version_opt) - 1,
e19a30
+				"vers=%lu", mi->version.major);
e19a30
+		else
e19a30
+			snprintf(version_opt, sizeof(version_opt) - 1,
e19a30
+				"vers=%lu.%lu", mi->version.major,
e19a30
+				mi->version.minor);
e19a30
 
e19a30
 		if (po_append(options, version_opt) == PO_FAILED) {
e19a30
 			errno = EINVAL;