We use the keyring, so let's make sure it gets properly initialized for
sessions in factory reset mode.
(cherry picked from commit 4c92bf408db4f91928389c49bf06cfe5d7383d9a)
(cherry picked from commit a4fc3c88f122de263bd0a1bd6a86b6e557ee5531)
(cherry picked from commit cf1500b62036fd3f7399e8ce306c641d1623ffbc)
(cherry picked from commit 29d30ae7b6f8d87223d9e9a32fd9d27e218cc7fc)
(cherry picked from commit a453d63315fd1f451bdb2b537eae50c5d6c03c2e)
(cherry picked from commit f11dbd384176cef86f60b6894585a71ff8fc0775)
Apparently PAM reacts differently on different systems (?) and if no
authoritative matching module is found might either succeed/fail,
depending on the system.
Let's lock this down explicitly, by hooking in pam_deny.so.
Of course, these PAM files are just examples, and no distro in its right
mind would ship these unmodified, but let's default to something safe.
Fixes: #12950
(cherry picked from commit ed40cb82f7fe59f6584309553f5619c263f8c64f)
(cherry picked from commit d9a5a70a59cfef563d20e997efb6a029a8f357f0)
(cherry picked from commit 71963cde3ee9355f0f1569208d96d523923da509)
This commit replays the moving around of source files that have been
done between systemd-219 and systemd-221.
Further the Makefile.am is synchronized with the upstream version and
then "re-cleaned".
A lot of functions, that are not used anywhere in elogind have been
coated into #if 0/#endif directives to further shorten the list of
dependencies.
All unneeded files have been removed.
Stupid PAM, please just go away!
login[26]: pam_limits(login:session): error parsing the configuration file: '/etc/security/limits.conf'
login[26]: pam_unix(login:session): session opened for user root by LOGIN(uid=0)
login[26]: Error in service module