summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordefault <nobody@localhost>2023-02-07 09:16:19 +0100
committerdefault <nobody@localhost>2023-02-07 09:16:19 +0100
commit392c5147a396ab166dc04494e59f3f096e25e251 (patch)
tree1426a969b66b63c709b8128864ed010686b58d95
parentfabe6a500629eb0810e535bb41d49b8f493056e9 (diff)
Ensure the setgid bit is set in the base directory.
-rw-r--r--utils.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/utils.c b/utils.c
index 48b2e74..d64cb64 100644
--- a/utils.c
+++ b/utils.c
@@ -143,11 +143,14 @@ int snac_init(const char *basedir)
}
}
- if (mkdir(srv_basedir, 0775) == -1) {
+ if (mkdir(srv_basedir, DIR_PERM) == -1) {
printf("ERROR: cannot create directory '%s'\n", srv_basedir);
return 1;
}
+ /* force permissions (mkdir also uses 777) */
+ chmod(srv_basedir, DIR_PERM);
+
xs *udir = xs_fmt("%s/user", srv_basedir);
mkdir(udir, DIR_PERM);