login: switch to BusLocator-oriented helpers
Mechanical substitution reducing some verbosity
This commit is contained in:
+28
-97
@@ -64,14 +64,7 @@ static int get_session_path(sd_bus *bus, const char *session_id, sd_bus_error *e
|
||||
int r;
|
||||
char *ans;
|
||||
|
||||
r = sd_bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"GetSession",
|
||||
error, &reply,
|
||||
"s", session_id);
|
||||
r = bus_call_method(bus, bus_login_mgr, "GetSession", error, &reply, "s", session_id);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@@ -130,14 +123,7 @@ static int list_sessions(int argc, char *argv[], void *userdata) {
|
||||
|
||||
(void) pager_open(arg_pager_flags);
|
||||
|
||||
r = sd_bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"ListSessions",
|
||||
&error, &reply,
|
||||
NULL);
|
||||
r = bus_call_method(bus, bus_login_mgr, "ListSessions", &error, &reply, NULL);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to list sessions: %s", bus_error_message(&error, r));
|
||||
|
||||
@@ -211,14 +197,7 @@ static int list_users(int argc, char *argv[], void *userdata) {
|
||||
|
||||
(void) pager_open(arg_pager_flags);
|
||||
|
||||
r = sd_bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"ListUsers",
|
||||
&error, &reply,
|
||||
NULL);
|
||||
r = bus_call_method(bus, bus_login_mgr, "ListUsers", &error, &reply, NULL);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to list users: %s", bus_error_message(&error, r));
|
||||
|
||||
@@ -268,14 +247,7 @@ static int list_seats(int argc, char *argv[], void *userdata) {
|
||||
|
||||
(void) pager_open(arg_pager_flags);
|
||||
|
||||
r = sd_bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"ListSeats",
|
||||
&error, &reply,
|
||||
NULL);
|
||||
r = bus_call_method(bus, bus_login_mgr, "ListSeats", &error, &reply, NULL);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to list seats: %s", bus_error_message(&error, r));
|
||||
|
||||
@@ -961,14 +933,7 @@ static int show_seat(int argc, char *argv[], void *userdata) {
|
||||
_cleanup_(sd_bus_message_unrefp) sd_bus_message * reply = NULL;
|
||||
const char *path = NULL;
|
||||
|
||||
r = sd_bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"GetSeat",
|
||||
&error, &reply,
|
||||
"s", argv[i]);
|
||||
r = bus_call_method(bus, bus_login_mgr, "GetSeat", &error, &reply, "s", argv[i]);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to get seat: %s", bus_error_message(&error, r));
|
||||
|
||||
@@ -1017,11 +982,9 @@ static int activate(int argc, char *argv[], void *userdata) {
|
||||
|
||||
for (i = 1; i < argc; i++) {
|
||||
|
||||
r = sd_bus_call_method(
|
||||
r = bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
bus_login_mgr,
|
||||
streq(argv[0], "lock-session") ? "LockSession" :
|
||||
streq(argv[0], "unlock-session") ? "UnlockSession" :
|
||||
streq(argv[0], "terminate-session") ? "TerminateSession" :
|
||||
@@ -1050,14 +1013,12 @@ static int kill_session(int argc, char *argv[], void *userdata) {
|
||||
|
||||
for (i = 1; i < argc; i++) {
|
||||
|
||||
r = sd_bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"KillSession",
|
||||
&error, NULL,
|
||||
"ssi", argv[i], arg_kill_who, arg_signal);
|
||||
r = bus_call_method(
|
||||
bus,
|
||||
bus_login_mgr,
|
||||
"KillSession",
|
||||
&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));
|
||||
}
|
||||
@@ -1101,14 +1062,12 @@ static int enable_linger(int argc, char *argv[], void *userdata) {
|
||||
return log_error_errno(r, "Failed to look up user %s: %m", argv[i]);
|
||||
}
|
||||
|
||||
r = sd_bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"SetUserLinger",
|
||||
&error, NULL,
|
||||
"ubb", (uint32_t) uid, b, true);
|
||||
r = bus_call_method(
|
||||
bus,
|
||||
bus_login_mgr,
|
||||
"SetUserLinger",
|
||||
&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));
|
||||
}
|
||||
@@ -1133,14 +1092,7 @@ static int terminate_user(int argc, char *argv[], void *userdata) {
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to look up user %s: %m", argv[i]);
|
||||
|
||||
r = sd_bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"TerminateUser",
|
||||
&error, NULL,
|
||||
"u", (uint32_t) uid);
|
||||
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));
|
||||
}
|
||||
@@ -1168,11 +1120,9 @@ static int kill_user(int argc, char *argv[], void *userdata) {
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to look up user %s: %m", argv[i]);
|
||||
|
||||
r = sd_bus_call_method(
|
||||
r = bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
bus_login_mgr,
|
||||
"KillUser",
|
||||
&error, NULL,
|
||||
"ui", (uint32_t) uid, arg_signal);
|
||||
@@ -1195,15 +1145,12 @@ static int attach(int argc, char *argv[], void *userdata) {
|
||||
|
||||
for (i = 2; i < argc; i++) {
|
||||
|
||||
r = sd_bus_call_method(
|
||||
r = bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
bus_login_mgr,
|
||||
"AttachDevice",
|
||||
&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));
|
||||
}
|
||||
@@ -1221,14 +1168,7 @@ static int flush_devices(int argc, char *argv[], void *userdata) {
|
||||
|
||||
polkit_agent_open_if_enabled(arg_transport, arg_ask_password);
|
||||
|
||||
r = sd_bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"FlushDevices",
|
||||
&error, NULL,
|
||||
"b", true);
|
||||
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));
|
||||
|
||||
@@ -1245,11 +1185,9 @@ static int lock_sessions(int argc, char *argv[], void *userdata) {
|
||||
|
||||
polkit_agent_open_if_enabled(arg_transport, arg_ask_password);
|
||||
|
||||
r = sd_bus_call_method(
|
||||
r = bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
bus_login_mgr,
|
||||
streq(argv[0], "lock-sessions") ? "LockSessions" : "UnlockSessions",
|
||||
&error, NULL,
|
||||
NULL);
|
||||
@@ -1271,14 +1209,7 @@ static int terminate_seat(int argc, char *argv[], void *userdata) {
|
||||
|
||||
for (i = 1; i < argc; i++) {
|
||||
|
||||
r = sd_bus_call_method(
|
||||
bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"TerminateSeat",
|
||||
&error, NULL,
|
||||
"s", argv[i]);
|
||||
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));
|
||||
}
|
||||
|
||||
+9
-23
@@ -1625,11 +1625,9 @@ static int execute_shutdown_or_sleep(
|
||||
if (w == INHIBIT_SHUTDOWN)
|
||||
bus_manager_log_shutdown(m, unit_name);
|
||||
|
||||
r = sd_bus_call_method(
|
||||
r = bus_call_method(
|
||||
m->bus,
|
||||
"org.freedesktop.systemd1",
|
||||
"/org/freedesktop/systemd1",
|
||||
"org.freedesktop.systemd1.Manager",
|
||||
bus_systemd_mgr,
|
||||
"StartUnit",
|
||||
error,
|
||||
&reply,
|
||||
@@ -3981,13 +3979,7 @@ int manager_start_scope(
|
||||
assert(pid > 1);
|
||||
assert(job);
|
||||
|
||||
r = sd_bus_message_new_method_call(
|
||||
manager->bus,
|
||||
&m,
|
||||
"org.freedesktop.systemd1",
|
||||
"/org/freedesktop/systemd1",
|
||||
"org.freedesktop.systemd1.Manager",
|
||||
"StartTransientUnit");
|
||||
r = bus_message_new_method_call(manager->bus, &m, bus_systemd_mgr, "StartTransientUnit");
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@@ -4074,11 +4066,9 @@ int manager_start_unit(Manager *manager, const char *unit, sd_bus_error *error,
|
||||
assert(unit);
|
||||
assert(job);
|
||||
|
||||
r = sd_bus_call_method(
|
||||
r = bus_call_method(
|
||||
manager->bus,
|
||||
"org.freedesktop.systemd1",
|
||||
"/org/freedesktop/systemd1",
|
||||
"org.freedesktop.systemd1.Manager",
|
||||
bus_systemd_mgr,
|
||||
"StartUnit",
|
||||
error,
|
||||
&reply,
|
||||
@@ -4097,11 +4087,9 @@ int manager_stop_unit(Manager *manager, const char *unit, sd_bus_error *error, c
|
||||
assert(unit);
|
||||
assert(job);
|
||||
|
||||
r = sd_bus_call_method(
|
||||
r = bus_call_method(
|
||||
manager->bus,
|
||||
"org.freedesktop.systemd1",
|
||||
"/org/freedesktop/systemd1",
|
||||
"org.freedesktop.systemd1.Manager",
|
||||
bus_systemd_mgr,
|
||||
"StopUnit",
|
||||
error,
|
||||
&reply,
|
||||
@@ -4159,11 +4147,9 @@ int manager_kill_unit(Manager *manager, const char *unit, KillWho who, int signo
|
||||
assert(manager);
|
||||
assert(unit);
|
||||
|
||||
return sd_bus_call_method(
|
||||
return bus_call_method(
|
||||
manager->bus,
|
||||
"org.freedesktop.systemd1",
|
||||
"/org/freedesktop/systemd1",
|
||||
"org.freedesktop.systemd1.Manager",
|
||||
bus_systemd_mgr,
|
||||
"KillUnit",
|
||||
error,
|
||||
NULL,
|
||||
|
||||
+5
-33
@@ -11,6 +11,7 @@
|
||||
#include "bus-error.h"
|
||||
#include "bus-log-control-api.h"
|
||||
#include "bus-polkit.h"
|
||||
#include "bus-util.h"
|
||||
#include "cgroup-util.h"
|
||||
#include "def.h"
|
||||
#include "device-util.h"
|
||||
@@ -632,25 +633,11 @@ static int manager_connect_bus(Manager *m) {
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
r = sd_bus_match_signal_async(
|
||||
m->bus,
|
||||
NULL,
|
||||
"org.freedesktop.systemd1",
|
||||
"/org/freedesktop/systemd1",
|
||||
"org.freedesktop.systemd1.Manager",
|
||||
"JobRemoved",
|
||||
match_job_removed, NULL, m);
|
||||
r = bus_match_signal_async(m->bus, NULL, bus_systemd_mgr, "JobRemoved", match_job_removed, NULL, m);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to request match for JobRemoved: %m");
|
||||
|
||||
r = sd_bus_match_signal_async(
|
||||
m->bus,
|
||||
NULL,
|
||||
"org.freedesktop.systemd1",
|
||||
"/org/freedesktop/systemd1",
|
||||
"org.freedesktop.systemd1.Manager",
|
||||
"UnitRemoved",
|
||||
match_unit_removed, NULL, m);
|
||||
r = bus_match_signal_async(m->bus, NULL, bus_systemd_mgr, "UnitRemoved", match_unit_removed, NULL, m);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to request match for UnitRemoved: %m");
|
||||
|
||||
@@ -665,26 +652,11 @@ static int manager_connect_bus(Manager *m) {
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to request match for PropertiesChanged: %m");
|
||||
|
||||
r = sd_bus_match_signal_async(
|
||||
m->bus,
|
||||
NULL,
|
||||
"org.freedesktop.systemd1",
|
||||
"/org/freedesktop/systemd1",
|
||||
"org.freedesktop.systemd1.Manager",
|
||||
"Reloading",
|
||||
match_reloading, NULL, m);
|
||||
r = bus_match_signal_async(m->bus, NULL, bus_systemd_mgr, "Reloading", match_reloading, NULL, m);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to request match for Reloading: %m");
|
||||
|
||||
r = sd_bus_call_method_async(
|
||||
m->bus,
|
||||
NULL,
|
||||
"org.freedesktop.systemd1",
|
||||
"/org/freedesktop/systemd1",
|
||||
"org.freedesktop.systemd1.Manager",
|
||||
"Subscribe",
|
||||
NULL, NULL,
|
||||
NULL);
|
||||
r = bus_call_method_async(m->bus, NULL, bus_systemd_mgr, "Subscribe", NULL, NULL, NULL);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to enable subscription: %m");
|
||||
|
||||
|
||||
+2
-16
@@ -789,13 +789,7 @@ _public_ PAM_EXTERN int pam_sm_open_session(
|
||||
strna(memory_max), strna(tasks_max), strna(cpu_weight), strna(io_weight), strna(runtime_max_sec));
|
||||
}
|
||||
|
||||
r = sd_bus_message_new_method_call(
|
||||
bus,
|
||||
&m,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"CreateSession");
|
||||
r = bus_message_new_method_call(bus, &m, bus_login_mgr, "CreateSession");
|
||||
if (r < 0)
|
||||
return pam_bus_log_create_error(handle, r);
|
||||
|
||||
@@ -984,15 +978,7 @@ _public_ PAM_EXTERN int pam_sm_close_session(
|
||||
if (r != PAM_SUCCESS)
|
||||
return r;
|
||||
|
||||
r = sd_bus_call_method(bus,
|
||||
"org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
"org.freedesktop.login1.Manager",
|
||||
"ReleaseSession",
|
||||
&error,
|
||||
NULL,
|
||||
"s",
|
||||
id);
|
||||
r = bus_call_method(bus, bus_login_mgr, "ReleaseSession", &error, NULL, "s", id);
|
||||
if (r < 0) {
|
||||
pam_syslog(handle, LOG_ERR, "Failed to release session: %s", bus_error_message(&error, r));
|
||||
return PAM_SESSION_ERR;
|
||||
|
||||
Reference in New Issue
Block a user