diff options
author | Rucha Deodhar <rucha.deodhar@mariadb.com> | 2020-12-28 21:27:27 +0530 |
---|---|---|
committer | Rucha Deodhar <rucha.deodhar@mariadb.com> | 2020-12-29 14:37:04 +0530 |
commit | dbb2938a73b86f6df080786da0f2c9b104470352 (patch) | |
tree | e43ab494b0e023fec81bba240e5dc5105bca9719 | |
parent | 5b9ee8d8193a8c7a8ebdd35eedcadc3ae78e7fc1 (diff) | |
download | mariadb-git-bb-10.2-MDEV-23875.tar.gz |
MDEV-23875: select into outfile not respect UMASK and UMASK_DIRbb-10.2-MDEV-23875
Analysis: select into outfile creates files everytime with 666 permission,
regardsless if umask environment variables and umask settings on OS level.
It seems hardcoded.
Fix: change 0666 to 0644 which will let anybody consume the file but not
change it.
-rw-r--r-- | sql/sql_class.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sql/sql_class.cc b/sql/sql_class.cc index 7eaafbd9044..b16a750aa9b 100644 --- a/sql/sql_class.cc +++ b/sql/sql_class.cc @@ -2859,12 +2859,12 @@ static File create_file(THD *thd, char *path, sql_exchange *exchange, } /* Create the file world readable */ if ((file= mysql_file_create(key_select_to_file, - path, 0666, O_WRONLY|O_EXCL, MYF(MY_WME))) < 0) + path, 0644, O_WRONLY|O_EXCL, MYF(MY_WME))) < 0) return file; #ifdef HAVE_FCHMOD - (void) fchmod(file, 0666); // Because of umask() + (void) fchmod(file, 0644); // Because of umask() #else - (void) chmod(path, 0666); + (void) chmod(path, 0644; #endif if (init_io_cache(cache, file, 0L, WRITE_CACHE, 0L, 1, MYF(MY_WME))) { |