Skip to content
API Documentation
BastionGuard™
xfs_format.hpp File Reference

Go to the source code of this file.

Classes

struct  xfs::Superblock
struct  xfs::AGF
struct  xfs::AGI
struct  xfs::InodeAddress
struct  xfs::AGContext
struct  xfs::VolumeContext

Namespaces

namespace  xfs

Functions

uint16_t xfs::be16 (const unsigned char *p)
uint32_t xfs::be32 (const unsigned char *p)
uint64_t xfs::be64 (const unsigned char *p)
bool xfs::parse_superblock (const unsigned char *buf, Superblock &out)
bool xfs::parse_agf (const unsigned char *buf, AGF &out)
bool xfs::parse_agi (const unsigned char *buf, AGI &out)
bool xfs::parse_agi (const unsigned char *buf, bool is_v5, AGI &out)
InodeAddress xfs::crack_inode (uint64_t ino, const Superblock &sb)

Variables

constexpr uint32_t xfs::XFS_SB_MAGIC = 0x58465342u
constexpr uint32_t xfs::XFS_AGF_MAGIC_V4 = 0x58414746u
constexpr uint32_t xfs::XFS_AGF_MAGIC_V5 = 0x58414746u
constexpr uint32_t xfs::XFS_AGI_MAGIC_V4 = 0x58414749u
constexpr uint32_t xfs::XFS_AGI_MAGIC_V5 = 0x58414749u
constexpr uint32_t xfs::XFS_AGFL_MAGIC_V5 = 0x5841464Cu
constexpr uint32_t xfs::XFS_DINODE_MAGIC = 0x494Eu
constexpr uint32_t xfs::XFS_ABTB_MAGIC_V4 = 0x41425442u
constexpr uint32_t xfs::XFS_ABTB_MAGIC_V5 = 0x41423342u
constexpr uint32_t xfs::XFS_ABTC_MAGIC_V4 = 0x41425443u
constexpr uint32_t xfs::XFS_ABTC_MAGIC_V5 = 0x41423343u
constexpr uint32_t xfs::XFS_IBT_MAGIC_V4 = 0x49414254u
constexpr uint32_t xfs::XFS_IBT_MAGIC_V5 = 0x49414233u
constexpr uint32_t xfs::XFS_FIBT_MAGIC_V4 = 0x46494254u
constexpr uint32_t xfs::XFS_FIBT_MAGIC_V5 = 0x46494233u
constexpr uint32_t xfs::XFS_BMAP_MAGIC_V4 = 0x424D4150u
constexpr uint32_t xfs::XFS_BMAP_MAGIC_V5 = 0x424D4133u
constexpr uint16_t xfs::XFS_SB_VERSION_NUMBITS = 0x000F
constexpr uint16_t xfs::XFS_SB_VERSION_4 = 4
constexpr uint16_t xfs::XFS_SB_VERSION_5 = 5
constexpr uint16_t xfs::XFS_SB_VERSION_ATTRBIT = 0x0010
constexpr uint16_t xfs::XFS_SB_VERSION_NLINKBIT = 0x0020
constexpr uint16_t xfs::XFS_SB_VERSION_QUOTABIT = 0x0040
constexpr uint16_t xfs::XFS_SB_VERSION_ALIGNBIT = 0x0080
constexpr uint16_t xfs::XFS_SB_VERSION_DALIGNBIT = 0x0100
constexpr uint16_t xfs::XFS_SB_VERSION_SHAREDBIT = 0x0200
constexpr uint16_t xfs::XFS_SB_VERSION_LOGV2BIT = 0x0400
constexpr uint16_t xfs::XFS_SB_VERSION_SECTORBIT = 0x0800
constexpr uint16_t xfs::XFS_SB_VERSION_EXTFLGBIT = 0x1000
constexpr uint16_t xfs::XFS_SB_VERSION_DIRV2BIT = 0x2000
constexpr uint16_t xfs::XFS_SB_VERSION_BORGBIT = 0x4000
constexpr uint16_t xfs::XFS_SB_VERSION_MOREBITSBIT = 0x8000
constexpr uint32_t xfs::XFS_SB_FEAT_RO_COMPAT_FINOBT = 0x00000001
constexpr uint32_t xfs::XFS_SB_FEAT_RO_COMPAT_RMAPBT = 0x00000002
constexpr uint32_t xfs::XFS_SB_FEAT_RO_COMPAT_REFLINK = 0x00000004
constexpr uint32_t xfs::XFS_SB_FEAT_RO_COMPAT_INOBTCNT = 0x00000008
constexpr uint32_t xfs::XFS_SB_FEAT_INCOMPAT_FTYPE = 0x00000001
constexpr uint32_t xfs::XFS_SB_FEAT_INCOMPAT_SPINODES = 0x00000002
constexpr uint32_t xfs::XFS_SB_FEAT_INCOMPAT_META_UUID = 0x00000004
constexpr uint32_t xfs::XFS_SB_FEAT_INCOMPAT_BIGTIME = 0x00000008
constexpr uint32_t xfs::XFS_SB_FEAT_INCOMPAT_NEEDSREPAIR = 0x00000010
constexpr uint32_t xfs::XFS_SB_FEAT_INCOMPAT_NREXT64 = 0x00000020