* \param fd The file descriptor.
* \param buf the buffer to write.
* \param len the number of bytes of \a buf.
* \param fd The file descriptor.
* \param buf the buffer to write.
* \param len the number of bytes of \a buf.
*
* EAGAIN is not considered an error condition. For example CCID3 has a
* sending wait queue which fills up and is emptied asynchronously. The EAGAIN
*
* EAGAIN is not considered an error condition. For example CCID3 has a
* sending wait queue which fills up and is emptied asynchronously. The EAGAIN
-int write_nonblock(int fd, const char *buf, size_t len,
- size_t max_bytes_per_write)
+int write_nonblock(int fd, const char *buf, size_t len)
ret = write(fd, buf + written, num);
if (ret < 0 && errno == EAGAIN)
return written;
ret = write(fd, buf + written, num);
if (ret < 0 && errno == EAGAIN)
return written;
* In any case, \a num_bytes contains the number of bytes that have been
* successfully read from \a fd (zero if the first readv() call failed with
* EAGAIN). Note that even if the function returns negative, some data might
* In any case, \a num_bytes contains the number of bytes that have been
* successfully read from \a fd (zero if the first readv() call failed with
* EAGAIN). Note that even if the function returns negative, some data might