After upgrading to 1.7.0, the pam module path is set to ${libdir}/security[1]. But from the pam.conf(5) man page, the default location seems to be "Module location: /lib/security/ or /lib64/security/, depending on the architecture"[2].
Many third-party pam modules still use {base_libdir}/security as the default module path, such as pam_lastlog2 (from util-linux), pam_cgroup (from libcgroup), pam_cap (from libcap), etc. So currently if you don't use the absolute path to these modules in the files in /etc/pam.d/, they will not be found: PAM unable to dlopen(/usr/lib/security/pam_lastlog2.so): /usr/lib/security/pam_lastlog2.so: cannot open shared object file: No such file or directory This change only affects sysvinit without usrmerge feature enabled, and has no effect on systems using systemd. [1] https://git.openembedded.org/openembedded-core/commit/?id=00eb730291f9630eb70480d37ed48fbadecc547a [2] https://www.man7.org/linux/man-pages/man5/pam.conf.5.html Signed-off-by: Yi Zhao <yi.z...@windriver.com> --- meta/recipes-extended/pam/libpam_1.7.0.bb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/meta/recipes-extended/pam/libpam_1.7.0.bb b/meta/recipes-extended/pam/libpam_1.7.0.bb index 53839e8cd3..1be3c9e2bb 100644 --- a/meta/recipes-extended/pam/libpam_1.7.0.bb +++ b/meta/recipes-extended/pam/libpam_1.7.0.bb @@ -29,7 +29,7 @@ SRC_URI[sha256sum] = "57dcd7a6b966ecd5bbd95e1d11173734691e16b68692fa59661cdae9b1 DEPENDS = "bison-native flex-native libxml2-native virtual/crypt" -EXTRA_OEMESON = "-Ddocs=disabled" +EXTRA_OEMESON = "-Ddocs=disabled -Dsecuredir=${base_libdir}/security" S = "${WORKDIR}/Linux-PAM-${PV}" @@ -45,7 +45,7 @@ FILES:${PN} = " \ ${libdir}/lib*${SOLIBS} \ ${nonarch_libdir}/tmpfiles.d/*.conf \ " -FILES:${PN}-dev += "${libdir}/security/*.la ${libdir}/*.la ${libdir}/lib*${SOLIBSDEV}" +FILES:${PN}-dev += "${base_libdir}/security/*.la ${libdir}/*.la ${libdir}/lib*${SOLIBSDEV}" FILES:${PN}-runtime = "${sysconfdir} ${sbindir} ${nonarch_libdir}/systemd/system" FILES:${PN}-xtests = "${datadir}/Linux-PAM/xtests" @@ -105,9 +105,9 @@ python populate_packages:prepend () { mlprefix = d.getVar('MLPREFIX') or '' dvar = d.expand('${WORKDIR}/package') - pam_libdir = d.expand('${libdir}/security') + pam_libdir = d.expand('${base_libdir}/security') pam_sbindir = d.expand('${sbindir}') - pam_filterdir = d.expand('${libdir}/security/pam_filter') + pam_filterdir = d.expand('${base_libdir}/security/pam_filter') pam_pkgname = mlprefix + 'pam-plugin%s' do_split_packages(d, pam_libdir, r'^pam(.*)\.so$', pam_pkgname, -- 2.25.1
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#209327): https://lists.openembedded.org/g/openembedded-core/message/209327 Mute This Topic: https://lists.openembedded.org/mt/110403684/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-