Crate e2p_sys

Crate e2p_sys 

Source
Expand description

Low-level Rust bindings for libe2p from e2fsprogs

The bindings need to be generated using bindgen while building this crate because libe2p has no stable API and available file flags or file system features differ between versions. This also means that publicly availale documentation on this crate might not be accurate on your system.

For building this crate, you need to have e2fsprogs-dev (also called e2fslibs-dev or libext2fs-dev) and libclang installed.

Structs§

_IO_FILE
_IO_codecvt
_IO_marker
_IO_wide_data
dirent
ext2_acl_entry
ext2_acl_header
ext2_dir_entry
ext2_dir_entry_2
ext2_dir_entry_hash
ext2_dir_entry_tail
ext2_dx_countlimit
ext2_dx_entry
ext2_dx_root_info
ext2_dx_tail
ext2_group_desc
ext2_inode
ext2_inode__bindgen_ty_1__bindgen_ty_1
ext2_inode__bindgen_ty_1__bindgen_ty_2
ext2_inode__bindgen_ty_2__bindgen_ty_1
ext2_inode__bindgen_ty_2__bindgen_ty_2
ext2_inode_large
ext2_inode_large__bindgen_ty_1__bindgen_ty_1
ext2_inode_large__bindgen_ty_1__bindgen_ty_2
ext2_inode_large__bindgen_ty_2__bindgen_ty_1
ext2_inode_large__bindgen_ty_2__bindgen_ty_2
ext2_new_group_input
ext2_super_block
ext4_encryption_key
ext4_encryption_policy
ext4_group_desc
ext4_new_group_input
ext4_orphan_block_tail
mmp_struct

Constants§

