[newlib-cygwin] Cygwin: ntdll.h: Add some missing pipe-related definitions

Corinna Vinschen corinna@sourceware.org
Tue Mar 6 18:11:00 GMT 2018


https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=c0df506b83c287cc2b4fb43ec6fad67c914fa300

commit c0df506b83c287cc2b4fb43ec6fad67c914fa300
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Tue Mar 6 18:24:13 2018 +0100

    Cygwin: ntdll.h: Add some missing pipe-related definitions
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 winsup/cygwin/ntdll.h | 27 +++++++++++++++++++++++++--
 1 file changed, 25 insertions(+), 2 deletions(-)

diff --git a/winsup/cygwin/ntdll.h b/winsup/cygwin/ntdll.h
index b322d4b..b251055 100644
--- a/winsup/cygwin/ntdll.h
+++ b/winsup/cygwin/ntdll.h
@@ -157,8 +157,14 @@ extern GUID __cygwin_socket_guid;
 #define FILE_VC_VALID_MASK              0x000003ff
 
 /* IOCTL code to impersonate client of named pipe. */
-#define FSCTL_PIPE_IMPERSONATE CTL_CODE(FILE_DEVICE_NAMED_PIPE, 7, \
-					METHOD_BUFFERED, FILE_ANY_ACCESS)
+#define FSCTL_PIPE_DISCONNECT	CTL_CODE(FILE_DEVICE_NAMED_PIPE, 1, \
+					 METHOD_BUFFERED, FILE_ANY_ACCESS)
+#define FSCTL_PIPE_LISTEN	CTL_CODE(FILE_DEVICE_NAMED_PIPE, 2, \
+					 METHOD_BUFFERED, FILE_ANY_ACCESS)
+#define FSCTL_PIPE_WAIT		CTL_CODE(FILE_DEVICE_NAMED_PIPE, 6, \
+					 METHOD_BUFFERED, FILE_ANY_ACCESS)
+#define FSCTL_PIPE_IMPERSONATE	CTL_CODE(FILE_DEVICE_NAMED_PIPE, 7, \
+					 METHOD_BUFFERED, FILE_ANY_ACCESS)
 
 typedef enum _FILE_INFORMATION_CLASS
 {
@@ -1003,6 +1009,23 @@ typedef struct _FILE_PIPE_LOCAL_INFORMATION
 } FILE_PIPE_LOCAL_INFORMATION, *PFILE_PIPE_LOCAL_INFORMATION;
 
 /* Checked on 64 bit. */
+typedef struct _FILE_PIPE_PEEK_BUFFER {
+  ULONG NamedPipeState;
+  ULONG ReadDataAvailable;
+  ULONG NumberOfMessages;
+  ULONG MessageLength;
+  CHAR Data[1];
+} FILE_PIPE_PEEK_BUFFER, *PFILE_PIPE_PEEK_BUFFER;
+
+/* Checked on 64 bit. */
+typedef struct _FILE_PIPE_WAIT_FOR_BUFFER {
+  LARGE_INTEGER Timeout;
+  ULONG NameLength;
+  BOOLEAN TimeoutSpecified;
+  WCHAR Name[1];
+} FILE_PIPE_WAIT_FOR_BUFFER, *PFILE_PIPE_WAIT_FOR_BUFFER;
+
+/* Checked on 64 bit. */
 typedef struct _FILE_COMPRESSION_INFORMATION
 {
   LARGE_INTEGER CompressedFileSize;



More information about the Cygwin-cvs mailing list