Blob Blame History Raw
From 7bf138b0364c8922da108e81a649bef1a5ad212b Mon Sep 17 00:00:00 2001
From: Colin Walters <walters@verbum.org>
Date: Fri, 30 Oct 2015 17:10:23 -0400
Subject: [PATCH] init-fs: Explicitly set /tmp to 01777

I think most people were using tmpfs-on-tmp and so didn't hit this.

See https://bugzilla.redhat.com/show_bug.cgi?id=1276775
---
 src/ostree/ot-admin-builtin-init-fs.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/ostree/ot-admin-builtin-init-fs.c b/src/ostree/ot-admin-builtin-init-fs.c
index 71b3b55..0172f01 100644
--- a/src/ostree/ot-admin-builtin-init-fs.c
+++ b/src/ostree/ot-admin-builtin-init-fs.c
@@ -77,6 +77,16 @@ ot_admin_builtin_init_fs (int argc, char **argv, GCancellable *cancellable, GErr
   child = g_file_get_child (dir, "tmp");
   if (!gs_file_ensure_directory_mode (child, 01777, cancellable, error))
     goto out;
+  /* FIXME - we should be using an API that explicitly ignores umask;
+   */
+  {
+    const char *path = gs_file_get_path_cached (child);
+    if (chmod (path, 01777) == -1)
+      {
+        gs_set_prefix_error_from_errno (error, errno, "chmod");
+        goto out;
+      }
+  }
   g_clear_object (&child);
 
   if (!ostree_sysroot_ensure_initialized (target_sysroot, cancellable, error))
-- 
1.8.3.1