From: Zbigniew Jędrzejewski-Szmek Date: Thu, 4 Nov 2021 09:41:47 +0000 (+0100) Subject: busctl: do not print hint about -M if -M is already used X-Git-Tag: v250-rc1~358^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fb293b3c0f2f0e24d088a6ccaf3bd051301754af;p=thirdparty%2Fsystemd.git busctl: do not print hint about -M if -M is already used (Or when -H is used, since -H and -M are incompatible.) --- diff --git a/src/busctl/busctl.c b/src/busctl/busctl.c index 30a86234d92..2dbef89e4c7 100644 --- a/src/busctl/busctl.c +++ b/src/busctl/busctl.c @@ -125,7 +125,7 @@ static int acquire_bus(bool set_monitor, sd_bus **ret) { } } if (r < 0) - return bus_log_address_error(r); + return bus_log_address_error(r, arg_transport); r = sd_bus_start(bus); if (r < 0) diff --git a/src/shared/bus-util.c b/src/shared/bus-util.c index 75e89ab5dc9..8568135a4a5 100644 --- a/src/shared/bus-util.c +++ b/src/shared/bus-util.c @@ -34,10 +34,12 @@ static int name_owner_change_callback(sd_bus_message *m, void *userdata, sd_bus_ return 1; } -int bus_log_address_error(int r) { +int bus_log_address_error(int r, BusTransport transport) { + bool hint = transport == BUS_TRANSPORT_LOCAL && r == -ENOMEDIUM; + return log_error_errno(r, - r == -ENOMEDIUM ? "Failed to set bus address: $DBUS_SESSION_BUS_ADDRESS and $XDG_RUNTIME_DIR not defined (consider using --machine=@.host --user to connect to bus of other user)" : - "Failed to set bus address: %m"); + hint ? "Failed to set bus address: $DBUS_SESSION_BUS_ADDRESS and $XDG_RUNTIME_DIR not defined (consider using --machine=@.host --user to connect to bus of other user)" : + "Failed to set bus address: %m"); } int bus_log_connect_error(int r) { diff --git a/src/shared/bus-util.h b/src/shared/bus-util.h index 3a65851fa59..4f0d186f952 100644 --- a/src/shared/bus-util.h +++ b/src/shared/bus-util.h @@ -39,7 +39,7 @@ int bus_connect_user_systemd(sd_bus **_bus); int bus_connect_transport(BusTransport transport, const char *host, bool user, sd_bus **bus); int bus_connect_transport_systemd(BusTransport transport, const char *host, bool user, sd_bus **bus); -int bus_log_address_error(int r); +int bus_log_address_error(int r, BusTransport transport); int bus_log_connect_error(int r); #define bus_log_parse_error(r) \