summaryrefslogtreecommitdiff
path: root/mysys/default.c
diff options
context:
space:
mode:
Diffstat (limited to 'mysys/default.c')
-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);