diff options
Diffstat (limited to 'mdk-stage1/dietlibc/libstdio/fdopen.c')
-rw-r--r-- | mdk-stage1/dietlibc/libstdio/fdopen.c | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/mdk-stage1/dietlibc/libstdio/fdopen.c b/mdk-stage1/dietlibc/libstdio/fdopen.c index aee14fb0c..748b716eb 100644 --- a/mdk-stage1/dietlibc/libstdio/fdopen.c +++ b/mdk-stage1/dietlibc/libstdio/fdopen.c @@ -1,21 +1,13 @@ +#include <errno.h> +#include "dietfeatures.h" #include <sys/types.h> #include <dietstdio.h> #include <unistd.h> -#define SEEK_END 2 - -int __stdio_parse_mode(const char *mode); -FILE* __stdio_init_file(int fd); - -FILE *fdopen (int filedes, const char *mode) { +FILE *fdopen(int filedes, const char *mode) { int f=0; /* O_RDONLY, O_WRONLY or O_RDWR */ - int fd; f=__stdio_parse_mode(mode); - if ((fd=filedes)<0) return 0; - { - FILE * ret = __stdio_init_file(fd); - ret->flags |= UNSEEKABLE; - return ret; - } + if (filedes<0) { errno=EBADF; return 0; } + return __stdio_init_file(filedes,0); } |