Adds the ability to read dirs in user space, changes in general:
Process now holds fs::FilesystemNode instead of fs::File, syscalls are mostly based on either file or dir and we will use as_file and as_dir to abort quickly if the handle is not what we expect.
Other (maybe not the focus here) improvements to pointer related functions in the syscall file, like sys_arg_to_byte_slice -> sys_arg_to_slice, check_ptr, etc...
added syscalls open_dir and read_dir to open a file descriptor to a directory and to read from it. This fd can be closed with close syscall. But of course file operations won't work with this and vise versa, file fds can't read directory from them. (At least for now, not sure if this can be useful feature)
Fixes #20
Adds the ability to read dirs in user space, changes in general:
Process
now holdsfs::FilesystemNode
instead offs::File
, syscalls are mostly based on eitherfile
ordir
and we will useas_file
andas_dir
to abort quickly if the handle is not what we expect.sys_arg_to_byte_slice -> sys_arg_to_slice
,check_ptr
, etc...open_dir
andread_dir
to open a file descriptor to a directory and to read from it. This fd can be closed withclose
syscall. But of course file operations won't work with this and vise versa, file fds can't read directory from them. (At least for now, not sure if this can be useful feature)