HomeFreeBSD

Don't call xdrrec_skiprecord in the non-blocking case. If
rS177737Unpublished

Unpublished Commit ยท Learn More

No further details are available.

Description

Don't call xdrrec_skiprecord in the non-blocking case. If
__xdrrec_getrec has returned TRUE, then we have a complete request in
the buffer - calling xdrrec_skiprecord is not necessary. In particular,
if there is another record already buffered on the stream,
xdrrec_skiprecord will discard both this request and the next
one, causing the call to xdr_callmsg to fail and the stream to be
closed.

Sponsored by: Isilon Systems

Details

Provenance
dfrAuthored on
Parents
rS177736: Don't assume that there is readable data on the stream after the
Branches
Unknown
Tags
Unknown

Event Timeline