Remove pam_systemd.so from common-session pam conf
The libpam recipe adds pam_systemd.so into
/etc/pam.d/common-session if it detects systemd is
enabled.
However, systemd only installs pam_systemd.so if the
systemd-logind package is installed, which openBMC
doesn't want. So now when common-session is used by
a pam module, there are errors in the journal saying
it can't find pam_systemd.so.
To fix this, remove the pam_systemd.so line ourselves.
Tested: Verified that the line containing pam_systemd.so
is no longer in the common-session file, and that
there are no errors in the journal when logging
in via REST.
(From meta-phosphor rev: 3457266de2ac93bb453a094a45d14e4ea082e955)
Change-Id: Iae091e2df1c543b5f679a55863329b4dd4d3b5c8
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/meta-phosphor/recipes-extended/pam/libpam_%.bbappend b/meta-phosphor/recipes-extended/pam/libpam_%.bbappend
new file mode 100644
index 0000000..714496a
--- /dev/null
+++ b/meta-phosphor/recipes-extended/pam/libpam_%.bbappend
@@ -0,0 +1,7 @@
+do_install_append() {
+ # The libpam recipe will always add a pam_systemd.so line to
+ # common-session if systemd is enabled; however systemd only
+ # builds pam_systemd.so if logind is enabled, and we disable
+ # that package. So, remove the pam_systemd.so line here.
+ sed -i '/pam_systemd.so/d' ${D}${sysconfdir}/pam.d/common-session
+}