#define LOOKUP_FLAG_ADS_OK 0x00000001
#define LOOKUP_FLAG_DIRECTORY_OK 0x00000002
+#ifdef __WIN32__
+#include <windef.h>
+#endif
+
/* The lookup table of a WIM file maps SHA1 message digests to streams of data.
* Here, the in-memory structure is implemented as a hash table.
#ifdef WITH_NTFS_3G
struct ntfs_location {
- utf8char *path_utf8;
- utf16lechar *stream_name_utf16;
- u16 stream_name_utf16_num_chars;
+ mbchar *path;
+ utf16lechar *stream_name;
+ u16 stream_name_nchars;
struct _ntfs_volume **ntfs_vol_p;
bool is_reparse_point;
};
WIMStruct *wim;
mbchar *file_on_disk;
mbchar *staging_file_name;
+ #ifdef __WIN32__
+ wchar_t *win32_file_on_disk;
+ #endif
u8 *attached_buffer;
#ifdef WITH_NTFS_3G
struct ntfs_location *ntfs_loc;
/* @file_on_disk_fp and @attr are both used to cache file/stream
* handles so we don't have re-open them on every read */
+
/* Valid iff resource_location == RESOURCE_IN_FILE_ON_DISK */
FILE *file_on_disk_fp;
#ifdef WITH_NTFS_3G
struct _ntfs_attr *attr;
#endif
+ HANDLE win32_file_on_disk_fp;
+
/* Pointer to inode that contains the opened file descriptors to
* this stream (valid iff resource_location ==
* RESOURCE_IN_STAGING_FILE) */