Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package dhcpcd for openSUSE:Factory checked in at 2026-09-15 17:09:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dhcpcd (Old) and /work/SRC/openSUSE:Factory/.dhcpcd.new.383539 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dhcpcd" Tue Sep 15 17:09:33 2026 rev:15 rq:1377921 version:10.5.2 Changes: -------- --- /work/SRC/openSUSE:Factory/dhcpcd/dhcpcd.changes 2026-08-19 17:56:20.122720266 +0200 +++ /work/SRC/openSUSE:Factory/.dhcpcd.new.383539/dhcpcd.changes 2026-09-15 17:10:21.681212180 +0200 @@ -1,0 +2,6 @@ +Mon Sep 14 14:34:40 UTC 2026 - Jorik Cronenberg <[email protected]> + +- Add dhcpcd-privsep-Fix-daemonising-broken-by-RLIMIT_NOFILE-of-0.patch + [bsc#1275516] + +------------------------------------------------------------------- New: ---- dhcpcd-privsep-Fix-daemonising-broken-by-RLIMIT_NOFILE-of-0.patch ----------(New B)---------- New: - Add dhcpcd-privsep-Fix-daemonising-broken-by-RLIMIT_NOFILE-of-0.patch [bsc#1275516] ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dhcpcd.spec ++++++ --- /var/tmp/diff_new_pack.jV8Fd0/_old 2026-09-15 17:10:23.988308735 +0200 +++ /var/tmp/diff_new_pack.jV8Fd0/_new 2026-09-15 17:10:23.993308944 +0200 @@ -29,6 +29,7 @@ Source4: dhcpcd-tmpfiles.conf Source5: dhcpcd.service Source6: [email protected] +Patch0: dhcpcd-privsep-Fix-daemonising-broken-by-RLIMIT_NOFILE-of-0.patch BuildRequires: sysuser-tools %sysusers_requires ++++++ _scmsync.obsinfo ++++++ --- /var/tmp/diff_new_pack.jV8Fd0/_old 2026-09-15 17:10:24.083312711 +0200 +++ /var/tmp/diff_new_pack.jV8Fd0/_new 2026-09-15 17:10:24.100313422 +0200 @@ -1,6 +1,6 @@ -mtime: 1787060228 -commit: e0a7b0a2ad4c80bb5274cbdb24f16ee672bf0e38a18fcb318fe6c6f26296f898 +mtime: 1789396547 +commit: 13ad05c8272646e781dcc64566938bdcd05fe284e13b2ee086fe2606a3fc65fd url: https://src.opensuse.org/dhcp/dhcpcd -revision: e0a7b0a2ad4c80bb5274cbdb24f16ee672bf0e38a18fcb318fe6c6f26296f898 +revision: 13ad05c8272646e781dcc64566938bdcd05fe284e13b2ee086fe2606a3fc65fd projectscmsync: https://src.opensuse.org/dhcp/_ObsPrj.git ++++++ build.specials.obscpio ++++++ ++++++ build.specials.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.gitignore new/.gitignore --- old/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/.gitignore 2026-09-14 16:35:47.000000000 +0200 @@ -0,0 +1 @@ +.osc ++++++ dhcpcd-privsep-Fix-daemonising-broken-by-RLIMIT_NOFILE-of-0.patch ++++++ >From f8959a3666149b5133b2f29b7f216b6c7cc9b808 Mon Sep 17 00:00:00 2001 From: Jorik Cronenberg <[email protected]> Date: Mon, 14 Sep 2026 13:23:07 +0200 Subject: [PATCH] privsep: Fix daemonising broken by RLIMIT_NOFILE of 0 RLIMIT_NOFILE of 0 makes dup2(2) fail EBADF, so daemonising could no longer redirect stdout/stderr to /dev/null and readers of a piped stdio never saw EOF. Cap at STDERR_FILENO + 1; as 0-2 are always open, no new fd can be allocated. --- src/privsep.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/privsep.c b/src/privsep.c index f35502e0..5dbbd9cf 100644 --- a/src/privsep.c +++ b/src/privsep.c @@ -159,10 +159,13 @@ ps_dropprivs(struct dhcpcd_ctx *ctx) struct rlimit rzero = { .rlim_cur = 0, .rlim_max = 0 }; #ifndef __sun /* RLIMIT_NOFILE and ppoll don't mix */ + struct rlimit rnofile = { .rlim_cur = STDERR_FILENO + 1, + .rlim_max = STDERR_FILENO + 1 }; + /* Prohibit new files, sockets, etc * The control proxy *does* need to create new fd's via accept(2). */ if (ctx->ps_ctl == NULL || ctx->ps_ctl->psp_pid != getpid()) { - if (setrlimit(RLIMIT_NOFILE, &rzero) == -1) + if (setrlimit(RLIMIT_NOFILE, &rnofile) == -1) logerr("setrlimit RLIMIT_NOFILE"); } #endif -- 2.55.0
