* all data could be written.
*
* \return Number of bytes written on success, negative error code else.
*/
int write_all(int fd, const char *buf, size_t len)
{
* all data could be written.
*
* \return Number of bytes written on success, negative error code else.
*/
int write_all(int fd, const char *buf, size_t len)
{
* If \a rfds is not \p NULL and the (non-blocking) file descriptor \a fd is
* not set in \a rfds, this function returns early without doing anything.
* Otherwise The function tries to read up to \a sz bytes from \a fd. As for
* If \a rfds is not \p NULL and the (non-blocking) file descriptor \a fd is
* not set in \a rfds, this function returns early without doing anything.
* Otherwise The function tries to read up to \a sz bytes from \a fd. As for
*/
int readv_nonblock(int fd, struct iovec *iov, int iovcnt, fd_set *rfds,
size_t *num_bytes)
*/
int readv_nonblock(int fd, struct iovec *iov, int iovcnt, fd_set *rfds,
size_t *num_bytes)