From 67f2d4318d76b305ab98a48ff48b47e2e87126c2 Mon Sep 17 00:00:00 2001 From: default Date: Tue, 7 Feb 2023 09:25:01 +0100 Subject: New utility function mkdirx(). --- utils.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'utils.c') 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); -- cgit v1.2.3