mirror of
https://github.com/reactos/reactos.git
synced 2025-02-28 19:32:59 +00:00
[FREELDR] Rename almost everything to Ext
This commit is contained in:
parent
d0dfb6cf6f
commit
1f3083be75
3 changed files with 283 additions and 283 deletions
|
@ -39,19 +39,19 @@
|
|||
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* Magic value used to identify an ext2 filesystem. */
|
||||
#define EXT2_MAGIC 0xEF53
|
||||
/* Magic value used to identify an ext filesystem. */
|
||||
#define EXT_MAGIC 0xEF53
|
||||
/* Amount of indirect blocks in an inode. */
|
||||
#define INDIRECT_BLOCKS 12
|
||||
/* Maximum length of a pathname. */
|
||||
#define EXT2_PATH_MAX 4096
|
||||
#define EXT_PATH_MAX 4096
|
||||
/* Maximum nesting of symlinks, used to prevent a loop. */
|
||||
#define EXT2_MAX_SYMLINKCNT 8
|
||||
#define EXT_MAX_SYMLINKCNT 8
|
||||
|
||||
/* The good old revision and the default inode size. */
|
||||
#define EXT2_GOOD_OLD_REVISION 0
|
||||
#define EXT2_DYNAMIC_REVISION 1
|
||||
#define EXT2_GOOD_OLD_INODE_SIZE 128
|
||||
#define EXT_GOOD_OLD_REVISION 0
|
||||
#define EXT_DYNAMIC_REVISION 1
|
||||
#define EXT_GOOD_OLD_INODE_SIZE 128
|
||||
|
||||
/* Filetype used in directory entry. */
|
||||
#define FILETYPE_UNKNOWN 0
|
||||
|
@ -65,8 +65,8 @@
|
|||
#define FILETYPE_INO_DIRECTORY 0040000
|
||||
#define FILETYPE_INO_SYMLINK 0120000
|
||||
|
||||
/* The ext2 superblock. */
|
||||
struct ext2_sblock
|
||||
/* The ext superblock. */
|
||||
struct ext_sblock
|
||||
{
|
||||
ULONG total_inodes;
|
||||
ULONG total_blocks;
|
||||
|
@ -106,8 +106,8 @@ struct ext2_sblock
|
|||
ULONG padding[77];
|
||||
};
|
||||
|
||||
/* The ext2 blockgroup. */
|
||||
struct ext2_block_group
|
||||
/* The ext blockgroup. */
|
||||
struct ext_block_group
|
||||
{
|
||||
ULONG block_id;
|
||||
ULONG inode_id;
|
||||
|
@ -119,8 +119,8 @@ struct ext2_block_group
|
|||
ULONG reserved[3];
|
||||
};
|
||||
|
||||
/* The ext2 inode. */
|
||||
struct ext2_inode
|
||||
/* The ext inode. */
|
||||
struct ext_inode
|
||||
{
|
||||
USHORT mode;
|
||||
USHORT uid;
|
||||
|
@ -152,89 +152,89 @@ struct ext2_inode
|
|||
ULONG osd2[3];
|
||||
};
|
||||
|
||||
/* The header of an ext2 directory entry. */
|
||||
#define EXT2_NAME_LEN 255
|
||||
/* The header of an ext directory entry. */
|
||||
#define EXT_NAME_LEN 255
|
||||
|
||||
struct ext2_dirent
|
||||
struct ext_dirent
|
||||
{
|
||||
ULONG inode;
|
||||
USHORT direntlen;
|
||||
UCHAR namelen;
|
||||
UCHAR filetype;
|
||||
CHAR name[EXT2_NAME_LEN];
|
||||
CHAR name[EXT_NAME_LEN];
|
||||
};
|
||||
|
||||
/*
|
||||
* End of code from grub/fs/ext2.c
|
||||
*/
|
||||
|
||||
typedef struct ext2_sblock EXT2_SUPER_BLOCK, *PEXT2_SUPER_BLOCK;
|
||||
typedef struct ext2_inode EXT2_INODE, *PEXT2_INODE;
|
||||
typedef struct ext2_block_group EXT2_GROUP_DESC, *PEXT2_GROUP_DESC;
|
||||
typedef struct ext2_dirent EXT2_DIR_ENTRY, *PEXT2_DIR_ENTRY;
|
||||
typedef struct ext_sblock EXT_SUPER_BLOCK, *PEXT_SUPER_BLOCK;
|
||||
typedef struct ext_inode EXT_INODE, *PEXT_INODE;
|
||||
typedef struct ext_block_group EXT_GROUP_DESC, *PEXT_GROUP_DESC;
|
||||
typedef struct ext_dirent EXT_DIR_ENTRY, *PEXT_DIR_ENTRY;
|
||||
|
||||
/* Special inode numbers. */
|
||||
#define EXT2_ROOT_INO 2
|
||||
#define EXT_ROOT_INO 2
|
||||
|
||||
/* Feature set definitions. */
|
||||
#define EXT3_FEATURE_INCOMPAT_SUPP 0x0002
|
||||
|
||||
/* Log2 size of ext2 block in bytes. */
|
||||
/* Log2 size of ext block in bytes. */
|
||||
#define LOG2_BLOCK_SIZE(sb) (sb->log2_block_size + 10)
|
||||
|
||||
/* The size of an ext2 block in bytes. */
|
||||
#define EXT2_BLOCK_SIZE(sb) (((SIZE_T)1) << LOG2_BLOCK_SIZE(sb))
|
||||
/* The size of an ext block in bytes. */
|
||||
#define EXT_BLOCK_SIZE(sb) (((SIZE_T)1) << LOG2_BLOCK_SIZE(sb))
|
||||
|
||||
/* The revision level. */
|
||||
#define EXT2_REVISION(sb) (sb->revision_level)
|
||||
#define EXT_REVISION(sb) (sb->revision_level)
|
||||
|
||||
/* The inode size. */
|
||||
#define EXT2_INODE_SIZE(sb) (EXT2_REVISION(sb) == EXT2_GOOD_OLD_REVISION \
|
||||
? EXT2_GOOD_OLD_INODE_SIZE \
|
||||
#define EXT_INODE_SIZE(sb) (EXT_REVISION(sb) == EXT_GOOD_OLD_REVISION \
|
||||
? EXT_GOOD_OLD_INODE_SIZE \
|
||||
: sb->inode_size)
|
||||
|
||||
#define EXT2_DESC_PER_BLOCK(s) (EXT2_BLOCK_SIZE(s) / sizeof(struct ext2_block_group))
|
||||
#define EXT_DESC_PER_BLOCK(s) (EXT_BLOCK_SIZE(s) / sizeof(struct ext_block_group))
|
||||
|
||||
// EXT2_INODE::mode values
|
||||
#define EXT2_S_IRWXO 0x0007 // Other mask
|
||||
#define EXT2_S_IXOTH 0x0001 // ---------x execute
|
||||
#define EXT2_S_IWOTH 0x0002 // --------w- write
|
||||
#define EXT2_S_IROTH 0x0004 // -------r-- read
|
||||
// EXT_INODE::mode values
|
||||
#define EXT_S_IRWXO 0x0007 // Other mask
|
||||
#define EXT_S_IXOTH 0x0001 // ---------x execute
|
||||
#define EXT_S_IWOTH 0x0002 // --------w- write
|
||||
#define EXT_S_IROTH 0x0004 // -------r-- read
|
||||
|
||||
#define EXT2_S_IRWXG 0x0038 // Group mask
|
||||
#define EXT2_S_IXGRP 0x0008 // ------x--- execute
|
||||
#define EXT2_S_IWGRP 0x0010 // -----w---- write
|
||||
#define EXT2_S_IRGRP 0x0020 // ----r----- read
|
||||
#define EXT_S_IRWXG 0x0038 // Group mask
|
||||
#define EXT_S_IXGRP 0x0008 // ------x--- execute
|
||||
#define EXT_S_IWGRP 0x0010 // -----w---- write
|
||||
#define EXT_S_IRGRP 0x0020 // ----r----- read
|
||||
|
||||
#define EXT2_S_IRWXU 0x01C0 // User mask
|
||||
#define EXT2_S_IXUSR 0x0040 // ---x------ execute
|
||||
#define EXT2_S_IWUSR 0x0080 // --w------- write
|
||||
#define EXT2_S_IRUSR 0x0100 // -r-------- read
|
||||
#define EXT_S_IRWXU 0x01C0 // User mask
|
||||
#define EXT_S_IXUSR 0x0040 // ---x------ execute
|
||||
#define EXT_S_IWUSR 0x0080 // --w------- write
|
||||
#define EXT_S_IRUSR 0x0100 // -r-------- read
|
||||
|
||||
#define EXT2_S_ISVTX 0x0200 // Sticky bit
|
||||
#define EXT2_S_ISGID 0x0400 // SGID
|
||||
#define EXT2_S_ISUID 0x0800 // SUID
|
||||
#define EXT_S_ISVTX 0x0200 // Sticky bit
|
||||
#define EXT_S_ISGID 0x0400 // SGID
|
||||
#define EXT_S_ISUID 0x0800 // SUID
|
||||
|
||||
#define EXT2_S_IFMT 0xF000 // Format mask
|
||||
#define EXT2_S_IFIFO 0x1000 // FIFO buffer
|
||||
#define EXT2_S_IFCHR 0x2000 // Character device
|
||||
#define EXT2_S_IFDIR 0x4000 // Directory
|
||||
#define EXT2_S_IFBLK 0x6000 // Block device
|
||||
#define EXT2_S_IFREG 0x8000 // Regular file
|
||||
#define EXT2_S_IFLNK 0xA000 // Symbolic link
|
||||
#define EXT2_S_IFSOCK 0xC000 // Socket
|
||||
#define EXT_S_IFMT 0xF000 // Format mask
|
||||
#define EXT_S_IFIFO 0x1000 // FIFO buffer
|
||||
#define EXT_S_IFCHR 0x2000 // Character device
|
||||
#define EXT_S_IFDIR 0x4000 // Directory
|
||||
#define EXT_S_IFBLK 0x6000 // Block device
|
||||
#define EXT_S_IFREG 0x8000 // Regular file
|
||||
#define EXT_S_IFLNK 0xA000 // Symbolic link
|
||||
#define EXT_S_IFSOCK 0xC000 // Socket
|
||||
|
||||
#define FAST_SYMLINK_MAX_NAME_SIZE 60
|
||||
|
||||
typedef struct _EXT2_VOLUME_INFO *PEXT2_VOLUME_INFO;
|
||||
typedef struct _EXT_VOLUME_INFO *PEXT_VOLUME_INFO;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
ULONGLONG FileSize; // File size
|
||||
ULONGLONG FilePointer; // File pointer
|
||||
ULONG* FileBlockList; // File block list
|
||||
EXT2_INODE Inode; // File's inode
|
||||
PEXT2_VOLUME_INFO Volume;
|
||||
} EXT2_FILE_INFO, * PEXT2_FILE_INFO;
|
||||
EXT_INODE Inode; // File's inode
|
||||
PEXT_VOLUME_INFO Volume;
|
||||
} EXT_FILE_INFO, * PEXT_FILE_INFO;
|
||||
|
||||
const DEVVTBL* Ext2Mount(ULONG DeviceId);
|
||||
const DEVVTBL* ExtMount(ULONG DeviceId);
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -65,7 +65,7 @@ PFS_MOUNT FileSystems[] =
|
|||
BtrFsMount,
|
||||
#ifndef _M_ARM
|
||||
NtfsMount,
|
||||
Ext2Mount,
|
||||
ExtMount,
|
||||
#endif
|
||||
#if defined(_M_IX86) || defined(_M_AMD64)
|
||||
#ifndef UEFIBOOT
|
||||
|
|
Loading…
Reference in a new issue