mirror of
https://github.com/Dasharo/systemd.git
synced 2026-03-06 15:02:31 -08:00
Merge pull request #21229 from keszybz/improve-m-hint
Improve hint to use -M in various tools
This commit is contained in:
@@ -639,7 +639,7 @@ static int analyze_plot(int argc, char *argv[], void *userdata) {
|
||||
|
||||
r = acquire_bus(&bus, &use_full_bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
n = acquire_boot_times(bus, &boot);
|
||||
if (n < 0)
|
||||
@@ -1034,7 +1034,7 @@ static int analyze_critical_chain(int argc, char *argv[], void *userdata) {
|
||||
|
||||
r = acquire_bus(&bus, NULL);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
n = acquire_time_data(bus, ×);
|
||||
if (n <= 0)
|
||||
@@ -1076,7 +1076,7 @@ static int analyze_blame(int argc, char *argv[], void *userdata) {
|
||||
|
||||
r = acquire_bus(&bus, NULL);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
n = acquire_time_data(bus, ×);
|
||||
if (n <= 0)
|
||||
@@ -1133,7 +1133,7 @@ static int analyze_time(int argc, char *argv[], void *userdata) {
|
||||
|
||||
r = acquire_bus(&bus, NULL);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
r = pretty_boot_time(bus, &buf);
|
||||
if (r < 0)
|
||||
@@ -1270,7 +1270,7 @@ static int dot(int argc, char *argv[], void *userdata) {
|
||||
|
||||
r = acquire_bus(&bus, NULL);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
r = expand_patterns(bus, strv_skip(argv, 1), &expanded_patterns);
|
||||
if (r < 0)
|
||||
@@ -1347,7 +1347,7 @@ static int dump(int argc, char *argv[], void *userdata) {
|
||||
|
||||
r = acquire_bus(&bus, NULL);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
(void) pager_open(arg_pager_flags);
|
||||
|
||||
@@ -1416,7 +1416,7 @@ static int verb_log_control(int argc, char *argv[], void *userdata) {
|
||||
|
||||
r = acquire_bus(&bus, NULL);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
return verb_log_control_common(bus, "org.freedesktop.systemd1", argv[0], argc == 2 ? argv[1] : NULL);
|
||||
}
|
||||
@@ -2228,7 +2228,7 @@ static int service_watchdogs(int argc, char *argv[], void *userdata) {
|
||||
|
||||
r = acquire_bus(&bus, NULL);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
if (argc == 1) {
|
||||
/* get ServiceWatchdogs */
|
||||
@@ -2268,7 +2268,7 @@ static int do_security(int argc, char *argv[], void *userdata) {
|
||||
|
||||
r = acquire_bus(&bus, NULL);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
(void) pager_open(arg_pager_flags);
|
||||
|
||||
|
||||
@@ -102,7 +102,7 @@ static int acquire_bus(bool set_monitor, sd_bus **ret) {
|
||||
|
||||
if (arg_address)
|
||||
r = sd_bus_set_address(bus, arg_address);
|
||||
else {
|
||||
else
|
||||
switch (arg_transport) {
|
||||
|
||||
case BUS_TRANSPORT_LOCAL:
|
||||
@@ -123,13 +123,13 @@ static int acquire_bus(bool set_monitor, sd_bus **ret) {
|
||||
default:
|
||||
assert_not_reached();
|
||||
}
|
||||
}
|
||||
|
||||
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)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
*ret = TAKE_PTR(bus);
|
||||
|
||||
|
||||
@@ -216,7 +216,7 @@ static int run(int argc, char *argv[]) {
|
||||
arg_show_unit == SHOW_UNIT_USER,
|
||||
&bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, BUS_TRANSPORT_LOCAL);
|
||||
}
|
||||
|
||||
q = show_cgroup_get_unit_path_and_warn(bus, *name, &cgroup);
|
||||
|
||||
@@ -104,7 +104,7 @@ static int acquire_bus(sd_bus **bus) {
|
||||
|
||||
r = bus_connect_transport(arg_transport, arg_host, false, bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
(void) sd_bus_set_allow_interactive_authorization(*bus, arg_ask_password);
|
||||
|
||||
|
||||
@@ -660,7 +660,7 @@ static int run(int argc, char *argv[]) {
|
||||
|
||||
r = bus_connect_transport(arg_transport, arg_host, false, &bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
return hostnamectl_main(bus, argc, argv);
|
||||
}
|
||||
|
||||
@@ -512,7 +512,7 @@ static int run(int argc, char *argv[]) {
|
||||
|
||||
r = bus_connect_transport(arg_transport, arg_host, false, &bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
return localectl_main(bus, argc, argv);
|
||||
}
|
||||
|
||||
@@ -283,7 +283,7 @@ static int run(int argc, char *argv[]) {
|
||||
|
||||
r = sd_bus_default_system(&bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, BUS_TRANSPORT_LOCAL);
|
||||
|
||||
if (arg_action == ACTION_LIST)
|
||||
return print_inhibitors(bus);
|
||||
|
||||
@@ -1468,7 +1468,7 @@ static int run(int argc, char *argv[]) {
|
||||
|
||||
r = bus_connect_transport(arg_transport, arg_host, false, &bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
(void) sd_bus_set_allow_interactive_authorization(bus, arg_ask_password);
|
||||
|
||||
|
||||
@@ -2869,7 +2869,7 @@ static int run(int argc, char *argv[]) {
|
||||
|
||||
r = bus_connect_transport(arg_transport, arg_host, false, &bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
(void) sd_bus_set_allow_interactive_authorization(bus, arg_ask_password);
|
||||
|
||||
|
||||
@@ -1458,7 +1458,7 @@ static int run(int argc, char* argv[]) {
|
||||
|
||||
r = bus_connect_transport_systemd(arg_transport, arg_host, arg_user, &bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
if (arg_action == ACTION_UMOUNT)
|
||||
return action_umount(bus, argc, argv);
|
||||
|
||||
@@ -220,7 +220,7 @@ static int acquire_bus(sd_bus **bus) {
|
||||
|
||||
r = bus_connect_transport(arg_transport, arg_host, false, bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
(void) sd_bus_set_allow_interactive_authorization(*bus, arg_ask_password);
|
||||
|
||||
|
||||
@@ -1760,7 +1760,7 @@ static int run(int argc, char* argv[]) {
|
||||
else
|
||||
r = bus_connect_transport_systemd(arg_transport, arg_host, arg_user, &bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
if (arg_scope)
|
||||
r = start_transient_scope(bus);
|
||||
|
||||
@@ -34,6 +34,24 @@ static int name_owner_change_callback(sd_bus_message *m, void *userdata, sd_bus_
|
||||
return 1;
|
||||
}
|
||||
|
||||
int bus_log_address_error(int r, BusTransport transport) {
|
||||
bool hint = transport == BUS_TRANSPORT_LOCAL && r == -ENOMEDIUM;
|
||||
|
||||
return log_error_errno(r,
|
||||
hint ? "Failed to set bus address: $DBUS_SESSION_BUS_ADDRESS and $XDG_RUNTIME_DIR not defined (consider using --machine=<user>@.host --user to connect to bus of other user)" :
|
||||
"Failed to set bus address: %m");
|
||||
}
|
||||
|
||||
int bus_log_connect_error(int r, BusTransport transport) {
|
||||
bool hint_vars = transport == BUS_TRANSPORT_LOCAL && r == -ENOMEDIUM,
|
||||
hint_addr = transport == BUS_TRANSPORT_LOCAL && ERRNO_IS_PRIVILEGE(r);
|
||||
|
||||
return log_error_errno(r,
|
||||
r == hint_vars ? "Failed to connect to bus: $DBUS_SESSION_BUS_ADDRESS and $XDG_RUNTIME_DIR not defined (consider using --machine=<user>@.host --user to connect to bus of other user)" :
|
||||
r == hint_addr ? "Failed to connect to bus: Operation not permitted (consider using --machine=<user>@.host --user to connect to bus of other user)" :
|
||||
"Failed to connect to bus: %m");
|
||||
}
|
||||
|
||||
int bus_async_unregister_and_exit(sd_event *e, sd_bus *bus, const char *name) {
|
||||
const char *match;
|
||||
const char *unique;
|
||||
|
||||
@@ -39,22 +39,8 @@ 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);
|
||||
|
||||
#define bus_log_address_error(r) \
|
||||
({ \
|
||||
int _k = (r); \
|
||||
log_error_errno(_k, \
|
||||
_k == -ENOMEDIUM ? "Failed to set bus address: $DBUS_SESSION_BUS_ADDRESS and $XDG_RUNTIME_DIR not defined (consider using --machine=<user>@.host --user to connect to bus of other user)" : \
|
||||
"Failed to set bus address: %m"); \
|
||||
})
|
||||
|
||||
#define bus_log_connect_error(r) \
|
||||
({ \
|
||||
int _k = (r); \
|
||||
log_error_errno(_k, \
|
||||
_k == -ENOMEDIUM ? "Failed to connect to bus: $DBUS_SESSION_BUS_ADDRESS and $XDG_RUNTIME_DIR not defined (consider using --machine=<user>@.host --user to connect to bus of other user)" : \
|
||||
ERRNO_IS_PRIVILEGE(_k) ? "Failed to connect to bus: Operation not permitted (consider using --machine=<user>@.host --user to connect to bus of other user)" : \
|
||||
"Failed to connect to bus: %m"); \
|
||||
})
|
||||
int bus_log_address_error(int r, BusTransport transport);
|
||||
int bus_log_connect_error(int r, BusTransport transport);
|
||||
|
||||
#define bus_log_parse_error(r) \
|
||||
log_error_errno(r, "Failed to parse bus message: %m")
|
||||
|
||||
@@ -447,7 +447,7 @@ int show_cgroup_get_path_and_warn(
|
||||
|
||||
r = bus_connect_transport_systemd(BUS_TRANSPORT_LOCAL, NULL, false, &bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, BUS_TRANSPORT_LOCAL);
|
||||
|
||||
r = show_cgroup_get_unit_path_and_warn(bus, unit, &root);
|
||||
if (r < 0)
|
||||
|
||||
@@ -53,7 +53,7 @@ int acquire_bus(BusFocus focus, sd_bus **ret) {
|
||||
else
|
||||
r = bus_connect_transport(arg_transport, arg_host, user, &buses[focus]);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
(void) sd_bus_set_allow_interactive_authorization(buses[focus], arg_ask_password);
|
||||
}
|
||||
|
||||
@@ -1038,7 +1038,7 @@ static int run(int argc, char *argv[]) {
|
||||
|
||||
r = bus_connect_transport(arg_transport, arg_host, false, &bus);
|
||||
if (r < 0)
|
||||
return bus_log_connect_error(r);
|
||||
return bus_log_connect_error(r, arg_transport);
|
||||
|
||||
return timedatectl_main(bus, argc, argv);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user