diff options
author | Lennart Poettering <lennart@poettering.net> | 2016-04-07 16:15:26 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2016-04-12 13:43:32 +0200 |
commit | 8612da973d30c5a9530fa1b6b3d449147b5a3324 (patch) | |
tree | 391c71ae6c9bd01e69ed98e39b8cbc72e3f07572 /src/basic | |
parent | 4f4afc88ecd8ab9cfe9e1eeea7e3aeb937811937 (diff) |
core: be more paranoid when mixing umask and fopen()
Let's be extra careful with the umask when we use simple fopen(), as this
creates files with 0777 by default.
Diffstat (limited to 'src/basic')
-rw-r--r-- | src/basic/util.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/basic/util.c b/src/basic/util.c index f1e3bd5b48..6996527ec4 100644 --- a/src/basic/util.c +++ b/src/basic/util.c @@ -55,6 +55,7 @@ #include "string-util.h" #include "strv.h" #include "time-util.h" +#include "umask-util.h" #include "user-util.h" #include "util.h" @@ -781,7 +782,8 @@ int update_reboot_param_file(const char *param) { int r = 0; if (param) { - r = write_string_file(REBOOT_PARAM_FILE, param, WRITE_STRING_FILE_CREATE); + RUN_WITH_UMASK(0022) + r = write_string_file(REBOOT_PARAM_FILE, param, WRITE_STRING_FILE_CREATE); if (r < 0) return log_error_errno(r, "Failed to write reboot param to "REBOOT_PARAM_FILE": %m"); } else |