summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-02-01 14:30:57 -0500
committerSven Eden <yamakuzure@gmx.net>2017-07-17 17:58:36 +0200
commitde3f86951e5c91756ea9d9b5c9e381b6f293a3be (patch)
tree46b5c0de91a0afb4f93b24df4e02aa78ef348a35 /src
parentc59c21d77cea613cc662901b421e4d3a0fcd854f (diff)
shared/cgroup-show: extract funtion to query unit cgroup path
…and use it where possible.
Diffstat (limited to 'src')
-rw-r--r--src/login/loginctl.c25
1 files changed, 3 insertions, 22 deletions
diff --git a/src/login/loginctl.c b/src/login/loginctl.c
index 450fbc1eb..56d711c8e 100644
--- a/src/login/loginctl.c
+++ b/src/login/loginctl.c
@@ -255,7 +255,6 @@ static int list_seats(int argc, char *argv[], void *userdata) {
sd_bus *bus = userdata;
unsigned k = 0;
int r;
-
assert(bus);
assert(argv);
@@ -296,35 +295,17 @@ static int list_seats(int argc, char *argv[], void *userdata) {
#if 0 /// UNNEEDED by elogind
static int show_unit_cgroup(sd_bus *bus, const char *interface, const char *unit, pid_t leader) {
+ _cleanup_free_ char *cgroup = NULL;
_cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL;
- _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL;
- _cleanup_free_ char *path = NULL;
- const char *cgroup;
unsigned c;
int r;
assert(bus);
assert(unit);
- path = unit_dbus_path_from_name(unit);
- if (!path)
- return log_oom();
-
- r = sd_bus_get_property(
- bus,
- "org.freedesktop.systemd1",
- path,
- interface,
- "ControlGroup",
- &error,
- &reply,
- "s");
- if (r < 0)
- return log_error_errno(r, "Failed to query ControlGroup: %s", bus_error_message(&error, r));
-
- r = sd_bus_message_read(reply, "s", &cgroup);
+ r = show_cgroup_get_unit_path_and_warn(bus, unit, &cgroup);
if (r < 0)
- return bus_log_parse_error(r);
+ return r;
if (isempty(cgroup))
return 0;