From: simon Date: Sat, 23 Feb 2013 21:00:29 +0000 (+0000) Subject: Don't forget to check the return values of setuid and friends. X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/commitdiff_plain/04b4cc614d1778b6e9ccfd490ed4e7ff7e2baf8a Don't forget to check the return values of setuid and friends. git-svn-id: svn://svn.tartarus.org/sgt/putty@9764 cda61777-01e9-0310-a592-d414129be87e --- diff --git a/unix/uxpty.c b/unix/uxpty.c index a1f96946..2bfb85b5 100644 --- a/unix/uxpty.c +++ b/unix/uxpty.c @@ -531,11 +531,23 @@ void pty_pre_init(void) int gid = getgid(), uid = getuid(); int setresgid(gid_t, gid_t, gid_t); int setresuid(uid_t, uid_t, uid_t); - setresgid(gid, gid, gid); - setresuid(uid, uid, uid); + if (setresgid(gid, gid, gid) < 0) { + perror("setresgid"); + exit(1); + } + if (setresuid(uid, uid, uid) < 0) { + perror("setresuid"); + exit(1); + } #else - setgid(getgid()); - setuid(getuid()); + if (setgid(getgid()) < 0) { + perror("setgid"); + exit(1); + } + if (setuid(getuid()) < 0) { + perror("setuid"); + exit(1); + } #endif } }