c640e9dddf91fe76c40ee7872be2190e8574421f
[reactos.git] / lib / crtdll / io / dup.c
1 /* $Id$ */
2 #include <windows.h>
3 #include <msvcrt/io.h>
4 #include <msvcrt/internal/file.h>
5
6 // fixme change type of mode argument to mode_t
7
8 int __fileno_alloc(HANDLE hFile, int mode);
9 int __fileno_getmode(int _fd);
10
11 /*
12  * @implemented
13  */
14 int _dup(int handle)
15 {
16     HANDLE hFile;
17     int fd;
18     hFile = _get_osfhandle(handle);
19         fd = __fileno_alloc(hFile, __fileno_getmode(handle));
20     return fd;
21 }