DORMANTno replies

[PATCH] Let umask do its work upon filesystem object creation.

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:01
Subsystem: the rest · Maintainer: Linus Torvalds

IIRC our strategy was to let the users' umask take care of the
final mode bits.  This patch fixes places that deviate from it.

Signed-off-by: Junio C Hamano <redacted>
---

 apply.c        |    2 +-
 csum-file.c    |    2 +-
 entry.c        |    4 ++--
 init-db.c      |    2 +-
 receive-pack.c |    2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

ccb441ce2e7be11fcab19f385332c530bff132f0
diff --git a/apply.c b/apply.c
--- a/apply.c
+++ b/apply.c
@@ -1237,7 +1237,7 @@ static void create_subdirectories(const 
 		len = slash - path;
 		memcpy(buf, path, len);
 		buf[len] = 0;
-		if (mkdir(buf, 0755) < 0) {
+		if (mkdir(buf, 0777) < 0) {
 			if (errno != EEXIST)
 				break;
 		}
diff --git a/csum-file.c b/csum-file.c
--- a/csum-file.c
+++ b/csum-file.c
@@ -86,7 +86,7 @@ struct sha1file *sha1create(const char *
 		die("you wascally wabbit, you");
 	f->namelen = len;
 
-	fd = open(f->name, O_CREAT | O_EXCL | O_WRONLY, 0644);
+	fd = open(f->name, O_CREAT | O_EXCL | O_WRONLY, 0666);
 	if (fd < 0)
 		die("unable to open %s (%s)", f->name, strerror(errno));
 	f->fd = fd;
diff --git a/entry.c b/entry.c
--- a/entry.c
+++ b/entry.c
@@ -12,10 +12,10 @@ static void create_directories(const cha
 		len = slash - path;
 		memcpy(buf, path, len);
 		buf[len] = 0;
-		if (mkdir(buf, 0755)) {
+		if (mkdir(buf, 0777)) {
 			if (errno == EEXIST) {
 				struct stat st;
-				if (len > state->base_dir_len && state->force && !unlink(buf) && !mkdir(buf, 0755))
+				if (len > state->base_dir_len && state->force && !unlink(buf) && !mkdir(buf, 0777))
 					continue;
 				if (!stat(buf, &st) && S_ISDIR(st.st_mode))
 					continue; /* ok */
diff --git a/init-db.c b/init-db.c
--- a/init-db.c
+++ b/init-db.c
@@ -7,7 +7,7 @@
 
 static void safe_create_dir(const char *dir)
 {
-	if (mkdir(dir, 0755) < 0) {
+	if (mkdir(dir, 0777) < 0) {
 		if (errno != EEXIST) {
 			perror(dir);
 			exit(1);
diff --git a/receive-pack.c b/receive-pack.c
--- a/receive-pack.c
+++ b/receive-pack.c
@@ -70,7 +70,7 @@ static void update(const char *name, uns
 	if (!has_sha1_file(new_sha1))
 		die("unpack should have generated %s, but I can't find it!", new_hex);
 
-	newfd = open(lock_name, O_CREAT | O_EXCL | O_WRONLY, 0644);
+	newfd = open(lock_name, O_CREAT | O_EXCL | O_WRONLY, 0666);
 	if (newfd < 0)
 		die("unable to create %s (%s)", lock_name, strerror(errno));
 
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help