Module format

Module format 

Source
Expand description

EROFS on-disk format definitions and data structures.

This module defines the binary layout of EROFS filesystem structures including superblocks, inodes, directory entries, and other metadata using safe zerocopy-based parsing.

Structsยง

CompactInodeHeader
Compact 32-byte inode header for basic file metadata
ComposefsHeader
Composefs-specific header preceding the standard EROFS superblock
DirectoryEntryHeader
Header for a directory entry
ExtendedInodeHeader
Extended 64-byte inode header with additional metadata fields
FileTypeField
Raw file type field as stored in directory entries
FormatField
Combined field encoding both inode layout and data layout in a single u16 value
InodeXAttrHeader
Header for inode extended attributes section
ModeField
File mode field combining file type and permissions
Superblock
EROFS filesystem superblock structure
XAttrHeader
Header for an extended attribute entry

Enumsยง

DataLayout
Data layout method for file content storage
FileType
File type enumeration for directory entries
FormatError
Errors that can occur when parsing EROFS format structures
InodeLayout
Inode layout format, determining the inode header size

Constantsยง

BLOCK_BITS
Number of bits used for block size (12 = 4096 bytes)
BLOCK_SIZE
Size of a block in bytes (4096)
COMPOSEFS_FLAGS_HAS_ACL
Flag indicating the presence of ACL data
COMPOSEFS_MAGIC
Magic number identifying composefs images
COMPOSEFS_VERSION
Composefs-specific version number
FEATURE_COMPAT_MTIME
Feature flag for mtime support
FEATURE_COMPAT_XATTR_FILTER
Feature flag for xattr filtering support
FILE_TYPE_BLOCK_DEVICE
Block device file type value
FILE_TYPE_CHARACTER_DEVICE
Character device file type value
FILE_TYPE_DIRECTORY
Directory file type value
FILE_TYPE_FIFO
FIFO file type value
FILE_TYPE_REGULAR_FILE
Regular file type value
FILE_TYPE_SOCKET
Socket file type value
FILE_TYPE_SYMLINK
Symbolic link file type value
FILE_TYPE_UNKNOWN
Unknown file type value
INODE_DATALAYOUT_CHUNK_BASED ๐Ÿ”’
INODE_DATALAYOUT_FLAT_INLINE ๐Ÿ”’
INODE_DATALAYOUT_FLAT_PLAIN ๐Ÿ”’
INODE_DATALAYOUT_MASK ๐Ÿ”’
INODE_LAYOUT_COMPACT ๐Ÿ”’
INODE_LAYOUT_EXTENDED ๐Ÿ”’
INODE_LAYOUT_MASK ๐Ÿ”’
MAGIC_V1
EROFS version 1 magic number
S_IFBLK
Block device mode bit
S_IFCHR
Character device mode bit
S_IFDIR
Directory mode bit
S_IFIFO
FIFO mode bit
S_IFLNK
Symbolic link mode bit
S_IFMT
File type mask for st_mode
S_IFREG
Regular file mode bit
S_IFSOCK
Socket mode bit
VERSION
EROFS format version number
XATTR_FILTER_SEED
Seed value for xattr name filter hash calculation
XATTR_PREFIXES
Standard xattr name prefixes indexed by name_index