+ /* Byte 48 */
+
+ union {
+ struct list_head tmp_list;
+ struct {
+ void *tmp_ptr_1;
+ void *tmp_ptr_2;
+ };
+ };
+
+ /* Byte 64 */
+
+ /* List of dentries in the inode (hard link set) */
+ struct list_head inode_dentry_list;
+
+ /* The parent of this directory entry. */
+ struct dentry *parent;
+
+ /*
+ * Size of directory entry on disk, in bytes. Typical size is around
+ * 104 to 120 bytes.
+ *
+ * It is possible for the length field to be 0. This situation, which
+ * is undocumented, indicates the end of a list of sibling nodes in a
+ * directory. It also means the real length is 8, because the dentry
+ * included only the length field, but that takes up 8 bytes.
+ *
+ * The length here includes the base directory entry on disk as well as
+ * the long and short filenames. It does NOT include any alternate
+ * stream entries that may follow the directory entry, even though the
+ * size of those needs to be considered. The length SHOULD be 8-byte
+ * aligned, although we don't require it to be. We do require the
+ * length to be large enough to hold the file name(s) of the dentry;
+ * additionally, a warning is issued if this field is larger than the
+ * aligned size.
+ */
+ u64 length;
+
+
+ /* The offset, from the start of the uncompressed WIM metadata resource
+ * for this image, of this dentry's child dentries. 0 if the directory
+ * entry has no children, which is the case for regular files or reparse
+ * points. */
+ u64 subdir_offset;
+
+ /* Number of references to the dentry tree itself, as in multiple
+ * WIMStructs */
+ u32 refcnt;
+
+ /* Pointer to the UTF-16 short filename (malloc()ed buffer) */
+ char *short_name;
+
+ /* Pointer to the UTF-16 filename (malloc()ed buffer). */
+ char *file_name;
+
+ /* Full path (UTF-8) to this dentry (malloc()ed buffer). */