X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=include%2Fwimlib%2Fwin32_common.h;h=e669d5225a836b1f406b968b4a089e011ad0bd38;hp=324285138006ecb0edbe055cce89ccb65734e31f;hb=686c407415c8e6ec022bd64678db65004631b194;hpb=a92076249aa233d18ecc378062e654729e27c0d8 diff --git a/include/wimlib/win32_common.h b/include/wimlib/win32_common.h index 32428513..e669d522 100644 --- a/include/wimlib/win32_common.h +++ b/include/wimlib/win32_common.h @@ -1,3 +1,8 @@ +/* + * win32_common.h - common header for Windows-specific files. This always + * should be included first. + */ + #ifndef _WIMLIB_WIN32_COMMON_H #define _WIMLIB_WIN32_COMMON_H @@ -25,6 +30,10 @@ extern NTSTATUS (WINAPI *func_NtCreateFile)(PHANDLE FileHandle, PVOID EaBuffer, ULONG EaLength); +#ifndef FILE_OPENED +# define FILE_OPENED 0x00000001 +#endif + extern NTSTATUS (WINAPI *func_NtOpenFile) (PHANDLE FileHandle, ACCESS_MASK DesiredAccess, POBJECT_ATTRIBUTES ObjectAttributes, @@ -92,17 +101,6 @@ extern NTSTATUS (WINAPI *func_NtSetSecurityObject)(HANDLE Handle, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR SecurityDescriptor); -extern NTSTATUS (WINAPI *func_NtFsControlFile) (HANDLE FileHandle, - HANDLE Event, - PIO_APC_ROUTINE ApcRoutine, - PVOID ApcContext, - PIO_STATUS_BLOCK IoStatusBlock, - ULONG FsControlCode, - PVOID InputBuffer, - ULONG InputBufferLength, - PVOID OutputBuffer, - ULONG OutputBufferLength); - extern NTSTATUS (WINAPI *func_NtClose) (HANDLE Handle); extern DWORD (WINAPI *func_RtlNtStatusToDosError)(NTSTATUS status); @@ -150,6 +148,9 @@ win32_path_to_nt_path(const wchar_t *win32_path, UNICODE_STRING *nt_path); extern int win32_get_drive_path(const wchar_t *file_path, wchar_t drive_path[7]); +extern bool +win32_try_to_attach_wof(const wchar_t *drive); + extern void win32_warning(DWORD err, const wchar_t *format, ...) _cold_attribute; @@ -162,4 +163,8 @@ winnt_warning(NTSTATUS status, const wchar_t *format, ...) _cold_attribute; extern void winnt_error(NTSTATUS status, const wchar_t *format, ...) _cold_attribute; +extern NTSTATUS +winnt_fsctl(HANDLE h, u32 code, const void *in, u32 in_size, + void *out, u32 out_size_avail, u32 *actual_out_size_ret); + #endif /* _WIMLIB_WIN32_COMMON_H */