![]() |
vitasdk
Documentation of the vitasdk
|
Exports for Kernel. More...
VFS Data Types | |
| VITASDK_BUILD_ASSERT_EQ (0x20, SceVfsInfo) | |
| VITASDK_BUILD_ASSERT_EQ (0xC, SceVfsPath) | |
| VITASDK_BUILD_ASSERT_EQ (0x14, SceVfsMountData) | |
| VITASDK_BUILD_ASSERT_EQ (0x100, SceVfsMount) | |
| VITASDK_BUILD_ASSERT_EQ (0x100, SceVfsVnode) | |
| VITASDK_BUILD_ASSERT_EQ (0x40, SceVfsFile) | |
| #define | SCE_VFS_TYPE_FS (0x00000000) |
| #define | SCE_VFS_TYPE_DEVFS (0x00000010) |
| #define | SCE_VFS_FS_TYPE_FS (0x01) |
| All exfat mounts. | |
| #define | SCE_VFS_FS_TYPE_PFS (0x03) |
| PFS mounts. | |
| #define | SCE_VFS_FS_TYPE_HOSTFS (0x04) |
| host0: | |
| #define | SCE_VFS_FS_TYPE_BLKDEV (0x10) |
| sdstor0:, md0: | |
| #define | SCE_VFS_FS_TYPE_CHRDEV (0x20) |
| tty0: | |
| #define | SCE_VFS_MOUNT_TYPE_PFS (0x00000001) |
| PFS mounts. | |
| #define | SCE_VFS_MOUNT_TYPE_FSROOT (0x00000002) |
| Standard Root File System. | |
| #define | SCE_VFS_MOUNT_TYPE_DEVFS (0x00000003) |
| Device File System. | |
| #define | SCE_VFS_MOUNT_TYPE_STACKFS (0x00000005) |
| Loop File System (File system mounted from a file) | |
| #define | SCE_VFS_MOUNT_TYPE_HOSTFS (0x00000006) |
| Hostfs. | |
| #define | SCE_VFS_MOUNT_FLAG_TYPE_MASK (0x000000FF) |
| #define | SCE_VFS_MOUNT_FLAG_RDONLY (0x00001000) |
| Read-only mount. | |
| #define | SCE_VFS_MOUNT_FLAG_NOBUF (0x00002000) |
| Disables VFS Buffer Cache. | |
| #define | SCE_VFS_MOUNT_FLAG_NUMBERED (0x00004000) |
| Files for this mountpoint are treated as numbered extensions of the assignName. | |
| #define | SCE_VFS_MOUNT_FLAG_REMOTE (0x00008000) |
| Prevents ncache entry of failed lookups. Used on host0: | |
| #define | SCE_VFS_MOUNT_FLAG_INTERNAL (0x00010000) |
| #define | SCE_VFS_MOUNT_FLAG_EXTERNAL (0x00020000) |
| #define | SCE_VFS_MOUNT_FLAG_WRITE_CACHE (0x00040000) |
| Allow write-caching. Default behavior is to flush buffer cache after write. | |
| #define | SCE_VFS_MOUNT_FLAG_NO_RECLAIM (0x00100000) |
| Prevents Vnodes from being reclaimed. Only set internally for devfs. | |
| #define | SCE_VNODE_TYPE_REG (0x00000001) |
| Regular file. | |
| #define | SCE_VNODE_TYPE_DIR (0x00000002) |
| Regular directory. | |
| #define | SCE_VNODE_TYPE_CHR (0x00000010) |
| Character file. | |
| #define | SCE_VNODE_TYPE_ROOT (0x00001000) |
| Root vnode. | |
| #define | SCE_VNODE_TYPE_DEV (0x00002000) |
| Device vnode. | |
| #define | SCE_VNODE_TYPE_MOUNTED (0x00004000) |
| Vnode used as a backing for a mountpoint. | |
| #define | SCE_VNODE_TYPE_CHRDEV (SCE_VNODE_TYPE_DEV | SCE_VNODE_TYPE_CHR) |
| #define | SCE_VNODE_TYPE_ROOTDIR (SCE_VNODE_TYPE_ROOT | SCE_VNODE_TYPE_DIR) |
| Root directory. | |
| #define | SCE_VNODE_TYPE_ROOTDIR_DEVFS (0x10000 | 0x20) |
| Root directory on devfs mountpoints. | |
| #define | SCE_VNODE_STATE_ACTIVE (0x00000001) |
| Vnode is active and valid for all operations. | |
| #define | SCE_VNODE_STATE_INACTIVE (0x00000100) |
| Vnode is inactive and may be pending deletion or otherwise. | |
| #define | SCE_VNODE_STATE_UNMOUNTED (0x00000200) |
| #define | SCE_VNODE_STATE_DELETED (0x00000400) |
| #define | SCE_VNODE_STATE_RECLAIMED (0x00002000) |
| #define | SCE_VNODE_STATE_NEW (0x00008000) |
| #define | SCE_VFS_FILE_STATE_OPEN (0x00000001) |
| File is open. | |
| #define | SCE_VFS_FILE_STATE_CLOSED (0x00000200) |
| File is closed. | |
| #define | SCE_VFS_FILE_STATE_UNK (0x00000800) |
| Unknown status. | |
| #define | SCE_VFS_FILE_STATE_DUMMY (0x00010000) |
| Dummy file. | |
VFS Operation Arguments and Callback Table | |
| VITASDK_BUILD_ASSERT_EQ (0x8, SceVfsOpMountArgs) | |
| VITASDK_BUILD_ASSERT_EQ (0x8, SceVfsOpUmountArgs) | |
| VITASDK_BUILD_ASSERT_EQ (0xC, SceVfsOpSetRootArgs) | |
| VITASDK_BUILD_ASSERT_EQ (0xC, SceVfsOpGetRootArgs) | |
| VITASDK_BUILD_ASSERT_EQ (0x8, SceVfsOpSyncArgs) | |
| VITASDK_BUILD_ASSERT_EQ (0x4, SceVfsOpInitArgs) | |
| VITASDK_BUILD_ASSERT_EQ (0x4, SceVfsOpFiniArgs) | |
| VITASDK_BUILD_ASSERT_EQ (0x1C, SceVfsOpDevctlArg) | |
| VITASDK_BUILD_ASSERT_EQ (0x1C, SceVfsOpDecodePathElemArgs) | |
| VITASDK_BUILD_ASSERT_EQ (0x34, SceVfsOpTable) | |
VFS Core API | |
| VITASDK_BUILD_ASSERT_EQ (0x20, SceVfsMountParam) | |
| VITASDK_BUILD_ASSERT_EQ (0x8, SceVfsUmountParam) | |
| int | ksceVfsAddVfs (SceVfsInfo *vfs_info) |
| Register a VFS implementation. | |
| int | ksceVfsDeleteVfs (const char *name, SceVfsInfo **vfs_info) |
| Unegister a VFS implementation. | |
| int | vfsMount (SceVfsMountParam *param) |
| Mount a drive. | |
| int | vfsUmount (SceVfsUmountParam *param) |
| Unmount a drive. | |
| int | vfsMountForPFS (SceVfsMountParam *param) |
| Mount a drive via the mount daemon. | |
| int | vfsUmountForPFS (SceVfsUmountParam *param, int unk, int unk2) |
| Unmount a drive via the mount daemon. | |
| int | vfsLockMnt (SceVfsMount *mnt) |
| Lock the mnt. | |
| int | vfsUnlockMnt (SceVfsMount *mnt) |
| Unlock the mnt. | |
| SceBool | vfsIsLockedMnt (SceVfsMount *mnt) |
| Is the mnt lock held by the current thread ? | |
| SceUID | vfsAllocateFile (SceVfsVnode *vp, SceVfsFile **file, const char *name) |
| Allocate a new VFS file object. | |
| int | vfsFreeFile (SceVfsVnode *vp, SceUID fd) |
| Free a File object. | |
| int | vfsGetNewVnode (SceVfsMount *mnt, SceVopTable *vops, int unk, SceVfsVnode **vpp) |
| Get a new vnode from the pool. | |
| int | vfsFreeVnode (SceVfsVnode *vp) |
| Return a vnode to the pool. | |
| int | vfsLockVnode (SceVfsVnode *vp) |
| Lock a vnode. | |
| int | vfsUnlockVnode (SceVfsVnode *vp) |
| Unlock a vnode. | |
| SceBool | vfsIsOwnerVnode (SceVfsVnode *vp) |
| Does the current thread own the vnode lock. | |
| int | vfsGetVnodeName (SceVfsVnode *vp, char *name, SceSize n, SceSize *result) |
| Get the name of a vnode. | |
| #define | SCE_VFS_UMOUNT_FLAG_FORCE (0x1) |
| Force unmount. | |
Exports for Kernel.
Include the header file in your project:
Link the library to the executable:
| struct SceVfsInfo |
VFS Info defining a VFS Implementation.
| Data Fields | ||
|---|---|---|
| const SceVfsOpTable * | vfs_ops | VFS Implementation operations for mountpoint actions. |
| const char * | vfs_name | Name of the VFS implementation (Must be unique, used to identify the VFS) |
| SceSize | vfs_name_len | Length of vfs_name plus null-terminator. |
| SceUInt32 | ref_count | Internal use only. |
| SceUInt32 | type | One of SCE_VFS_TYPE_*. |
| const SceVopTable * | default_vops | Default vop table for the vnodes. |
| void * | vfs_data | Optional data that can be passed to the vfs_init callback. |
| struct SceVfsInfo * | next | Internal use only. |
| struct SceVfsPath |
VFS Path for vnode.
| Data Fields | ||
|---|---|---|
| const char * | name | Name of vnode. |
| SceSize | name_length | Length of name. |
| const char * | path | Full path name is from. |
| struct SceVfsMountData |
Mountpoint Data.
| Data Fields | ||
|---|---|---|
| const char * | assign_name |
Assigned name for the mount point. Must end with ':', typically in format <mnt>0: |
| const char * | fs_name | Name of the FS being mounted. |
| const char * | blockdev_name | Path to the block device. |
| const char * | blockdev_name_no_part | Path to the block device without a partition specified (used as a fallback if blockdev_name isn't found) |
| SceUInt32 | mnt_id | Mountpoint ID (example: 0xF00 for uma0:) |
| struct SceVfsMount |
| Data Fields | ||
|---|---|---|
| SceKernelFastMutex | fast_mutex | |
| SceVfsVnode * | mnt_vnode | |
| SceUID | allocator | |
| SceUInt32 | state | |
| SceUInt8 | fs_type | One of SCE_VFS_FS_TYPE_*. |
| SceUInt16 | opt | |
| SceUInt32 | mnt_flags | ORed together SCE_VFS_MOUNT_FLAG_* flags. |
| SceVfsVnode * | vnode_list | |
| SceUInt32 | vnode_num | |
| SceVfsInfo * | mnt_vfs_inf | |
| SceUInt32 | mnt_ref_count | |
| SceUInt32 | opened_entry_num | |
| SceUInt32 | available_entry_num | |
| SceUID | pid | |
| SceVfsMount * | mnted_on_list | |
| SceVfsMount * | mnted_on_list_prev | |
| SceVfsMount * | mnt_list_next | |
| SceVfsMountData * | mnt_data | |
| char | path[64] | |
| SceUInt32 | default_io_cache_size | |
| void * | data | VFS Implementation defined mount point data. |
| struct FdLock * | fd_lock | |
| struct Fumount * | fumount | |
| SceUInt32 | opaque[4] | |
| SceUInt32 | opaque2[4] | |
| SceUInt8 | padding[16] | |
| struct SceVfsVnode |
VFS Vnode.
The most fundamental aspect of the VFS. Vnodes represent every individual file or directory which has been looked-up or accessed.
| Data Fields | ||
|---|---|---|
| struct SceVfsVnode.vdlock | vdlock | |
| SceUInt8 | padding[44] | |
| struct SceVfsVnode.core | core | |
| SceUInt8 | padding2[40] | |
| struct SceVfsFile |
VFS File.
The file structure is contained within the SceUIDVfsFileObject structure, and represents file handles in the VFS.
| Data Fields | ||
|---|---|---|
| SceUInt32 | is_dir | |
| SceUInt32 | flags | |
| SceOff | position | |
| SceUInt32 | state | |
| SceUID | pid | |
| SceVfsVnode * | vp | |
| SceVfsFile * | next | |
| SceUInt32 | fd | File descriptor provided and used by VFS implementation. |
| SceUInt16 | flock_busy_count | |
| SceUInt8 | is_locked | |
| SceUInt8 | has_flock_ent | |
| struct FdLock * | fd_lock | |
| SceUInt32 | idata | |
| struct DebugPath * | debug_path | |
| SceUInt32 | ioSchedData[3] | |
| struct SceVfsOpMountArgs |
| Data Fields | ||
|---|---|---|
| SceVfsMount * | mnt | |
| SceVfsPath * | dev_file_path | Path to the device file. |
| struct SceVfsOpUmountArgs |
| Data Fields | ||
|---|---|---|
| SceVfsMount * | mnt | |
| int | flags | |
| struct SceVfsOpSetRootArgs |
| Data Fields | ||
|---|---|---|
| SceVfsMount * | mnt | |
| int | unk | |
| struct SceVfsVnode * | vp | |
| struct SceVfsOpGetRootArgs |
| Data Fields | ||
|---|---|---|
| SceVfsMount * | mnt | |
| int | unk | |
| struct SceVfsVnode ** | vpp | |
| struct SceVfsOpSyncArgs |
| Data Fields | ||
|---|---|---|
| SceVfsMount * | mnt | |
| int | flags | |
| struct SceVfsOpInitArgs |
| Data Fields | ||
|---|---|---|
| SceVfsInfo * | vfs_inf | |
| struct SceVfsOpFiniArgs |
| Data Fields | ||
|---|---|---|
| SceVfsInfo * | vfs_inf | |
| struct SceVfsOpDevctlArg |
| Data Fields | ||
|---|---|---|
| SceVfsMount * | mnt | |
| const char * | dev | |
| unsigned int | cmd | |
| const void * | arg | |
| SceSize | arg_len | |
| void * | buf | |
| SceSize | buf_len | |
| struct SceVfsOpDecodePathElemArgs |
| Data Fields | ||
|---|---|---|
| SceVfsMount * | mnt | |
| const char * | path | |
| const char ** | path2 | |
| const char ** | path3 | |
| char * | buf | |
| SceSize | buf_len | |
| SceSize * | decode_len | |
| struct SceVfsOpTable |
Data Fields | |
| int(* | vfs_mount )(SceVfsOpMountArgs *argp) |
| int(* | vfs_umount )(SceVfsOpUmountArgs *argp) |
| int(* | vfs_set_root )(SceVfsOpSetRootArgs *argp) |
| int(* | vfs_get_root )(SceVfsOpGetRootArgs *argp) |
| void * | reserved [2] |
| int(* | vfs_sync )(SceVfsOpSyncArgs *argp) |
| void * | reserved2 |
| int(* | vfs_init )(SceVfsOpInitArgs *argp) |
| int(* | vfs_fini )(SceVfsOpFiniArgs *argp) |
| void * | reserved3 |
| int(* | vfs_devctl )(SceVfsOpDevctlArg *arg) |
| int(* | vfs_decode_path_elem )(SceVfsOpDecodePathElemArgs *argp) |
| struct SceVopOpenArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsPath * | path | |
| int | flags | |
| SceVfsFile * | file | |
| struct SceVopCreateArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | dvp | |
| SceVfsVnode ** | vpp | |
| SceVfsPath * | path | |
| int | flags | |
| int | mode | |
| struct SceVopCloseArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| struct SceVopLookupArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | dvp | |
| SceVfsVnode ** | vpp | |
| SceVfsPath * | path | |
| SceUInt32 | flags | |
| struct SceVopReadArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| void * | buf | |
| SceSize | nbyte | |
| struct SceVopWriteArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| const void * | buf | |
| SceSize | nbyte | |
| struct SceVopLseekArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| SceOff | offset | |
| int | whence | |
| struct SceVopIoctlArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| int | cmd | |
| const void * | in_data | |
| SceSize | in_len | |
| void * | out_data | |
| SceSize | out_len | |
| struct SceVopRemoveArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | dvp | |
| SceVfsVnode * | vp | |
| SceVfsPath * | path | |
| SceUInt32 | flags | |
| struct SceVopMkdirArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | dvp | |
| SceVfsVnode ** | vpp | |
| SceVfsPath * | path | |
| int | mode | |
| struct SceVopRmdirArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | dvp | |
| SceVfsVnode * | vp | |
| SceVfsPath * | path | |
| struct SceVopDopenAgrs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsPath * | path | |
| SceVfsFile * | file | |
| struct SceVopDcloseArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| struct SceVopDreadArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| SceIoDirent * | dir | |
| struct SceVopGetstatArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsPath * | path | |
| SceIoStat * | stat | |
| struct SceVopChstatArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsPath * | path | |
| SceIoStat * | stat | |
| int | bit | |
| struct SceVopFchstatArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| SceIoStat * | stat | |
| SceUInt32 | bit | |
| struct SceVopFgetstatArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| SceIoStat * | stat | |
| struct SceVopInactiveArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| struct SceVopLinkArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | fvp | |
| SceVfsVnode * | tvp | |
| struct SceVopUnlinkArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | fvp | |
| SceVfsVnode * | tvp | |
| struct SceVopSyncArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| int | flags | |
| struct SceVopRenameArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | odvp | |
| SceVfsVnode * | ovp | |
| SceVfsPath * | old_path | |
| SceVfsVnode * | ndvp | |
| SceVfsVnode ** | nvpp | |
| SceVfsPath * | new_path | |
| struct SceVopPreadArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| void * | buf | |
| SceSize | nbyte | |
| SceOff | offset | |
| struct SceVopPwriteArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| const void * | buf | |
| SceSize | nbyte | |
| SceOff | offset | |
| struct SceVopWhiteoutArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | dvp | |
| SceVfsVnode * | vp | |
| SceVfsPath * | old_path | |
| SceVfsPath * | new_path | |
| struct SceVopCleanupArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceVfsFile * | file | |
| struct SceVopZerofillArgs |
| Data Fields | ||
|---|---|---|
| SceVfsVnode * | vp | |
| SceUInt64 | unk | |
| SceUInt64 | unk1 | |
| SceUInt64 | unk2 | |
| struct SceVopTable |
| struct SceVfsMountParam |
Parameters for vfsMount and vfsMountForPFS.
| Data Fields | ||
|---|---|---|
| const char * | root_path | This is the internal root path of the mountpoint. (example: /ux/exfat for ux0:) |
| const char * | blockdev_name | Overrides blockdevName in misc->blockdevName. |
| SceUInt8 | fs_type | One of SCE_VFS_FS_TYPE_*. |
| SceUInt16 | opt | Used to identify the IO Scheduler queue to use for the mountpoint. |
| SceUInt32 | mnt_flags | ORed together SCE_VFS_MOUNT_FLAG_* flags. |
| const char * | vfs_name | Name of the VFS to use for the mountpoint. |
| void * | data | To be passed to the created mountpoint. |
| SceVfsMountData * | misc | |
| SceVopTable * | vops | Overrides defaultVops in the VFS Info for the root vnode of the VFS. |
| struct SceVfsUmountParam |
| struct SceVfsVnode.vdlock |
| struct SceVfsVnode.core |
| Data Fields | ||
|---|---|---|
| SceVopTable * | ops | |
| SceUInt32 | node_inf | Field for private VFS vnode info. |
| void * | node_data | Pointer for private VFS data. |
| SceVfsMount * | mnt | |
| SceVfsVnode * | dd | Parent vnode. |
| SceVfsVnode * | next | |
| SceUInt32 | ref_count | |
| struct BuffCache * | bc | |
| SceUInt32 | fid[2] | |
| struct Flock * | flock | |
| SceUID | allocator | |
| struct Ncache * | ncache | |
| SceUInt32 | state | One of SCE_VNODE_STATE_*. |
| SceUInt32 | type | ORed together SCE_VNODE_TYPE_* flags. |
| SceVopTable * | vop_tbl | Internal use only. |
| SceUInt64 | size | |
| SceUInt32 | acl_data[2] | Typically holds st_attr in acl_data[0]. |
| SceVfsFile * | fd_list | |
| SceUInt32 | fd_num | |
| SceVfsVnode * | link_to | |
| SceUInt32 | linked_num | |
| SceUInt8 | unused[48] | |
| SceUInt32 | mnt_opt | |
| SceUInt32 | unk_0xd4 | |
| #define SCE_VFS_TYPE_FS (0x00000000) |
| #define SCE_VFS_TYPE_DEVFS (0x00000010) |
| #define SCE_VFS_FS_TYPE_FS (0x01) |
All exfat mounts.
| #define SCE_VFS_FS_TYPE_PFS (0x03) |
PFS mounts.
| #define SCE_VFS_FS_TYPE_HOSTFS (0x04) |
host0:
| #define SCE_VFS_FS_TYPE_BLKDEV (0x10) |
sdstor0:, md0:
| #define SCE_VFS_FS_TYPE_CHRDEV (0x20) |
tty0:
| #define SCE_VFS_MOUNT_TYPE_PFS (0x00000001) |
PFS mounts.
| #define SCE_VFS_MOUNT_TYPE_FSROOT (0x00000002) |
Standard Root File System.
| #define SCE_VFS_MOUNT_TYPE_DEVFS (0x00000003) |
Device File System.
| #define SCE_VFS_MOUNT_TYPE_STACKFS (0x00000005) |
Loop File System (File system mounted from a file)
| #define SCE_VFS_MOUNT_TYPE_HOSTFS (0x00000006) |
Hostfs.
| #define SCE_VFS_MOUNT_FLAG_TYPE_MASK (0x000000FF) |
| #define SCE_VFS_MOUNT_FLAG_RDONLY (0x00001000) |
Read-only mount.
| #define SCE_VFS_MOUNT_FLAG_NOBUF (0x00002000) |
Disables VFS Buffer Cache.
| #define SCE_VFS_MOUNT_FLAG_NUMBERED (0x00004000) |
Files for this mountpoint are treated as numbered extensions of the assignName.
Example: tty mountpoint devices (tty0:, tty1:) internally are handled /tty/tty0:
| #define SCE_VFS_MOUNT_FLAG_REMOTE (0x00008000) |
Prevents ncache entry of failed lookups. Used on host0:
| #define SCE_VFS_MOUNT_FLAG_INTERNAL (0x00010000) |
| #define SCE_VFS_MOUNT_FLAG_EXTERNAL (0x00020000) |
| #define SCE_VFS_MOUNT_FLAG_WRITE_CACHE (0x00040000) |
Allow write-caching. Default behavior is to flush buffer cache after write.
| #define SCE_VFS_MOUNT_FLAG_NO_RECLAIM (0x00100000) |
Prevents Vnodes from being reclaimed. Only set internally for devfs.
| #define SCE_VNODE_TYPE_REG (0x00000001) |
Regular file.
| #define SCE_VNODE_TYPE_DIR (0x00000002) |
Regular directory.
| #define SCE_VNODE_TYPE_CHR (0x00000010) |
Character file.
| #define SCE_VNODE_TYPE_ROOT (0x00001000) |
Root vnode.
| #define SCE_VNODE_TYPE_DEV (0x00002000) |
Device vnode.
| #define SCE_VNODE_TYPE_MOUNTED (0x00004000) |
Vnode used as a backing for a mountpoint.
| #define SCE_VNODE_TYPE_CHRDEV (SCE_VNODE_TYPE_DEV | SCE_VNODE_TYPE_CHR) |
| #define SCE_VNODE_TYPE_ROOTDIR (SCE_VNODE_TYPE_ROOT | SCE_VNODE_TYPE_DIR) |
Root directory.
| #define SCE_VNODE_TYPE_ROOTDIR_DEVFS (0x10000 | 0x20) |
Root directory on devfs mountpoints.
| #define SCE_VNODE_STATE_ACTIVE (0x00000001) |
Vnode is active and valid for all operations.
| #define SCE_VNODE_STATE_INACTIVE (0x00000100) |
Vnode is inactive and may be pending deletion or otherwise.
| #define SCE_VNODE_STATE_UNMOUNTED (0x00000200) |
| #define SCE_VNODE_STATE_DELETED (0x00000400) |
| #define SCE_VNODE_STATE_RECLAIMED (0x00002000) |
| #define SCE_VNODE_STATE_NEW (0x00008000) |
| #define SCE_VFS_FILE_STATE_OPEN (0x00000001) |
File is open.
| #define SCE_VFS_FILE_STATE_CLOSED (0x00000200) |
File is closed.
| #define SCE_VFS_FILE_STATE_UNK (0x00000800) |
Unknown status.
| #define SCE_VFS_FILE_STATE_DUMMY (0x00010000) |
Dummy file.
| #define SCE_VFS_UMOUNT_FLAG_FORCE (0x1) |
Force unmount.
| VITASDK_BUILD_ASSERT_EQ | ( | 0x20 | , |
| SceVfsInfo | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0xC | , |
| SceVfsPath | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x14 | , |
| SceVfsMountData | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x100 | , |
| SceVfsMount | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x100 | , |
| SceVfsVnode | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x40 | , |
| SceVfsFile | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x8 | , |
| SceVfsOpMountArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x8 | , |
| SceVfsOpUmountArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0xC | , |
| SceVfsOpSetRootArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0xC | , |
| SceVfsOpGetRootArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x8 | , |
| SceVfsOpSyncArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x4 | , |
| SceVfsOpInitArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x4 | , |
| SceVfsOpFiniArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x1C | , |
| SceVfsOpDevctlArg | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x1C | , |
| SceVfsOpDecodePathElemArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x34 | , |
| SceVfsOpTable | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x10 | , |
| SceVopOpenArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x14 | , |
| SceVopCreateArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x8 | , |
| SceVopCloseArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x10 | , |
| SceVopLookupArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x10 | , |
| SceVopReadArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x10 | , |
| SceVopWriteArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x18 | , |
| SceVopLseekArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x1C | , |
| SceVopIoctlArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x10 | , |
| SceVopRemoveArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x10 | , |
| SceVopMkdirArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0xC | , |
| SceVopRmdirArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0xC | , |
| SceVopDopenAgrs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x8 | , |
| SceVopDcloseArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0xC | , |
| SceVopDreadArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0xC | , |
| SceVopGetstatArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x10 | , |
| SceVopChstatArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x10 | , |
| SceVopFchstatArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0xC | , |
| SceVopFgetstatArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x4 | , |
| SceVopInactiveArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x8 | , |
| SceVopLinkArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x8 | , |
| SceVopUnlinkArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0xC | , |
| SceVopSyncArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x18 | , |
| SceVopRenameArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x18 | , |
| SceVopPreadArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x18 | , |
| SceVopPwriteArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x10 | , |
| SceVopWhiteoutArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x8 | , |
| SceVopCleanupArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x20 | , |
| SceVopZerofillArgs | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x74 | , |
| SceVopTable | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x20 | , |
| SceVfsMountParam | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x8 | , |
| SceVfsUmountParam | |||
| ) |
| int ksceVfsAddVfs | ( | SceVfsInfo * | vfs_info | ) |
Register a VFS implementation.
| vfs_info | - The VFS Info structure for the VFS. (This pointer should remain persistent until the VFS is deleted) |
| int ksceVfsDeleteVfs | ( | const char * | name, |
| SceVfsInfo ** | vfs_info | ||
| ) |
Unegister a VFS implementation.
| name | - The name of the VFS implementation to unregister |
| vfs_info | - The VFS Info structure for the VFS. (This pointer should remain persistent until the VFS is deleted) |
| int vfsMount | ( | SceVfsMountParam * | param | ) |
Mount a drive.
| param | - The mount parameters |
| int vfsUmount | ( | SceVfsUmountParam * | param | ) |
Unmount a drive.
| param | - The unmount parameters |
| int vfsMountForPFS | ( | SceVfsMountParam * | param | ) |
Mount a drive via the mount daemon.
| param | - The mount parameters |
| int vfsUmountForPFS | ( | SceVfsUmountParam * | param, |
| int | unk, | ||
| int | unk2 | ||
| ) |
Unmount a drive via the mount daemon.
| param | - The unmount parameters |
| int vfsLockMnt | ( | SceVfsMount * | mnt | ) |
Lock the mnt.
| mnt | - The mountpoint to lock |
| int vfsUnlockMnt | ( | SceVfsMount * | mnt | ) |
Unlock the mnt.
| mnt | - The mountpoint to unlock |
| SceBool vfsIsLockedMnt | ( | SceVfsMount * | mnt | ) |
Is the mnt lock held by the current thread ?
| mnt | - The mount point to query |
| SceUID vfsAllocateFile | ( | SceVfsVnode * | vp, |
| SceVfsFile ** | file, | ||
| const char * | name | ||
| ) |
Allocate a new VFS file object.
| vp | - The vnode the file should be referencing |
| file | - The pointer reference the file will be returned to |
| name | - The name of the file |
| int vfsFreeFile | ( | SceVfsVnode * | vp, |
| SceUID | fd | ||
| ) |
Free a File object.
| vp | - Vnode for the file handle being freed |
| fd | - UID of the file being freed |
| int vfsGetNewVnode | ( | SceVfsMount * | mnt, |
| SceVopTable * | vops, | ||
| int | unk, | ||
| SceVfsVnode ** | vpp | ||
| ) |
Get a new vnode from the pool.
| mnt | - The mountpoint the vnode will be attached to |
| vops | - The vnode vop table for executing VFS Vops |
| unk | - Must be 0 |
| vpp | - The pointer reference to return the vnode to |
| int vfsFreeVnode | ( | SceVfsVnode * | vp | ) |
Return a vnode to the pool.
| vp | - The vnode to return |
| int vfsLockVnode | ( | SceVfsVnode * | vp | ) |
Lock a vnode.
| vp | - Target vnode |
| int vfsUnlockVnode | ( | SceVfsVnode * | vp | ) |
Unlock a vnode.
| vp | - Target vnode |
| SceBool vfsIsOwnerVnode | ( | SceVfsVnode * | vp | ) |
Does the current thread own the vnode lock.
| vp | - Target vnode |
| int vfsGetVnodeName | ( | SceVfsVnode * | vp, |
| char * | name, | ||
| SceSize | n, | ||
| SceSize * | result | ||
| ) |
Get the name of a vnode.
| vp | - Target vnode |
| name | - Buffer for the name |
| n | - Buffer size |
| result | - Length of the returned name |
| int ksceVopOpen | ( | SceVfsVnode * | vp, |
| SceVfsPath * | path, | ||
| int | flags, | ||
| SceVfsFile * | file | ||
| ) |
| int ksceVopCreate | ( | SceVfsVnode * | dvp, |
| SceVfsVnode ** | vpp, | ||
| SceVfsPath * | path, | ||
| int | flags, | ||
| int | mode | ||
| ) |
| int ksceVopClose | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file | ||
| ) |
| int ksceVopLookup | ( | SceVfsVnode * | dvp, |
| SceVfsVnode ** | vpp, | ||
| SceVfsPath * | path, | ||
| SceUInt32 | flags | ||
| ) |
| int ksceVopRead | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file, | ||
| void * | data, | ||
| SceSize | nbyte, | ||
| SceSize * | result | ||
| ) |
| int ksceVopWrite | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file, | ||
| const void * | data, | ||
| SceSize | nbyte, | ||
| SceSize * | result | ||
| ) |
| SceOff ksceVopLseek | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file, | ||
| SceOff | offset, | ||
| int | whence | ||
| ) |
| int ksceVopIoctl | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file, | ||
| int | cmd, | ||
| const void * | in_data, | ||
| SceSize | in_len, | ||
| void * | out_data, | ||
| SceSize | out_len | ||
| ) |
| int ksceVopRemove | ( | SceVfsVnode * | dvp, |
| SceVfsVnode * | vp, | ||
| SceVfsPath * | path, | ||
| SceUInt32 | flags | ||
| ) |
| int ksceVopMkdir | ( | SceVfsVnode * | dvp, |
| SceVfsVnode ** | vpp, | ||
| SceVfsPath * | path, | ||
| int | mode | ||
| ) |
| int ksceVopRmdir | ( | SceVfsVnode * | dvp, |
| SceVfsVnode * | vp, | ||
| SceVfsPath * | path | ||
| ) |
| int ksceVopDopen | ( | SceVfsVnode * | vp, |
| SceVfsPath * | path, | ||
| SceVfsFile * | file | ||
| ) |
| int ksceVopDclose | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file | ||
| ) |
| int ksceVopDread | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file, | ||
| SceIoDirent * | dir | ||
| ) |
| int ksceVopGetstat | ( | SceVfsVnode * | vp, |
| SceVfsPath * | path, | ||
| SceIoStat * | stat | ||
| ) |
| int ksceVopChstat | ( | SceVfsVnode * | vp, |
| SceVfsPath * | path, | ||
| SceIoStat * | stat, | ||
| int | bit | ||
| ) |
| int ksceVopRename | ( | SceVfsVnode * | odvp, |
| SceVfsVnode * | ovp, | ||
| SceVfsPath * | old_path, | ||
| SceVfsVnode * | ndvp, | ||
| SceVfsVnode ** | nvpp, | ||
| SceVfsPath * | new_path | ||
| ) |
| int ksceVopPread | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file, | ||
| void * | data, | ||
| SceSize | nbyte, | ||
| SceOff | offset, | ||
| SceSize * | pResult | ||
| ) |
| int ksceVopPwrite | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file, | ||
| const void * | data, | ||
| SceSize | nbyte, | ||
| SceOff | offset, | ||
| SceSize * | result | ||
| ) |
| int ksceVopInactive | ( | SceVfsVnode * | vp | ) |
| int ksceVopSync | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file, | ||
| int | flags | ||
| ) |
| int ksceVopFgetstat | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file, | ||
| SceIoStat * | stat | ||
| ) |
| int ksceVopFchstat | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file, | ||
| SceIoStat * | stat, | ||
| int | bit | ||
| ) |
| int ksceVopLink | ( | SceVfsVnode * | fvp, |
| SceVfsVnode * | tvp | ||
| ) |
| int ksceVopUnlink | ( | SceVfsVnode * | fvp, |
| SceVfsVnode * | tvp | ||
| ) |
| int ksceVopWhiteout | ( | SceVfsVnode * | dvp, |
| SceVfsVnode * | vp, | ||
| SceVfsPath * | old_path, | ||
| SceVfsPath * | new_path | ||
| ) |
| int ksceVopCleanup | ( | SceVfsVnode * | vp, |
| SceVfsFile * | file | ||
| ) |
| int ksceVopZerofill | ( | SceVfsVnode * | vp, |
| SceUInt64 | unk, | ||
| SceUInt64 | unk1, | ||
| SceUInt64 | unk2 | ||
| ) |
| const SceVfsOpTable* SceVfsInfo::vfs_ops |
VFS Implementation operations for mountpoint actions.
| const char* SceVfsInfo::vfs_name |
Name of the VFS implementation (Must be unique, used to identify the VFS)
| SceSize SceVfsInfo::vfs_name_len |
Length of vfs_name plus null-terminator.
| SceUInt32 SceVfsInfo::ref_count |
Internal use only.
| SceUInt32 SceVfsInfo::type |
One of SCE_VFS_TYPE_*.
| const SceVopTable* SceVfsInfo::default_vops |
Default vop table for the vnodes.
| void* SceVfsInfo::vfs_data |
Optional data that can be passed to the vfs_init callback.
| struct SceVfsInfo* SceVfsInfo::next |
Internal use only.
| const char* SceVfsPath::name |
Name of vnode.
| SceSize SceVfsPath::name_length |
Length of name.
| const char* SceVfsPath::path |
Full path name is from.
| const char* SceVfsMountData::assign_name |
Assigned name for the mount point. Must end with ':', typically in format <mnt>0:
| const char* SceVfsMountData::fs_name |
Name of the FS being mounted.
| const char* SceVfsMountData::blockdev_name |
Path to the block device.
| const char* SceVfsMountData::blockdev_name_no_part |
Path to the block device without a partition specified (used as a fallback if blockdev_name isn't found)
| SceUInt32 SceVfsMountData::mnt_id |
Mountpoint ID (example: 0xF00 for uma0:)
| SceKernelFastMutex SceVfsMount::fast_mutex |
| SceVfsVnode* SceVfsMount::mnt_vnode |
| SceUID SceVfsMount::allocator |
| SceUInt32 SceVfsMount::state |
| SceUInt8 SceVfsMount::fs_type |
One of SCE_VFS_FS_TYPE_*.
| SceUInt16 SceVfsMount::opt |
| SceUInt32 SceVfsMount::mnt_flags |
ORed together SCE_VFS_MOUNT_FLAG_* flags.
| SceVfsVnode* SceVfsMount::vnode_list |
| SceUInt32 SceVfsMount::vnode_num |
| SceVfsInfo* SceVfsMount::mnt_vfs_inf |
| SceUInt32 SceVfsMount::mnt_ref_count |
| SceUInt32 SceVfsMount::opened_entry_num |
| SceUInt32 SceVfsMount::available_entry_num |
| SceUID SceVfsMount::pid |
| SceVfsMount* SceVfsMount::mnted_on_list |
| SceVfsMount* SceVfsMount::mnted_on_list_prev |
| SceVfsMount* SceVfsMount::mnt_list_next |
| SceVfsMountData* SceVfsMount::mnt_data |
| char SceVfsMount::path[64] |
| SceUInt32 SceVfsMount::default_io_cache_size |
| void* SceVfsMount::data |
VFS Implementation defined mount point data.
| struct FdLock* SceVfsMount::fd_lock |
| struct Fumount* SceVfsMount::fumount |
| SceUInt32 SceVfsMount::opaque[4] |
| SceUInt32 SceVfsMount::opaque2[4] |
| SceUInt8 SceVfsMount::padding[16] |
| SceUInt32 { ... } ::waiter |
| SceUID { ... } ::owner_id |
| SceUInt32 { ... } ::recursive_count |
| SceUID { ... } ::wait_id |
| SceUInt32 { ... } ::wait_pattern |
| struct { ... } SceVfsVnode::vdlock |
| SceUInt8 SceVfsVnode::padding[44] |
| SceVopTable* { ... } ::ops |
| SceUInt32 { ... } ::node_inf |
Field for private VFS vnode info.
| void* { ... } ::node_data |
Pointer for private VFS data.
| SceVfsMount* { ... } ::mnt |
| SceVfsVnode* { ... } ::dd |
Parent vnode.
| SceVfsVnode* { ... } ::next |
| SceUInt32 { ... } ::ref_count |
| struct BuffCache* { ... } ::bc |
| SceUInt32 { ... } ::fid[2] |
| struct Flock* { ... } ::flock |
| SceUID { ... } ::allocator |
| struct Ncache* { ... } ::ncache |
| SceUInt32 { ... } ::state |
One of SCE_VNODE_STATE_*.
| SceUInt32 { ... } ::type |
ORed together SCE_VNODE_TYPE_* flags.
| SceVopTable* { ... } ::vop_tbl |
Internal use only.
| SceUInt64 { ... } ::size |
| SceUInt32 { ... } ::acl_data[2] |
Typically holds st_attr in acl_data[0].
| SceVfsFile* { ... } ::fd_list |
| SceUInt32 { ... } ::fd_num |
| SceVfsVnode* { ... } ::link_to |
| SceUInt32 { ... } ::linked_num |
| SceUInt8 { ... } ::unused[48] |
| SceUInt32 { ... } ::mnt_opt |
| SceUInt32 { ... } ::unk_0xd4 |
| struct { ... } SceVfsVnode::core |
| SceUInt8 SceVfsVnode::padding2[40] |
| SceUInt32 SceVfsFile::is_dir |
| SceUInt32 SceVfsFile::flags |
| SceOff SceVfsFile::position |
| SceUInt32 SceVfsFile::state |
| SceUID SceVfsFile::pid |
| SceVfsVnode* SceVfsFile::vp |
| SceVfsFile* SceVfsFile::next |
| SceUInt32 SceVfsFile::fd |
File descriptor provided and used by VFS implementation.
| SceUInt16 SceVfsFile::flock_busy_count |
| SceUInt8 SceVfsFile::is_locked |
| SceUInt8 SceVfsFile::has_flock_ent |
| struct FdLock* SceVfsFile::fd_lock |
| SceUInt32 SceVfsFile::idata |
| struct DebugPath* SceVfsFile::debug_path |
| SceUInt32 SceVfsFile::ioSchedData[3] |
| SceVfsMount* SceVfsOpMountArgs::mnt |
| SceVfsPath* SceVfsOpMountArgs::dev_file_path |
Path to the device file.
| SceVfsMount* SceVfsOpUmountArgs::mnt |
| int SceVfsOpUmountArgs::flags |
| SceVfsMount* SceVfsOpSetRootArgs::mnt |
| int SceVfsOpSetRootArgs::unk |
| struct SceVfsVnode* SceVfsOpSetRootArgs::vp |
| SceVfsMount* SceVfsOpGetRootArgs::mnt |
| int SceVfsOpGetRootArgs::unk |
| struct SceVfsVnode** SceVfsOpGetRootArgs::vpp |
| SceVfsMount* SceVfsOpSyncArgs::mnt |
| int SceVfsOpSyncArgs::flags |
| SceVfsInfo* SceVfsOpInitArgs::vfs_inf |
| SceVfsInfo* SceVfsOpFiniArgs::vfs_inf |
| SceVfsMount* SceVfsOpDevctlArg::mnt |
| const char* SceVfsOpDevctlArg::dev |
| unsigned int SceVfsOpDevctlArg::cmd |
| const void* SceVfsOpDevctlArg::arg |
| SceSize SceVfsOpDevctlArg::arg_len |
| void* SceVfsOpDevctlArg::buf |
| SceSize SceVfsOpDevctlArg::buf_len |
| SceVfsMount* SceVfsOpDecodePathElemArgs::mnt |
| const char* SceVfsOpDecodePathElemArgs::path |
| const char** SceVfsOpDecodePathElemArgs::path2 |
| const char** SceVfsOpDecodePathElemArgs::path3 |
| char* SceVfsOpDecodePathElemArgs::buf |
| SceSize SceVfsOpDecodePathElemArgs::buf_len |
| SceSize* SceVfsOpDecodePathElemArgs::decode_len |
| int(* SceVfsOpTable::vfs_mount) (SceVfsOpMountArgs *argp) |
| int(* SceVfsOpTable::vfs_umount) (SceVfsOpUmountArgs *argp) |
| int(* SceVfsOpTable::vfs_set_root) (SceVfsOpSetRootArgs *argp) |
| int(* SceVfsOpTable::vfs_get_root) (SceVfsOpGetRootArgs *argp) |
| void* SceVfsOpTable::reserved[2] |
| int(* SceVfsOpTable::vfs_sync) (SceVfsOpSyncArgs *argp) |
| void* SceVfsOpTable::reserved2 |
| int(* SceVfsOpTable::vfs_init) (SceVfsOpInitArgs *argp) |
| int(* SceVfsOpTable::vfs_fini) (SceVfsOpFiniArgs *argp) |
| void* SceVfsOpTable::reserved3 |
| int(* SceVfsOpTable::vfs_devctl) (SceVfsOpDevctlArg *arg) |
| int(* SceVfsOpTable::vfs_decode_path_elem) (SceVfsOpDecodePathElemArgs *argp) |
| SceVfsVnode* SceVopOpenArgs::vp |
| SceVfsPath* SceVopOpenArgs::path |
| int SceVopOpenArgs::flags |
| SceVfsFile* SceVopOpenArgs::file |
| SceVfsVnode* SceVopCreateArgs::dvp |
| SceVfsVnode** SceVopCreateArgs::vpp |
| SceVfsPath* SceVopCreateArgs::path |
| int SceVopCreateArgs::flags |
| int SceVopCreateArgs::mode |
| SceVfsVnode* SceVopCloseArgs::vp |
| SceVfsFile* SceVopCloseArgs::file |
| SceVfsVnode* SceVopLookupArgs::dvp |
| SceVfsVnode** SceVopLookupArgs::vpp |
| SceVfsPath* SceVopLookupArgs::path |
| SceUInt32 SceVopLookupArgs::flags |
| SceVfsVnode* SceVopReadArgs::vp |
| SceVfsFile* SceVopReadArgs::file |
| void* SceVopReadArgs::buf |
| SceSize SceVopReadArgs::nbyte |
| SceVfsVnode* SceVopWriteArgs::vp |
| SceVfsFile* SceVopWriteArgs::file |
| const void* SceVopWriteArgs::buf |
| SceSize SceVopWriteArgs::nbyte |
| SceVfsVnode* SceVopLseekArgs::vp |
| SceVfsFile* SceVopLseekArgs::file |
| SceOff SceVopLseekArgs::offset |
| int SceVopLseekArgs::whence |
| SceVfsVnode* SceVopIoctlArgs::vp |
| SceVfsFile* SceVopIoctlArgs::file |
| int SceVopIoctlArgs::cmd |
| const void* SceVopIoctlArgs::in_data |
| SceSize SceVopIoctlArgs::in_len |
| void* SceVopIoctlArgs::out_data |
| SceSize SceVopIoctlArgs::out_len |
| SceVfsVnode* SceVopRemoveArgs::dvp |
| SceVfsVnode* SceVopRemoveArgs::vp |
| SceVfsPath* SceVopRemoveArgs::path |
| SceUInt32 SceVopRemoveArgs::flags |
| SceVfsVnode* SceVopMkdirArgs::dvp |
| SceVfsVnode** SceVopMkdirArgs::vpp |
| SceVfsPath* SceVopMkdirArgs::path |
| int SceVopMkdirArgs::mode |
| SceVfsVnode* SceVopRmdirArgs::dvp |
| SceVfsVnode* SceVopRmdirArgs::vp |
| SceVfsPath* SceVopRmdirArgs::path |
| SceVfsVnode* SceVopDopenAgrs::vp |
| SceVfsPath* SceVopDopenAgrs::path |
| SceVfsFile* SceVopDopenAgrs::file |
| SceVfsVnode* SceVopDcloseArgs::vp |
| SceVfsFile* SceVopDcloseArgs::file |
| SceVfsVnode* SceVopDreadArgs::vp |
| SceVfsFile* SceVopDreadArgs::file |
| SceIoDirent* SceVopDreadArgs::dir |
| SceVfsVnode* SceVopGetstatArgs::vp |
| SceVfsPath* SceVopGetstatArgs::path |
| SceIoStat* SceVopGetstatArgs::stat |
| SceVfsVnode* SceVopChstatArgs::vp |
| SceVfsPath* SceVopChstatArgs::path |
| SceIoStat* SceVopChstatArgs::stat |
| int SceVopChstatArgs::bit |
| SceVfsVnode* SceVopFchstatArgs::vp |
| SceVfsFile* SceVopFchstatArgs::file |
| SceIoStat* SceVopFchstatArgs::stat |
| SceUInt32 SceVopFchstatArgs::bit |
| SceVfsVnode* SceVopFgetstatArgs::vp |
| SceVfsFile* SceVopFgetstatArgs::file |
| SceIoStat* SceVopFgetstatArgs::stat |
| SceVfsVnode* SceVopInactiveArgs::vp |
| SceVfsVnode* SceVopLinkArgs::fvp |
| SceVfsVnode* SceVopLinkArgs::tvp |
| SceVfsVnode* SceVopUnlinkArgs::fvp |
| SceVfsVnode* SceVopUnlinkArgs::tvp |
| SceVfsVnode* SceVopSyncArgs::vp |
| SceVfsFile* SceVopSyncArgs::file |
| int SceVopSyncArgs::flags |
| SceVfsVnode* SceVopRenameArgs::odvp |
| SceVfsVnode* SceVopRenameArgs::ovp |
| SceVfsPath* SceVopRenameArgs::old_path |
| SceVfsVnode* SceVopRenameArgs::ndvp |
| SceVfsVnode** SceVopRenameArgs::nvpp |
| SceVfsPath* SceVopRenameArgs::new_path |
| SceVfsVnode* SceVopPreadArgs::vp |
| SceVfsFile* SceVopPreadArgs::file |
| void* SceVopPreadArgs::buf |
| SceSize SceVopPreadArgs::nbyte |
| SceOff SceVopPreadArgs::offset |
| SceVfsVnode* SceVopPwriteArgs::vp |
| SceVfsFile* SceVopPwriteArgs::file |
| const void* SceVopPwriteArgs::buf |
| SceSize SceVopPwriteArgs::nbyte |
| SceOff SceVopPwriteArgs::offset |
| SceVfsVnode* SceVopWhiteoutArgs::dvp |
| SceVfsVnode* SceVopWhiteoutArgs::vp |
| SceVfsPath* SceVopWhiteoutArgs::old_path |
| SceVfsPath* SceVopWhiteoutArgs::new_path |
| SceVfsVnode* SceVopCleanupArgs::vp |
| SceVfsFile* SceVopCleanupArgs::file |
| SceVfsVnode* SceVopZerofillArgs::vp |
| SceUInt64 SceVopZerofillArgs::unk |
| SceUInt64 SceVopZerofillArgs::unk1 |
| SceUInt64 SceVopZerofillArgs::unk2 |
| int(* SceVopTable::vop_open) (SceVopOpenArgs *argp) |
| int(* SceVopTable::vop_create) (SceVopCreateArgs *argp) |
| int(* SceVopTable::vop_close) (SceVopCloseArgs *argp) |
| int(* SceVopTable::vop_lookup) (SceVopLookupArgs *argp) |
| SceSSize(* SceVopTable::vop_read) (SceVopReadArgs *argp) |
| SceSSize(* SceVopTable::vop_write) (SceVopWriteArgs *argp) |
| SceOff(* SceVopTable::vop_lseek) (SceVopLseekArgs *argp) |
| int(* SceVopTable::vop_ioctl) (SceVopIoctlArgs *argp) |
| int(* SceVopTable::vop_remove) (SceVopRemoveArgs *argp) |
| int(* SceVopTable::vop_mkdir) (SceVopMkdirArgs *argp) |
| int(* SceVopTable::vop_rmdir) (SceVopRmdirArgs *argp) |
| int(* SceVopTable::vop_dopen) (SceVopDopenAgrs *argp) |
| int(* SceVopTable::vop_dclose) (SceVopDcloseArgs *argp) |
| int(* SceVopTable::vop_dread) (SceVopDreadArgs *argp) |
| int(* SceVopTable::vop_getstat) (SceVopGetstatArgs *argp) |
| int(* SceVopTable::vop_chstat) (SceVopChstatArgs *argp) |
| int(* SceVopTable::vop_rename) (SceVopRenameArgs *argp) |
| const void* SceVopTable::reserved |
| SceSSize(* SceVopTable::vop_pread) (SceVopPreadArgs *argp) |
| SceSSize(* SceVopTable::vop_pwrite) (SceVopPwriteArgs *argp) |
| int(* SceVopTable::vop_inactive) (SceVopInactiveArgs *argp) |
| int(* SceVopTable::vop_link) (SceVopLinkArgs *argp) |
| int(* SceVopTable::vop_unlink) (SceVopUnlinkArgs *argp) |
| int(* SceVopTable::vop_sync) (SceVopSyncArgs *argp) |
| int(* SceVopTable::vop_fgetstat) (SceVopFgetstatArgs *argp) |
| int(* SceVopTable::vop_fchstat) (SceVopFchstatArgs *argp) |
| int(* SceVopTable::vop_whiteout) (SceVopWhiteoutArgs *argp) |
| int(* SceVopTable::vop_cleanup) (SceVopCleanupArgs *argp) |
| int(* SceVopTable::vop_verofill) (SceVopZerofillArgs *argp) |
| const char* SceVfsMountParam::root_path |
This is the internal root path of the mountpoint. (example: /ux/exfat for ux0:)
| const char* SceVfsMountParam::blockdev_name |
Overrides blockdevName in misc->blockdevName.
| SceUInt8 SceVfsMountParam::fs_type |
One of SCE_VFS_FS_TYPE_*.
| SceUInt16 SceVfsMountParam::opt |
Used to identify the IO Scheduler queue to use for the mountpoint.
| SceUInt32 SceVfsMountParam::mnt_flags |
ORed together SCE_VFS_MOUNT_FLAG_* flags.
| const char* SceVfsMountParam::vfs_name |
Name of the VFS to use for the mountpoint.
| void* SceVfsMountParam::data |
To be passed to the created mountpoint.
| SceVfsMountData* SceVfsMountParam::misc |
| SceVopTable* SceVfsMountParam::vops |
Overrides defaultVops in the VFS Info for the root vnode of the VFS.
| const char* SceVfsUmountParam::assign_name |
Assigned name of the mountpoint to unmount.
| int SceVfsUmountParam::flag |
One of SCE_VFS_UMOUNT_FLAG_*.