diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2010-02-18 06:41:11 -0500 |
---|---|---|
committer | Steve Dickson <steved@redhat.com> | 2010-02-18 06:41:11 -0500 |
commit | bc7736ea87166e99d6b4f57da84d26d007db8ae4 (patch) | |
tree | fdce8a4843d3797ccb03a5a0fc77b2911af0efc6 /utils | |
parent | 6d5ac3fa75024be569b458f4d9b6ce05be47f601 (diff) | |
download | nfs-utils-bc7736ea87166e99d6b4f57da84d26d007db8ae4.tar.gz nfs-utils-bc7736ea87166e99d6b4f57da84d26d007db8ae4.tar.xz nfs-utils-bc7736ea87166e99d6b4f57da84d26d007db8ae4.zip |
mount: Set protocol family properly for "udp" and "tcp"
In nfs_nfs_proto_family(), *family is never set if the legacy
"udp" or "tcp" mount options are specified. The result is an error
message at umount time, for example:
umount.nfs: DNS resolution failed for
2001:5c0:1101:2f00:250:8dff:fe95:5c61: ai_family not supported
even if mount was built with IPv6 support.
The man page says that "udp" is a synonym for "proto=udp", and
likewise for "tcp". Thus, we don't look at config_default_family
here, but always use AF_INET explicitly, to be consistent with the
meaning of proto=.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
Diffstat (limited to 'utils')
-rw-r--r-- | utils/mount/network.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/utils/mount/network.c b/utils/mount/network.c index f020933..8dc183a 100644 --- a/utils/mount/network.c +++ b/utils/mount/network.c @@ -1373,8 +1373,9 @@ int nfs_nfs_proto_family(struct mount_options *options, switch (po_rightmost(options, nfs_transport_opttbl)) { case 0: /* udp */ - return 1; case 1: /* tcp */ + /* for compatibility; these are always AF_INET */ + *family = AF_INET; return 1; case 2: /* proto */ option = po_get(options, "proto"); |