From b4f4684f3a95c915491cd7845911ecdf2622b2c2 Mon Sep 17 00:00:00 2001 From: Sven Eden Date: Thu, 8 Jun 2017 08:49:12 +0200 Subject: [PATCH] Prep v230: Add utmp support to make wall message to work properly. --- Makefile.am | 8 + cb/elogind.cbp | 13 +- configure.ac | 11 + src/basic/hostname-util.c | 2 + src/basic/hostname-util.h | 2 + src/basic/terminal-util.c | 2 - src/basic/terminal-util.h | 2 +- src/basic/user-util.c | 2 +- src/basic/user-util.h | 2 +- src/basic/util.c | 4 +- src/libelogind/libelogind.sym | 2 +- src/libelogind/sd-bus/bus-convenience.c | 2 - src/login/logind-dbus.c | 35 +- src/login/logind-utmp.c | 183 +++++++++ src/login/logind.h | 2 - src/login/org.freedesktop.login1.conf | 4 +- src/login/org.freedesktop.login1.policy.in | 8 +- src/login/org.freedesktop.login1.service | 4 +- src/shared/utmp-wtmp.c | 445 +++++++++++++++++++++ src/shared/utmp-wtmp.h | 74 ++++ src/systemd/sd-bus.h | 2 - src/update-utmp/Makefile | 28 ++ src/update-utmp/update-utmp.c | 316 +++++++++++++++ src/update-utmp/update-utmp.h | 12 + 24 files changed, 1136 insertions(+), 29 deletions(-) create mode 100644 src/login/logind-utmp.c create mode 100644 src/shared/utmp-wtmp.c create mode 100644 src/shared/utmp-wtmp.h create mode 100644 src/update-utmp/Makefile create mode 100644 src/update-utmp/update-utmp.c create mode 100644 src/update-utmp/update-utmp.h diff --git a/Makefile.am b/Makefile.am index 67238fa0f..4091f42a6 100644 --- a/Makefile.am +++ b/Makefile.am @@ -152,6 +152,7 @@ AM_CPPFLAGS = \ -I $(top_srcdir)/src/libelogind/sd-bus \ -I $(top_srcdir)/src/libelogind/sd-event \ -I $(top_srcdir)/src/libelogind/sd-login \ + -I $(top_srcdir)/src/update-utmp \ $(OUR_CPPFLAGS) AM_CFLAGS = $(OUR_CFLAGS) @@ -452,6 +453,12 @@ libshared_la_SOURCES = \ src/shared/spawn-polkit-agent.c \ src/shared/spawn-polkit-agent.h +if HAVE_UTMP +libshared_la_SOURCES += \ + src/shared/utmp-wtmp.c \ + src/update-utmp/update-utmp.c +endif + if HAVE_ACL libshared_la_SOURCES += \ src/shared/acl-util.c \ @@ -677,6 +684,7 @@ libelogind_core_la_SOURCES = \ src/login/logind-session-dbus.c \ src/login/logind-seat-dbus.c \ src/login/logind-user-dbus.c \ + src/login/logind-utmp.c \ src/login/logind-acl.h \ src/core/cgroup.h \ src/core/cgroup.c \ diff --git a/cb/elogind.cbp b/cb/elogind.cbp index 63f91719b..17d61e0f0 100644 --- a/cb/elogind.cbp +++ b/cb/elogind.cbp @@ -70,12 +70,10 @@