* syscalls.cc (seteuid32): On Win95 get the pw entry. If it exists

update the euid and call cygheap->user.set_name. Remove special
	handling of ILLEGAL_UID.
	(setgid32): Add a debug_printf. On Win95, always set the egid.
	Remove special handling of ILLEGAL_GID. Do not compare gid and gr_gid.
	* child_info.h (class cygheap_exec_info): Remove uid.
	* spawn.cc (spawn_guts): Do not set ciresrv.moreinfo->uid.
	* dcrto.cc (dll_crt0_1): Always call uinfo_init.
	* uinfo.cc (uinfo_init): Reorganize and close handle if needed.
	(cygheap_user::ontherange): Do not call internal_getpwnam if pw is NULL.
This commit is contained in:
Corinna Vinschen
2003-01-25 10:36:46 +00:00
parent 45dbfc2611
commit 4f7e12dd26
6 changed files with 35 additions and 31 deletions

View File

@@ -684,9 +684,8 @@ dll_crt0_1 ()
/* Init global well known SID objects */
cygsid::init ();
/* Initialize uid, gid if necessary. */
if (child_proc_info == NULL || spawn_info->moreinfo->uid == ILLEGAL_UID)
uinfo_init ();
/* Initialize user info. */
uinfo_init ();
/* Initialize signal/subprocess handling. */
sigproc_init ();