Rebase against 6c5d17af07a318d754c0c21023b2d162a0d3725d.

This commit is contained in:
Alistair Leslie-Hughes
2024-06-22 17:37:43 +10:00
parent 5ecb89298f
commit 593249dcde
5 changed files with 44 additions and 45 deletions

View File

@@ -1,4 +1,4 @@
From 801191c93bc6780ee726727c82c0e0b696e300ef Mon Sep 17 00:00:00 2001
From 369f4d92683910c01d82719e448d21a74b7b82d8 Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 20:57:57 -0700
Subject: [PATCH] ntdll: Add support for reading reparse points.
@@ -6,14 +6,14 @@ Subject: [PATCH] ntdll: Add support for reading reparse points.
Signed-off-by: Erich E. Hoover <erich.e.hoover@gmail.com>
---
dlls/ntdll/tests/file.c | 21 +++-
dlls/ntdll/unix/file.c | 222 ++++++++++++++++++++++++++++++++++++++--
2 files changed, 231 insertions(+), 12 deletions(-)
dlls/ntdll/unix/file.c | 221 ++++++++++++++++++++++++++++++++++++++--
2 files changed, 231 insertions(+), 11 deletions(-)
diff --git a/dlls/ntdll/tests/file.c b/dlls/ntdll/tests/file.c
index 17da7552046..b9ec79e37e0 100644
index 148b6058cee..441bb69adcb 100644
--- a/dlls/ntdll/tests/file.c
+++ b/dlls/ntdll/tests/file.c
@@ -5387,14 +5387,14 @@ static void test_reparse_points(void)
@@ -5896,14 +5896,14 @@ static void test_reparse_points(void)
static const WCHAR reparseW[] = {'\\','r','e','p','a','r','s','e',0};
static const WCHAR targetW[] = {'\\','t','a','r','g','e','t',0};
static const WCHAR parentW[] = {'\\','.','.','\\',0};
@@ -30,7 +30,7 @@ index 17da7552046..b9ec79e37e0 100644
HANDLE handle;
BOOL bret;
@@ -5491,6 +5491,23 @@ static void test_reparse_points(void)
@@ -6000,6 +6000,23 @@ static void test_reparse_points(void)
buffer_len = build_reparse_buffer(long_path, &buffer);
bret = DeviceIoControl(handle, FSCTL_SET_REPARSE_POINT, (LPVOID)buffer, buffer_len, NULL, 0, &dwret, 0);
ok(bret, "Failed to create junction point! (0x%lx)\n", GetLastError());
@@ -55,10 +55,10 @@ index 17da7552046..b9ec79e37e0 100644
cleanup:
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
index 52b85cfc6d1..0967b3b9392 100644
index 0d58abbfa84..3e160fb1e5c 100644
--- a/dlls/ntdll/unix/file.c
+++ b/dlls/ntdll/unix/file.c
@@ -315,6 +315,84 @@ static UINT encode_base64url( const char *bin, unsigned int len, char *base64 )
@@ -325,6 +325,84 @@ static UINT encode_base64url( const char *bin, unsigned int len, char *base64 )
return n;
}
@@ -143,7 +143,7 @@ index 52b85cfc6d1..0967b3b9392 100644
/* create a directory and all the needed parent directories */
static int mkdir_p( int dirfd, const char *path, mode_t mode )
{
@@ -3608,6 +3686,132 @@ cleanup:
@@ -3715,6 +3793,132 @@ cleanup:
}
@@ -276,12 +276,11 @@ index 52b85cfc6d1..0967b3b9392 100644
/******************************************************************************
* lookup_unix_name
*
@@ -6335,16 +6539,6 @@ NTSTATUS WINAPI NtFsControlFile( HANDLE handle, HANDLE event, PIO_APC_ROUTINE ap
@@ -6525,15 +6729,6 @@ NTSTATUS WINAPI NtFsControlFile( HANDLE handle, HANDLE event, PIO_APC_ROUTINE ap
break;
}
- case FSCTL_GET_REPARSE_POINT:
- io->Information = 0;
- if (out_buffer && out_size)
- {
- FIXME("FSCTL_GET_REPARSE_POINT semi-stub\n");
@@ -293,7 +292,7 @@ index 52b85cfc6d1..0967b3b9392 100644
case FSCTL_GET_OBJECT_ID:
{
FILE_OBJECTID_BUFFER *info = out_buffer;
@@ -6367,6 +6561,14 @@ NTSTATUS WINAPI NtFsControlFile( HANDLE handle, HANDLE event, PIO_APC_ROUTINE ap
@@ -6555,6 +6750,14 @@ NTSTATUS WINAPI NtFsControlFile( HANDLE handle, HANDLE event, PIO_APC_ROUTINE ap
break;
}
@@ -309,5 +308,5 @@ index 52b85cfc6d1..0967b3b9392 100644
{
REPARSE_DATA_BUFFER *buffer = (REPARSE_DATA_BUFFER *)in_buffer;
--
2.37.2
2.43.0