Define fopen() in terms of fdopen(); define fdopen() as a macro

diff --git a/fopen.c b/fopen.c
index 9a87e41..5c84184 100644
--- a/fopen.c
+++ b/fopen.c
@@ -42,5 +42,5 @@
   if ( fd < 0 )
     return NULL;
   else
-    return __create_file(fd);
+    return fdopen(fd, mode);
 }
diff --git a/include/stdio.h b/include/stdio.h
index 92ed478..d6f0c1d 100644
--- a/include/stdio.h
+++ b/include/stdio.h
@@ -44,6 +44,10 @@
 
 __extern FILE *fopen(const char *, const char *);
 
+static __inline__ FILE *fdopen(int __fd, const char *__m)
+{
+  return __create_file(__fd);
+}
 static __inline__ int fclose(FILE *__f)
 {
   extern int close(int);
diff --git a/klibc/fopen.c b/klibc/fopen.c
index 9a87e41..5c84184 100644
--- a/klibc/fopen.c
+++ b/klibc/fopen.c
@@ -42,5 +42,5 @@
   if ( fd < 0 )
     return NULL;
   else
-    return __create_file(fd);
+    return fdopen(fd, mode);
 }
diff --git a/klibc/include/stdio.h b/klibc/include/stdio.h
index 92ed478..d6f0c1d 100644
--- a/klibc/include/stdio.h
+++ b/klibc/include/stdio.h
@@ -44,6 +44,10 @@
 
 __extern FILE *fopen(const char *, const char *);
 
+static __inline__ FILE *fdopen(int __fd, const char *__m)
+{
+  return __create_file(__fd);
+}
 static __inline__ int fclose(FILE *__f)
 {
   extern int close(int);