diff options
Diffstat (limited to 'src/kernel/handle.h')
-rw-r--r-- | src/kernel/handle.h | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/src/kernel/handle.h b/src/kernel/handle.h index 4b066ad..aae8937 100644 --- a/src/kernel/handle.h +++ b/src/kernel/handle.h @@ -8,40 +8,8 @@ typedef int handle_t; // TODO duplicated in syscalls.h enum handle_type { HANDLE_EMPTY, - HANDLE_SPECIAL_TTY, }; struct handle { enum handle_type type; }; - - -enum handleop { // describes the operations which can be done on handles - HANDLEOP_MOUNT, // also closes the original handle - HANDLEOP_OPEN, - - HANDLEOP_READ, - HANDLEOP_WRITE, - HANDLEOP_CLOSE, -}; - -struct handleop_args { - enum handleop type; - struct handle *handle; - union { - struct { // HANDLEOP_MOUNT - struct mount *target; - } mnt; - struct { // HANDLEOP_OPEN - struct handle *target; - const char *path; // relative to the mount point - size_t len; - } open; - struct { // HANDLEOP_READ, HANDLEOP_WRITE - user_ptr ptr; - size_t len; - } rw; - }; -}; - -int handleop_dispatch(struct handleop_args args); |