]> wimlib.net Git - wimlib/blobdiff - include/wimlib/win32_common.h
Load NtOpenFile() and NtClose()
[wimlib] / include / wimlib / win32_common.h
index 5e108ec51073dd61bd126160e0b2163342402e95..3cc79e35b64f6bbed705d9cdf92ba852fd566641 100644 (file)
@@ -32,22 +32,19 @@ 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  */
 
+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_NtQueryInformationFile)(HANDLE FileHandle,
                                                      PIO_STATUS_BLOCK IoStatusBlock,
                                                      PVOID FileInformation,
@@ -77,6 +74,8 @@ 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);
 
 extern NTSTATUS (WINAPI *func_RtlCreateSystemVolumeInformationFolder)