Blame SOURCES/autofs-5.0.7-only-probe-specific-nfs-version-when-requested.patch

4d476f
autofs-5.0.7 - only probe specific nfs version when requested
4d476f
4d476f
From: Ian Kent <raven@themaw.net>
4d476f
4d476f
If a specific NFS version is given as an option the set the probe flags
4d476f
to probe only that version.
4d476f
---
4d476f
 CHANGELOG           |    1 +
4d476f
 modules/mount_nfs.c |   10 +++++++++-
4d476f
 2 files changed, 10 insertions(+), 1 deletion(-)
4d476f
4d476f
--- autofs-5.0.7.orig/CHANGELOG
4d476f
+++ autofs-5.0.7/CHANGELOG
4d476f
@@ -63,6 +63,7 @@
4d476f
 - teach dumpmaps to output simple key value pairs.
4d476f
 - fix get_nfs_info() probe.
4d476f
 - fix portmap lookup.
4d476f
+- only probe specific nfs version if requested.
4d476f
 
4d476f
 25/07/2012 autofs-5.0.7
4d476f
 =======================
4d476f
--- autofs-5.0.7.orig/modules/mount_nfs.c
4d476f
+++ autofs-5.0.7/modules/mount_nfs.c
4d476f
@@ -146,7 +146,15 @@ int mount_mount(struct autofs_point *ap,
4d476f
 				if (strncmp("vers=4", cp, o_len) == 0 ||
4d476f
 				    strncmp("nfsvers=4", cp, o_len) == 0)
4d476f
 					vers = NFS4_VERS_MASK | TCP_SUPPORTED;
4d476f
-				else if (strstr(cp, "port=") == cp &&
4d476f
+				else if (strncmp("vers=3", cp, o_len) == 0 ||
4d476f
+					 strncmp("nfsvers=3", cp, o_len) == 0) {
4d476f
+					vers &= ~(NFS4_VERS_MASK | NFS_VERS_MASK);
4d476f
+					vers |= NFS3_REQUESTED;
4d476f
+				} else if (strncmp("vers=2", cp, o_len) == 0 ||
4d476f
+					 strncmp("nfsvers=2", cp, o_len) == 0) {
4d476f
+					vers &= ~(NFS4_VERS_MASK | NFS_VERS_MASK);
4d476f
+					vers |= NFS2_REQUESTED;
4d476f
+				} else if (strstr(cp, "port=") == cp &&
4d476f
 					 o_len - 5 < 25) {
4d476f
 					char optport[25];
4d476f