summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authordfr <dfr@FreeBSD.org>2008-09-15 14:02:49 +0000
committerdfr <dfr@FreeBSD.org>2008-09-15 14:02:49 +0000
commit992112e8aae569900b58bbed8aca40e7692250c3 (patch)
tree93af1fbd38cdafd89a912f29b517f8bb7dd2038f /lib
parente0f67daaea9a4bd084a159ca52bce34fb0119a84 (diff)
downloadFreeBSD-src-992112e8aae569900b58bbed8aca40e7692250c3.zip
FreeBSD-src-992112e8aae569900b58bbed8aca40e7692250c3.tar.gz
Fix async mode (required for ypbind in manycast mode).
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/rpc/clnt_dg.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/libc/rpc/clnt_dg.c b/lib/libc/rpc/clnt_dg.c
index 3014155..9c52e1e 100644
--- a/lib/libc/rpc/clnt_dg.c
+++ b/lib/libc/rpc/clnt_dg.c
@@ -383,6 +383,8 @@ clnt_dg_call(cl, proc, xargs, argsp, xresults, resultsp, utimeout)
kin_len = 1;
call_again:
+ if (cu->cu_async == TRUE && xargs == NULL)
+ goto get_reply;
/*
* the transaction is the first thing in the out buffer
* XXX Yes, and it's in network byte order, so we should to
@@ -393,8 +395,6 @@ call_again:
*(u_int32_t *)(void *)(cu->cu_outhdr) = htonl(xid);
call_again_same_xid:
xdrs = &(cu->cu_outxdrs);
- if (cu->cu_async == TRUE && xargs == NULL)
- goto get_reply;
xdrs->x_op = XDR_ENCODE;
XDR_SETPOS(xdrs, 0);
OpenPOWER on IntegriCloud