]> sourceware.org Git - newlib-cygwin.git/commitdiff
Cygwin: AF_UNIX: Add fixup_after_exec method
authorCorinna Vinschen <corinna@vinschen.de>
Sat, 10 Mar 2018 20:09:28 +0000 (21:09 +0100)
committerCorinna Vinschen <corinna@vinschen.de>
Sat, 10 Mar 2018 20:09:28 +0000 (21:09 +0100)
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
winsup/cygwin/fhandler.h
winsup/cygwin/fhandler_socket_unix.cc

index 5ceedd9ff53d0e1d8fa430120395971180af1a02..2a3b3662d6abcbdc88df5be4816772d9d657c90d 100644 (file)
@@ -900,6 +900,7 @@ class fhandler_socket_unix : public fhandler_socket
          : set_peer_sun_path (NULL, 0); }
   void set_cred ();
   void fixup_after_fork (HANDLE parent);
+  void fixup_after_exec ();
   void set_close_on_exec (bool val);
 
  public:
index 9ac9b245279d283f64c44e42f37cdbad71639a02..6e7d6f147111386f0c3918ed622dfddaad3d9c9a 100644 (file)
@@ -982,6 +982,8 @@ fhandler_socket_unix::set_cred ()
   peer_cred.gid = (gid_t) -1;
 }
 
+/* ========================== public methods ========================= */
+
 void
 fhandler_socket_unix::fixup_after_fork (HANDLE parent)
 {
@@ -996,6 +998,13 @@ fhandler_socket_unix::fixup_after_fork (HANDLE parent)
   cwt_param = NULL;
 }
 
+void
+fhandler_socket_unix::fixup_after_exec ()
+{
+  if (!close_on_exec ())
+    fixup_after_fork (NULL);
+}
+
 void
 fhandler_socket_unix::set_close_on_exec (bool val)
 {
@@ -1004,8 +1013,6 @@ fhandler_socket_unix::set_close_on_exec (bool val)
     set_no_inheritance (backing_file_handle, val);
 }
 
-/* ========================== public methods ========================= */
-
 fhandler_socket_unix::fhandler_socket_unix ()
 {
   set_cred ();
This page took 0.034994 seconds and 5 git commands to generate.