summaryrefslogtreecommitdiffstats
path: root/man/man3/fileno.3
diff options
context:
space:
mode:
Diffstat (limited to 'man/man3/fileno.3')
-rw-r--r--man/man3/fileno.389
1 files changed, 89 insertions, 0 deletions
diff --git a/man/man3/fileno.3 b/man/man3/fileno.3
new file mode 100644
index 000000000..1e9954626
--- /dev/null
+++ b/man/man3/fileno.3
@@ -0,0 +1,89 @@
+'\" t
+.\" Copyright (c) 1990, 1991 The Regents of the University of California.
+.\" and Copyright (C) 2021 Michael Kerrisk <mtk.manpages@gmail.com>
+.\" All rights reserved.
+.\"
+.\" This code is derived from software contributed to Berkeley by
+.\" Chris Torek and the American National Standards Committee X3,
+.\" on Information Processing Systems.
+.\"
+.\" SPDX-License-Identifier: BSD-4-Clause-UC
+.\"
+.\" Converted for Linux, Mon Nov 29 14:24:40 1993, faith@cs.unc.edu
+.\" Added remark on EBADF for fileno, aeb, 2001-03-22
+.\"
+.TH fileno 3 (date) "Linux man-pages (unreleased)"
+.SH NAME
+fileno \- obtain file descriptor of a stdio stream
+.SH LIBRARY
+Standard C library
+.RI ( libc ", " \-lc )
+.SH SYNOPSIS
+.nf
+.B #include <stdio.h>
+.P
+.BI "int fileno(FILE *" stream );
+.fi
+.P
+.RS -4
+Feature Test Macro Requirements for glibc (see
+.BR feature_test_macros (7)):
+.RE
+.P
+.BR fileno ():
+.nf
+ _POSIX_C_SOURCE
+.fi
+.SH DESCRIPTION
+The function
+.BR fileno ()
+examines the argument
+.I stream
+and returns the integer file descriptor used to implement this stream.
+The file descriptor is still owned by
+.I stream
+and will be closed when
+.BR fclose (3)
+is called.
+Duplicate the file descriptor with
+.BR dup (2)
+before passing it to code that might close it.
+.P
+For the nonlocking counterpart, see
+.BR unlocked_stdio (3).
+.SH RETURN VALUE
+On success,
+.BR fileno ()
+returns the file descriptor associated with
+.IR stream .
+On failure, \-1 is returned and
+.I errno
+is set to indicate the error.
+.SH ERRORS
+.TP
+.B EBADF
+.I stream
+is not associated with a file.
+.SH ATTRIBUTES
+For an explanation of the terms used in this section, see
+.BR attributes (7).
+.TS
+allbox;
+lbx lb lb
+l l l.
+Interface Attribute Value
+T{
+.na
+.nh
+.BR fileno ()
+T} Thread safety MT-Safe
+.TE
+.SH STANDARDS
+POSIX.1-2008.
+.SH HISTORY
+POSIX.1-2001.
+.SH SEE ALSO
+.BR open (2),
+.BR fdopen (3),
+.BR stdio (3),
+.BR unlocked_stdio (3)