diff options
-rw-r--r-- | libfshelp/ChangeLog | 6 | ||||
-rw-r--r-- | libfshelp/exec-reauth.c | 7 |
2 files changed, 10 insertions, 3 deletions
diff --git a/libfshelp/ChangeLog b/libfshelp/ChangeLog index c016f54d..60d59e07 100644 --- a/libfshelp/ChangeLog +++ b/libfshelp/ChangeLog @@ -1,3 +1,9 @@ +Tue Jul 1 16:45:27 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> + + * exec-reauth.c (fshelp_exec_reauth): If the new set of eff_uids + is empty, then still do proc_setowner, but this time to set it to + "unowned" status. + 1997-06-12 Miles Bader <miles@gnu.ai.mit.edu> * fshelp.h (fshelp_touch): New function. diff --git a/libfshelp/exec-reauth.c b/libfshelp/exec-reauth.c index e6009827..f0600a1c 100644 --- a/libfshelp/exec-reauth.c +++ b/libfshelp/exec-reauth.c @@ -1,6 +1,6 @@ /* Setuid reauthentication for exec - Copyright (C) 1995, 1996 Free Software Foundation, Inc. + Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. Written by Miles Bader <miles@gnu.ai.mit.edu>, from the original by Michael I. Bushnell p/BSG <mib@gnu.ai.mit.edu> @@ -130,8 +130,9 @@ fshelp_exec_reauth (int suid, uid_t uid, int sgid, gid_t gid, /* Re-authenticate the exec parameters. */ exec_reauth (newauth, _secure, 0, ports, num_ports, fds, num_fds); - if (eff_uids->num > 0) - proc_setowner (ports[INIT_PORT_PROC], eff_uids->ids[0], 0); + proc_setowner (ports[INIT_PORT_PROC], + eff_uids->num > 0 ? eff_uids->ids[0] : 0, + !eff_uids->num); abandon_suid: if (eff_uids) |