* \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
* \param fd The file descriptor to receive from.
* \param pattern The expected pattern.
* \param bufsize The size of the internal buffer.
* \param fd The file descriptor to receive from.
* \param pattern The expected pattern.
* \param bufsize The size of the internal buffer.
*
* This function tries to read at most \a bufsize bytes from the non-blocking
* file descriptor \a fd. If at least \p strlen(\a pattern) bytes have been
*
* This function tries to read at most \a bufsize bytes from the non-blocking
* file descriptor \a fd. If at least \p strlen(\a pattern) bytes have been