PageRenderTime 26ms CodeModel.GetById 21ms app.highlight 2ms RepoModel.GetById 1ms app.codeStats 0ms

/share/man/man4/fd.4

https://bitbucket.org/freebsd/freebsd-head/
Forth | 105 lines | 105 code | 0 blank | 0 comment | 2 complexity | 6dab5cb82d253f151918dc9846f5aac8 MD5 | raw file
  1.\" Copyright (c) 1990, 1991, 1993
  2.\"	The Regents of the University of California.  All rights reserved.
  3.\"
  4.\" Redistribution and use in source and binary forms, with or without
  5.\" modification, are permitted provided that the following conditions
  6.\" are met:
  7.\" 1. Redistributions of source code must retain the above copyright
  8.\"    notice, this list of conditions and the following disclaimer.
  9.\" 2. Redistributions in binary form must reproduce the above copyright
 10.\"    notice, this list of conditions and the following disclaimer in the
 11.\"    documentation and/or other materials provided with the distribution.
 12.\" 3. All advertising materials mentioning features or use of this software
 13.\"    must display the following acknowledgement:
 14.\"	This product includes software developed by the University of
 15.\"	California, Berkeley and its contributors.
 16.\" 4. Neither the name of the University nor the names of its contributors
 17.\"    may be used to endorse or promote products derived from this software
 18.\"    without specific prior written permission.
 19.\"
 20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 23.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 30.\" SUCH DAMAGE.
 31.\"
 32.\"     @(#)fd.4	8.1 (Berkeley) 6/9/93
 33.\" $FreeBSD$
 34.\"
 35.Dd June 9, 1993
 36.Dt FD 4
 37.Os
 38.Sh NAME
 39.Nm fd ,
 40.Nm stdin ,
 41.Nm stdout ,
 42.Nm stderr
 43.Nd file descriptor files
 44.Sh DESCRIPTION
 45The files
 46.Pa /dev/fd/0
 47through
 48.Pa /dev/fd/#
 49refer to file descriptors which can be accessed through the file
 50system.
 51If the file descriptor is open and the mode the file is being opened
 52with is a subset of the mode of the existing descriptor, the call:
 53.Bd -literal -offset indent
 54fd = open("/dev/fd/0", mode);
 55.Ed
 56.Pp
 57and the call:
 58.Bd -literal -offset indent
 59fd = fcntl(0, F_DUPFD, 0);
 60.Ed
 61.Pp
 62are equivalent.
 63.Pp
 64Opening the files
 65.Pa /dev/stdin ,
 66.Pa /dev/stdout
 67and
 68.Pa /dev/stderr
 69is equivalent to the following calls:
 70.Bd -literal -offset indent
 71fd = fcntl(STDIN_FILENO,  F_DUPFD, 0);
 72fd = fcntl(STDOUT_FILENO, F_DUPFD, 0);
 73fd = fcntl(STDERR_FILENO, F_DUPFD, 0);
 74.Ed
 75.Pp
 76Flags to the
 77.Xr open 2
 78call other than
 79.Dv O_RDONLY ,
 80.Dv O_WRONLY
 81and
 82.Dv O_RDWR
 83are ignored.
 84.Sh IMPLEMENTATION NOTES
 85By default,
 86.Pa /dev/fd
 87is provided by
 88.Xr devfs 5 ,
 89which provides nodes for the first three file descriptors.
 90Some sites may require nodes for additional file descriptors; these can be
 91made available by mounting
 92.Xr fdescfs 5
 93on
 94.Pa /dev/fd .
 95.Sh FILES
 96.Bl -tag -width /dev/stderr -compact
 97.It Pa /dev/fd/#
 98.It Pa /dev/stdin
 99.It Pa /dev/stdout
100.It Pa /dev/stderr
101.El
102.Sh SEE ALSO
103.Xr tty 4 ,
104.Xr devfs 5 ,
105.Xr fdescfs 5