summaryrefslogtreecommitdiff
path: root/libc/include/msdos
diff options
context:
space:
mode:
Diffstat (limited to 'libc/include/msdos')
-rw-r--r--libc/include/msdos/errno.h46
-rw-r--r--libc/include/msdos/fcntl.h24
-rw-r--r--libc/include/msdos/types.h22
3 files changed, 92 insertions, 0 deletions
diff --git a/libc/include/msdos/errno.h b/libc/include/msdos/errno.h
new file mode 100644
index 0000000..39107eb
--- /dev/null
+++ b/libc/include/msdos/errno.h
@@ -0,0 +1,46 @@
+#ifndef __MSDOS_ERRNO_H
+#define __MSDOS_ERRNO_H
+
+#define EPERM 1 /* Operation not permitted */
+#define ENOENT 2 /* No such file or directory */
+#define ESRCH 3 /* No such process */
+#define EINTR 4 /* Interrupted system call */
+#define EIO 5 /* I/O error */
+#define ENXIO 6 /* No such device or address */
+#define E2BIG 7 /* Arg list too long */
+#define ENOEXEC 8 /* Exec format error */
+#define EBADF 9 /* Bad file number */
+#define ECHILD 10 /* No child processes */
+#define EAGAIN 11 /* Try again */
+#define ENOMEM 12 /* Out of memory */
+#define EACCES 13 /* Permission denied */
+#define EFAULT 14 /* Bad address */
+#define ENOTBLK 15 /* Block device required */
+#define EBUSY 16 /* Device or resource busy */
+#define EEXIST 17 /* File exists */
+#define EXDEV 18 /* Cross-device link */
+#define ENODEV 19 /* No such device */
+#define ENOTDIR 20 /* Not a directory */
+#define EISDIR 21 /* Is a directory */
+#define EINVAL 22 /* Invalid argument */
+#define ENFILE 23 /* File table overflow */
+#define EMFILE 24 /* Too many open files */
+#define ENOTTY 25 /* Not a typewriter */
+#define ETXTBSY 26 /* Text file busy */
+#define EFBIG 27 /* File too large */
+#define ENOSPC 28 /* No space left on device */
+#define ESPIPE 29 /* Illegal seek */
+#define EROFS 30 /* Read-only file system */
+#define EMLINK 31 /* Too many links */
+#define EPIPE 32 /* Broken pipe */
+#define EDOM 33 /* Math argument out of domain of func */
+#define ERANGE 34 /* Math result not representable */
+#define EDEADLK 35 /* Resource deadlock would occur */
+#define ENAMETOOLONG 36 /* File name too long */
+#define ENOLCK 37 /* No record locks available */
+#define ENOSYS 38 /* Function not implemented */
+#define ENOTEMPTY 39 /* Directory not empty */
+#define ELOOP 40 /* Too many symbolic links encountered */
+#define EWOULDBLOCK EAGAIN /* Operation would block */
+
+#endif
diff --git a/libc/include/msdos/fcntl.h b/libc/include/msdos/fcntl.h
new file mode 100644
index 0000000..8cf076c
--- /dev/null
+++ b/libc/include/msdos/fcntl.h
@@ -0,0 +1,24 @@
+#ifndef __MSDOS_FCNTL_H
+#define __MSDOS_FCNTL_H
+
+/* Definitions taken from the i386 Linux kernel. */
+
+#define O_ACCMODE 0003
+#define O_RDONLY 00
+#define O_WRONLY 01
+#define O_RDWR 02
+#define O_CREAT 0100 /* not fcntl */
+#define O_EXCL 0200 /* not fcntl */
+#define O_TRUNC 01000 /* not fcntl */
+#define O_APPEND 02000
+
+#define F_DUPFD 0 /* dup */
+#define F_GETFD 1 /* get f_flags */
+#define F_SETFD 2 /* set f_flags */
+#define F_GETFL 3 /* more flags (cloexec) */
+#define F_SETFL 4
+#define F_GETLK 5
+#define F_SETLK 6
+#define F_SETLKW 7
+
+#endif
diff --git a/libc/include/msdos/types.h b/libc/include/msdos/types.h
new file mode 100644
index 0000000..b6628bd
--- /dev/null
+++ b/libc/include/msdos/types.h
@@ -0,0 +1,22 @@
+
+/* arch/i86/include/asm/types.h - Basic Linux/MT data types. */
+
+#ifndef __MSDOS_TYPES
+#define __MSDOS_TYPES
+
+#include <asm/types.h>
+
+typedef __u32 off_t;
+typedef __u32 time_t;
+typedef __u16 mode_t;
+typedef __u32 loff_t;
+typedef __u32 speed_t;
+
+typedef __u32 tcflag_t;
+typedef __u8 cc_t;
+typedef __u16 size_t;
+
+typedef int ptrdiff_t;
+
+#endif
+