CONSTANTS
A list of all public constants. Can be used to test for the existence of certain constants in the system’s libe2p.
E2P_FEATURE_COMPAT
E2P_FEATURE_INCOMPAT
E2P_FEATURE_NEGATE_FLAG
E2P_FEATURE_RO_INCOMPAT
E2P_FEATURE_TYPE_MASK
E2P_FS_FEATURE
E2P_JOURNAL_FEATURE
E2P_LIST_JOURNAL_FLAG_FC
EXT2FS_DATE
EXT2FS_VERSION
EXT2_APPEND_FL
EXT2_BAD_INO
EXT2_BG_BLOCK_UNINIT
EXT2_BG_INODE_UNINIT
EXT2_BG_INODE_ZEROED
EXT2_BOOT_LOADER_INO
EXT2_BTREE_FL
EXT2_COMPRBLK_FL
EXT2_COMPR_FL
EXT2_CRC32C_CHKSUM
EXT2_CURRENT_REV
EXT2_DEFAULT_PREALLOC_BLOCKS
EXT2_DEFM_ACL
EXT2_DEFM_BSDGROUPS
EXT2_DEFM_DEBUG
EXT2_DEFM_UID16
EXT2_DEFM_XATTR_USER
EXT2_DEF_RESGID
EXT2_DEF_RESUID
EXT2_DFL_CHECKINTERVAL
EXT2_DFL_MAX_MNT_COUNT
EXT2_DIND_BLOCK
EXT2_DIRSYNC_FL
EXT2_DIRTY_FL
EXT2_DIR_ENTRY_HASH_LEN
EXT2_DIR_ENTRY_HEADER_LEN
EXT2_DIR_NAME_LEN_CSUM
EXT2_DIR_PAD
EXT2_DIR_ROUND
EXT2_DYNAMIC_REV
EXT2_ERRORS_CONTINUE
EXT2_ERRORS_DEFAULT
EXT2_ERRORS_PANIC
EXT2_ERRORS_RO
EXT2_ERROR_FS
EXT2_EXCLUDE_INO
EXT2_FEATURE_COMPAT_DIR_INDEX
EXT2_FEATURE_COMPAT_DIR_PREALLOC
EXT2_FEATURE_COMPAT_EXCLUDE_BITMAP
EXT2_FEATURE_COMPAT_EXT_ATTR
EXT2_FEATURE_COMPAT_IMAGIC_INODES
EXT2_FEATURE_COMPAT_LAZY_BG
EXT2_FEATURE_COMPAT_RESIZE_INODE
EXT2_FEATURE_COMPAT_SUPP
EXT2_FEATURE_INCOMPAT_COMPRESSION
EXT2_FEATURE_INCOMPAT_FILETYPE
EXT2_FEATURE_INCOMPAT_META_BG
EXT2_FEATURE_INCOMPAT_SUPP
EXT2_FEATURE_RO_COMPAT_LARGE_FILE
EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER
EXT2_FLAGS_FIX_EXCLUDE
EXT2_FLAGS_FIX_SNAPSHOT
EXT2_FLAGS_IS_SNAPSHOT
EXT2_FLAGS_SIGNED_HASH
EXT2_FLAGS_TEST_FILESYS
EXT2_FLAGS_UNSIGNED_HASH
EXT2_FL_USER_MODIFIABLE
EXT2_FL_USER_VISIBLE
EXT2_FT_BLKDEV
EXT2_FT_CHRDEV
EXT2_FT_DIR
EXT2_FT_FIFO
EXT2_FT_MAX
EXT2_FT_REG_FILE
EXT2_FT_SOCK
EXT2_FT_SYMLINK
EXT2_FT_UNKNOWN
EXT2_GOOD_OLD_FIRST_INO
EXT2_GOOD_OLD_INODE_SIZE
EXT2_GOOD_OLD_REV
EXT2_HASH_FLAG_INCOMPAT
EXT2_HASH_HALF_MD4
EXT2_HASH_HALF_MD4_UNSIGNED
EXT2_HASH_LEGACY
EXT2_HASH_LEGACY_UNSIGNED
EXT2_HASH_SIPHASH
EXT2_HASH_TEA
EXT2_HASH_TEA_UNSIGNED
EXT2_IMAGIC_FL
EXT2_IMMUTABLE_FL
EXT2_INDEX_FL
EXT2_IND_BLOCK
EXT2_JOURNAL_INO
EXT2_LABEL_LEN
EXT2_LINK_MAX
EXT2_MAX_BLOCK_LOG_SIZE
EXT2_MAX_BLOCK_SIZE
EXT2_MAX_CLUSTER_LOG_SIZE
EXT2_MAX_CLUSTER_SIZE
EXT2_MAX_DESC_SIZE
EXT2_MAX_FRAG_SIZE
EXT2_MAX_SUPP_REV
EXT2_MIN_BLOCK_LOG_SIZE
EXT2_MIN_BLOCK_SIZE
EXT2_MIN_CLUSTER_LOG_SIZE
EXT2_MIN_CLUSTER_SIZE
EXT2_MIN_DESC_SIZE
EXT2_MIN_DESC_SIZE_64BIT
EXT2_MIN_FRAG_LOG_SIZE
EXT2_MIN_FRAG_SIZE
EXT2_MOUNT_CHECK
EXT2_MOUNT_DEBUG
EXT2_MOUNT_ERRORS_CONT
EXT2_MOUNT_ERRORS_PANIC
EXT2_MOUNT_ERRORS_RO
EXT2_MOUNT_GRPID
EXT2_MOUNT_MINIX_DF
EXT2_MOUNT_NO_UID32
EXT2_NAME_LEN
EXT2_NDIR_BLOCKS
EXT2_NOATIME_FL
EXT2_NOCOMPR_FL
EXT2_NODUMP_FL
EXT2_NOTAIL_FL
EXT2_N_BLOCKS
EXT2_OBSO_OS_MASIX
EXT2_OS_FREEBSD
EXT2_OS_HURD
EXT2_OS_LINUX
EXT2_OS_LITES
EXT2_RESERVED_FL
EXT2_RESIZE_INO
EXT2_ROOT_INO
EXT2_SECRM_FL
EXT2_SUPER_MAGIC
EXT2_SYNC_FL
EXT2_TIND_BLOCK
EXT2_TOPDIR_FL
EXT2_UNDEL_DIR_INO
EXT2_UNRM_FL
EXT2_VALID_FS
EXT3_DEFM_JMODE
EXT3_DEFM_JMODE_DATA
EXT3_DEFM_JMODE_ORDERED
EXT3_DEFM_JMODE_WBACK
EXT3_FEATURE_COMPAT_HAS_JOURNAL
EXT3_FEATURE_INCOMPAT_EXTENTS
EXT3_FEATURE_INCOMPAT_JOURNAL_DEV
EXT3_FEATURE_INCOMPAT_RECOVER
EXT3_JNL_BACKUP_BLOCKS
EXT3_JOURNAL_DATA_FL
EXT3_ORPHAN_FS
EXT4_AES_256_CBC_KEY_SIZE
EXT4_AES_256_CTS_KEY_SIZE
EXT4_AES_256_GCM_KEY_SIZE
EXT4_AES_256_XTS_KEY_SIZE
EXT4_CASEFOLD_FL
EXT4_CRYPTO_BLOCK_SIZE
EXT4_DEFM_BLOCK_VALIDITY
EXT4_DEFM_DISCARD
EXT4_DEFM_NOBARRIER
EXT4_DEFM_NODELALLOC
EXT4_DX_BLOCK_MASK
EXT4_EA_INODE_FL
EXT4_ENCRYPTION_MODE_AES_256_CBC
EXT4_ENCRYPTION_MODE_AES_256_CTS
EXT4_ENCRYPTION_MODE_AES_256_GCM
EXT4_ENCRYPTION_MODE_AES_256_XTS
EXT4_ENCRYPTION_MODE_INVALID
EXT4_ENCRYPT_FL
EXT4_ENC_STRICT_MODE_FL
EXT4_ENC_UTF8_12_1
EXT4_EPOCH_BITS
EXT4_EPOCH_MASK
EXT4_EXTENTS_FL
EXT4_FC_REPLAY
EXT4_FEATURE_COMPAT_FAST_COMMIT
EXT4_FEATURE_COMPAT_ORPHAN_FILE
EXT4_FEATURE_COMPAT_SPARSE_SUPER2
EXT4_FEATURE_COMPAT_STABLE_INODES
EXT4_FEATURE_INCOMPAT_64BIT
EXT4_FEATURE_INCOMPAT_CASEFOLD
EXT4_FEATURE_INCOMPAT_CSUM_SEED
EXT4_FEATURE_INCOMPAT_DIRDATA
EXT4_FEATURE_INCOMPAT_EA_INODE
EXT4_FEATURE_INCOMPAT_ENCRYPT
EXT4_FEATURE_INCOMPAT_FLEX_BG
EXT4_FEATURE_INCOMPAT_INLINE_DATA
EXT4_FEATURE_INCOMPAT_LARGEDIR
EXT4_FEATURE_INCOMPAT_MMP
EXT4_FEATURE_RO_COMPAT_BIGALLOC
EXT4_FEATURE_RO_COMPAT_DIR_NLINK
EXT4_FEATURE_RO_COMPAT_EXTRA_ISIZE
EXT4_FEATURE_RO_COMPAT_GDT_CSUM
EXT4_FEATURE_RO_COMPAT_HAS_SNAPSHOT
EXT4_FEATURE_RO_COMPAT_HUGE_FILE
EXT4_FEATURE_RO_COMPAT_METADATA_CSUM
EXT4_FEATURE_RO_COMPAT_ORPHAN_PRESENT
EXT4_FEATURE_RO_COMPAT_PROJECT
EXT4_FEATURE_RO_COMPAT_QUOTA
EXT4_FEATURE_RO_COMPAT_READONLY
EXT4_FEATURE_RO_COMPAT_REPLICA
EXT4_FEATURE_RO_COMPAT_SHARED_BLOCKS
EXT4_FEATURE_RO_COMPAT_VERITY
EXT4_GRP_QUOTA_INO
EXT4_HUGE_FILE_FL
EXT4_INLINE_DATA_DOTDOT_SIZE
EXT4_INLINE_DATA_FL
EXT4_KEY_DESCRIPTOR_SIZE
EXT4_MAX_KEY_SIZE
EXT4_MAX_PASSPHRASE_SIZE
EXT4_MAX_SALT_SIZE
EXT4_MMP_MAGIC
EXT4_MMP_MAX_UPDATE_INTERVAL
EXT4_MMP_MIN_CHECK_INTERVAL
EXT4_MMP_SEQ_CLEAN
EXT4_MMP_SEQ_FSCK
EXT4_MMP_SEQ_MAX
EXT4_MMP_UPDATE_INTERVAL
EXT4_NSEC_MASK
EXT4_ORPHAN_BLOCK_MAGIC
EXT4_PBKDF2_ITERATIONS
EXT4_PROJINHERIT_FL
EXT4_REPLICA_INO
EXT4_SNAPFILE_DELETED_FL
EXT4_SNAPFILE_FL
EXT4_SNAPFILE_SHRUNK_FL
EXT4_USR_QUOTA_INO
EXT4_VERITY_FL
FS_DAX_FL
FS_NOCOW_FL
HAVE_SYS_TYPES_H
PFOPT_LONG

