#include #include /* Duplicate an open file descriptor */ int dup(int oldfd) { int ret; asm volatile("int $0x80" : "=a" (ret) : "0" (SYSCALL_DUP), "c" (1), "S" (&oldfd)); if (ret >= 0) return ret; errno = -ret; return -1; } /* Duplicate an open file descriptor to a specified file descriptor */ int dup2(int oldfd, int newfd) { int ret; asm volatile("int $0x80" : "=a" (ret) : "0" (SYSCALL_DUP2), "c" (2), "S" (&oldfd)); if (ret >= 0) return ret; errno = -ret; return -1; }