* cygheap.cc (cygheap_init): Set umask to a sane default.

* uinfo.cc (cygheap_user::ontherange): Don't use HOMEDRIVE/HOMEPATH
	to set HOME.  Default to /home/USERNAME.
This commit is contained in:
Corinna Vinschen 2009-05-06 11:52:20 +00:00
parent 3227665e19
commit 764d88e4a7
3 changed files with 12 additions and 18 deletions

View File

@ -1,3 +1,9 @@
2009-05-06 Corinna Vinschen <corinna@vinschen.de>
* cygheap.cc (cygheap_init): Set umask to a sane default.
* uinfo.cc (cygheap_user::ontherange): Don't use HOMEDRIVE/HOMEPATH
to set HOME. Default to /home/USERNAME.
2009-05-03 Corinna Vinschen <corinna@vinschen.de>
* security.cc (set_file_sd): Drop using FILE_OPEN_FOR_RECOVERY flag in

View File

@ -156,6 +156,8 @@ cygheap_init ()
_cygheap_mid - _cygheap_start);
cygheap_max = cygheap;
_csbrk (sizeof (*cygheap));
/* Set umask to a sane default. */
cygheap->umask = 022;
}
if (!cygheap->fdtab)
cygheap->fdtab.init ();

View File

@ -248,15 +248,6 @@ cygheap_user::ontherange (homebodies what, struct passwd *pw)
if (what == CH_HOME)
{
char *p;
if (homedrive)
newhomedrive = homedrive;
else if ((p = getenv ("HOMEDRIVE")))
newhomedrive = p;
if (homepath)
newhomepath = homepath;
else if ((p = getenv ("HOMEPATH")))
newhomepath = p;
if ((p = getenv ("HOME")))
debug_printf ("HOME is already in the environment %s", p);
@ -267,17 +258,12 @@ cygheap_user::ontherange (homebodies what, struct passwd *pw)
debug_printf ("Set HOME (from /etc/passwd) to %s", pw->pw_dir);
setenv ("HOME", pw->pw_dir, 1);
}
else if (!newhomedrive || !newhomepath)
setenv ("HOME", "/", 1);
else
{
char *home = tp.c_get ();
char *buf = tp.c_get ();
strcpy (buf, newhomedrive);
strcat (buf, newhomepath);
cygwin_conv_path (CCP_WIN_A_TO_POSIX | CCP_ABSOLUTE, buf, home,
NT_MAX_PATH);
debug_printf ("Set HOME (from HOMEDRIVE/HOMEPATH) to %s", home);
char home[strlen (name ()) + 8];
debug_printf ("Set HOME to default /home/USER");
__small_sprintf (home, "/home/%s", name ());
setenv ("HOME", home, 1);
}
}