From 81177ff4de66257494f09ad2fe75dfdd86acd8fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A1n=20Tomko?= Date: Tue, 13 Aug 2019 16:23:39 +0200 Subject: [PATCH] util: introduce virSystemdHasLogind MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Split it out from virSystemdPMSupportTarget. Signed-off-by: Ján Tomko Reviewed-by: Michal Privoznik --- src/util/virsystemd.c | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/util/virsystemd.c b/src/util/virsystemd.c index 26b751311f..b401eda6a2 100644 --- a/src/util/virsystemd.c +++ b/src/util/virsystemd.c @@ -174,6 +174,21 @@ virSystemdHasMachined(void) return ret; } +static int +virSystemdHasLogind(void) +{ + int ret; + + ret = virDBusIsServiceEnabled("org.freedesktop.login1"); + if (ret < 0) + return ret; + + if ((ret = virDBusIsServiceRegistered("org.freedesktop.login1")) < 0) + return ret; + + return ret; +} + char * virSystemdGetMachineNameByPID(pid_t pid) @@ -547,11 +562,7 @@ virSystemdPMSupportTarget(const char *methodName, bool *result) DBusMessage *message = NULL; char *response; - ret = virDBusIsServiceEnabled("org.freedesktop.login1"); - if (ret < 0) - return ret; - - if ((ret = virDBusIsServiceRegistered("org.freedesktop.login1")) < 0) + if ((ret = virSystemdHasLogind()) < 0) return ret; if (!(conn = virDBusGetSystemBus()))