]> wimlib.net Git - wimlib/blobdiff - include/wimlib/win32_common.h
Move code from win32_common.c to win32_apply.c
[wimlib] / include / wimlib / win32_common.h
index 019dd7df742b7d95bbb20c2794094f257c1f7050..6749256e1d55ebb570e1e0cfd448576664d2089e 100644 (file)
@@ -9,10 +9,8 @@
 #include "wimlib/types.h"
 #include "wimlib/win32.h"
 
-#ifdef WITH_NTDLL
-#  include <ntstatus.h>
-#  include <winternl.h>
-#endif
+#include <ntstatus.h>
+#include <winternl.h>
 
 extern void
 set_errno_from_GetLastError(void);
@@ -20,39 +18,35 @@ set_errno_from_GetLastError(void);
 extern void
 set_errno_from_win32_error(DWORD err);
 
-#ifdef WITH_NTDLL
 extern void
 set_errno_from_nt_status(NTSTATUS status);
-#endif
-
-extern bool
-win32_path_is_root_of_drive(const wchar_t *path);
-
-extern int
-win32_get_vol_flags(const wchar_t *path, unsigned *vol_flags_ret,
-                   bool *supports_SetFileShortName_ret);
 
 extern HANDLE
 win32_open_existing_file(const wchar_t *path, DWORD dwDesiredAccess);
 
 /* Vista and later */
-extern HANDLE (WINAPI *win32func_FindFirstStreamW)(LPCWSTR lpFileName,
-                                                  STREAM_INFO_LEVELS InfoLevel,
-                                                  LPVOID lpFindStreamData,
-                                                  DWORD dwFlags);
-
-/* Vista and later */
-extern BOOL (WINAPI *win32func_FindNextStreamW)(HANDLE hFindStream,
-                                               LPVOID lpFindStreamData);
-
-/* Vista and later */
-extern BOOL (WINAPI *win32func_CreateSymbolicLinkW)(const wchar_t *lpSymlinkFileName,
-                                                   const wchar_t *lpTargetFileName,
-                                                   DWORD dwFlags);
+extern BOOL (WINAPI *func_CreateSymbolicLinkW)(const wchar_t *lpSymlinkFileName,
+                                              const wchar_t *lpTargetFileName,
+                                              DWORD dwFlags);
 
 /* ntdll functions  */
 
-#ifdef WITH_NTDLL
+extern NTSTATUS (WINAPI *func_NtOpenFile) (PHANDLE FileHandle,
+                                          ACCESS_MASK DesiredAccess,
+                                          POBJECT_ATTRIBUTES ObjectAttributes,
+                                          PIO_STATUS_BLOCK IoStatusBlock,
+                                          ULONG ShareAccess,
+                                          ULONG OpenOptions);
+
+extern NTSTATUS (WINAPI *func_NtReadFile) (HANDLE FileHandle,
+                                          HANDLE Event,
+                                          PIO_APC_ROUTINE ApcRoutine,
+                                          PVOID ApcContext,
+                                          PIO_STATUS_BLOCK IoStatusBlock,
+                                          PVOID Buffer,
+                                          ULONG Length,
+                                          PLARGE_INTEGER ByteOffset,
+                                          PULONG Key);
 
 extern NTSTATUS (WINAPI *func_NtQueryInformationFile)(HANDLE FileHandle,
                                                      PIO_STATUS_BLOCK IoStatusBlock,
@@ -78,14 +72,23 @@ extern NTSTATUS (WINAPI *func_NtQueryDirectoryFile) (HANDLE FileHandle,
                                                     PUNICODE_STRING FileName,
                                                     BOOLEAN RestartScan);
 
+extern NTSTATUS (WINAPI *func_NtQueryVolumeInformationFile) (HANDLE FileHandle,
+                                                            PIO_STATUS_BLOCK IoStatusBlock,
+                                                            PVOID FsInformation,
+                                                            ULONG Length,
+                                                            FS_INFORMATION_CLASS FsInformationClass);
+
 
 extern NTSTATUS (WINAPI *func_NtSetSecurityObject)(HANDLE Handle,
                                                   SECURITY_INFORMATION SecurityInformation,
                                                   PSECURITY_DESCRIPTOR SecurityDescriptor);
 
+extern NTSTATUS (WINAPI *func_NtClose) (HANDLE Handle);
+
 extern DWORD (WINAPI *func_RtlNtStatusToDosError)(NTSTATUS status);
-#endif
 
+extern NTSTATUS (WINAPI *func_RtlCreateSystemVolumeInformationFolder)
+                       (PCUNICODE_STRING VolumeRootPath);
 
 
 extern bool