diff options
author | Jeff Johnston <jjohnstn@redhat.com> | 2002-06-21 18:29:23 +0000 |
---|---|---|
committer | Jeff Johnston <jjohnstn@redhat.com> | 2002-06-21 18:29:23 +0000 |
commit | d427d09204c97df14607149e94a1da9beddd76ab (patch) | |
tree | 364e68aebab51cfb339ff2b0f21a1f97d22a131d /newlib/libc/stdio/getline.c | |
parent | 35728d4f142bbab0d8a963561d76b9066421b1ac (diff) | |
download | cygnal-d427d09204c97df14607149e94a1da9beddd76ab.tar.gz cygnal-d427d09204c97df14607149e94a1da9beddd76ab.tar.bz2 cygnal-d427d09204c97df14607149e94a1da9beddd76ab.zip |
2002-06-21 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/stdio.h (__getline, __getdelim): New prototypes.
* libc/include/time.h [HAVE_GETDATE](getdate, getdate_r): Ditto.
[HAVE_GETDATE](getdate_err): New error code.
* libc/stdio/Makefile.am: Add support for getline.c and getdelim.c.
* libc/stdio/Makefile.in: Regenerated.
* libc/stdio/getdelim.c: New file.
* libc/stdio/getline.c: Ditto.
* libc/sys/linux/Makefile.am: Add support for getdate.c, getdate_err.c
and ntp_gettime.c. Also add AM_CFLAGS to point to libc/stdio.
* libc/sys/linux/Makefile.in: Regenerated.
* libc/sys/linux/getdate.c: New file.
* libc/sys/linux/getdate_err.c: Ditto.
* libc/sys/linux/ntp_gettime.c: Ditto.
* libc/sys/linux/time.c (adjtimex, ntp_adjtime): New functions.
* libc/sys/linux/sys/stdio.h (getline, getdelim): New macros.
Diffstat (limited to 'newlib/libc/stdio/getline.c')
-rw-r--r-- | newlib/libc/stdio/getline.c | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/newlib/libc/stdio/getline.c b/newlib/libc/stdio/getline.c new file mode 100644 index 000000000..741a7dc77 --- /dev/null +++ b/newlib/libc/stdio/getline.c @@ -0,0 +1,54 @@ +/* +FUNCTION +<<getline>>---read a line from a file + +INDEX + getline + +ANSI_SYNOPSIS + #include <stdio.h> + ssize_t getline(char **<[bufptr]>, size_t *<[n]>, FILE *<[fp]>); + +TRAD_SYNOPSIS + #include <stdio.h> + ssize_t getline(<[bufptr]>, <[n]>, <[fp]>) + char **<[bufptr]>; + size_t *<[n]>; + FILE *<[fp]>; + +DESCRIPTION +<<getline>> reads a file <[fp]> up to and possibly including the +newline character. The line is read into a buffer pointed to +by <[bufptr]> and designated with size *<[n]>. If the buffer is +not large enough, it will be dynamically grown by <<getdelim>>. +As the buffer is grown, the pointer to the size <[n]> will be +updated. + +<<getline>> is equivalent to getdelim(bufptr, n, '\n', fp); + +RETURNS +<<getline>> returns <<-1>> if no characters were successfully read, +otherwise, it returns the number of bytes successfully read. +at end of file, the result is nonzero. + +PORTABILITY +<<getline>> is a glibc extension. + +No supporting OS subroutines are directly required. +*/ + +/* Copyright 2002, Red Hat Inc. - all rights reserved */ + +#include <stdio.h> + +extern ssize_t __getdelim (char **, size_t *, int, FILE *); + +ssize_t +__getline (lptr, n, fp) + char **lptr; + size_t *n; + FILE *fp; +{ + return __getdelim (lptr, n, '\n', fp); +} + |