*
* This can break several things because, usually, if
* select() says that the socket is writable, it is
* assumed that send() won't fail. To avoid this, we
* return 0 instead of -1 for this special case.
*
* This can break several things because, usually, if
* select() says that the socket is writable, it is
* assumed that send() won't fail. To avoid this, we
* return 0 instead of -1 for this special case.