summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormonty@mashka.mysql.fi <>2003-04-28 12:31:19 +0300
committermonty@mashka.mysql.fi <>2003-04-28 12:31:19 +0300
commit252ba8aa61f14916471f68004967f928f3f63c66 (patch)
tree45f058213fd744ba1701b372405b7088c7a633a4
parent938933afc9f90a5102dba643be1a3c54e6051ba6 (diff)
downloadmariadb-git-252ba8aa61f14916471f68004967f928f3f63c66.tar.gz
Better test for regular files.
-rw-r--r--mysys/default.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/mysys/default.c b/mysys/default.c
index 26121cc0e56..c47d2719ab5 100644
--- a/mysys/default.c
+++ b/mysys/default.c
@@ -249,8 +249,13 @@ static my_bool search_default_file(DYNAMIC_ARRAY *args, MEM_ROOT *alloc,
MY_STAT stat_info;
if (!my_stat(name,&stat_info,MYF(0)))
return 0;
- /* ignore world-writeable _regular_ files */
- if (stat_info.st_mode & S_IWOTH && stat_info.st_mode & S_IFREG)
+ /*
+ Ignore world-writable regular files.
+ This is mainly done to protect us to not read a file created by
+ the mysqld server, but the check is still valid in most context.
+ */
+ if ((stat_info.st_mode & S_IWOTH) &&
+ (stat_info.st_mode & S_IFMT) == S_IFREG)
{
fprintf(stderr, "warning: World-writeable config file %s is ignored\n",
name);