]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
tree-wide: don't needlessly negate error number passed to bus_error_message()
authorLennart Poettering <lennart@poettering.net>
Mon, 14 Sep 2020 16:16:54 +0000 (18:16 +0200)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 14 Sep 2020 19:42:22 +0000 (21:42 +0200)
Like it's customary in our codebase bus_error_message() internally takes
abs() of the passed error anyway, hence no need to explicitly negate it.
We mostly got this right, but in too many cases we didn't. Fix that.

src/core/service.c
src/hostname/hostnamectl.c
src/initctl/initctl.c
src/libsystemd/sd-bus/bus-error.c
src/libsystemd/sd-bus/test-bus-chat.c
src/libsystemd/sd-bus/test-bus-server.c
src/locale/localectl.c
src/login/loginctl.c
src/machine/machinectl.c
src/run/run.c

index 03493fd04b79dc87dbd25bcb66eb4a8693adb312..f7b2b1d397886a8194863ca85cc90b2440d62a85 100644 (file)
@@ -2313,7 +2313,7 @@ static void service_enter_restart(Service *s) {
         return;
 
 fail:
-        log_unit_warning(UNIT(s), "Failed to schedule restart job: %s", bus_error_message(&error, -r));
+        log_unit_warning(UNIT(s), "Failed to schedule restart job: %s", bus_error_message(&error, r));
         service_enter_dead(s, SERVICE_FAILURE_RESOURCES, false);
 }
 
@@ -2329,7 +2329,7 @@ static void service_enter_reload_by_notify(Service *s) {
         /* service_enter_reload_by_notify is never called during a reload, thus no loops are possible. */
         r = manager_propagate_reload(UNIT(s)->manager, UNIT(s), JOB_FAIL, &error);
         if (r < 0)
-                log_unit_warning(UNIT(s), "Failed to schedule propagation of reload: %s", bus_error_message(&error, -r));
+                log_unit_warning(UNIT(s), "Failed to schedule propagation of reload: %s", bus_error_message(&error, r));
 }
 
 static void service_enter_reload(Service *s) {
index 2d6b2da125e3128124a305222f23ee3913270fd6..c6d8b8d08204891e8aff7576c3016182fbff2291 100644 (file)
@@ -229,7 +229,7 @@ static int set_simple_string(sd_bus *bus, const char *method, const char *value)
                         &error, NULL,
                         "sb", value, arg_ask_password);
         if (r < 0)
-                return log_error_errno(r, "Could not set property: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Could not set property: %s", bus_error_message(&error, r));
 
         return 0;
 }
index 7eee197665f2eef51b657b269404b3b911611ae5..050424e66cc5c483654860fe481e82725b5bf410 100644 (file)
@@ -115,7 +115,7 @@ static int change_runlevel(Server *s, int runlevel) {
                         NULL,
                         "ss", target, mode);
         if (r < 0)
-                return log_error_errno(r, "Failed to change runlevel: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to change runlevel: %s", bus_error_message(&error, r));
 
         return 0;
 }
index e7a93d3a5a94a8e566029a32efae69c6c155a9c9..83de996b252a7a4d5167c299ba2d0789b8c8aaf8 100644 (file)
@@ -581,10 +581,7 @@ const char *bus_error_message(const sd_bus_error *e, int error) {
                         return e->message;
         }
 
