now use setreuid()

This commit is contained in:
Todd C. Miller
1994-01-27 00:52:18 +00:00
parent 40b281b90d
commit 5b566c24c6
3 changed files with 10 additions and 17 deletions

12
check.c
View File

@@ -82,10 +82,10 @@ void check_user()
exit(1);
}
rtn = check_timestamp();
if (setruid(uid)) { /* don't want to be root longer than
* necessary */
/* don't want to be root longer than necessary */
if (setreuid(uid, (uid_t)-1)) {
#ifndef _AIX
perror("setruid(uid)");
perror("setreuid()");
exit(1);
#endif
}
@@ -97,10 +97,10 @@ void check_user()
exit(1);
}
update_timestamp();
if (setruid(uid)) { /* don't want to be root longer than
* necessary */
/* don't want to be root longer than necessary */
if (setreuid(uid, (uid_t)-1)) {
#ifndef _AIX
perror("setruid(uid)");
perror("setreuid()");
exit(1);
#endif
}

4
sudo.c
View File

@@ -131,9 +131,9 @@ main(argc, argv, envp)
exit(1);
}
rtn = validate();
if (setruid(uid)) {
if (setreuid(uid, (uid_t)-1)) {
#ifndef _AIX
perror("setruid(uid)");
perror("setreuid()");
exit(1);
#endif
}

9
sudo.h
View File

@@ -289,18 +289,11 @@ extern char **Envp;
#endif
extern int errno;
/*
* Emulate setruid() under linux
*/
#ifdef linux
#define setruid(__RUID) (setreuid((uid_t) (__RUID), (uid_t) -1))
#endif /* linux */
/*
* This is to placate hpux
*/
#ifdef hpux
#define setruid(__RUID) (setresuid((uid_t) (__RUID), (uid_t) -1, (uid_t) -1))
#define setreuid(__RUID, __EUID) (setresuid(__RUID, __EUID, (uid_t) -1))
#define getdtablesize() (sysconf(_SC_OPEN_MAX))
#ifndef USE_CWD
#define USE_CWD