summaryrefslogtreecommitdiffstats
path: root/man3/fpurge.3
diff options
context:
space:
mode:
Diffstat (limited to 'man3/fpurge.3')
-rw-r--r--man3/fpurge.380
1 files changed, 80 insertions, 0 deletions
diff --git a/man3/fpurge.3 b/man3/fpurge.3
new file mode 100644
index 000000000..7aa84847e
--- /dev/null
+++ b/man3/fpurge.3
@@ -0,0 +1,80 @@
+.\" Copyright (C) 2001 Andries Brouwer <aeb@cwi.nl>.
+.\"
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date. The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein. The author(s) may not
+.\" have taken the same level of care in the production of this manual,
+.\" which is licensed free of charge, as they might when working
+.\" professionally.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\"
+.TH FPURGE 3 2001-12-15 "" "Linux Programmer's Manual"
+.SH NAME
+fpurge, __fpurge \- purge a stream
+.SH SYNOPSIS
+.nf
+/* unsupported */
+.B #include <stdio.h>
+.sp
+.BI "int fpurge(FILE *" stream );
+.sp
+/* supported */
+.B #include <stdio.h>
+.br
+.B #include <stdio_ext.h>
+.sp
+.BI "void __fpurge(FILE *" stream );
+.fi
+.SH DESCRIPTION
+The function
+.B fpurge()
+clears the buffers of the given stream.
+For output streams this discards any unwritten output.
+For input streams this discards any input read from the underlying object
+but not yet obtained via
+.BR getc (3);
+this includes any text pushed back via \fIungetc\fP(). See also
+.BR fflush (3).
+.LP
+The function
+.B __fpurge()
+does precisely the same, but without returning a value.
+.SH "RETURN VALUE"
+Upon successful completion
+.B fpurge()
+returns 0.
+On error, it returns \-1 and sets
+.I errno
+appropriately.
+.SH ERRORS
+.TP
+.B EBADF
+.I stream
+is not an open stream.
+.SH "CONFORMING TO"
+These functions are nonstandard and not portable.
+The function
+.IR fpurge ()
+was introduced in BSD 4.4 and is not available under Linux.
+The function
+.IR __fpurge ()
+was introduced in Solaris, and is present in glibc 2.1.95 and later.
+.SH NOTES
+Usually it is a mistake to want to discard input buffers.
+.SH "SEE ALSO"
+.BR fclean (3),
+.BR fflush (3),
+.BR setbuf (3),
+.BR stdio_ext (3)