DUP(2,L) AIX Technical Reference DUP(2,L)
-------------------------------------------------------------------------------
dup
PURPOSE
Duplicates an open file descriptor.
SYNTAX
int dup (fildes)
int fildes;
DESCRIPTION
The dup system call returns a new file descriptor for the file descriptor
pointed to by the fildes parameter. The fildes parameter is a file descriptor
obtained from a creat, open, dup, fcntl, or pipe system call, or from the
socket or socketpair subroutine. The dup system call returns a new file
descriptor having the following in common with the original:
o The same open file or pipe
o The same file pointer (that is, both file descriptors share one file
pointer)
o The same access mode (read, write or read/write)
o The same file status flags
o The same locks.
The new file descriptor is set to remain open across exec system calls. If the
Transparent Computing Facility is installed, the new file descriptor is also
set to remain open across rexec and run system calls. (For more information
about file control, see "fcntl, flock, lockf.")
The file descriptor returned is the lowest one available.
RETURN VALUE
Upon successful completion, a file descriptor (nonnegative integer) is
returned. If the dup system call fails, a value of -1 is returned, and errno
is set to indicate the error.
ERROR CONDITIONS
The dup system call fails if one or more of the following are true:
EBADF fildes is not a valid open file descriptor.
EMFILE Two hundred (200) file descriptors are currently open.
RELATED INFORMATION
Processed November 7, 1990 DUP(2,L) 1
DUP(2,L) AIX Technical Reference DUP(2,L)
In this book: "close, closex," "dup2," "exec: execl, execv, execle, execve,
execlp, execvp," "fcntl, flock, lockf," "open, openx, creat," "pipe," "socket,"
and "socketpair."
Processed November 7, 1990 DUP(2,L) 2