summaryrefslogtreecommitdiff
path: root/utils.c
diff options
context:
space:
mode:
authordefault <nobody@localhost>2023-02-07 09:25:01 +0100
committerdefault <nobody@localhost>2023-02-07 09:25:01 +0100
commit67f2d4318d76b305ab98a48ff48b47e2e87126c2 (patch)
treee8c72fcf2aaf9ff0f8ec59dd07894736d0ab01ac /utils.c
parent392c5147a396ab166dc04494e59f3f096e25e251 (diff)
New utility function mkdirx().
Diffstat (limited to 'utils.c')
-rw-r--r--utils.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/utils.c b/utils.c
index d64cb64..384fde9 100644
--- a/utils.c
+++ b/utils.c
@@ -143,22 +143,19 @@ int snac_init(const char *basedir)
}
}
- if (mkdir(srv_basedir, DIR_PERM) == -1) {
+ if (mkdirx(srv_basedir) == -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);
+ mkdirx(udir);
xs *odir = xs_fmt("%s/object", srv_basedir);
- mkdir(odir, DIR_PERM);
+ mkdirx(odir);
xs *qdir = xs_fmt("%s/queue", srv_basedir);
- mkdir(qdir, DIR_PERM);
+ mkdirx(qdir);
xs *gfn = xs_fmt("%s/greeting.html", srv_basedir);
if ((f = fopen(gfn, "w")) == NULL) {
@@ -246,7 +243,7 @@ int adduser(const char *uid)
xs *basedir = xs_fmt("%s/user/%s", srv_basedir, uid);
- if (mkdir(basedir, DIR_PERM) == -1) {
+ if (mkdirx(basedir) == -1) {
printf("ERROR: cannot create directory '%s'\n", basedir);
return 0;
}
@@ -259,7 +256,7 @@ int adduser(const char *uid)
for (n = 0; dirs[n]; n++) {
xs *d = xs_fmt("%s/%s", basedir, dirs[n]);
- mkdir(d, DIR_PERM);
+ mkdirx(d);
}
xs *scssfn = xs_fmt("%s/style.css", srv_basedir);