|
| | Minix () |
| |
| | ~Minix () |
| |
| int | mount (const void *data) |
| |
| int | sync () |
| |
| void | umount () |
| |
| int | open (File *file) |
| |
| int | close (File *file) |
| |
| uint64_t | get_block (Inode *inode, uint64_t logical_block, bool create, int *error) |
| |
| Inode * | create (Inode *dir, const char *filename, size_t name_len, umode_t mode, int *error) |
| |
| int | link (Inode *dir, const char *filename, size_t name_len, Inode *inode) |
| |
| int | symlink (Inode *dir, const char *filename, size_t name_len, const char *symname) |
| |
| int | unlink (Inode *dir, const char *filename, size_t name_len, Inode *inode) |
| |
| void | truncate (Inode *inode, off_t length) |
| |
| Inode * | lookup (Inode *dir, const char *filename, size_t name_len, int *error) |
| |
| int | iterate_dir (Inode *dir, Dir_Context *ctx) |
| |
| int | mkdir (Inode *parent_dir, const char *filename, size_t name_len, umode_t mode) |
| |
| int | rmdir (Inode *parent_dir, const char *filename, size_t name_len, Inode *dir) |
| |
| int | rename (Inode *old_dir, Inode *old_inode, const char *old_name, size_t old_name_len, Inode *new_dir, Inode *new_inode, const char *new_name, size_t new_name_len) |
| |
| int | write_inode (Inode *inode) |
| |
| Inode * | allocate_inode () |
| |
| | Filesystem () |
| |
| virtual | ~Filesystem () |
| |
| virtual ssize_t | read (Inode *inode, void *buf, size_t count, off_t pos) |
| |
| virtual ssize_t | write (Inode *inode, const void *buf, size_t count, off_t pos) |
| |
| virtual int | punch_hole (Inode *inode, off_t from, off_t to) |
| |
| virtual const char * | get_link (Inode *inode, void(**cleanup_callback)(const char *buf), int *error) |
| |
|
| Inode * | iget (unsigned long ino, int *error) |
| |
| int | new_block () |
| |
| Minix_Disk_Inode * | raw_inode (ino_t ino, Block *block, int *error) |
| |
| Inode * | new_inode (umode_t mode, int *error) |
| |
| int | block_to_path (unsigned long block, int offsets[DEPTH]) |
| |
| Indirect * | get_branch (Inode *inode, int depth, int *offsets, Indirect chain[DEPTH], int *err) |
| |
| int | alloc_branch (int num, int *offsets, Indirect *branch) |
| |
| Minix_Dirent * | find_dirent (Inode *dir, const char *filename, size_t name_len, Block *p_block, int *error) |
| |
| int | add_link (Inode *dir, Inode *inode, const char *name, size_t name_len) |
| |
| int | delete_entry (Inode *dir, const char *filename, size_t name_len) |
| |
| int | make_empty_dir (Inode *inode, Inode *parent_dir) |
| |
| void | free_branches (Inode *inode, block_t *p, block_t *q, int depth) |
| |
| Indirect * | find_shared (Inode *inode, int depth, int offsets[DEPTH], Indirect chain[DEPTH], block_t *top) |
| |
| void | free_data (block_t *p, const block_t *q) |
| |
| void | free_block (unsigned long block) |
| |
| void | clear_disk_inode (Inode *inode) |
| |
| void | free_inode (Inode *inode) |
| |
| int | check_dir_is_empty (Inode *dir) |
| |
| unsigned int | dir_block_last_byte (Inode *dir, unsigned long lblock) |
| |