OvmfPkg[all]
0.1
|
Data Structures | |
struct | VIRTIO_FS_CONFIG |
struct | VIRTIO_FS_FUSE_REQUEST |
struct | VIRTIO_FS_FUSE_RESPONSE |
struct | VIRTIO_FS_FUSE_NODE_RESPONSE |
struct | VIRTIO_FS_FUSE_ATTRIBUTES_RESPONSE |
struct | VIRTIO_FS_FUSE_FORGET_REQUEST |
struct | VIRTIO_FS_FUSE_GETATTR_REQUEST |
struct | VIRTIO_FS_FUSE_GETATTR_RESPONSE |
struct | VIRTIO_FS_FUSE_SETATTR_REQUEST |
struct | VIRTIO_FS_FUSE_MKDIR_REQUEST |
struct | VIRTIO_FS_FUSE_OPEN_REQUEST |
struct | VIRTIO_FS_FUSE_OPEN_RESPONSE |
struct | VIRTIO_FS_FUSE_READ_REQUEST |
struct | VIRTIO_FS_FUSE_WRITE_REQUEST |
struct | VIRTIO_FS_FUSE_WRITE_RESPONSE |
struct | VIRTIO_FS_FUSE_STATFS_RESPONSE |
struct | VIRTIO_FS_FUSE_RELEASE_REQUEST |
struct | VIRTIO_FS_FUSE_FSYNC_REQUEST |
struct | VIRTIO_FS_FUSE_FLUSH_REQUEST |
struct | VIRTIO_FS_FUSE_INIT_REQUEST |
struct | VIRTIO_FS_FUSE_INIT_RESPONSE |
struct | VIRTIO_FS_FUSE_CREATE_REQUEST |
struct | VIRTIO_FS_FUSE_DIRENTPLUS_RESPONSE |
struct | VIRTIO_FS_FUSE_RENAME2_REQUEST |
Enumerations | |
enum | VIRTIO_FS_FUSE_OPCODE { VirtioFsFuseOpLookup = 1, VirtioFsFuseOpForget = 2, VirtioFsFuseOpGetAttr = 3, VirtioFsFuseOpSetAttr = 4, VirtioFsFuseOpMkDir = 9, VirtioFsFuseOpUnlink = 10, VirtioFsFuseOpRmDir = 11, VirtioFsFuseOpOpen = 14, VirtioFsFuseOpRead = 15, VirtioFsFuseOpWrite = 16, VirtioFsFuseOpStatFs = 17, VirtioFsFuseOpRelease = 18, VirtioFsFuseOpFsync = 20, VirtioFsFuseOpFlush = 25, VirtioFsFuseOpInit = 26, VirtioFsFuseOpOpenDir = 27, VirtioFsFuseOpReleaseDir = 29, VirtioFsFuseOpFsyncDir = 30, VirtioFsFuseOpCreate = 35, VirtioFsFuseOpReadDirPlus = 44, VirtioFsFuseOpRename2 = 45 } |
Type and macro definitions specific to the Virtio Filesystem device.
At the time of this writing, the latest released Virtio specification (v1.1) does not include the virtio-fs device. The development version of the specification defines it however; see the latest version at https://github.com/oasis-tcs/virtio-spec/blob/87fa6b5d8155/virtio-fs.tex.
This header file is minimal, and only defines the types and macros that are necessary for the OvmfPkg implementation.
Copyright (C) 2020, Red Hat, Inc.
SPDX-License-Identifier: BSD-2-Clause-Patent
#define VIRTIO_FS_FUSE_DIRENTPLUS_RESPONSE_SIZE | ( | Namelen | ) |
Macro for calculating the size of a directory stream entry.
The macro may evaluate Namelen multiple times.
The macro evaluates to a UINTN value that is safe to cast to UINT32.
[in] | Namelen | The size of the filename byte array that follows VIRTIO_FS_FUSE_DIRENTPLUS_RESPONSE in the directory stream, as reported by VIRTIO_FS_FUSE_STATFS_RESPONSE.Namelen or VIRTIO_FS_FUSE_DIRENTPLUS_RESPONSE.Namelen. The filename byte array is not NUL-terminated. |
0 | Namelen was zero or greater than SIZE_4KB. |
#define VIRTIO_FS_FUSE_ERRNO_ENOENT (-2) |
#define VIRTIO_FS_FUSE_INIT_REQ_F_DO_READDIRPLUS BIT13 |
#define VIRTIO_FS_FUSE_MAJOR 7 |
#define VIRTIO_FS_FUSE_MINOR 31 |
#define VIRTIO_FS_FUSE_MODE_PERM_RGRP 0000040u |
#define VIRTIO_FS_FUSE_MODE_PERM_ROTH 0000004u |
#define VIRTIO_FS_FUSE_MODE_PERM_RUSR 0000400u |
#define VIRTIO_FS_FUSE_MODE_PERM_RWXG 0000070u |
#define VIRTIO_FS_FUSE_MODE_PERM_RWXO 0000007u |
#define VIRTIO_FS_FUSE_MODE_PERM_RWXU 0000700u |
#define VIRTIO_FS_FUSE_MODE_PERM_WGRP 0000020u |
#define VIRTIO_FS_FUSE_MODE_PERM_WOTH 0000002u |
#define VIRTIO_FS_FUSE_MODE_PERM_WUSR 0000200u |
#define VIRTIO_FS_FUSE_MODE_PERM_XGRP 0000010u |
#define VIRTIO_FS_FUSE_MODE_PERM_XOTH 0000001u |
#define VIRTIO_FS_FUSE_MODE_PERM_XUSR 0000100u |
#define VIRTIO_FS_FUSE_MODE_TYPE_DIR 0040000u |
#define VIRTIO_FS_FUSE_MODE_TYPE_MASK 0170000u |
#define VIRTIO_FS_FUSE_MODE_TYPE_REG 0100000u |
#define VIRTIO_FS_FUSE_OPEN_REQ_F_RDONLY 0 |
#define VIRTIO_FS_FUSE_OPEN_REQ_F_RDWR 2 |
#define VIRTIO_FS_FUSE_RENAME2_REQ_F_NOREPLACE BIT0 |
#define VIRTIO_FS_FUSE_ROOT_DIR_NODE_ID 1 |
#define VIRTIO_FS_FUSE_SETATTR_REQ_F_ATIME BIT4 |
#define VIRTIO_FS_FUSE_SETATTR_REQ_F_MODE BIT0 |
#define VIRTIO_FS_FUSE_SETATTR_REQ_F_MTIME BIT5 |
#define VIRTIO_FS_FUSE_SETATTR_REQ_F_SIZE BIT3 |
#define VIRTIO_FS_REQUEST_QUEUE 1 |
#define VIRTIO_FS_TAG_BYTES 36 |