diff options
Diffstat (limited to 'inet/rcmd.c')
-rw-r--r-- | inet/rcmd.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/inet/rcmd.c b/inet/rcmd.c index ad8a894..c1cd9da 100644 --- a/inet/rcmd.c +++ b/inet/rcmd.c @@ -561,7 +561,9 @@ ruserok2_sa (struct sockaddr *ra, size_t ralen, int superuser, reading an NFS mounted file system, can't read files that are protected read/write owner only. */ uid = __geteuid (); - seteuid (pwd->pw_uid); + if (seteuid (pwd->pw_uid) < 0) + return -1; + hostf = iruserfopen (pbuf, pwd->pw_uid); if (hostf != NULL) @@ -570,7 +572,8 @@ ruserok2_sa (struct sockaddr *ra, size_t ralen, int superuser, fclose (hostf); } - seteuid (uid); + if (seteuid (uid) < 0) + return -1; return isbad; } return -1; |