summaryrefslogtreecommitdiff
path: root/sys/kern/kern_descrip.c
diff options
context:
space:
mode:
authorAntoine Brodin <antoine@FreeBSD.org>2008-04-20 19:32:46 +0000
committerAntoine Brodin <antoine@FreeBSD.org>2008-04-20 19:32:46 +0000
commitf26fb38a13575b91333594e6c32316032286dc9c (patch)
treeca87c385e7421f5f68504f5752929eb3d67611fd /sys/kern/kern_descrip.c
parent7b0cda2af4830bfd380687f77a4c51022367d72b (diff)
Notes
Diffstat (limited to 'sys/kern/kern_descrip.c')
-rw-r--r--sys/kern/kern_descrip.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c
index eeabd117fbe80..2d71ce0faf61c 100644
--- a/sys/kern/kern_descrip.c
+++ b/sys/kern/kern_descrip.c
@@ -435,6 +435,11 @@ kern_fcntl(struct thread *td, int fd, int cmd, intptr_t arg)
error = do_dup(td, DUP_VARIABLE, fd, newmin, td->td_retval);
break;
+ case F_DUP2FD:
+ tmp = arg;
+ error = do_dup(td, DUP_FIXED, fd, tmp, td->td_retval);
+ break;
+
case F_GETFD:
FILEDESC_SLOCK(fdp);
if ((fp = fdtofp(fd, fdp)) == NULL) {
@@ -694,7 +699,7 @@ kern_fcntl(struct thread *td, int fd, int cmd, intptr_t arg)
}
/*
- * Common code for dup, dup2, and fcntl(F_DUPFD).
+ * Common code for dup, dup2, fcntl(F_DUPFD) and fcntl(F_DUP2FD).
*/
static int
do_dup(struct thread *td, enum dup_type type, int old, int new,