-        if (error < 0)
-                error = -error;
-
-        return strerror_safe(error);
+        return strerror_safe(abs(error));
 }
 
 static bool map_ok(const sd_bus_error_map *map) {
index 2c1fbbefc341a2acca08e17adcee3c5d07c56189..7a35d912de8bb26c75f0d6476304c41effbcfa17 100644 (file)
@@ -373,7 +373,7 @@ static void* client2(void *p) {
 
         r = sd_bus_send(bus, m, NULL);
         if (r < 0) {
-                log_error("Failed to issue method call: %s", bus_error_message(&error, -r));
+                log_error("Failed to issue method call: %s", bus_error_message(&error, r));
                 goto finish;
         }
 
@@ -392,7 +392,7 @@ static void* client2(void *p) {
 
         r = sd_bus_send(bus, m, NULL);
         if (r < 0) {
-                log_error("Failed to issue signal: %s", bus_error_message(&error, -r));
+                log_error("Failed to issue signal: %s", bus_error_message(&error, r));
                 goto finish;
         }
 
@@ -412,7 +412,7 @@ static void* client2(void *p) {
 
         r = sd_bus_call(bus, m, 0, &error, &reply);
         if (r < 0) {
-                log_error("Failed to issue method call: %s", bus_error_message(&error, -r));
+                log_error("Failed to issue method call: %s", bus_error_message(&error, r));
                 goto finish;
         }
 
@@ -442,7 +442,7 @@ static void* client2(void *p) {
 
         r = sd_bus_call(bus, m, 200 * USEC_PER_MSEC, &error, &reply);
         if (r < 0)
-                log_info("Failed to issue method call: %s", bus_error_message(&error, -r));
+                log_info("Failed to issue method call: %s", bus_error_message(&error, r));
         else
                 log_info("Slow call succeed.");
 
@@ -462,7 +462,7 @@ static void* client2(void *p) {
 
         r = sd_bus_call_async(bus, NULL, m, quit_callback, &quit, 200 * USEC_PER_MSEC);
         if (r < 0) {
-                log_info("Failed to issue method call: %s", bus_error_message(&error, -r));
+                log_info("Failed to issue method call: %s", bus_error_message(&error, r));
                 goto finish;
         }
 
index 82eb35e5b16db960c0b3c38840ced85a5c65bcb1..1302fdbb5a077dc4e4d912836db476e2325b8239 100644 (file)
@@ -129,7 +129,7 @@ static int client(struct context *c) {
 
         r = sd_bus_call(bus, m, 0, &error, &reply);
         if (r < 0)
-                return log_error_errno(r, "Failed to issue method call: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to issue method call: %s", bus_error_message(&error, r));
 
         return 0;
 }
index e0664de826bb0973f2fe197188b6f9fe75f8f0b5..4895c292e4ab1a8e7288cfdeb84620f9cba4f910 100644 (file)
@@ -178,7 +178,7 @@ static int set_locale(int argc, char **argv, void *userdata) {
 
         r = sd_bus_call(bus, m, 0, &error, NULL);
         if (r < 0)
-                return log_error_errno(r, "Failed to issue method call: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to issue method call: %s", bus_error_message(&error, r));
 
         return 0;
 }
@@ -218,7 +218,7 @@ static int set_vconsole_keymap(int argc, char **argv, void *userdata) {
                         NULL,
                         "ssbb", map, toggle_map, arg_convert, arg_ask_password);
         if (r < 0)
-                return log_error_errno(r, "Failed to set keymap: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to set keymap: %s", bus_error_message(&error, r));
 
         return 0;
 }
@@ -260,7 +260,7 @@ static int set_x11_keymap(int argc, char **argv, void *userdata) {
                         "ssssbb", layout, model, variant, options,
                                   arg_convert, arg_ask_password);
         if (r < 0)
-                return log_error_errno(r, "Failed to set keymap: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to set keymap: %s", bus_error_message(&error, r));
 
         return 0;
 }
index 044b41b82d576a0cfcd6a762fccfd188efda1a5b..bc4f25f41e8a514fc07a782283b448e8df00fd63 100644 (file)
@@ -1022,7 +1022,7 @@ static int kill_session(int argc, char *argv[], void *userdata) {
                                 &error, NULL,
                                 "ssi", argv[i], arg_kill_who, arg_signal);
                 if (r < 0)
-                        return log_error_errno(r, "Could not kill session: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not kill session: %s", bus_error_message(&error, r));
         }
 
         return 0;
@@ -1071,7 +1071,7 @@ static int enable_linger(int argc, char *argv[], void *userdata) {
                                 &error, NULL,
                                 "ubb", (uint32_t) uid, b, true);
                 if (r < 0)
-                        return log_error_errno(r, "Could not enable linger: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not enable linger: %s", bus_error_message(&error, r));
         }
 
         return 0;
@@ -1096,7 +1096,7 @@ static int terminate_user(int argc, char *argv[], void *userdata) {
 
                 r = bus_call_method(bus, bus_login_mgr, "TerminateUser", &error, NULL, "u", (uint32_t) uid);
                 if (r < 0)
-                        return log_error_errno(r, "Could not terminate user: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not terminate user: %s", bus_error_message(&error, r));
         }
 
         return 0;
@@ -1129,7 +1129,7 @@ static int kill_user(int argc, char *argv[], void *userdata) {
                         &error, NULL,
                         "ui", (uint32_t) uid, arg_signal);
                 if (r < 0)
-                        return log_error_errno(r, "Could not kill user: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not kill user: %s", bus_error_message(&error, r));
         }
 
         return 0;
@@ -1154,7 +1154,7 @@ static int attach(int argc, char *argv[], void *userdata) {
                         &error, NULL,
                         "ssb", argv[1], argv[i], true);
                 if (r < 0)
-                        return log_error_errno(r, "Could not attach device: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not attach device: %s", bus_error_message(&error, r));
         }
 
         return 0;
