]> wimlib.net Git - wimlib/blobdiff - src/win32_common.c
write.c: Don't default to solid mode quite as easily
[wimlib] / src / win32_common.c
index fa890c1c2b5cc4c09c4a205be5d6f35d67be3c34..1768fd9bd5076371351c1e5f8fad4ac0ac4966ce 100644 (file)
@@ -517,7 +517,29 @@ BOOL (WINAPI *func_CreateSymbolicLinkW)(const wchar_t *lpSymlinkFileName,
 
 /* ntdll.dll  */
 
-DWORD (WINAPI *func_RtlNtStatusToDosError)(NTSTATUS status);
+NTSTATUS (WINAPI *func_NtOpenFile) (PHANDLE FileHandle,
+                                   ACCESS_MASK DesiredAccess,
+                                   POBJECT_ATTRIBUTES ObjectAttributes,
+                                   PIO_STATUS_BLOCK IoStatusBlock,
+                                   ULONG ShareAccess,
+                                   ULONG OpenOptions);
+
+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);
+
+NTSTATUS (WINAPI *func_NtOpenFile) (PHANDLE FileHandle,
+                                   ACCESS_MASK DesiredAccess,
+                                   POBJECT_ATTRIBUTES ObjectAttributes,
+                                   PIO_STATUS_BLOCK IoStatusBlock,
+                                   ULONG ShareAccess,
+                                   ULONG OpenOptions);
 
 NTSTATUS (WINAPI *func_NtQueryInformationFile)(HANDLE FileHandle,
                                               PIO_STATUS_BLOCK IoStatusBlock,
@@ -543,10 +565,20 @@ NTSTATUS (WINAPI *func_NtQueryDirectoryFile) (HANDLE FileHandle,
                                              PUNICODE_STRING FileName,
                                              BOOLEAN RestartScan);
 
+NTSTATUS (WINAPI *func_NtQueryVolumeInformationFile) (HANDLE FileHandle,
+                                                     PIO_STATUS_BLOCK IoStatusBlock,
+                                                     PVOID FsInformation,
+                                                     ULONG Length,
+                                                     FS_INFORMATION_CLASS FsInformationClass);
+
 NTSTATUS (WINAPI *func_NtSetSecurityObject)(HANDLE Handle,
                                            SECURITY_INFORMATION SecurityInformation,
                                            PSECURITY_DESCRIPTOR SecurityDescriptor);
 
+NTSTATUS (WINAPI *func_NtClose) (HANDLE Handle);
+
+DWORD (WINAPI *func_RtlNtStatusToDosError)(NTSTATUS status);
+
 NTSTATUS (WINAPI *func_RtlCreateSystemVolumeInformationFolder)
                (PCUNICODE_STRING VolumeRootPath);
 
@@ -584,11 +616,15 @@ struct dll_spec {
 struct dll_spec ntdll_spec = {
        .name = L"ntdll.dll",
        .syms = {
-               DLL_SYM(RtlNtStatusToDosError, true),
+               DLL_SYM(NtOpenFile, true),
+               DLL_SYM(NtReadFile, true),
                DLL_SYM(NtQueryInformationFile, true),
                DLL_SYM(NtQuerySecurityObject, true),
                DLL_SYM(NtQueryDirectoryFile, true),
+               DLL_SYM(NtQueryVolumeInformationFile, true),
                DLL_SYM(NtSetSecurityObject, true),
+               DLL_SYM(NtClose, true),
+               DLL_SYM(RtlNtStatusToDosError, true),
                DLL_SYM(RtlCreateSystemVolumeInformationFolder, false),
                {NULL, NULL},
        },