From eb79d041f8945b883a57c664fe9ecd5f70a52765 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Thu, 16 Nov 2000 09:53:26 +0000 Subject: [PATCH] * uinfo.cc (uinfo_init): Call `cygwin_set_impersonation_token' to reset `cygheap->user.token' to INVALID_HANDLE_VALUE. --- winsup/cygwin/ChangeLog | 5 +++++ winsup/cygwin/uinfo.cc | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 6c292159d..524cc51af 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +Thu Nov 16 10:28:00 2000 Corinna Vinschen + + * uinfo.cc (uinfo_init): Call `cygwin_set_impersonation_token' to + reset `cygheap->user.token' to INVALID_HANDLE_VALUE. + Thu Nov 16 00:18:15 2000 Christopher Faylor * exceptions.cc (interrupt_setup): Don't set signal mask here or races diff --git a/winsup/cygwin/uinfo.cc b/winsup/cygwin/uinfo.cc index 5fb7cf955..962950e1f 100644 --- a/winsup/cygwin/uinfo.cc +++ b/winsup/cygwin/uinfo.cc @@ -17,6 +17,7 @@ details. */ #include #include #include +#include #include "sync.h" #include "sigproc.h" #include "pinfo.h" @@ -185,7 +186,7 @@ uinfo_init () Setting `impersonated' to TRUE seems to be wrong but it isn't. Impersonated is thought as "Current User and `token' are coincident". See seteuid() for the mechanism behind that. */ - cygheap->user.token = INVALID_HANDLE_VALUE; + cygwin_set_impersonation_token (INVALID_HANDLE_VALUE); cygheap->user.impersonated = TRUE; /* If uid is USHRT_MAX, the process is started from a non cygwin