内に含ま
その他のドキュメント
サポート リソース
| PDF 文書ファイルをダウンロードする
NAME
- dup - duplicate an open file descriptor
SYNOPSIS
-
#include <unistd.h>
-
int dup(int fildes);
MT-LEVEL
- Async-Signal-Safe
DESCRIPTION
-
dup( ) returns a new file descriptor having the following in common with the original open file descriptor fildes:
- Same open file (or pipe).
- Same file pointer (that is, both file descriptors share one file pointer).
- Same access mode (read, write or read/write).
- The new file descriptor is set to remain open across exec functions (see fcntl(2)).
- The file descriptor returned is the lowest one available.
- The dup(fildes) is equivalent to
-
fcntl( fildes, F_DUPFD, 0 )
RETURN VALUES
- Upon successful completion a non-negative integer, namely the file descriptor, is returned. Otherwise, a value of -1 is returned and errno is set to indicate the error.
ERRORS
-
dup( ) will fail if one or more of the following are true:
-
-
EBADF
-
fildes is not a valid open file descriptor.
-
-
EINTR
- A signal was caught during the dup( ) function.
-
-
EMFILE
- The process has too many open files (see getrlimit(2)).
-
-
ENOLINK
-
fildes is on a remote machine and the link to that machine is no longer active.
SEE ALSO
-
close(2), creat(2), exec(2), fcntl(2), getrlimit(2), open(2), pipe(2), dup2(3C), lockf(3C)
|
|