ntdll: Fix name validation for pipes (bug #28995).

Valentyn Pavliuchenko valentyn.pavliuchenko at gmail.com
Fri Jun 29 11:20:00 CDT 2012


Pipes have more relaxed naming requirements compared to files.

MSDN documentation for CreateNamedPipe() says:

"...must have the following form:

\\.\pipe\pipename

The pipename part of the name can include any character other than a backslash,
including numbers and special characters. The entire pipe name string can be up
to 256 characters long. Pipe names are not case sensitive".

This patch:

1. modifies ntdll pipe test to use ">" character in the pipe name
(that is illegal for a file name), so the
case of special characters in the name is now tested.

2. modifies wine_nt_to_unix_file_name() in ntdll to not check pipe
names for file-illegal
characters.

Checking for a backslash is absent, since adding it breaks some Wine internals.
This absence won't cause any problems for valid Win32 apps.

---
 dlls/ntdll/directory.c  |   10 +++++++++-
 dlls/ntdll/tests/pipe.c |    4 ++--
 2 files changed, 11 insertions(+), 3 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-ntdll-Fix-name-validation-for-pipes-bug-28995.patch
Type: text/x-patch
Size: 2613 bytes
Desc: not available
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20120629/19425e3e/attachment.bin>


More information about the wine-patches mailing list