in src/tcpstream.c [35:55]
int n_write(int fd, const char *buffer, size_t total)
{
register int rtn;
register size_t left = total;
while (left > 0) {
rtn = send(fd, buffer, left, 0);
if (rtn < 0) {
if (errno == EINTR || errno == EAGAIN)
return total - left;
else
return ERROR_NETWORK_WRITE;
}
else if (rtn == 0)
return ERROR_NETWORK_WRITE;
left -= rtn;
buffer += rtn;
}
return total;
}