public inbox for cygwin-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] Cygwin: seteuid: allow inheriting impersonation user profile handle
@ 2019-02-23 20:06 Corinna Vinschen
  0 siblings, 0 replies; only message in thread
From: Corinna Vinschen @ 2019-02-23 20:06 UTC (permalink / raw)
  To: cygwin-cvs

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

commit dd3730ed9c1c78176f1aab1b429bb5a105d90a44
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Sat Feb 23 20:48:59 2019 +0100

    Cygwin: seteuid: allow inheriting impersonation user profile handle
    
    The child process needs access to the handle to be able to
    unload it when switching user context.
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 winsup/cygwin/syscalls.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc
index b103976..a73af67 100644
--- a/winsup/cygwin/syscalls.cc
+++ b/winsup/cygwin/syscalls.cc
@@ -3612,7 +3612,11 @@ seteuid32 (uid_t uid)
 	  cygheap->user.imp_profile = load_user_profile (new_token, pw_new,
 							 usersid);
 	  if (cygheap->user.imp_profile)
-	    cygheap->user.imp_profile_token = new_token;
+	    {
+	      cygheap->user.imp_profile_token = new_token;
+	      SetHandleInformation (cygheap->user.imp_profile,
+				    HANDLE_FLAG_INHERIT, HANDLE_FLAG_INHERIT);
+	    }
 	}
 
       /* Try setting owner to same value as user. */


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-02-23 20:06 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-23 20:06 [newlib-cygwin] Cygwin: seteuid: allow inheriting impersonation user profile handle Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).