From 965f7e2c6602adb824a848132c20abd7a7aa96f6 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Thu, 20 Aug 2015 10:53:41 +0200 Subject: [PATCH] Actually working with pam * src/login/logind-user.c (user_start): Don't start slices and systemd-user services. * src/login/logind-dbus.c (method_create_session): Send a reply directly instead of waiting on systemd that isn't there. * configure.ac: Bump version. --- src/login/logind-dbus.c | 9 +++++++++ src/login/logind-user.c | 2 ++ 2 files changed, 11 insertions(+) diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c index e6371ff04..e142b8fcf 100644 --- a/src/login/logind-dbus.c +++ b/src/login/logind-dbus.c @@ -822,6 +822,15 @@ static int method_create_session(sd_bus_message *message, void *userdata, sd_bus * created. We send the reply back from * session_send_create_reply(). */ + /* Elogind note: replying directly, since we're not actually + starting slices and thus we aren't waiting on systemd. */ + + r = session_send_create_reply(session, NULL); + if (r < 0) + goto fail; + + session_save(session); + return 1; fail: diff --git a/src/login/logind-user.c b/src/login/logind-user.c index 21d726812..39fbb8d1b 100644 --- a/src/login/logind-user.c +++ b/src/login/logind-user.c @@ -459,6 +459,7 @@ int user_start(User *u) { if (r < 0) return r; +#if 0 /* Create cgroup */ r = user_start_slice(u); if (r < 0) @@ -474,6 +475,7 @@ int user_start(User *u) { r = user_start_service(u); if (r < 0) return r; +#endif if (!dual_timestamp_is_set(&u->timestamp)) dual_timestamp_get(&u->timestamp); -- 2.30.2