Rebase against bf83d755d987fec552cd1dce30638c31c49ab760.

This commit is contained in:
Zebediah Figura
2020-05-29 19:13:43 -05:00
parent 4e692b5301
commit 06877e55b1
22 changed files with 785 additions and 1065 deletions

View File

@@ -1,4 +1,4 @@
From 1111d9a53405b19b57a4385f7e2815b9c62238fa Mon Sep 17 00:00:00 2001
From 157385f6bdf23c65b1375126f73dad87fcb503f4 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sat, 6 Jun 2015 07:03:33 +0800
Subject: [PATCH] ntdll: Improve stub of NtQueryEaFile.
@@ -10,10 +10,10 @@ Based on a patch by Qian Hong.
2 files changed, 98 insertions(+), 4 deletions(-)
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index 2269ae311a..bed55c6fe7 100644
index 7a49cb5d8db..b940201c5a8 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -3962,14 +3962,25 @@ NTSTATUS WINAPI NtQueryVolumeInformationFile( HANDLE handle, PIO_STATUS_BLOCK io
@@ -4041,14 +4041,25 @@ NTSTATUS WINAPI NtQueryVolumeInformationFile( HANDLE handle, PIO_STATUS_BLOCK io
* Success: 0. Attributes read into buffer
* Failure: An NTSTATUS error code describing the error.
*/
@@ -32,7 +32,7 @@ index 2269ae311a..bed55c6fe7 100644
ea_list_len, ea_index, restart);
- return STATUS_ACCESS_DENIED;
+
+ if ((status = server_get_unix_fd( handle, 0, &fd, &needs_close, NULL, NULL )) != STATUS_SUCCESS)
+ if ((status = unix_funcs->server_get_unix_fd( handle, 0, &fd, &needs_close, NULL, NULL )) != STATUS_SUCCESS)
+ return status;
+
+ if (buffer && length)
@@ -44,7 +44,7 @@ index 2269ae311a..bed55c6fe7 100644
diff --git a/dlls/ntdll/tests/file.c b/dlls/ntdll/tests/file.c
index 1c3d0bc9a9..e210cbe9f2 100644
index 44335514761..abd5903e804 100644
--- a/dlls/ntdll/tests/file.c
+++ b/dlls/ntdll/tests/file.c
@@ -85,6 +85,7 @@ static NTSTATUS (WINAPI *pNtQueryDirectoryFile)(HANDLE,HANDLE,PIO_APC_ROUTINE,PV
@@ -55,7 +55,7 @@ index 1c3d0bc9a9..e210cbe9f2 100644
static WCHAR fooW[] = {'f','o','o',0};
@@ -4994,6 +4995,86 @@ static void test_flush_buffers_file(void)
@@ -4886,6 +4887,86 @@ static void test_flush_buffers_file(void)
DeleteFileA(buffer);
}
@@ -142,7 +142,7 @@ index 1c3d0bc9a9..e210cbe9f2 100644
static void test_file_readonly_access(void)
{
static const DWORD default_sharing = FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE;
@@ -5483,6 +5564,7 @@ START_TEST(file)
@@ -5375,6 +5456,7 @@ START_TEST(file)
pNtQueryVolumeInformationFile = (void *)GetProcAddress(hntdll, "NtQueryVolumeInformationFile");
pNtQueryFullAttributesFile = (void *)GetProcAddress(hntdll, "NtQueryFullAttributesFile");
pNtFlushBuffersFile = (void *)GetProcAddress(hntdll, "NtFlushBuffersFile");
@@ -150,7 +150,7 @@ index 1c3d0bc9a9..e210cbe9f2 100644
test_read_write();
test_NtCreateFile();
@@ -5513,6 +5595,7 @@ START_TEST(file)
@@ -5404,6 +5486,7 @@ START_TEST(file)
test_query_volume_information_file();
test_query_attribute_information_file();
test_ioctl();
@@ -159,5 +159,5 @@ index 1c3d0bc9a9..e210cbe9f2 100644
test_reparse_points();
}
--
2.23.0
2.26.2