summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/syscalls.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2007-07-16 20:01:15 +0000
committerCorinna Vinschen <corinna@vinschen.de>2007-07-16 20:01:15 +0000
commit77ee88050494f6fb0921f7d29c1a7ca7dfa7dcd7 (patch)
treed83fb4f7f01a80e7242fc24c90fbb184cbe94eda /winsup/cygwin/syscalls.cc
parent6f76c68713a2bc3945cc4c3d27a5c266ed8284ca (diff)
downloadcygnal-77ee88050494f6fb0921f7d29c1a7ca7dfa7dcd7.tar.gz
cygnal-77ee88050494f6fb0921f7d29c1a7ca7dfa7dcd7.tar.bz2
cygnal-77ee88050494f6fb0921f7d29c1a7ca7dfa7dcd7.zip
* cygheap.h (cygheap_user::curr_imp_token): Rename from current_token.
Accommodate changge throughout Cygwin. (cygheap_user::imp_token): Rename from token. Accommodate changge throughout Cygwin. (rcygheap_user::eimpersonate): Use primary token for impersonation. * grp.cc (internal_getgroups): Use primary impersonation token when impersonated. * security.h (_push_thread_privilege): Use primary impersonation token when impersonated.
Diffstat (limited to 'winsup/cygwin/syscalls.cc')
-rw-r--r--winsup/cygwin/syscalls.cc12
1 files changed, 6 insertions, 6 deletions
diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc
index e564eddc5..3d9cba259 100644
--- a/winsup/cygwin/syscalls.cc
+++ b/winsup/cygwin/syscalls.cc
@@ -2228,22 +2228,22 @@ seteuid32 (__uid32_t uid)
cygheap->user.set_sid (usersid);
cygheap->user.curr_primary_token = new_token == hProcToken ? NO_IMPERSONATION
: new_token;
- if (cygheap->user.current_token != NO_IMPERSONATION)
+ if (cygheap->user.curr_imp_token != NO_IMPERSONATION)
{
- CloseHandle (cygheap->user.current_token);
- cygheap->user.current_token = NO_IMPERSONATION;
+ CloseHandle (cygheap->user.curr_imp_token);
+ cygheap->user.curr_imp_token = NO_IMPERSONATION;
}
if (cygheap->user.curr_primary_token != NO_IMPERSONATION)
{
if (!DuplicateTokenEx (cygheap->user.curr_primary_token, MAXIMUM_ALLOWED,
&sec_none, SecurityImpersonation,
- TokenImpersonation, &cygheap->user.current_token))
+ TokenImpersonation, &cygheap->user.curr_imp_token))
{
__seterrno ();
cygheap->user.curr_primary_token = NO_IMPERSONATION;
return -1;
}
- set_cygwin_privileges (cygheap->user.current_token);
+ set_cygwin_privileges (cygheap->user.curr_imp_token);
}
if (!cygheap->user.reimpersonate ())
{
@@ -2338,7 +2338,7 @@ setegid32 (__gid32_t gid)
TokenPrimaryGroup, &gsid, sizeof gsid))
debug_printf ("SetTokenInformation(primary_token, "
"TokenPrimaryGroup), %E");
- if (!SetTokenInformation (cygheap->user.token (), TokenPrimaryGroup,
+ if (!SetTokenInformation (cygheap->user.imp_token (), TokenPrimaryGroup,
&gsid, sizeof gsid))
debug_printf ("SetTokenInformation(token, TokenPrimaryGroup), %E");
}