Change internal uid datatype from __uid16_t to __uid32_t
throughout. * cygwin.din: Export new symbols getpwuid32, getpwuid_r32, getuid32, geteuid32, setuid32, seteuid32. * passwd.cc (getpwuid32): New function. (getpwuid_r32): Ditto. * syscalls.cc (seteuid32): Ditto. (setuid32): Ditto. * uinfo.cc (getuid32): Ditto. (geteuid32): Ditto. * winsup.h (uid16touid32): New macro, correclt casting from __uid16_t to __uid32_t. (gid16togid32): Ditto fir gids. (getuid32): Declare. (geteuid32): Ditto. (getpwuid32): Ditto. * include/sys/cygwin.h (struct external_pinfo): Add members uid32 and gid32.
This commit is contained in:
@@ -96,9 +96,9 @@ class cygheap_user
|
||||
PSID psid; /* buffer for user's SID */
|
||||
PSID orig_psid; /* Remains intact even after impersonation */
|
||||
public:
|
||||
__uid16_t orig_uid; /* Remains intact even after impersonation */
|
||||
__uid32_t orig_uid; /* Remains intact even after impersonation */
|
||||
__gid32_t orig_gid; /* Ditto */
|
||||
__uid16_t real_uid; /* Remains intact on seteuid, replaced by setuid */
|
||||
__uid32_t real_uid; /* Remains intact on seteuid, replaced by setuid */
|
||||
__gid32_t real_gid; /* Ditto */
|
||||
|
||||
/* token is needed if set(e)uid should be called. It can be set by a call
|
||||
|
Reference in New Issue
Block a user