]> wimlib.net Git - wimlib/blobdiff - include/wimlib/wof.h
New helper: wim_reshdr_to_desc_and_blob()
[wimlib] / include / wimlib / wof.h
index 80504a7bb31cc9504c0fbb74fe51bb364b5c3c69..0715211ddaef45aa18cf8587f3d11760fe788c55 100644 (file)
@@ -12,8 +12,8 @@
 #ifndef _WOF_H_
 #define _WOF_H_
 
-#include "wimlib/types.h"
 #include "wimlib/compiler.h"
+#include "wimlib/types.h"
 
 #define WOF_CURRENT_VERSION    1
 #define WOF_PROVIDER_WIM       1
@@ -63,22 +63,23 @@ struct wim_provider_rpdata {
        /* Integer ID that identifies the WIM.  */
        le64 data_source_id;
 
-       /* SHA1 message digest of the file's unnamed data stream.  */
-       u8 resource_hash[20];
+       /* SHA-1 message digest of the file's unnamed data stream.  */
+       u8 unnamed_data_stream_hash[20];
 
-       /* SHA1 message digest of the WIM's lookup table.  */
-       u8 wim_lookup_table_hash[20];
+       /* SHA-1 message digest of the WIM's blob table as stored on disk.  */
+       u8 blob_table_hash[20];
 
        /* Uncompressed size of the file's unnamed data stream, in bytes.  */
-       le64 stream_uncompressed_size;
+       le64 unnamed_data_stream_size;
 
-       /* Compressed size of the file's unnamed data stream, in bytes.  If
-        * stream is stored uncompressed, set this the same as the uncompressed
-        * size.  */
-       le64 stream_compressed_size;
+       /* Size of the file's unnamed data stream as stored in the WIM file.
+        * If this is the same as unnamed_data_stream_size, then the stream is
+        * uncompressed.  If this is the *not* the same as
+        * unnamed_data_stream_size, then the stream is compressed.  */
+       le64 unnamed_data_stream_size_in_wim;
 
        /* Byte offset of the file's unnamed data stream in the WIM.  */
-       le64 stream_offset_in_wim;
+       le64 unnamed_data_stream_offset_in_wim;
 } _packed_attribute;
 
 /* WIM-specific information about a WIM data source  */
@@ -102,8 +103,8 @@ struct WimOverlay_dat_entry_1 {
        le32 wim_type;
 
        /* Index of the image in the WIM to use??? (This doesn't really make
-        * sense, since WIM files combine streams for all images into a single
-        * table.  Set to 1 if unsure...)  */
+        * sense, since WIM files combine file data "blobs" for all images into
+        * a single table.  Set to 1 if unsure...)  */
        le32 wim_index;
 
        /* GUID of the WIM file (copied from the WIM header, offset +0x18).  */
@@ -292,8 +293,8 @@ struct wim_provider_external_info {
         * FSCTL_ADD_OVERLAY ioctl.  */
        u64 data_source_id;
 
-       /* SHA1 message digest of the file's unnamed data stream.  */
-       u8 resource_hash[20];
+       /* SHA-1 message digest of the file's unnamed data stream.  */
+       u8 unnamed_data_stream_hash[20];
 };
 
 /*****************************************************************************
@@ -377,32 +378,32 @@ struct wim_provider_external_info {
 struct wim_provider_overlay_entry {
        /* Byte offset of the next entry from the beginning of this structure,
         * or 0 if there are no more entries.  */
-       uint32_t next_entry_offset;
+       u32 next_entry_offset;
 
-       uint32_t padding;
+       u32 padding;
 
        /* Identifier for the WIM file.  */
-       uint64_t data_source_id;
+       u64 data_source_id;
 
        /* GUID of the WIM file.  */
-       uint8_t guid[16];
+       u8 guid[16];
 
        /* Byte offset of the WIM's file name from the beginning of this
         * structure.  */
-       uint32_t wim_file_name_offset;
+       u32 wim_file_name_offset;
 
        /* Type of WIM file: WIM_BOOT_OS_WIM or WIM_BOOT_NOT_OS_WIM.  */
-       uint32_t wim_type;
+       u32 wim_type;
 
-       /* Index of the backing image in the WIM??? (This doesn't really make
-        * sense, since WIM files combine streams for all images into a single
-        * table.)  */
-       uint32_t wim_index;
+       /* Index of the image in the WIM to use??? (This doesn't really make
+        * sense, since WIM files combine file data "blobs" for all images into
+        * a single table.  Set to 1 if unsure...)  */
+       u32 wim_index;
 
        /* 0 when WIM provider active, otherwise
         * WIM_PROVIDER_EXTERNAL_FLAG_NOT_ACTIVE or
         * WIM_PROVIDER_EXTERNAL_FLAG_SUSPENDED.  */
-       uint32_t flags;
+       u32 flags;
 
        /* Full path to the WIM in the NT device namespace, e.g.
         * "\Device\HardDiskVolume2\test.wim".  Seems to be null-terminated,
@@ -441,8 +442,8 @@ struct wim_provider_add_overlay_input {
 #define WIM_BOOT_NOT_OS_WIM    1
 
        /* Index of the image in the WIM to use??? (This doesn't really make
-        * sense, since WIM files combine streams for all images into a single
-        * table.  Set to 1 if unsure...)  */
+        * sense, since WIM files combine file data "blobs" for all images into
+        * a single table.  Set to 1 if unsure...)  */
        u32 wim_index;
 
        /* Byte offset of wim_file_name in this buffer, not including the