From 4bf477d5ed372fd44697d2f0df245b61b4f3f7b3 Mon Sep 17 00:00:00 2001 From: Nicholas Noll Date: Thu, 18 Nov 2021 13:18:38 -0800 Subject: filling out system layer --- sys/linux/port/arch/types.h | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 sys/linux/port/arch/types.h (limited to 'sys/linux/port/arch/types.h') diff --git a/sys/linux/port/arch/types.h b/sys/linux/port/arch/types.h new file mode 100644 index 0000000..014e4cb --- /dev/null +++ b/sys/linux/port/arch/types.h @@ -0,0 +1,35 @@ +#pragma once + +// XXX: os vs sys prefix... + +typedef struct os·Directory os·Directory; +typedef struct os·DirEntry os·DirEntry; + +struct os·Directory +{ + intptr off; + int fd; + int pad; + int pos, end; + /* buf needs fall on (off_t) 8 byte alignment */ + char buf[2048]; +}; + +struct os·DirEntry +{ + ulong ino; /* inode number */ + ulong off; /* offset to next entry (from start of directory */ + ushort len; /* length of entry (in bytes) */ + uchar type; /* filetype */ + char name[]; /* filename */ +}; + +/* types of DirEntry (last byte) */ +#define os·EntryUnknown 0 +#define os·EntryFifo 1 +#define os·EntryChar 2 +#define os·EntryDir 4 +#define os·EntryBlock 6 +#define os·EntryFile 8 +#define os·EntryLink 10 +#define os·EntrySocket 12 -- cgit v1.2.1