diff options
author | George Lebl <jirka@5z.com> | 2003-12-20 00:50:26 +0000 |
---|---|---|
committer | George Lebl <jirka@src.gnome.org> | 2003-12-20 00:50:26 +0000 |
commit | 962459117eecd0b3615ab1d5d253a0429a977739 (patch) | |
tree | 76cd435c44220cf3d6b362c08b95f1340e10b8f4 /daemon/auth.c | |
parent | e92b71ea79b91c95a549bbbe8cd460b2f9c5da16 (diff) | |
download | gdm-962459117eecd0b3615ab1d5d253a0429a977739.tar.gz |
Lots of general paranoia stemming from fixing #127780. Make sure that the
Fri Dec 19 16:50:12 2003 George Lebl <jirka@5z.com>
* daemon/slave.c, daemon/gdm.[ch], daemon/auth.c, daemon/misc.c:
Lots of general paranoia stemming from fixing #127780. Make sure
that the NEVER_FAILS_ eid/uid setting never actually fails by just
setting euid root before doing anything and such.
Diffstat (limited to 'daemon/auth.c')
-rw-r--r-- | daemon/auth.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/daemon/auth.c b/daemon/auth.c index a797a5f3..543d6284 100644 --- a/daemon/auth.c +++ b/daemon/auth.c @@ -530,18 +530,15 @@ try_open_read_as_root (const char *file) int fd; uid_t oldeuid = geteuid (); uid_t oldegid = getegid (); - setegid (0); - seteuid (0); + NEVER_FAILS_root_set_euid_egid (0, 0); VE_IGNORE_EINTR (fd = open (file, O_RDONLY)); if G_UNLIKELY (fd < 0) { - seteuid (oldeuid); - setegid (oldegid); + NEVER_FAILS_root_set_euid_egid (oldeuid, oldegid); return FALSE; } else { VE_IGNORE_EINTR (close (fd)); - seteuid (oldeuid); - setegid (oldegid); + NEVER_FAILS_root_set_euid_egid (oldeuid, oldegid); return TRUE; } } |