Currently if probe port is asked to probe for a specific version, and
that version is not supported, it will probe other versions too.
This means that if mountd is run with "--no-nfs-version 3",
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.
continue;
p_prot = protos;
}
- if (vers == pmap->pm_vers) {
- p_vers = versions;
- vers = 0;
- }
if (vers || !*++p_vers)
break;
}