Rebase against 2d6b0b67d91b6433744ec859b10b8ee8eb4a37b3.

This commit is contained in:
Zebediah Figura
2021-02-10 19:09:42 -06:00
parent 6347bdd1fc
commit 41e15516bd
36 changed files with 318 additions and 1419 deletions

View File

@@ -1,4 +1,4 @@
From 56459884534d5b0acb6a410d2ba04f6f3aa15ded Mon Sep 17 00:00:00 2001
From 24d4c486c981d7e7542a37b2916cb147f3467c92 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 27 Jul 2014 03:35:42 +0200
Subject: [PATCH] ntdll: Allow special characters in pipe names.
@@ -10,7 +10,7 @@ Based on patch by Valentyn Pavliuchenko.
2 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/dlls/kernel32/tests/pipe.c b/dlls/kernel32/tests/pipe.c
index 3c7ca06a045..453dcc80b7b 100644
index 91f6df34f81..8437264ae43 100644
--- a/dlls/kernel32/tests/pipe.c
+++ b/dlls/kernel32/tests/pipe.c
@@ -30,6 +30,7 @@
@@ -21,7 +21,7 @@ index 3c7ca06a045..453dcc80b7b 100644
#define NB_SERVER_LOOPS 8
@@ -674,6 +675,15 @@ static void test_CreateNamedPipe(int pipemode)
@@ -673,6 +674,15 @@ static void test_CreateNamedPipe(int pipemode)
CloseHandle(hnp);
@@ -38,18 +38,18 @@ index 3c7ca06a045..453dcc80b7b 100644
}
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
index a0ad361fcbb..3c4670e114c 100644
index 6337433ed80..5ab24e2c334 100644
--- a/dlls/ntdll/unix/file.c
+++ b/dlls/ntdll/unix/file.c
@@ -3282,6 +3282,7 @@ static NTSTATUS nt_to_unix_file_name_attr( const OBJECT_ATTRIBUTES *attr, char *
NTSTATUS nt_to_unix_file_name( const UNICODE_STRING *nameW, char **unix_name_ret, UINT disposition )
@@ -3286,6 +3286,7 @@ NTSTATUS nt_to_unix_file_name( const UNICODE_STRING *nameW, char **unix_name_ret
UNICODE_STRING *nt_name, UINT disposition )
{
static const WCHAR unixW[] = {'u','n','i','x'};
+ static const WCHAR pipeW[] = {'p','i','p','e'};
static const WCHAR invalid_charsW[] = { INVALID_NT_CHARS, 0 };
NTSTATUS status = STATUS_SUCCESS;
@@ -3292,6 +3293,7 @@ NTSTATUS nt_to_unix_file_name( const UNICODE_STRING *nameW, char **unix_name_ret
@@ -3296,6 +3297,7 @@ NTSTATUS nt_to_unix_file_name( const UNICODE_STRING *nameW, char **unix_name_ret
WCHAR prefix[MAX_DIR_ENTRY_LEN + 1];
BOOLEAN check_case = FALSE;
BOOLEAN is_unix = FALSE;
@@ -57,7 +57,7 @@ index a0ad361fcbb..3c4670e114c 100644
name = nameW->Buffer;
name_len = nameW->Length / sizeof(WCHAR);
@@ -3325,13 +3327,17 @@ NTSTATUS nt_to_unix_file_name( const UNICODE_STRING *nameW, char **unix_name_ret
@@ -3329,13 +3331,17 @@ NTSTATUS nt_to_unix_file_name( const UNICODE_STRING *nameW, char **unix_name_ret
name += prefix_len;
name_len -= prefix_len;
@@ -80,5 +80,5 @@ index a0ad361fcbb..3c4670e114c 100644
else
{
--
2.27.0
2.20.1