diff --git a/src/sys/syscalls/dup.c b/src/sys/syscalls/dup.c new file mode 100644 index 00000000..ae9baceb --- /dev/null +++ b/src/sys/syscalls/dup.c @@ -0,0 +1,15 @@ +#include +#include +#include + +syscallret syscall_dup(int oldfd){ + syscallret retv; + retv.errno = fd_duplicate(&arch_getcls()->thread->proc->fdtable, oldfd, ~0, 1, &retv.ret); + return retv; +} + +syscallret syscall_dup2(int oldfd, int newfd){ + syscallret retv; + retv.errno = fd_duplicate(&arch_getcls()->thread->proc->fdtable, oldfd, newfd, 2, &retv.ret); + return retv; +}