iob_write(3) - Linux man page
Name
iob_write - send I/O batch through callbackSyntax
#include <iob.h>typedef int64 (*io_write_callback)(int64 s,const void* buf,uint64 n);
int64 iob_write(int64 s,io_batch* b,io_write_callback cb);
Description
This interface is intended to send an I/O batch through a filter, for example to encrypt or compress it. If you just want to send an I/O batch to a socket, use iob_send instead.
iob_write returns the number of bytes written, 0 if there were no more bytes to be written in the batch, -1 for EAGAIN, or -3 for a permanent error (for example "connection reset by peer").
The normal usage pattern is using io_wait to know when a descriptor is writable, and then calling iob_write until it returns 0, -1 or -3.
If it returns 0, terminate the loop (everything was written OK). If it returns -1, call io_wait again. If it returned -3, signal an error.