Functions§

e2p_edit_feature
e2p_edit_feature2
e2p_edit_mntopts
e2p_encmode2string
e2p_encoding2str
e2p_errcode2str
e2p_feature2string
e2p_feature_to_string
e2p_get_encoding_flags
e2p_hash2string
e2p_is_null_uuid
e2p_jrnl_feature2string
e2p_jrnl_string2feature
e2p_list_journal_super
e2p_mntopt2string
e2p_os2string
e2p_percent
e2p_str2encoding
e2p_str2encoding_flags
e2p_string2encmode
e2p_string2feature
e2p_string2hash
e2p_string2mntopt
e2p_string2os
e2p_uuid2str
e2p_uuid_to_str
fgetflags
fgetproject
fgetversion
fsetflags
fsetproject
fsetversion
getflags
getversion
iterate_on_dir
list_super
list_super2
parse_num_blocks
parse_num_blocks2
print_flags
print_fs_errors
print_fs_state
setflags
setversion

Type Aliases§

FILE
_IO_lock_t
__be16
__be32
__be64
__ino_t
__le16
__le32
__le64
__off64_t
__off_t
__s8
__s16
__s32
__s64
__u8
__u16
__u32
__u64

Unions§

ext2_inode__bindgen_ty_1
ext2_inode__bindgen_ty_2
ext2_inode_large__bindgen_ty_1
ext2_inode_large__bindgen_ty_2