diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | sunrpc/clnt_tcp.c | 6 | ||||
-rw-r--r-- | sunrpc/clnt_unix.c | 6 |
3 files changed, 9 insertions, 6 deletions
@@ -23,6 +23,9 @@ clnt_control for any protocol. This would make it impossible for the user to provide one in clnt_call(). Reported by Hitoshi Guutara Maruyama <maruyama@sh.rim.or.jp>. + * sunrpc/clnt_tcp.c (clnt_call): Don't use timeout in tests with zero, + use ct->ct_wait. + * sunrpc/clnt_unix.c (clnt_call): Likewise. 2000-10-31 Jes Sorensen <jes@linuxcare.com> diff --git a/sunrpc/clnt_tcp.c b/sunrpc/clnt_tcp.c index 9a35ec1..ad53d57 100644 --- a/sunrpc/clnt_tcp.c +++ b/sunrpc/clnt_tcp.c @@ -253,8 +253,8 @@ clnttcp_call (h, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout) } shipnow = - (xdr_results == (xdrproc_t) 0 && timeout.tv_sec == 0 - && timeout.tv_usec == 0) ? FALSE : TRUE; + (xdr_results == (xdrproc_t) 0 && ct->ct_wait.tv_sec == 0 + && ct->ct_wait.tv_usec == 0) ? FALSE : TRUE; call_again: xdrs->x_op = XDR_ENCODE; @@ -277,7 +277,7 @@ call_again: /* * Hack to provide rpc-based message passing */ - if (timeout.tv_sec == 0 && timeout.tv_usec == 0) + if (ct->ct_wait.tv_sec == 0 && ct->ct_wait.tv_usec == 0) { return ct->ct_error.re_status = RPC_TIMEDOUT; } diff --git a/sunrpc/clnt_unix.c b/sunrpc/clnt_unix.c index 211fcd6f..5280622 100644 --- a/sunrpc/clnt_unix.c +++ b/sunrpc/clnt_unix.c @@ -232,8 +232,8 @@ clntunix_call (h, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout) } shipnow = - (xdr_results == (xdrproc_t) 0 && timeout.tv_sec == 0 - && timeout.tv_usec == 0) ? FALSE : TRUE; + (xdr_results == (xdrproc_t) 0 && ct->ct_wait.tv_sec == 0 + && ct->ct_wait.tv_usec == 0) ? FALSE : TRUE; call_again: xdrs->x_op = XDR_ENCODE; @@ -256,7 +256,7 @@ call_again: /* * Hack to provide rpc-based message passing */ - if (timeout.tv_sec == 0 && timeout.tv_usec == 0) + if (ct->ct_wait.tv_sec == 0 && ct->ct_wait.tv_usec == 0) return ct->ct_error.re_status = RPC_TIMEDOUT; |