buffer_getnewline_sa(3) read line from buffer


#include <stralloc.h>
#include <buffer.h>
int buffer_getnewline_sa(buffer* b,stralloc* sa);


buffer_getnewline_sa copies data from the b to sa until a '\n' is found, overwriting the previous content of sa. The new-line is also appended to sa.

If reading from the buffer or allocating memory fails, buffer_getnewline_sa returns -1 and sets errno appropriately. At that point sa may be empty or it may already contain a partial token.

To read from a non-blocking socket, use buffer_getline_sa.


-1 on error (setting errno), 0 on EOF, 1 when successful.