In Shutdown() pass an actual error code to notify(). B_OK is just

ignored. This fixes the hanging OpenSSH "multiplex" test. Save for the
"forwarding" test, which sometimes hangs due to a TCP bug, the complete
test suite passes, now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25284 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold
2008-05-02 01:13:53 +00:00
parent 0c615a01ae
commit 042be52922
@@ -687,12 +687,12 @@ UnixEndpoint::Shutdown(int direction)
// send select notifications
if (direction == SHUT_RD || direction == SHUT_RDWR) {
gSocketModule->notify(socket, B_SELECT_READ, B_OK);
gSocketModule->notify(fPeerEndpoint->socket, B_SELECT_WRITE, B_OK);
gSocketModule->notify(socket, B_SELECT_READ, EPIPE);
gSocketModule->notify(fPeerEndpoint->socket, B_SELECT_WRITE, EPIPE);
}
if (direction == SHUT_WR || direction == SHUT_RDWR) {
gSocketModule->notify(socket, B_SELECT_WRITE, B_OK);
gSocketModule->notify(fPeerEndpoint->socket, B_SELECT_READ, B_OK);
gSocketModule->notify(socket, B_SELECT_WRITE, EPIPE);
gSocketModule->notify(fPeerEndpoint->socket, B_SELECT_READ, EPIPE);
}
RETURN_ERROR(B_OK);