summaryrefslogtreecommitdiffstats
path: root/contrib/cvs/lib/dup2.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/cvs/lib/dup2.c')
-rw-r--r--contrib/cvs/lib/dup2.c40
1 files changed, 0 insertions, 40 deletions
diff --git a/contrib/cvs/lib/dup2.c b/contrib/cvs/lib/dup2.c
deleted file mode 100644
index 1974383..0000000
--- a/contrib/cvs/lib/dup2.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- dup2 -- 7th Edition UNIX system call emulation for UNIX System V
-
- last edit: 11-Feb-1987 D A Gwyn
-*/
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <errno.h>
-#include <fcntl.h>
-
-extern int close(), fcntl();
-
-int
-dup2( oldfd, newfd )
- int oldfd; /* already-open file descriptor */
- int newfd; /* desired duplicate descriptor */
-{
- register int ret; /* for fcntl() return value */
- register int save; /* for saving entry errno */
-
- if ( oldfd == newfd )
- return oldfd; /* be careful not to close() */
-
- save = errno; /* save entry errno */
- (void) close( newfd ); /* in case newfd is open */
- /* (may have just clobbered the original errno value) */
-
- ret = fcntl( oldfd, F_DUPFD, newfd ); /* dupe it */
-
- if ( ret >= 0 )
- errno = save; /* restore entry errno */
- else /* fcntl() returned error */
- if ( errno == EINVAL )
- errno = EBADF; /* we think of everything */
-
- return ret; /* return file descriptor */
-}
OpenPOWER on IntegriCloud