File: buffer_getline_sa.3

package info (click to toggle)
libowfat 0.27-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 3,412 kB
  • ctags: 1,147
  • sloc: ansic: 12,294; makefile: 42
file content (27 lines) | stat: -rw-r--r-- 1,005 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
.TH buffer_getline_sa 3
.SH NAME
buffer_getline_sa \- read line from buffer
.SH SYNTAX
.nf
.B #include <stralloc.h>
.B #include <buffer.h>

int \fBbuffer_getline_sa\fP(buffer* \fIb\fR,stralloc* \fIsa\fR);
.SH DESCRIPTION
buffer_getline_sa appends data from the \fIb\fR to \fIsa\fR until a '\\n'
is found, NOT overwriting the previous content of \fIsa\fR.  The new-line
is also appended to \fIsa\fR.

If reading from the buffer or allocating memory fails,
buffer_getline_sa returns -1 and sets \fIerrno\fR appropriately.  At
that point \fIsa\fR may be empty or it may already contain a partial
token.
.SH "RETURN VALUE"
-1 on error (setting errno), 0 on EOF, 1 when successful.
.SH RATIONALE
buffer_getline_sa appends instead of overwriting so it can be used on
non-blocking sockets (these signal error and set \fIerrno\fR to EAGAIN;
in this case you can simply call buffer_getline_sa again when
\fBselect\fR or \fBpoll\fR indicate more data is available).
.SH "SEE ALSO"
buffer_get_token_sa(3), buffer(3)