X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=include%2Fwimlib%2Fheader.h;h=d67811c121a0034b28d1edbb40273fa01bbb92c5;hp=5f26f7c6acd1841ccca51fbb6d60a063a403baea;hb=26c7f8bb32e4a32001d409f1693e0df016270ed5;hpb=54ab7519ebeec72c4435cc09fdaa3e8b3fb35d25 diff --git a/include/wimlib/header.h b/include/wimlib/header.h index 5f26f7c6..d67811c1 100644 --- a/include/wimlib/header.h +++ b/include/wimlib/header.h @@ -49,63 +49,65 @@ /* On-disk format of the WIM header. */ struct wim_header_disk { - /* Magic characters "MSWIM\0\0\0" */ + /* +0x00: Magic characters "MSWIM\0\0\0" */ le64 magic; - /* Size of the WIM header, in bytes; WIM_HEADER_DISK_SIZE expected - * (currently the only supported value). */ + /* +0x08: Size of the WIM header, in bytes; WIM_HEADER_DISK_SIZE + * expected (currently the only supported value). */ u32 hdr_size; - /* Version of the WIM file + /* +0x0c: Version of the WIM file * TODO */ u32 wim_version; - /* Flags for the WIM file (WIM_HDR_FLAG_*) */ + /* +0x10: Flags for the WIM file (WIM_HDR_FLAG_*) */ u32 wim_flags; - /* Chunk size for compressed resources in the WIM, or 0 if the WIM is - * uncompressed. */ + /* +0x14: Chunk size for compressed resources in the WIM, or 0 if the + * WIM is uncompressed. */ u32 chunk_size; - /* Globally unique identifier for the WIM file. Basically a bunch of - * random bytes. */ + /* +0x18: Globally unique identifier for the WIM file. Basically a + * bunch of random bytes. */ u8 guid[WIM_GID_LEN]; - /* Number of this WIM part in the split WIM file, indexed from 1, or 1 - * if the WIM is not split. */ + /* +0x28: Number of this WIM part in the split WIM file, indexed from 1, + * or 1 if the WIM is not split. */ u16 part_number; - /* Total number of parts of the split WIM file, or 1 if the WIM is not - * split. */ + /* +0x2a: Total number of parts of the split WIM file, or 1 if the WIM + * is not split. */ u16 total_parts; - /* Number of images in the WIM. */ + /* +0x2c: Number of images in the WIM. */ u32 image_count; - /* Location and size of the WIM's lookup table. */ + /* +0x30: Location and size of the WIM's lookup table. */ struct wim_reshdr_disk lookup_table_reshdr; - /* Location and size of the WIM's XML data. */ + /* +0x48: Location and size of the WIM's XML data. */ struct wim_reshdr_disk xml_data_reshdr; - /* Location and size of metadata resource for the bootable image of the - * WIM, or all zeroes if no image is bootable. */ + /* +0x60: Location and size of metadata resource for the bootable image + * of the WIM, or all zeroes if no image is bootable. */ struct wim_reshdr_disk boot_metadata_reshdr; - /* 1-based index of the bootable image of the WIM, or 0 if no image is - * bootable. */ + /* +0x78: 1-based index of the bootable image of the WIM, or 0 if no + * image is bootable. */ u32 boot_idx; - /* Location and size of the WIM's integrity table, or all zeroes if the - * WIM has no integrity table. + /* +0x7c: Location and size of the WIM's integrity table, or all zeroes + * if the WIM has no integrity table. * * Note the integrity_table_reshdr here is 4-byte aligned even though * it would ordinarily be 8-byte aligned--- hence, the _packed_attribute * on the `struct wim_header_disk' is essential. */ struct wim_reshdr_disk integrity_table_reshdr; - /* Unused bytes. */ + /* +0x94: Unused bytes. */ u8 unused[60]; + + /* +0xd0 (208) */ } _packed_attribute;