]> git.ipfire.org Git - thirdparty/man-pages.git/blame - man3/fpurge.3
capabilities.7: Add pivot_root(2) to CAP_SYS_ADMIN list
[thirdparty/man-pages.git] / man3 / fpurge.3
CommitLineData
fea681da
MK
1.\" Copyright (C) 2001 Andries Brouwer <aeb@cwi.nl>.
2.\"
93015253 3.\" %%%LICENSE_START(VERBATIM)
fea681da
MK
4.\" Permission is granted to make and distribute verbatim copies of this
5.\" manual provided the copyright notice and this permission notice are
6.\" preserved on all copies.
7.\"
8.\" Permission is granted to copy and distribute modified versions of this
9.\" manual under the conditions for verbatim copying, provided that the
10.\" entire resulting derived work is distributed under the terms of a
11.\" permission notice identical to this one.
c13182ef 12.\"
fea681da
MK
13.\" Since the Linux kernel and libraries are constantly changing, this
14.\" manual page may be incorrect or out-of-date. The author(s) assume no
15.\" responsibility for errors or omissions, or for damages resulting from
16.\" the use of the information contained herein. The author(s) may not
17.\" have taken the same level of care in the production of this manual,
18.\" which is licensed free of charge, as they might when working
19.\" professionally.
c13182ef 20.\"
fea681da
MK
21.\" Formatted or processed versions of this manual, if unaccompanied by
22.\" the source, must acknowledge the copyright and authors of this work.
4b72fb64 23.\" %%%LICENSE_END
fea681da 24.\"
4b8c67d9 25.TH FPURGE 3 2017-09-15 "" "Linux Programmer's Manual"
fea681da
MK
26.SH NAME
27fpurge, __fpurge \- purge a stream
28.SH SYNOPSIS
29.nf
30/* unsupported */
31.B #include <stdio.h>
68e4db0a 32.PP
fea681da 33.BI "int fpurge(FILE *" stream );
f90f031e 34
fea681da
MK
35/* supported */
36.B #include <stdio.h>
fea681da 37.B #include <stdio_ext.h>
68e4db0a 38.PP
fea681da
MK
39.BI "void __fpurge(FILE *" stream );
40.fi
41.SH DESCRIPTION
42The function
63aa9df0 43.BR fpurge ()
fea681da
MK
44clears the buffers of the given stream.
45For output streams this discards any unwritten output.
46For input streams this discards any input read from the underlying object
47but not yet obtained via
48.BR getc (3);
7c93fec0
MK
49this includes any text pushed back via
50.BR ungetc (3).
51See also
fea681da 52.BR fflush (3).
dd3568a1 53.PP
fea681da 54The function
63aa9df0 55.BR __fpurge ()
fea681da 56does precisely the same, but without returning a value.
47297adb 57.SH RETURN VALUE
fea681da 58Upon successful completion
63aa9df0 59.BR fpurge ()
fea681da
MK
60returns 0.
61On error, it returns \-1 and sets
62.I errno
63appropriately.
64.SH ERRORS
65.TP
66.B EBADF
67.I stream
68is not an open stream.
5b53f4ba
ZL
69.SH ATTRIBUTES
70For an explanation of the terms used in this section, see
71.BR attributes (7).
72.TS
73allbox;
74lb lb lb
75l l l.
76Interface Attribute Value
77T{
78.BR __fpurge ()
79T} Thread safety MT-Safe race:stream
80.TE
847e0d88 81.sp 1
47297adb 82.SH CONFORMING TO
c8f2dd47 83These functions are nonstandard and not portable.
fea681da 84The function
31e9a9ec 85.BR fpurge ()
b14d4aa5 86was introduced in 4.4BSD and is not available under Linux.
fea681da 87The function
31e9a9ec 88.BR __fpurge ()
fea681da
MK
89was introduced in Solaris, and is present in glibc 2.1.95 and later.
90.SH NOTES
91Usually it is a mistake to want to discard input buffers.
47297adb 92.SH SEE ALSO
d49cc602 93.\" .BR fclean (3),
fea681da
MK
94.BR fflush (3),
95.BR setbuf (3),
96.BR stdio_ext (3)