[PATCH] Use useradd and update-rc.d classes in the OpenSSH recipe
From: Julian Pidancet <hidden>
Date: 2011-09-25 12:06:19
Subsystem:
the rest · Maintainer:
Linus Torvalds
The current sshd postinst and postrm scripts in the OpenSSH make the package dependant of the adduser/addgroup scripts which may not be available on all systems. This patch replaces the sshd postinst and postrm scripts with proper usage of the useradd and update-rc.d classes. Signed-off-by: Julian Pidancet <redacted> --- meta/recipes-connectivity/openssh/openssh_5.8p2.bb | 29 +++++-------------- 1 files changed, 8 insertions(+), 21 deletions(-)
diff --git a/meta/recipes-connectivity/openssh/openssh_5.8p2.bb b/meta/recipes-connectivity/openssh/openssh_5.8p2.bb
index 030a83b..c94ec84 100644
--- a/meta/recipes-connectivity/openssh/openssh_5.8p2.bb
+++ b/meta/recipes-connectivity/openssh/openssh_5.8p2.bb@@ -29,6 +29,14 @@ PAM_SRC_URI = "file://sshd" SRC_URI[md5sum] = "0541579adf9d55abb15ef927048d372e" SRC_URI[sha256sum] = "5c35ec7c966ce05cc4497ac59c0b54a556e55ae7368165cc8c4129694654f314" +inherit useradd update-rc.d + +USERADD_PACKAGES = "${PN}-sshd" +USERADD_PARAM_${PN}-sshd = "-r -M -d /var/run/sshd -s /bin/false -U sshd" +INITSCRIPT_PACKAGES = "${PN}-sshd" +INITSCRIPT_NAME_${PN}-sshd = "sshd" +INITSCRIPT_PARAMS_${PN}-sshd = "defaults 9" + inherit autotools # LFS support:
@@ -91,16 +99,6 @@ RDEPENDS_${PN} += "${PN}-scp ${PN}-ssh ${PN}-sshd ${PN}-keygen" DEPENDS_${PN}-sshd += "update-rc.d" RDEPENDS_${PN}-sshd += "update-rc.d ${PN}-keygen" -pkg_postinst_${PN}-sshd () { - if [ "x$D" != "x" ]; then - exit 1 - else - addgroup sshd - adduser --system --home /var/run/sshd --no-create-home --disabled-password --ingroup sshd -s /bin/false sshd - update-rc.d sshd defaults 9 - fi -} - pkg_postinst_${PN}-scp () { update-alternatives --install ${bindir}/scp scp scp.${PN} 90 }
@@ -117,16 +115,5 @@ pkg_postrm_${PN}-scp () { update-alternatives --remove ${bindir}/scp scp.${PN} } -pkg_postrm_${PN}-sshd () { - if [ "x$D" != "x" ]; then - exit 1 - else - ${sysconfdir}/init.d/sshd stop - deluser sshd - delgroup sshd - update-rc.d -f sshd remove - fi -} - CONFFILES_${PN}-sshd = "${sysconfdir}/ssh/sshd_config" CONFFILES_${PN}-ssh = "${sysconfdir}/ssh/ssh_config"
--
1.7.3.4