]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
catalog: let's use mkdir_parents() and use same mode as tmpfiles.d for this dir
authorLennart Poettering <lennart@poettering.net>
Wed, 6 Mar 2019 10:40:31 +0000 (11:40 +0100)
committerLennart Poettering <lennart@poettering.net>
Thu, 7 Mar 2019 14:09:21 +0000 (15:09 +0100)
let's use mkdir_parents() (because its shorter), and 0755 as access
mode, so that things have the access mode tmpfiles.d also suggests.

Prompted by: #11903

src/journal/catalog.c

index 5176b6013dd92135732da3aaf537a1228b52ad5d..efe86bdef44d809ad160ed194183bdda30c90363 100644 (file)
@@ -371,21 +371,21 @@ int catalog_import_file(Hashmap *h, const char *path) {
         return 0;
 }
 
-static int64_t write_catalog(const char *database, struct strbuf *sb,
-                             CatalogItem *items, size_t n) {
-        CatalogHeader header;
+static int64_t write_catalog(
+                const char *database,
+                struct strbuf *sb,
+                CatalogItem *items,
+                size_t n) {
+
         _cleanup_fclose_ FILE *w = NULL;
-        int r;
-        _cleanup_free_ char *d, *p = NULL;
+        _cleanup_free_ char *p = NULL;
+        CatalogHeader header;
         size_t k;
+        int r;
 
-        d = dirname_malloc(database);
-        if (!d)
-                return log_oom();
-
-        r = mkdir_p(d, 0775);
+        r = mkdir_parents(database, 0755);
         if (r < 0)
-                return log_error_errno(r, "Recursive mkdir %s: %m", d);
+                return log_error_errno(r, "Failed to create parent directories of %s: %m", database);
 
         r = fopen_temporary(database, &w, &p);
         if (r < 0)