]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - src/tmpfiles/tmpfiles.c
treewide: a few more log_*_errno + return simplifications
[thirdparty/systemd.git] / src / tmpfiles / tmpfiles.c
index 1e4675f87eb9ecf304e46290613c8e72e58810b9..45d31fb5d803c03d1c78efd9de66179759851efe 100644 (file)
@@ -117,15 +117,7 @@ static char **arg_include_prefixes = NULL;
 static char **arg_exclude_prefixes = NULL;
 static char *arg_root = NULL;
 
-static const char conf_file_dirs[] =
-        "/etc/tmpfiles.d\0"
-        "/run/tmpfiles.d\0"
-        "/usr/local/lib/tmpfiles.d\0"
-        "/usr/lib/tmpfiles.d\0"
-#ifdef HAVE_SPLIT_USR
-        "/lib/tmpfiles.d\0"
-#endif
-        ;
+static const char conf_file_dirs[] = CONF_DIRS_NULSTR("tmpfiles");
 
 #define MAX_DEPTH 256
 
@@ -675,10 +667,8 @@ static int create_item(Item *i) {
                 if (r < 0) {
                         struct stat a, b;
 
-                        if (r != -EEXIST) {
-                                log_error("Failed to copy files to %s: %s", i->path, strerror(-r));
-                                return -r;
-                        }
+                        if (r != -EEXIST)
+                                return log_error_errno(r, "Failed to copy files to %s: %m", i->path);
 
                         if (stat(i->argument, &a) < 0) {
                                 log_error("stat(%s) failed: %m", i->argument);
@@ -718,10 +708,8 @@ static int create_item(Item *i) {
                 }
 
                 if (r < 0) {
-                        if (r != -EEXIST) {
-                                log_error("Failed to create directory %s: %s", i->path, strerror(-r));
-                                return r;
-                        }
+                        if (r != -EEXIST)
+                                return log_error_errno(r, "Failed to create directory %s: %m", i->path);
 
                         if (stat(i->path, &st) < 0) {
                                 log_error("stat(%s) failed: %m", i->path);
@@ -769,10 +757,8 @@ static int create_item(Item *i) {
                                                 mac_selinux_create_file_clear();
                                         }
 
-                                        if (r < 0) {
-                                                log_error("Failed to create fifo %s: %s", i->path, strerror(-r));
-                                                return r;
-                                        }
+                                        if (r < 0)
+                                                return log_error_errno(r, "Failed to create fifo %s: %m", i->path);
                                 } else {
                                         log_debug("%s is not a fifo.", i->path);
                                         return 0;
@@ -808,10 +794,8 @@ static int create_item(Item *i) {
                                         r = symlink_atomic(i->argument, i->path);
                                         mac_selinux_create_file_clear();
 
-                                        if (r < 0) {
-                                                log_error("symlink(%s, %s) failed: %s", i->argument, i->path, strerror(-r));
-                                                return r;
-                                        }
+                                        if (r < 0)
+                                                return log_error_errno(r, "symlink(%s, %s) failed: %m", i->argument, i->path);
                                 } else {
                                         log_debug("%s is not a symlink or does not point to the correct path.", i->path);
                                         return 0;
@@ -870,10 +854,8 @@ static int create_item(Item *i) {
                                                 mac_selinux_create_file_clear();
                                         }
 
-                                        if (r < 0) {
-                                                log_error("Failed to create device node %s: %s", i->path, strerror(-r));
-                                                return r;
-                                        }
+                                        if (r < 0)
+                                                return log_error_errno(r, "Failed to create device node %s: %m", i->path);
                                 } else {
                                         log_debug("%s is not a device node.", i->path);
                                         return 0;
@@ -946,10 +928,8 @@ static int remove_item_instance(Item *i, const char *instance) {
                 /* FIXME: we probably should use dir_cleanup() here
                  * instead of rm_rf() so that 'x' is honoured. */
                 r = rm_rf_dangerous(instance, false, i->type == RECURSIVE_REMOVE_PATH, false);
-                if (r < 0 && r != -ENOENT) {
-                        log_error("rm_rf(%s): %s", instance, strerror(-r));
-                        return r;
-                }
+                if (r < 0 && r != -ENOENT)
+                        return log_error_errno(r, "rm_rf(%s): %m", instance);
 
                 break;
         }
@@ -1405,10 +1385,8 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
         }
 
         r = hashmap_put(h, i->path, i);
-        if (r < 0) {
-                log_error("Failed to insert item %s: %s", i->path, strerror(-r));
-                return r;
-        }
+        if (r < 0)
+                return log_error_errno(r, "Failed to insert item %s: %m", i->path);
 
         i = NULL; /* avoid cleanup */
 
@@ -1539,8 +1517,7 @@ static int read_config_file(const char *fn, bool ignore_enoent) {
                 if (ignore_enoent && r == -ENOENT)
                         return 0;
 
-                log_error("Failed to open '%s', ignoring: %s", fn, strerror(-r));
-                return r;
+                return log_error_errno(r, "Failed to open '%s', ignoring: %m", fn);
         }
 
         FOREACH_LINE(line, f, break) {
@@ -1637,7 +1614,7 @@ int main(int argc, char *argv[]) {
 
                 r = conf_files_list_nulstr(&files, ".conf", arg_root, conf_file_dirs);
                 if (r < 0) {
-                        log_error("Failed to enumerate tmpfiles.d files: %s", strerror(-r));
+                        log_error_errno(r, "Failed to enumerate tmpfiles.d files: %m");
                         goto finish;
                 }