* uinfo.cc (cygheap_user::test_uid): Return NULL or further tests are sorta

useless.
(cygheap_user::env_domain): Recalculate if name is missing.
This commit is contained in:
Christopher Faylor 2002-06-29 06:50:17 +00:00
parent 664075a3bb
commit 38bc119696
2 changed files with 8 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2002-06-29 Christopher Faylor <cgf@redhat.com>
* uinfo.cc (cygheap_user::test_uid): Return NULL or further tests are
sorta useless.
(cygheap_user::env_domain): Recalculate if name is missing.
2002-06-29 Christopher Faylor <cgf@redhat.com> 2002-06-29 Christopher Faylor <cgf@redhat.com>
* environ.cc (spenv::from_cygheap): Still need to take setuid into * environ.cc (spenv::from_cygheap): Still need to take setuid into

View File

@ -309,7 +309,7 @@ cygheap_user::test_uid (char *&what, const char *name, size_t namelen)
if (what) if (what)
return what; return what;
if (orig_uid == myself->uid) if (orig_uid == myself->uid)
what = getwinenveq (name, namelen, HEAP_STR) ?: almost_null; what = getwinenveq (name, namelen, HEAP_STR);
return what; return what;
} }
@ -332,7 +332,7 @@ cygheap_user::env_logsrv (const char *name, size_t namelen)
const char * const char *
cygheap_user::env_domain (const char *name, size_t namelen) cygheap_user::env_domain (const char *name, size_t namelen)
{ {
if (test_uid (pdomain, name, namelen)) if (pwinname && test_uid (pdomain, name, namelen))
return pdomain; return pdomain;
char username[UNLEN + 1]; char username[UNLEN + 1];