1
0
mirror of https://github.com/systemd/systemd synced 2026-04-03 21:54:58 +02:00

Compare commits

..

No commits in common. "7544461cd02d9ddf347e0716ecfc95f86c00c61c" and "3663f754f1dab56c5860d91e42983d30243d0617" have entirely different histories.

17 changed files with 42 additions and 46 deletions

View File

@ -639,7 +639,7 @@ static int analyze_plot(int argc, char *argv[], void *userdata) {
r = acquire_bus(&bus, &use_full_bus); r = acquire_bus(&bus, &use_full_bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
n = acquire_boot_times(bus, &boot); n = acquire_boot_times(bus, &boot);
if (n < 0) if (n < 0)
@ -1034,7 +1034,7 @@ static int analyze_critical_chain(int argc, char *argv[], void *userdata) {
r = acquire_bus(&bus, NULL); r = acquire_bus(&bus, NULL);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
n = acquire_time_data(bus, &times); n = acquire_time_data(bus, &times);
if (n <= 0) if (n <= 0)
@ -1076,7 +1076,7 @@ static int analyze_blame(int argc, char *argv[], void *userdata) {
r = acquire_bus(&bus, NULL); r = acquire_bus(&bus, NULL);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
n = acquire_time_data(bus, &times); n = acquire_time_data(bus, &times);
if (n <= 0) if (n <= 0)
@ -1133,7 +1133,7 @@ static int analyze_time(int argc, char *argv[], void *userdata) {
r = acquire_bus(&bus, NULL); r = acquire_bus(&bus, NULL);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
r = pretty_boot_time(bus, &buf); r = pretty_boot_time(bus, &buf);
if (r < 0) if (r < 0)
@ -1270,7 +1270,7 @@ static int dot(int argc, char *argv[], void *userdata) {
r = acquire_bus(&bus, NULL); r = acquire_bus(&bus, NULL);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
r = expand_patterns(bus, strv_skip(argv, 1), &expanded_patterns); r = expand_patterns(bus, strv_skip(argv, 1), &expanded_patterns);
if (r < 0) if (r < 0)
@ -1347,7 +1347,7 @@ static int dump(int argc, char *argv[], void *userdata) {
r = acquire_bus(&bus, NULL); r = acquire_bus(&bus, NULL);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
(void) pager_open(arg_pager_flags); (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); r = acquire_bus(&bus, NULL);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
return verb_log_control_common(bus, "org.freedesktop.systemd1", argv[0], argc == 2 ? argv[1] : NULL); 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); r = acquire_bus(&bus, NULL);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
if (argc == 1) { if (argc == 1) {
/* get ServiceWatchdogs */ /* get ServiceWatchdogs */
@ -2268,7 +2268,7 @@ static int do_security(int argc, char *argv[], void *userdata) {
r = acquire_bus(&bus, NULL); r = acquire_bus(&bus, NULL);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
(void) pager_open(arg_pager_flags); (void) pager_open(arg_pager_flags);

View File

@ -102,7 +102,7 @@ static int acquire_bus(bool set_monitor, sd_bus **ret) {
if (arg_address) if (arg_address)
r = sd_bus_set_address(bus, arg_address); r = sd_bus_set_address(bus, arg_address);
else else {
switch (arg_transport) { switch (arg_transport) {
case BUS_TRANSPORT_LOCAL: case BUS_TRANSPORT_LOCAL:
@ -123,13 +123,13 @@ static int acquire_bus(bool set_monitor, sd_bus **ret) {
default: default:
assert_not_reached(); assert_not_reached();
} }
}
if (r < 0) if (r < 0)
return bus_log_address_error(r, arg_transport); return bus_log_address_error(r);
r = sd_bus_start(bus); r = sd_bus_start(bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
*ret = TAKE_PTR(bus); *ret = TAKE_PTR(bus);

View File

@ -216,7 +216,7 @@ static int run(int argc, char *argv[]) {
arg_show_unit == SHOW_UNIT_USER, arg_show_unit == SHOW_UNIT_USER,
&bus); &bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, BUS_TRANSPORT_LOCAL); return bus_log_connect_error(r);
} }
q = show_cgroup_get_unit_path_and_warn(bus, *name, &cgroup); q = show_cgroup_get_unit_path_and_warn(bus, *name, &cgroup);

View File

@ -104,7 +104,7 @@ static int acquire_bus(sd_bus **bus) {
r = bus_connect_transport(arg_transport, arg_host, false, bus); r = bus_connect_transport(arg_transport, arg_host, false, bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
(void) sd_bus_set_allow_interactive_authorization(*bus, arg_ask_password); (void) sd_bus_set_allow_interactive_authorization(*bus, arg_ask_password);

View File

@ -660,7 +660,7 @@ static int run(int argc, char *argv[]) {
r = bus_connect_transport(arg_transport, arg_host, false, &bus); r = bus_connect_transport(arg_transport, arg_host, false, &bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
return hostnamectl_main(bus, argc, argv); return hostnamectl_main(bus, argc, argv);
} }

View File

@ -512,7 +512,7 @@ static int run(int argc, char *argv[]) {
r = bus_connect_transport(arg_transport, arg_host, false, &bus); r = bus_connect_transport(arg_transport, arg_host, false, &bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
return localectl_main(bus, argc, argv); return localectl_main(bus, argc, argv);
} }

View File

@ -283,7 +283,7 @@ static int run(int argc, char *argv[]) {
r = sd_bus_default_system(&bus); r = sd_bus_default_system(&bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, BUS_TRANSPORT_LOCAL); return bus_log_connect_error(r);
if (arg_action == ACTION_LIST) if (arg_action == ACTION_LIST)
return print_inhibitors(bus); return print_inhibitors(bus);

View File

@ -1468,7 +1468,7 @@ static int run(int argc, char *argv[]) {
r = bus_connect_transport(arg_transport, arg_host, false, &bus); r = bus_connect_transport(arg_transport, arg_host, false, &bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
(void) sd_bus_set_allow_interactive_authorization(bus, arg_ask_password); (void) sd_bus_set_allow_interactive_authorization(bus, arg_ask_password);

View File

@ -2869,7 +2869,7 @@ static int run(int argc, char *argv[]) {
r = bus_connect_transport(arg_transport, arg_host, false, &bus); r = bus_connect_transport(arg_transport, arg_host, false, &bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
(void) sd_bus_set_allow_interactive_authorization(bus, arg_ask_password); (void) sd_bus_set_allow_interactive_authorization(bus, arg_ask_password);

View File

@ -1458,7 +1458,7 @@ static int run(int argc, char* argv[]) {
r = bus_connect_transport_systemd(arg_transport, arg_host, arg_user, &bus); r = bus_connect_transport_systemd(arg_transport, arg_host, arg_user, &bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
if (arg_action == ACTION_UMOUNT) if (arg_action == ACTION_UMOUNT)
return action_umount(bus, argc, argv); return action_umount(bus, argc, argv);

View File

@ -220,7 +220,7 @@ static int acquire_bus(sd_bus **bus) {
r = bus_connect_transport(arg_transport, arg_host, false, bus); r = bus_connect_transport(arg_transport, arg_host, false, bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
(void) sd_bus_set_allow_interactive_authorization(*bus, arg_ask_password); (void) sd_bus_set_allow_interactive_authorization(*bus, arg_ask_password);

View File

@ -1760,7 +1760,7 @@ static int run(int argc, char* argv[]) {
else else
r = bus_connect_transport_systemd(arg_transport, arg_host, arg_user, &bus); r = bus_connect_transport_systemd(arg_transport, arg_host, arg_user, &bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
if (arg_scope) if (arg_scope)
r = start_transient_scope(bus); r = start_transient_scope(bus);

View File

@ -34,24 +34,6 @@ static int name_owner_change_callback(sd_bus_message *m, void *userdata, sd_bus_
return 1; 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) { int bus_async_unregister_and_exit(sd_event *e, sd_bus *bus, const char *name) {
const char *match; const char *match;
const char *unique; const char *unique;

View File

@ -39,8 +39,22 @@ 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(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_connect_transport_systemd(BusTransport transport, const char *host, bool user, sd_bus **bus);
int bus_log_address_error(int r, BusTransport transport); #define bus_log_address_error(r) \
int bus_log_connect_error(int r, BusTransport transport); ({ \
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"); \
})
#define bus_log_parse_error(r) \ #define bus_log_parse_error(r) \
log_error_errno(r, "Failed to parse bus message: %m") log_error_errno(r, "Failed to parse bus message: %m")

View File

@ -447,7 +447,7 @@ int show_cgroup_get_path_and_warn(
r = bus_connect_transport_systemd(BUS_TRANSPORT_LOCAL, NULL, false, &bus); r = bus_connect_transport_systemd(BUS_TRANSPORT_LOCAL, NULL, false, &bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, BUS_TRANSPORT_LOCAL); return bus_log_connect_error(r);
r = show_cgroup_get_unit_path_and_warn(bus, unit, &root); r = show_cgroup_get_unit_path_and_warn(bus, unit, &root);
if (r < 0) if (r < 0)

View File

@ -53,7 +53,7 @@ int acquire_bus(BusFocus focus, sd_bus **ret) {
else else
r = bus_connect_transport(arg_transport, arg_host, user, &buses[focus]); r = bus_connect_transport(arg_transport, arg_host, user, &buses[focus]);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
(void) sd_bus_set_allow_interactive_authorization(buses[focus], arg_ask_password); (void) sd_bus_set_allow_interactive_authorization(buses[focus], arg_ask_password);
} }

View File

@ -1038,7 +1038,7 @@ static int run(int argc, char *argv[]) {
r = bus_connect_transport(arg_transport, arg_host, false, &bus); r = bus_connect_transport(arg_transport, arg_host, false, &bus);
if (r < 0) if (r < 0)
return bus_log_connect_error(r, arg_transport); return bus_log_connect_error(r);
return timedatectl_main(bus, argc, argv); return timedatectl_main(bus, argc, argv);
} }