]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - src/debug-generator/debug-generator.c
util-lib: split string parsing related calls from util.[ch] into parse-util.[ch]
[thirdparty/systemd.git] / src / debug-generator / debug-generator.c
index ffafc4da249bde673aae135d39052c1aba032f36..115f99e68caf14d841eaa6bcb5bb9690b5a3cc85 100644 (file)
@@ -23,6 +23,8 @@
 #include "strv.h"
 #include "unit-name.h"
 #include "mkdir.h"
+#include "string-util.h"
+#include "parse-util.h"
 
 static const char *arg_dest = "/tmp";
 static char **arg_mask = NULL;
@@ -41,9 +43,9 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
                 else {
                         char *n;
 
-                        n = unit_name_mangle(value, MANGLE_NOGLOB);
-                        if (!n)
-                                return log_oom();
+                        r = unit_name_mangle(value, UNIT_NAME_NOGLOB, &n);
+                        if (r < 0)
+                                return log_error_errno(r, "Failed to glob unit name: %m");
 
                         r = strv_consume(&arg_mask, n);
                         if (r < 0)
@@ -57,9 +59,9 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
                 else {
                         char *n;
 
-                        n = unit_name_mangle(value, MANGLE_NOGLOB);
-                        if (!n)
-                                return log_oom();
+                        r = unit_name_mangle(value, UNIT_NAME_NOGLOB, &n);
+                        if (r < 0)
+                                return log_error_errno(r, "Failed to glob unit name: %m");
 
                         r = strv_consume(&arg_wants, n);
                         if (r < 0)
@@ -95,10 +97,10 @@ static int generate_mask_symlinks(void) {
                 if (!p)
                         return log_oom();
 
-                if (symlink("/dev/null", p) < 0) {
-                        log_error("Failed to create mask symlink %s: %m", p);
-                        r = -errno;
-                }
+                if (symlink("/dev/null", p) < 0)
+                        r = log_error_errno(errno,
+                                            "Failed to create mask symlink %s: %m",
+                                            p);
         }
 
         return r;
@@ -124,10 +126,10 @@ static int generate_wants_symlinks(void) {
 
                 mkdir_parents_label(p, 0755);
 
-                if (symlink(f, p) < 0) {
-                        log_error("Failed to create wants symlink %s: %m", p);
-                        r = -errno;
-                }
+                if (symlink(f, p) < 0)
+                        r = log_error_errno(errno,
+                                            "Failed to create wants symlink %s: %m",
+                                            p);
         }
 
         return r;
@@ -152,7 +154,7 @@ int main(int argc, char *argv[]) {
 
         r = parse_proc_cmdline(parse_proc_cmdline_item);
         if (r < 0)
-                log_warning_errno(-r, "Failed to parse kernel command line, ignoring: %m");
+                log_warning_errno(r, "Failed to parse kernel command line, ignoring: %m");
 
         if (arg_debug_shell) {
                 r = strv_extend(&arg_wants, "debug-shell.service");