NAME¶
buffer_flush - feed buffer to write function
SYNTAX¶
#include <buffer.h>
int
buffer_flush(buffer*
b);
DESCRIPTION¶
buffer_flush feeds a string
d[0],
d[1], ...,
d[
dlen-1] to the write operation by calling
op(
fd,
d,
dlen)
If
op successfully handles one or more bytes at the beginning of the
string, it must return the number of bytes handled; if this number is smaller
than
dlen, buffer_flush will call
op again with the rest of the
string. If
op does not handle any bytes, and does not encounter an
error, it must return 0, or return -1 with
errno set to EINTR; in
either case, buffer_flush will immediately call
op again. If
op
encounters an error, it must return -1 with errno set to something other than
EINTR; buffer_flush will pass the error to the caller.
On success, buffer_flush returns 0. On error, buffer_flush returns -1, setting
errno appropriately.
SEE ALSO¶
buffer_init(3)