[newlib-cygwin] Cygwin: pipes: create pipes with synchronization enabled

Corinna Vinschen corinna@sourceware.org
Tue Sep 14 15:06:09 GMT 2021


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

commit fcccc4b74308fa2dc57191b82028c69ca0d4b5c7
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Fri Sep 3 10:32:30 2021 +0200

    Cygwin: pipes: create pipes with synchronization enabled
    
    This isn't used by Cygwin, but it might be used by Win32 processes
    inheriting the handle.
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 winsup/cygwin/fhandler_pipe.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/winsup/cygwin/fhandler_pipe.cc b/winsup/cygwin/fhandler_pipe.cc
index 8b66121b4..b69bb1d40 100644
--- a/winsup/cygwin/fhandler_pipe.cc
+++ b/winsup/cygwin/fhandler_pipe.cc
@@ -659,7 +659,7 @@ nt_create (LPSECURITY_ATTRIBUTES sa_ptr, PHANDLE r, PHANDLE w,
 				 &cygheap->installation_key,
 				 GetCurrentProcessId ());
 
-  access = GENERIC_READ | FILE_WRITE_ATTRIBUTES;
+  access = GENERIC_READ | FILE_WRITE_ATTRIBUTES | SYNCHRONIZE;
 
   ULONG pipe_type = pipe_byte ? FILE_PIPE_BYTE_STREAM_TYPE
     : FILE_PIPE_MESSAGE_TYPE;
@@ -738,7 +738,7 @@ nt_create (LPSECURITY_ATTRIBUTES sa_ptr, PHANDLE r, PHANDLE w,
     {
       debug_printf ("NtOpenFile: name %S", &pipename);
 
-      access = GENERIC_WRITE | FILE_READ_ATTRIBUTES;
+      access = GENERIC_WRITE | FILE_READ_ATTRIBUTES | SYNCHRONIZE;
       status = NtOpenFile (w, access, &attr, &io, 0, 0);
       if (!NT_SUCCESS (status))
 	{


More information about the Cygwin-cvs mailing list