|
Voxia OS v0.0.1
Hobby Project Operating System Targeting x86-64
|
#include "iso9660.h"#include "libk/serial.h"#include "memory/kalloc.h"#include "type.h"#include "vfs/enum.h"#include "vfs/filesystem.h"#include "vfs/vfs.h"#include <str.h>#include <vfs/dentry.h>#include <vfs/dev.h>#include <vfs/vnode.h>Go to the source code of this file.
Data Structures | |
| struct | iso9660_internal_data |
Functions | |
| static int | iso9660_get_rr_symlink (struct iso9660_dir *entry, char *out_target) |
| static int | iso9660_get_rr_name (struct iso9660_dir *entry, char *out_name) |
| int | iso9660_lookup (struct fs_instance *instance, char *path, dentry_ptr parent, dentry_ptr *out) |
| int | iso9660_read (vnode_t *vnode, void *buf, size_t len, size_t offset) |
| int | iso9660_readlink (vnode_t *vnode, char *buf, size_t len) |
| vops_file_t * | iso9660_file_operations (void) |
| fs_operations_t * | iso9660_fs_operations (void) |
| vops_lnk_t * | iso9660_lnk_operations (void) |
Variables | |
| static fs_operations_t | _fs_ops = {0} |
| static vops_file_t | _file_ops = {0} |
| static vops_lnk_t | _lnk_ops = {0} |
| vops_file_t * iso9660_file_operations | ( | void | ) |
Definition at line 432 of file iso9660.c.
References _file_ops, and iso9660_read().
Referenced by iso9660_lookup().
| fs_operations_t * iso9660_fs_operations | ( | void | ) |
Definition at line 437 of file iso9660.c.
References _fs_ops, and iso9660_lookup().
Referenced by INIT().
|
static |
Definition at line 94 of file iso9660.c.
References flags, len, iso9660_dir::length, memcopy(), iso9660_dir::name_len, and name_len.
Referenced by iso9660_lookup().
|
static |
Definition at line 23 of file iso9660.c.
References len, iso9660_dir::length, memcopy(), iso9660_dir::name_len, and name_len.
Referenced by iso9660_lookup().
| vops_lnk_t * iso9660_lnk_operations | ( | void | ) |
Definition at line 442 of file iso9660.c.
References _lnk_ops, and iso9660_readlink().
Referenced by iso9660_lookup().
| int iso9660_lookup | ( | struct fs_instance * | instance, |
| char * | path, | ||
| dentry_ptr | parent, | ||
| dentry_ptr * | out ) |
Definition at line 140 of file iso9660.c.
References base, create_and_attach_vnode(), iso9660_internal_data::extent, iso9660_internal_data::flags, instance, iOS9660_DIR_FLAG, iso9660_file_operations(), iso9660_get_rr_name(), iso9660_get_rr_symlink(), iso9660_lnk_operations(), kalloc(), kfree2(), LOG2_ERROR, LOG2_INFO, LOG2_WARN, LOG_DEBUG, LOG_WARN, memcmp(), memcopy(), name, name_len, offset, ops, parent, path, ptr, serial2_printf(), iso9660_internal_data::size, str(), strlen(), strncmp(), to_lowercase(), VFS_OK, VNODE_TYPE_DIR, VNODE_TYPE_FILE, and VNODE_TYPE_LNK.
Referenced by iso9660_fs_operations().
Definition at line 389 of file iso9660.c.
References fs_instance::block_dentry, vnode::fs_instance, len, LOG2_ERROR, offset, ops, UNUSED, dentry::vnode, and vnode::vnode_private.
Referenced by iso9660_file_operations().
Definition at line 419 of file iso9660.c.
References len, memcopy(), serial2_printf(), strlen(), and vnode::vnode_private.
Referenced by iso9660_lnk_operations().
|
static |
Definition at line 14 of file iso9660.c.
Referenced by iso9660_file_operations().
|
static |
Definition at line 13 of file iso9660.c.
Referenced by iso9660_fs_operations().
|
static |
Definition at line 15 of file iso9660.c.
Referenced by iso9660_lnk_operations().