diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2009-07-14 16:24:11 -0400 |
---|---|---|
committer | Steve Dickson <steved@redhat.com> | 2009-07-14 16:24:11 -0400 |
commit | c7fa61e76f072d97a9bdb4a551aa2ba28e5818cc (patch) | |
tree | c6e4dbd2357cbbe5c71646be87b5929ad3f24aab /support/nfs/rpc_socket.c | |
parent | e188c214f487c9783ab3ae3e987d9a98b9298dfb (diff) | |
download | nfs-utils-c7fa61e76f072d97a9bdb4a551aa2ba28e5818cc.tar.gz nfs-utils-c7fa61e76f072d97a9bdb4a551aa2ba28e5818cc.tar.xz nfs-utils-c7fa61e76f072d97a9bdb4a551aa2ba28e5818cc.zip |
getport: Clear shared error fields before trying rpcbind queries
Some RPC errors set fields in rpc_createerr.cf_error in addition
to cf_stat. Be sure to clear _all_ error fields in rpc_createerr
each time through the rpcbind API.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
Diffstat (limited to 'support/nfs/rpc_socket.c')
-rw-r--r-- | support/nfs/rpc_socket.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/support/nfs/rpc_socket.c b/support/nfs/rpc_socket.c index ac4e6d8..a080487 100644 --- a/support/nfs/rpc_socket.c +++ b/support/nfs/rpc_socket.c @@ -443,6 +443,8 @@ CLIENT *nfs_get_rpcclient(const struct sockaddr *sap, struct sockaddr_in *sin = (struct sockaddr_in *)sap; struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)sap; + nfs_clear_rpc_createerr(); + switch (sap->sa_family) { case AF_LOCAL: return nfs_get_localclient(sap, salen, program, @@ -506,6 +508,8 @@ CLIENT *nfs_get_priv_rpcclient(const struct sockaddr *sap, struct sockaddr_in *sin = (struct sockaddr_in *)sap; struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)sap; + nfs_clear_rpc_createerr(); + switch (sap->sa_family) { case AF_LOCAL: return nfs_get_localclient(sap, salen, program, |