buffer_getline_sa man page

buffer_getline_sa — read line from buffer

Syntax

#include <stralloc.h>
#include <buffer.h>

int buffer_getline_sa(buffer* b,stralloc* sa);

Description

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

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

Return Value

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

Rationale

buffer_getline_sa appends instead of overwriting so it can be used on non-blocking sockets (these signal error and set errno to EAGAIN; in this case you can simply call buffer_getline_sa again when select or poll indicate more data is available).

See Also

buffer_get_token_sa(3), buffer(3)

Referenced By

buffer_get_new_token_sa(3), buffer_get_new_token_sa_pred(3), buffer_get_token_sa(3), buffer_get_token_sa_pred(3).