cvs commit: src/sys/netsmb smb_trantcp.c src/sys/netncp ncp_sock.c
jhb at FreeBSD.org
Thu Aug 3 15:31:54 UTC 2006
jhb 2006-08-03 15:31:52 UTC
FreeBSD src repository
- Fix ncp_poll() to not panic if the socket doesn't have any pending data.
We have to adjust curthread's state enough so that it appears to be
in a poll(2) or select(2) call so that selrecord() will work and then
teardown that state after calling sopoll().
- Fix some minor nits in nearby ncp_sock_rselect() and in the identical
nbssn_rselect() function in the netsmb code:
- Don't call nb_poll()/ncp_poll() now that ncp_poll() already fakes up
poll(2) state since the rselect() functions already do that. Just
invoke sopoll() directly.
- To make things slightly more intuitive, store the results of sopoll()
in a new 'revents' variable rather than 'error' since that's what
sopoll() actually returns.
- If the requested timeout time has been exceeded by the time we get
ready to block, then return EWOULDBLOCK rather than 0 to signal a
timeout as this is what the calling code expects.
Tested by: Eric Christeson <eric.j.christeson AT gmail> (1)
MFC after: 1 week
Revision Changes Path
1.17 +27 -7 src/sys/netncp/ncp_sock.c
1.24 +6 -10 src/sys/netsmb/smb_trantcp.c
More information about the cvs-src