umask: change default umask to 0022 just to be sure, and set it explicitly in all...
authorLennart Poettering <lennart@poettering.net>
Mon, 1 Aug 2011 18:52:18 +0000 (20:52 +0200)
committerLennart Poettering <lennart@poettering.net>
Mon, 1 Aug 2011 18:52:18 +0000 (20:52 +0200)
30 files changed:
src/binfmt.c
src/cryptsetup-generator.c
src/cryptsetup.c
src/execute.c
src/fsck.c
src/getty-generator.c
src/hostnamed.c
src/initctl.c
src/kmsg-syslogd.c
src/localed.c
src/logger.c
src/logind.c
src/machine-id-setup.c
src/modules-load.c
src/nspawn.c
src/quotacheck.c
src/random-seed.c
src/readahead-collect.c
src/readahead-replay.c
src/remount-api-vfs.c
src/shutdown.c
src/shutdownd.c
src/sysctl.c
src/timedated.c
src/tmpfiles.c
src/tty-ask-password-agent.c
src/uaccess.c
src/update-utmp.c
src/user-sessions.c
src/vconsole-setup.c

index a815a11..552d8cc 100644 (file)
@@ -127,6 +127,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (argc > 1) {
                 r = apply_file(argv[1], false);
         } else {
index db8ebdf..a340218 100644 (file)
@@ -246,6 +246,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (!(f = fopen("/etc/crypttab", "re"))) {
 
                 if (errno == ENOENT)
index c0caf9a..cf288de 100644 (file)
@@ -241,6 +241,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (streq(argv[1], "attach")) {
                 uint32_t flags = 0;
                 int k;
index 7b25679..f07d018 100644 (file)
@@ -1402,7 +1402,7 @@ fail_parent:
 void exec_context_init(ExecContext *c) {
         assert(c);
 
-        c->umask = 0002;
+        c->umask = 0022;
         c->ioprio = IOPRIO_PRIO_VALUE(IOPRIO_CLASS_BE, 0);
         c->cpu_sched_policy = SCHED_OTHER;
         c->syslog_priority = LOG_DAEMON|LOG_INFO;
index 19ca753..5d9cf24 100644 (file)
@@ -163,6 +163,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         parse_proc_cmdline();
         test_files();
 
index 7b91094..b8228e9 100644 (file)
@@ -73,6 +73,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (detect_container(NULL) > 0) {
                 log_debug("Automatic adding console shell.");
 
index 7b2ce69..e3b89a4 100644 (file)
@@ -559,6 +559,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (argc == 2 && streq(argv[1], "--introspect")) {
                 fputs(DBUS_INTROSPECT_1_0_XML_DOCTYPE_DECL_NODE
                       "<node>\n", stdout);
@@ -576,8 +578,6 @@ int main(int argc, char *argv[]) {
         if (!check_nss())
                 log_warning("Warning: nss-myhostname is not installed. Changing the local hostname might make it unresolveable. Please install nss-myhostname!");
 
-        umask(0022);
-
         r = read_data();
         if (r < 0) {
                 log_error("Failed to read hostname data: %s", strerror(-r));
index dd74314..7096a82 100644 (file)
@@ -364,6 +364,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if ((n = sd_listen_fds(true)) < 0) {
                 log_error("Failed to read listening file descriptors from environment: %s", strerror(-r));
                 return EXIT_FAILURE;
index 60d3244..83c2047 100644 (file)
@@ -455,6 +455,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if ((n = sd_listen_fds(true)) < 0) {
                 log_error("Failed to read listening file descriptors from environment: %s", strerror(-r));
                 return EXIT_FAILURE;
index 93e4e9b..cb8acf2 100644 (file)
@@ -575,6 +575,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (argc == 2 && streq(argv[1], "--introspect")) {
                 fputs(DBUS_INTROSPECT_1_0_XML_DOCTYPE_DECL_NODE
                       "<node>\n", stdout);
@@ -589,8 +591,6 @@ int main(int argc, char *argv[]) {
                 goto finish;
         }
 
-        umask(0022);
-
         r = read_data();
         if (r < 0) {
                 log_error("Failed to read locale data: %s", strerror(-r));
index 81196db..435d5a7 100644 (file)
@@ -637,6 +637,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if ((n = sd_listen_fds(true)) < 0) {
                 log_error("Failed to read listening file descriptors from environment: %s", strerror(-r));
                 return EXIT_FAILURE;
index ca48aa1..b84242e 100644 (file)
@@ -1193,14 +1193,14 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (argc != 1) {
                 log_error("This program takes no arguments.");
                 r = -EINVAL;
                 goto finish;
         }
 
-        umask(0022);
-
         m = manager_new();
         if (!m) {
                 log_error("Out of memory");
index be51d0d..519521f 100644 (file)
@@ -167,7 +167,10 @@ int machine_id_setup(void) {
 
         mkdir_p("/run/systemd", 0755);
 
+        m = umask(0022);
         r = write_one_line_file("/run/systemd/machine-id", id);
+        umask(m);
+
         if (r < 0) {
                 log_error("Cannot write /run/systemd/machine-id: %s", strerror(-r));
 
index d76defa..4b3b121 100644 (file)
@@ -46,6 +46,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (!(arguments = strv_new("/sbin/modprobe", "-sab", "--", NULL))) {
                 log_error("Failed to allocate string array");
                 goto finish;
index a1ed425..f4d63ea 100644 (file)
@@ -314,7 +314,6 @@ static int copy_devnodes(const char *dest, const char *console) {
         }
 
 finish:
-
         umask(u);
 
         return r;
@@ -776,7 +775,7 @@ int main(int argc, char *argv[]) {
                         goto child_fail;
                 }
 
-                umask(0002);
+                umask(0022);
 
                 if (drop_capabilities() < 0)
                         goto child_fail;
index ba12b27..c475cec 100644 (file)
@@ -90,6 +90,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         parse_proc_cmdline();
         test_files();
 
index 054233e..ee5cae3 100644 (file)
@@ -47,6 +47,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         /* Read pool size, if possible */
         if ((f = fopen("/proc/sys/kernel/random/poolsize", "re"))) {
                 fscanf(f, "%zu", &buf_size);
index 20881b3..df467f1 100644 (file)
@@ -656,6 +656,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if ((r = parse_argv(argc, argv)) <= 0)
                 return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
 
index 0b84528..e97a0cf 100644 (file)
@@ -340,6 +340,8 @@ int main(int argc, char*argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if ((r = parse_argv(argc, argv)) <= 0)
                 return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
 
index 5b18728..8bbc021 100644 (file)
@@ -52,6 +52,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (!(f = setmntent("/etc/fstab", "r"))) {
                 log_error("Failed to open /etc/fstab: %m");
                 goto finish;
index 52bad21..1c6dc65 100644 (file)
@@ -295,6 +295,8 @@ int main(int argc, char *argv[]) {
         log_set_target(LOG_TARGET_CONSOLE); /* syslog will die if not gone yet */
         log_open();
 
+        umask(0022);
+
         if (getpid() != 1) {
                 log_error("Not executed by init (pid 1).");
                 r = -EPERM;
index 49ab886..0ffa8b2 100644 (file)
@@ -193,6 +193,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if ((n_fds = sd_listen_fds(true)) < 0) {
                 log_error("Failed to read listening file descriptors from environment: %s", strerror(-r));
                 return EXIT_FAILURE;
index 9f7acfc..8bdfb08 100644 (file)
@@ -228,6 +228,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (argc > optind)
                 r = apply_file(argv[optind], false);
         else {
index 4abcf1a..4bde035 100644 (file)
@@ -578,6 +578,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (argc == 2 && streq(argv[1], "--introspect")) {
                 fputs(DBUS_INTROSPECT_1_0_XML_DOCTYPE_DECL_NODE
                       "<node>\n", stdout);
@@ -592,8 +594,6 @@ int main(int argc, char *argv[]) {
                 goto finish;
         }
 
-        umask(0022);
-
         r = read_data();
         if (r < 0) {
                 log_error("Failed to read timezone data: %s", strerror(-r));
index 3a1985a..421a915 100644 (file)
@@ -972,6 +972,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         label_init();
 
         items = hashmap_new(string_hash_func, string_compare_func);
index ca183c3..43d008f 100644 (file)
@@ -728,6 +728,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if ((r = parse_argv(argc, argv)) <= 0)
                 goto finish;
 
index 786f0ef..49ac4af 100644 (file)
@@ -38,6 +38,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (argc < 2 || argc > 3) {
                 log_error("This program expects one or two arguments.");
                 r = -EINVAL;
index b06f5a0..f81e7f4 100644 (file)
@@ -373,6 +373,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
 #ifdef HAVE_AUDIT
         if ((c.audit_fd = audit_open()) < 0)
                 log_error("Failed to connect to audit log: %m");
index ffb8657..df46b76 100644 (file)
@@ -39,6 +39,8 @@ int main(int argc, char*argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (streq(argv[1], "start")) {
                 int q = 0, r = 0;
 
index 68ebac9..4347a20 100644 (file)
@@ -171,6 +171,8 @@ int main(int argc, char **argv) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if (argv[1])
                 vc = argv[1];
         else