/* * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS File System Recognizer * FILE: drivers/filesystems/fs_rec/ext2.h * PURPOSE: EXT2 Header File * PROGRAMMER: Pierre Schweitzer (pierre@reactos.org) */ #include typedef struct _EXT2_SUPER_BLOCK { ULONG InodesCount; ULONG BlocksCount; ULONG ReservedBlocksCount; ULONG FreeBlocksCount; ULONG FreeInodesCount; ULONG FirstDataBlock; ULONG LogBlockSize; LONG LogFragSize; ULONG BlocksPerGroup; ULONG FragsPerGroup; ULONG InodesPerGroup; ULONG MountTime; ULONG WriteTime; USHORT MountCount; SHORT MaxMountCount; USHORT Magic; USHORT State; USHORT Errors; USHORT MinorRevLevel; ULONG LastCheck; ULONG CheckInterval; ULONG CreatorOS; ULONG RevLevel; USHORT DefResUid; USHORT DefResGid; // Partial } EXT2_SUPER_BLOCK, *PEXT2_SUPER_BLOCK; #include C_ASSERT(FIELD_OFFSET(EXT2_SUPER_BLOCK, FreeInodesCount) == 0x10); C_ASSERT(FIELD_OFFSET(EXT2_SUPER_BLOCK, BlocksPerGroup) == 0x20); C_ASSERT(FIELD_OFFSET(EXT2_SUPER_BLOCK, WriteTime) == 0x30); C_ASSERT(FIELD_OFFSET(EXT2_SUPER_BLOCK, LastCheck) == 0x40); C_ASSERT(FIELD_OFFSET(EXT2_SUPER_BLOCK, DefResUid) == 0x50); #define EXT2_SUPER_MAGIC 0xEF53 #define EXT2_SB_OFFSET 0x400 #define EXT2_SB_SIZE 0x400