The metadata for a file or directory in ext2.
More...
#include <ext2.h>
|
|
union { | |
| |
| uint16_t type_permissions | |
| | The type and permissions of the inode. More...
|
| |
|
struct { | |
| |
| uint16_t permissions: 12 | |
| | The permissions of the inode. More...
|
| |
| uint16_t type: 4 | |
| | The type of the inode. More...
|
| |
| } | | |
| |
| }; | | |
| |
| uint16_t | user_id |
| | The ID of the user who owns the inode.
|
| |
| uint32_t | size_lower |
| | The lower 32 bits of the size of the file in bytes.
|
| |
| uint32_t | last_access_time |
| | The seconds (since the epoch) of the last access time.
|
| |
| uint32_t | creation_time |
| | The seconds (since the epoch) of the time the inode was first allocated.
|
| |
| uint32_t | last_modification_time |
| | The seconds (since the epoch) of the last time the inode was written to.
|
| |
| uint32_t | deletion_time |
| | The seconds (since the epoch) of the time the inode was marked as not used.
|
| |
| uint16_t | group_id |
| | The ID of the group who owns the inode.
|
| |
| uint16_t | hard_links |
| | How many directory entries point to this inode.
|
| |
| uint32_t | sectors_used |
| | How many 512 byte sectors are used by this inode (not blocks) (not including this struct or directory entries linked to it)
|
| |
| uint32_t | flags |
| | Flags for the inode (see InodeFlags)
|
| |
| uint32_t | os_1 |
| | OS specific value (0 for Linux/HURD, 'transaltor' for Masix)
|
| |
| uint32_t | block_pointers [12] |
| | Pointers to the blocks that store the file's data (0 marks unused)
|
| |
| uint32_t | l1_indirect |
| | Pointer to a block that contains more block pointers (see block_pointers)
|
| |
| uint32_t | l2_indirect |
| | Pointer to a block that contains more l1_indirect pointers.
|
| |
| uint32_t | l3_indirect |
| | Pointer to a block that contains more l2_indirect pointers.
|
| |
| uint32_t | generation |
| | File version (used by NFS)
|
| |
| uint32_t | extended_attribute |
| | File extended attribute block (Access Control List)
|
| |
| uint32_t | size_upper |
| | The upper 32 bits of the size of the file in bytes (for files larger than 4GB). If this is a directory, this is the Directory Access Control List.
|
| |
| uint32_t | os_2 [3] |
| | Second OS specific value (see InodeOS2Linux, ...)
|
| |
The metadata for a file or directory in ext2.
Definition at line 173 of file ext2.h.
◆ block_pointers
| uint32_t MaxOS::filesystem::format::ext2::Inode::block_pointers[12] |
Pointers to the blocks that store the file's data (0 marks unused)
Definition at line 192 of file ext2.h.
◆ creation_time
| uint32_t MaxOS::filesystem::format::ext2::Inode::creation_time |
The seconds (since the epoch) of the time the inode was first allocated.
Definition at line 184 of file ext2.h.
◆ deletion_time
| uint32_t MaxOS::filesystem::format::ext2::Inode::deletion_time |
The seconds (since the epoch) of the time the inode was marked as not used.
Definition at line 186 of file ext2.h.
◆ extended_attribute
| uint32_t MaxOS::filesystem::format::ext2::Inode::extended_attribute |
File extended attribute block (Access Control List)
Definition at line 197 of file ext2.h.
◆ flags
| uint32_t MaxOS::filesystem::format::ext2::Inode::flags |
Flags for the inode (see InodeFlags)
Definition at line 190 of file ext2.h.
◆ generation
| uint32_t MaxOS::filesystem::format::ext2::Inode::generation |
File version (used by NFS)
Definition at line 196 of file ext2.h.
◆ group_id
| uint16_t MaxOS::filesystem::format::ext2::Inode::group_id |
The ID of the group who owns the inode.
Definition at line 187 of file ext2.h.
◆ hard_links
| uint16_t MaxOS::filesystem::format::ext2::Inode::hard_links |
How many directory entries point to this inode.
Definition at line 188 of file ext2.h.
◆ l1_indirect
| uint32_t MaxOS::filesystem::format::ext2::Inode::l1_indirect |
Pointer to a block that contains more block pointers (see block_pointers)
Definition at line 193 of file ext2.h.
◆ l2_indirect
| uint32_t MaxOS::filesystem::format::ext2::Inode::l2_indirect |
Pointer to a block that contains more l1_indirect pointers.
Definition at line 194 of file ext2.h.
◆ l3_indirect
| uint32_t MaxOS::filesystem::format::ext2::Inode::l3_indirect |
Pointer to a block that contains more l2_indirect pointers.
Definition at line 195 of file ext2.h.
◆ last_access_time
| uint32_t MaxOS::filesystem::format::ext2::Inode::last_access_time |
The seconds (since the epoch) of the last access time.
Definition at line 183 of file ext2.h.
◆ last_modification_time
| uint32_t MaxOS::filesystem::format::ext2::Inode::last_modification_time |
The seconds (since the epoch) of the last time the inode was written to.
Definition at line 185 of file ext2.h.
◆ os_1
| uint32_t MaxOS::filesystem::format::ext2::Inode::os_1 |
OS specific value (0 for Linux/HURD, 'transaltor' for Masix)
Definition at line 191 of file ext2.h.
◆ os_2
| uint32_t MaxOS::filesystem::format::ext2::Inode::os_2[3] |
◆ permissions
| uint16_t MaxOS::filesystem::format::ext2::Inode::permissions |
The permissions of the inode.
Definition at line 177 of file ext2.h.
◆ sectors_used
| uint32_t MaxOS::filesystem::format::ext2::Inode::sectors_used |
How many 512 byte sectors are used by this inode (not blocks) (not including this struct or directory entries linked to it)
Definition at line 189 of file ext2.h.
◆ size_lower
| uint32_t MaxOS::filesystem::format::ext2::Inode::size_lower |
The lower 32 bits of the size of the file in bytes.
Definition at line 182 of file ext2.h.
◆ size_upper
| uint32_t MaxOS::filesystem::format::ext2::Inode::size_upper |
The upper 32 bits of the size of the file in bytes (for files larger than 4GB). If this is a directory, this is the Directory Access Control List.
Definition at line 198 of file ext2.h.
◆ type
| uint16_t MaxOS::filesystem::format::ext2::Inode::type |
The type of the inode.
Definition at line 178 of file ext2.h.
◆ type_permissions
| uint16_t MaxOS::filesystem::format::ext2::Inode::type_permissions |
The type and permissions of the inode.
Definition at line 175 of file ext2.h.
◆ user_id
| uint16_t MaxOS::filesystem::format::ext2::Inode::user_id |
The ID of the user who owns the inode.
Definition at line 181 of file ext2.h.
The documentation for this struct was generated from the following file:
- /home/runner/work/MaxOS/MaxOS/kernel/include/filesystem/format/ext2.h