chiark / gitweb /
job: fix loss of ordering with restart jobs
[elogind.git] / src / namespace.c
index a06cac10fda45708e020148a39034d73e2d7e7bc..09bc82909f0f4d246b758b3606a6bb199735b983 100644 (file)
@@ -253,11 +253,19 @@ int setup_namespace(
         }
 
         if (need_private) {
+                mode_t u;
+
                 memcpy(private_dir, tmp_dir, sizeof(tmp_dir)-1);
+
+                u = umask(0000);
                 if (mkdir(private_dir, 0777 + S_ISVTX) < 0) {
+                        umask(u);
+
                         r = -errno;
                         goto fail;
                 }
+
+                umask(u);
                 remove_private = true;
         }