@@ -1172,7 +1172,7 @@ static int flush_devices(int argc, char *argv[], void *userdata) {
 
         r = bus_call_method(bus, bus_login_mgr, "FlushDevices", &error, NULL, "b", true);
         if (r < 0)
-                return log_error_errno(r, "Could not flush devices: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Could not flush devices: %s", bus_error_message(&error, r));
 
         return 0;
 }
@@ -1194,7 +1194,7 @@ static int lock_sessions(int argc, char *argv[], void *userdata) {
                         &error, NULL,
                         NULL);
         if (r < 0)
-                return log_error_errno(r, "Could not lock sessions: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Could not lock sessions: %s", bus_error_message(&error, r));
 
         return 0;
 }
@@ -1213,7 +1213,7 @@ static int terminate_seat(int argc, char *argv[], void *userdata) {
 
                 r = bus_call_method(bus, bus_login_mgr, "TerminateSeat", &error, NULL, "s", argv[i]);
                 if (r < 0)
-                        return log_error_errno(r, "Could not terminate seat: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not terminate seat: %s", bus_error_message(&error, r));
         }
 
         return 0;
index 9cdce716521803075a6441c08a512169a3dea9a9..41070dcda58b5b90d7ddd91ab502fd2e97931085 100644 (file)
@@ -720,7 +720,7 @@ static int show_machine(int argc, char *argv[], void *userdata) {
 
                 r = bus_call_method(bus, bus_machine_mgr, "GetMachine", &error, &reply, "s", argv[i]);
                 if (r < 0)
-                        return log_error_errno(r, "Could not get path to machine: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not get path to machine: %s", bus_error_message(&error, r));
 
                 r = sd_bus_message_read(reply, "o", &path);
                 if (r < 0)
@@ -1037,7 +1037,7 @@ static int show_image(int argc, char *argv[], void *userdata) {
 
                 r = bus_call_method(bus, bus_machine_mgr, "GetImage", &error, &reply, "s", argv[i]);
                 if (r < 0)
-                        return log_error_errno(r, "Could not get path to image: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not get path to image: %s", bus_error_message(&error, r));
 
                 r = sd_bus_message_read(reply, "o", &path);
                 if (r < 0)
@@ -1073,7 +1073,7 @@ static int kill_machine(int argc, char *argv[], void *userdata) {
                                 NULL,
                                 "ssi", argv[i], arg_kill_who, arg_signal);
                 if (r < 0)
-                        return log_error_errno(r, "Could not kill machine: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not kill machine: %s", bus_error_message(&error, r));
         }
 
         return 0;
@@ -1105,7 +1105,7 @@ static int terminate_machine(int argc, char *argv[], void *userdata) {
         for (int i = 1; i < argc; i++) {
                 r = bus_call_method(bus, bus_machine_mgr, "TerminateMachine", &error, NULL, "s", argv[i]);
                 if (r < 0)
-                        return log_error_errno(r, "Could not terminate machine: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not terminate machine: %s", bus_error_message(&error, r));
         }
 
         return 0;
@@ -1184,7 +1184,7 @@ static int bind_mount(int argc, char *argv[], void *userdata) {
                         arg_read_only,
                         arg_mkdir);
         if (r < 0)
-                return log_error_errno(r, "Failed to bind mount: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to bind mount: %s", bus_error_message(&error, r));
 
         return 0;
 }
@@ -1347,7 +1347,7 @@ static int login_machine(int argc, char *argv[], void *userdata) {
 
         r = bus_call_method(bus, bus_machine_mgr, "OpenMachineLogin", &error, &reply, "s", machine);
         if (r < 0)
-                return log_error_errno(r, "Failed to get login PTY: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to get login PTY: %s", bus_error_message(&error, r));
 
         r = sd_bus_message_read(reply, "hs", &master, NULL);
         if (r < 0)
@@ -1430,7 +1430,7 @@ static int shell_machine(int argc, char *argv[], void *userdata) {
 
         r = sd_bus_call(bus, m, 0, &error, &reply);
         if (r < 0)
-                return log_error_errno(r, "Failed to get shell PTY: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to get shell PTY: %s", bus_error_message(&error, r));
 
         r = sd_bus_message_read(reply, "hs", &master, NULL);
         if (r < 0)
@@ -1485,7 +1485,7 @@ static int rename_image(int argc, char *argv[], void *userdata) {
                         NULL,
                         "ss", argv[1], argv[2]);
         if (r < 0)
-                return log_error_errno(r, "Could not rename image: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Could not rename image: %s", bus_error_message(&error, r));
 
         return 0;
 }
@@ -1535,7 +1535,7 @@ static int read_only_image(int argc, char *argv[], void *userdata) {
 
         r = bus_call_method(bus, bus_machine_mgr, "MarkImageReadOnly", &error, NULL, "sb", argv[1], b);
         if (r < 0)
-                return log_error_errno(r, "Could not mark image read-only: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Could not mark image read-only: %s", bus_error_message(&error, r));
 
         return 0;
 }
@@ -1552,7 +1552,7 @@ static int image_exists(sd_bus *bus, const char *name) {
                 if (sd_bus_error_has_name(&error, BUS_ERROR_NO_SUCH_IMAGE))
                         return 0;
 
-                return log_error_errno(r, "Failed to check whether image %s exists: %s", name, bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to check whether image %s exists: %s", name, bus_error_message(&error, r));
         }
 
         return 1;
@@ -1617,7 +1617,7 @@ static int start_machine(int argc, char *argv[], void *userdata) {
                                 &reply,
                                 "ss", unit, "fail");
                 if (r < 0)
-                        return log_error_errno(r, "Failed to start unit: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Failed to start unit: %s", bus_error_message(&error, r));
 
                 r = sd_bus_message_read(reply, "o", &object);
                 if (r < 0)
@@ -1697,7 +1697,7 @@ static int enable_machine(int argc, char *argv[], void *userdata) {
 
         r = sd_bus_call(bus, m, 0, &error, &reply);
         if (r < 0)
-                return log_error_errno(r, "Failed to enable or disable unit: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to enable or disable unit: %s", bus_error_message(&error, r));
 
         if (streq(argv[0], "enable")) {
                 r = sd_bus_message_read(reply, "b", NULL);
@@ -1719,7 +1719,7 @@ static int enable_machine(int argc, char *argv[], void *userdata) {
                         NULL,
                         NULL);
         if (r < 0) {
-                log_error("Failed to reload daemon: %s", bus_error_message(&error, -r));
+                log_error("Failed to reload daemon: %s", bus_error_message(&error, r));
                 goto finish;
         }
 
@@ -1831,7 +1831,7 @@ static int transfer_image_common(sd_bus *bus, sd_bus_message *m) {
 
         r = sd_bus_call(bus, m, 0, &error, &reply);
         if (r < 0)
-                return log_error_errno(r, "Failed to transfer image: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to transfer image: %s", bus_error_message(&error, r));
 
         r = sd_bus_message_read(reply, "uo", &id, &path);
         if (r < 0)
@@ -2272,7 +2272,7 @@ static int list_transfers(int argc, char *argv[], void *userdata) {
 
         r = bus_call_method(bus, bus_import_mgr, "ListTransfers", &error, &reply, NULL);
         if (r < 0)
-                return log_error_errno(r, "Could not get transfers: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Could not get transfers: %s", bus_error_message(&error, r));
 
         r = sd_bus_message_enter_container(reply, 'a', "(usssdo)");
         if (r < 0)
@@ -2369,7 +2369,7 @@ static int cancel_transfer(int argc, char *argv[], void *userdata) {
 
                 r = bus_call_method(bus, bus_import_mgr, "CancelTransfer", &error, NULL, "u", id);
                 if (r < 0)
-                        return log_error_errno(r, "Could not cancel transfer: %s", bus_error_message(&error, -r));
+                        return log_error_errno(r, "Could not cancel transfer: %s", bus_error_message(&error, r));
         }
 
         return 0;
index d4ce3966e7649ca041d95ecad60f4d24468e8c77..38446d8814d0045a2ee45c79c9c58204447c5e43 100644 (file)
@@ -1146,7 +1146,7 @@ static int start_transient_service(
                                                &pty_reply,
                                                "s", arg_host);
                         if (r < 0)
-                                return log_error_errno(r, "Failed to get machine PTY: %s", bus_error_message(&error, -r));
+                                return log_error_errno(r, "Failed to get machine PTY: %s", bus_error_message(&error, r));
 
                         r = sd_bus_message_read(pty_reply, "hs", &master, &s);
                         if (r < 0)
@@ -1468,7 +1468,7 @@ static int start_transient_scope(sd_bus *bus) {
 
         r = sd_bus_call(bus, m, 0, &error, &reply);
         if (r < 0)
-                return log_error_errno(r, "Failed to start transient scope unit: %s", bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to start transient scope unit: %s", bus_error_message(&error, r));
 
         r = sd_bus_message_read(reply, "o", &object);
         if (r < 0)
@@ -1688,7 +1688,7 @@ static int start_transient_trigger(
 
         r = sd_bus_call(bus, m, 0, &error, &reply);
         if (r < 0)
-                return log_error_errno(r, "Failed to start transient %s unit: %s", suffix + 1, bus_error_message(&error, -r));
+                return log_error_errno(r, "Failed to start transient %s unit: %s", suffix + 1, bus_error_message(&error, r));
 
         r = sd_bus_message_read(reply, "o", &object);
         if (r < 0)