From 4dce2ac60acec70ea6076764c91e83b5d5dd189e Mon Sep 17 00:00:00 2001 From: Timur Bakeyev Date: Mon, 1 Feb 1999 00:21:43 +0000 Subject: [PATCH] setuid()/setreuid() in mcserv.c Mon Feb 1 01:45:08 1999 Timur I. Bakeyev * mcserv.c: If setuid() is avaliable, use it, even, streuid() also present. (BTW, bsdi uses it's own auth system..) --- vfs/ChangeLog | 5 +++++ vfs/mcserv.c | 9 +++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/vfs/ChangeLog b/vfs/ChangeLog index 339c10619..f896b7dc0 100644 --- a/vfs/ChangeLog +++ b/vfs/ChangeLog @@ -1,3 +1,8 @@ +Mon Feb 1 01:45:08 1999 Timur I. Bakeyev + + * mcserv.c: If setuid() is avaliable, use it, even, streuid() also + present. (BTW, bsdi uses it's own auth system..) + Sun Jan 31 20:51:17 1999 Alexander Savelyev * mcserv.c (do_auth): mcserv never auth properly on bsdi. diff --git a/vfs/mcserv.c b/vfs/mcserv.c index 231133a59..ee5db0040 100644 --- a/vfs/mcserv.c +++ b/vfs/mcserv.c @@ -912,12 +912,13 @@ do_auth (char *username, char *password) #endif #endif -#if !defined(BSD) || defined(__bsdi__) +#if defined (HAVE_SETUID) if (setuid (this->pw_uid)) -#else - if (setreuid (this->pw_uid, this->pw_uid)) -#endif return 0; +#elif defined (HAVE_SETREUID) + if (setreuid (this->pw_uid, this->pw_uid)) + return 0; +#endif /* If the setuid call failed, then deny access */ /* This should fix the problem on those machines with strange setups */