[PATCH RFC 3/3] mount: Remove NFS v2 support from mount.nfs

Steve Dickson
2021-11-29T19:29:39Z

This patch removes the ability to do NFS v2
mounts. They will now fail with EOPNOTSUPP.

Signed-off-by: Steve Dickson <steved@redhat.com>
---
utils/mount/configfile.c | 2 +-
utils/mount/network.c | 4 ++--
utils/mount/nfsmount.conf | 2 +-
utils/mount/stropts.c | 3 +++
4 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/utils/mount/configfile.c b/utils/mount/configfile.c
index 3d3684ef..1d88cbfc 100644
--- a/utils/mount/configfile.c
+++ b/utils/mount/configfile.c
@@ -71,7 +71,7 @@ struct mnt_alias {
int mnt_alias_sz = (sizeof(mnt_alias_tab)/sizeof(mnt_alias_tab[0]));

static const char *version_keys[] = {
- "v2", "v3", "v4", "vers", "nfsvers", "minorversion", NULL
+ "v3", "v4", "vers", "nfsvers", "minorversion", NULL
};

static int strict;
diff --git a/utils/mount/network.c b/utils/mount/network.c
index 35261171..bfda5c41 100644
--- a/utils/mount/network.c
+++ b/utils/mount/network.c
@@ -97,7 +97,7 @@ static const char *nfs_transport_opttbl[] = {
};

static const char *nfs_version_opttbl[] = {
- "v2",
+ "v2", /* no longer supported */
"v3",
"v4",
"vers",
@@ -1286,7 +1286,7 @@ nfs_nfs_version(char *type, struct mount_options *options, struct nfs_version *v
else if (found < 0)
return 1;
else if (found <= 2 ) {
- /* v2, v3, v4 */
+ /* v3, v4 */
version_val = version_key + 1;
version->v_mode = V_SPECIFIC;
} else if (found > 2 ) {
diff --git a/utils/mount/nfsmount.conf b/utils/mount/nfsmount.conf
index 6bdc225a..342063f7 100644
--- a/utils/mount/nfsmount.conf
+++ b/utils/mount/nfsmount.conf
@@ -28,7 +28,7 @@
# This statically named section defines global mount
# options that can be applied on all NFS mount.
#
-# Protocol Version [2,3,4]
+# Protocol Version [3,4]
# This defines the default protocol version which will
# be used to start the negotiation with the server.
# Defaultvers=4
diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c
index fa67a66f..f6f0c1d5 100644
--- a/utils/mount/stropts.c
+++ b/utils/mount/stropts.c
@@ -357,6 +357,7 @@ static int nfs_insert_sloppy_option(struct mount_options *options)

static int nfs_set_version(struct nfsmount_info *mi)
{
+
if (!nfs_nfs_version(mi->type, mi->options, &mi->version))
return 0;

@@ -1017,6 +1018,8 @@ static int nfs_try_mount(struct nfsmount_info *mi)

switch (mi->version.major) {
case 2:
+ errno = EOPNOTSUPP;
+ break;
case 3:
result = nfs_try_mount_v3v2(mi, FALSE);
break;
--
2.31.1