summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjani@ua126d19.elisa.omakaista.fi <>2003-06-05 16:57:36 +0300
committerjani@ua126d19.elisa.omakaista.fi <>2003-06-05 16:57:36 +0300
commitd793db2bb9f34706549b2cd0e7e199ffec92d278 (patch)
treed12644499b2610eee89da5c126bb797b427262fc
parente09517e2ac9596d0d011ca87f2d0cb181398da6c (diff)
parent058d8ed14b22fe3eb63cdc68cd41bffd84561367 (diff)
downloadmariadb-git-d793db2bb9f34706549b2cd0e7e199ffec92d278.tar.gz
Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into ua126d19.elisa.omakaista.fi:/home/my/bk/mysql-4.0
-rw-r--r--sql/mysqld.cc15
1 files changed, 11 insertions, 4 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc
index 8ed183e2f1f..315931094c2 100644
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -1013,14 +1013,21 @@ static void set_ports()
static void set_user(const char *user)
{
#if !defined(__WIN__) && !defined(OS2) && !defined(__NETWARE__)
- struct passwd *ent;
+ struct passwd *ent;
+ uid_t user_id= geteuid();
// don't bother if we aren't superuser
- if (geteuid())
+ if (user_id)
{
if (user)
- fprintf(stderr,
- "Warning: One can only use the --user switch if running as root\n");
+ {
+ /* Don't give a warning, if real user is same as given with --user */
+ struct passwd *user_info= getpwnam(user);
+
+ if (!user_info || user_id != user_info->pw_uid)
+ fprintf(stderr,
+ "Warning: One can only use the --user switch if running as root\n");
+ }
return;
}
else if (!user)