diff options
| author | Jon Santmyer <jon@jonsantmyer.com> | 2026-10-03 12:03:11 -0400 |
|---|---|---|
| committer | Jon Santmyer <jon@jonsantmyer.com> | 2026-10-03 12:03:11 -0400 |
| commit | 2497a94013261d6fa9159b9c6e94abe6f2d4fd9e (patch) | |
| tree | d9bfa0536d882a9f28cddf415ebfd75b6b54c837 /api | |
| parent | c2788174198632e0c8bdbfa7762081f595460bdf (diff) | |
| download | jove-kernel-2497a94013261d6fa9159b9c6e94abe6f2d4fd9e.tar.gz jove-kernel-2497a94013261d6fa9159b9c6e94abe6f2d4fd9e.tar.bz2 jove-kernel-2497a94013261d6fa9159b9c6e94abe6f2d4fd9e.zip | |
process rbtree. add syscall for initrd_file access.
Diffstat (limited to 'api')
| -rw-r--r-- | api/syscall.h | 41 |
1 files changed, 38 insertions, 3 deletions
diff --git a/api/syscall.h b/api/syscall.h index 1cdc941..9f8ec13 100644 --- a/api/syscall.h +++ b/api/syscall.h @@ -29,15 +29,15 @@ struct syscall_generic_write char data[]; }; -/* If the message is too small for path, the kernel will return ETOOSMALL. - * If the path does not point to an object, the kernel will return EBADPATH. - * */ struct syscall_generic_objpath { uint16_t pathlen; objpath_part_t path[]; }; +/**JOVE_OBJ_UNTYPED syscalls. + * */ + enum { _SYSCALL_UNTYPED_BADCALL = 0, @@ -60,6 +60,9 @@ struct syscall_untyped_split objpath_part_t dest_path[]; }; +/**JOVE_OBJ_OBJDIR syscalls. + * */ + enum { _SYSCALL_OBJDIR_BADCALL = 0, @@ -68,6 +71,9 @@ enum #define SYSCALL_PERM_OBJDIR_OBJTYPE JOVE_PERM_READ +/* JOVE_OBJ_PAGEDIR syscalls + * */ + enum { _SYSCALL_PAGEDIR_NONE = 0, @@ -117,6 +123,35 @@ struct syscall_pagedir_unmap objpath_part_t none_path[]; }; +/**JOVE_OBJ_INITRD_FILE syscalls + * */ + +enum +{ + _SYSCALL_INITRD_FILE_NONE = 0, + SYSCALL_INITRD_FILE_NAME, + SYSCALL_INITRD_FILE_SIZE, + SYSCALL_INITRD_FILE_READ +}; + +#define SYSCALL_PERM_INITRD_FILE_NAME (JOVE_PERM_READ) +#define SYSCALL_PERM_INITRD_FILE_SIZE (JOVE_PERM_READ) +#define SYSCALL_PERM_INITRD_FILE_READ (JOVE_PERM_READ) + +struct syscall_initrd_file_name_ret +{ + size_t len; + char c_str[]; +}; + +struct syscall_initrd_file_read +{ + size_t start_index; + size_t read_size; +}; + +/**JOVE_OBJ_VIRTTERM syscalls.*/ + enum { _SYSCALL_VTT_NONE = 0, |
