summaryrefslogtreecommitdiff
path: root/src/nonstd/struct_FILE.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nonstd/struct_FILE.c')
-rw-r--r--src/nonstd/struct_FILE.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/nonstd/struct_FILE.c b/src/nonstd/struct_FILE.c
new file mode 100644
index 00000000..a3b8610e
--- /dev/null
+++ b/src/nonstd/struct_FILE.c
@@ -0,0 +1,36 @@
+#include <nonstd/io.h>
+
+struct __FILE {
+ fpos_t pos;
+ char *buf;
+ enum { SUPPLIED, ALLOCED, UNSET } buftype;
+ int buffering;
+ int bsize;
+ int isopen;
+ int flags;
+ int lastop;
+
+ /* verified necessary */
+ int fd;
+ int oflag;
+ int orientation;
+ int eof;
+ int err;
+ int nlocks;
+ int thread;
+
+ #ifdef _POSIX_SOURCE
+ pid_t pipe_pid;
+ #else
+ long int pipe_pid;
+ #endif
+
+ struct {
+ char *buf;
+ size_t size;
+ int allocated;
+ } mem;
+
+ struct __FILE *prev;
+ struct __FILE *next;
+};