The dhcpcd enables privsep by default. It requires a user added to the
system. Add dhcpcd user and group to support it.

Signed-off-by: Yi Zhao <[email protected]>
---
 meta/recipes-connectivity/dhcpcd/dhcpcd_9.2.0.bb | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-connectivity/dhcpcd/dhcpcd_9.2.0.bb 
b/meta/recipes-connectivity/dhcpcd/dhcpcd_9.2.0.bb
index 557e15128e..4344841b54 100644
--- a/meta/recipes-connectivity/dhcpcd/dhcpcd_9.2.0.bb
+++ b/meta/recipes-connectivity/dhcpcd/dhcpcd_9.2.0.bb
@@ -19,7 +19,7 @@ SRC_URI = 
"https://roy.marples.name/downloads/${BPN}/${BPN}-${PV}.tar.xz \
 
 SRC_URI[sha256sum] = 
"fcb2d19672d445bbfd38678fdee4f556ef967a3ea6bd81092d10545df2cb9666"
 
-inherit pkgconfig autotools-brokensep systemd
+inherit pkgconfig autotools-brokensep systemd useradd
 
 SYSTEMD_SERVICE_${PN} = "dhcpcd.service"
 
@@ -33,10 +33,16 @@ EXTRA_OECONF = "--enable-ipv4 \
                 --runstatedir=/run \
                "
 
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM_${PN} = "--system -d ${localstatedir}/lib/${BPN} -M -s 
/bin/false -U dhcpcd"
+
 do_install_append () {
     # install systemd unit files
     install -d ${D}${systemd_unitdir}/system
     install -m 0644 ${WORKDIR}/dhcpcd*.service ${D}${systemd_unitdir}/system
+
+    chmod 700 ${D}${localstatedir}/lib/${BPN}
+    chown dhcpcd:dhcpcd ${D}${localstatedir}/lib/${BPN}
 }
 
 FILES_${PN}-dbg += "${libdir}/dhcpcd/dev/.debug"
-- 
2.17.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#142734): 
https://lists.openembedded.org/g/openembedded-core/message/142734
Mute This Topic: https://lists.openembedded.org/mt/77031557/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to