summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrank Hirtz <fhirtz@redhat.com>2012-10-23 11:38:20 -0400
committerSteve Dickson <steved@redhat.com>2012-10-23 11:38:20 -0400
commit86036582c001e99075f4d74cb3829df39f2a9ddf (patch)
treef5edaf8de61c7a037096a30f8b5aa0f428b77c9d
parente81d689a6a8605cfc3b90a62a357705e180f532c (diff)
downloadrpcbind-86036582c001e99075f4d74cb3829df39f2a9ddf.tar.gz
rpcbind is "swallowing" broadcast RPC repliesrpcbind-0_2_1-rc4
If xp_auth is NULL, the transport routines will not send the reply. This patch fixes that problem. Signed-off-by: Steve Dickson <steved@redhat.com>
-rw-r--r--src/rpcb_svc_com.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c
index 5bb9a44..f6bd6bd 100644
--- a/src/rpcb_svc_com.c
+++ b/src/rpcb_svc_com.c
@@ -1227,6 +1227,8 @@ send_svcsyserr(SVCXPRT *xprt, struct finfo *fi)
return;
}
+extern SVCAUTH svc_auth_none;
+
static void
handle_reply(int fd, SVCXPRT *xprt)
{
@@ -1293,7 +1295,10 @@ handle_reply(int fd, SVCXPRT *xprt)
a.rmt_localvers = fi->versnum;
xprt_set_caller(xprt, fi);
+ xprt->xp_auth = &svc_auth_none;
svc_sendreply(xprt, (xdrproc_t) xdr_rmtcall_result, (char *) &a);
+ SVCAUTH_DESTROY(xprt->xp_auth);
+ xprt->xp_auth = NULL;
done:
if (buffer)
free(buffer);