mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04:00
rexecd was not calling "setlogin()" when it should have. This was causing
getlogin() to return wrong answers (eg: "root"). Reviewed by: davidg Obtained from: James Jegers, for NetBSD, slightly reworked by me.
This commit is contained in:
parent
d49c99ba9c
commit
3f59b9c4ef
1 changed files with 2 additions and 0 deletions
|
|
@ -258,6 +258,8 @@ doit(f, fromp)
|
|||
pwd->pw_shell = _PATH_BSHELL;
|
||||
if (f > 2)
|
||||
(void) close(f);
|
||||
if (setlogin(pwd->pw_name) < 0)
|
||||
syslog(LOG_ERR, "setlogin() failed: %m");
|
||||
(void) setgid((gid_t)pwd->pw_gid);
|
||||
initgroups(pwd->pw_name, pwd->pw_gid);
|
||||
(void) setuid((uid_t)pwd->pw_uid);
|
||||
|
|
|
|||
Loading…
Reference in a new issue