Only set HOME, SHELL and PATH in multiuser sessions.
authorFredrik Tolf <fredrik@dolda2000.com>
Sun, 19 Aug 2007 03:39:26 +0000 (05:39 +0200)
committerFredrik Tolf <fredrik@dolda2000.com>
Sun, 19 Aug 2007 03:39:26 +0000 (05:39 +0200)
daemon/main.c

index 3737270..2848d41 100644 (file)
@@ -340,12 +340,12 @@ pid_t forksess(uid_t user, struct authhandle *auth, void (*ccbfunc)(pid_t, int,
                    flog(LOG_WARNING, "could not setuid: %s", strerror(errno));
                    exit(127);
                }
+               putenv(sprintf2("HOME=%s", pwent->pw_dir));
+               putenv(sprintf2("SHELL=%s", pwent->pw_shell));
+               putenv(sprintf2("PATH=%s/bin:/usr/local/bin:/bin:/usr/bin", pwent->pw_dir));
            }
-           putenv(sprintf2("HOME=%s", pwent->pw_dir));
-           putenv(sprintf2("SHELL=%s", pwent->pw_shell));
            putenv(sprintf2("USER=%s", pwent->pw_name));
            putenv(sprintf2("LOGNAME=%s", pwent->pw_name));
-           putenv(sprintf2("PATH=%s/bin:/usr/local/bin:/bin:/usr/bin", pwent->pw_dir));
            chdir(pwent->pw_dir);
            return(0);
        }