Date: Thu, 3 Aug 2006 15:31:52 +0000 (UTC) From: John Baldwin <jhb@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/netsmb smb_trantcp.c src/sys/netncp ncp_sock.c Message-ID: <200608031531.k73FVqGl039069@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jhb 2006-08-03 15:31:52 UTC
FreeBSD src repository
Modified files:
sys/netsmb smb_trantcp.c
sys/netncp ncp_sock.c
Log:
- 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200608031531.k73FVqGl039069>
