The
function reads a line from a file, and returns it
in a NUL-terminated buffer allocated with
malloc(3).
The
function performs a certain amount of processing
on the data it reads.
Comments (introduced by a hash sign) are stripped, as is leading and
trailing whitespace.
Any amount of linear whitespace is collapsed to a single space.
Blank lines are ignored.
If a line ends in a backslash, the backslash is stripped and the next
line is appended.
If
Fa lineno
is not
NULL
the integer variable it points to is
incremented every time a newline character is read.
If
Fa lenp
is not
NULL
the length of the line (not including the
terminating NUL character) is stored in the variable it points to.
The caller is responsible for releasing the returned buffer by passing
it to
free(3).
The
function and this manual page were developed for the
Fx Project by ThinkSec AS and Network Associates Laboratories, the
Security Research Division of Network Associates, Inc. under
DARPA/SPAWAR contract N66001-01-C-8035
(``CBOSS''
)
as part of the DARPA CHATS research program.