This means that if mountd is run with "--no-nfs-version 3",
authorSteve Dickson <steved@redhat.com>
Sat, 3 Nov 2007 13:35:05 +0000 (09:35 -0400)
committerSteve Dickson <steved@redhat.com>
Sat, 3 Nov 2007 13:35:05 +0000 (09:35 -0400)
It will first probe for NFS version 3, which will succeed (assuming the
kernel supported NFSv3), then it will check the matching mountd version (3)
and probe_port on discovering that isn't supported will try other versions,
find "1" is supported will succeed.

This leaves up using mount version 1 for an NFSv3 mount, which doesn't work
and leads to a SIGSEGV

There is no case where trying other versions is needed the request one is
not supported, so simply remove that code.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Steve Dickson <steved@redhat.com>
utils/mount/network.c

index 63d5f5a..2b09457 100644 (file)
@@ -417,10 +417,6 @@ static int probe_port(clnt_addr_t *server, const unsigned long *versions,
                                continue;
                        p_prot = protos;
                }
-               if (vers == pmap->pm_vers) {
-                       p_vers = versions;
-                       vers = 0;
-               }
                if (vers || !*++p_vers)
                        break;
        }