package/dhcpcd: fix build without fork

- Add a patch to fix build without fork in src/dhcpcd.c. This
  regression was introduced in upstream commit
  3063ebb6c8ac7c96196fa923cdd5f7c0384de23b, which was merged in dhcpcd
  9.0.0. Therefore, Buildroot is affected since we bumped from 8.0.3
  to 9.1.4 in commit 809f548e79, which
  was applied after 2020.05

- Disable privsep as it unconditionally uses fork (privsep has been
  enabled by default since version 9.0.0 and
  3a4c2e5604)

Fixes:

 - http://autobuild.buildroot.org/results/9fcc88abedcb8a02946f37837dcf4fff02f66c23

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020.08.x
Fabrice Fontaine 2020-07-13 11:01:40 +02:00 committed by Thomas Petazzoni
parent 3ada9b8888
commit 91c1cb0881
2 changed files with 37 additions and 1 deletions

View File

@ -0,0 +1,36 @@
From 13e475d9847bf7d6a6af62397f67eb269e27613e Mon Sep 17 00:00:00 2001
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date: Mon, 13 Jul 2020 10:43:51 +0200
Subject: [PATCH] src/dhcpcd.c: fix build without fork
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Upstream status: https://github.com/rsmarples/dhcpcd/pull/17]
---
src/dhcpcd.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/dhcpcd.c b/src/dhcpcd.c
index ee585aa4..b597a5c0 100644
--- a/src/dhcpcd.c
+++ b/src/dhcpcd.c
@@ -336,7 +336,7 @@ dhcpcd_daemonise(struct dhcpcd_ctx *ctx)
#ifdef THERE_IS_NO_FORK
eloop_timeout_delete(ctx->eloop, handle_exit_timeout, ctx);
errno = ENOSYS;
- return 0;
+ return;
#else
int i;
unsigned int logopts = loggetopts();
@@ -2211,7 +2211,7 @@ printpidfile:
ps_init(&ctx);
#endif
-#ifdef USE_SIGNALS
+#if defined(USE_SIGNALS) && !defined(THERE_IS_NO_FORK)
if (pipe(sigpipe) == -1) {
logerr("pipe");
goto exit_failure;
--
2.27.0

View File

@ -16,7 +16,7 @@ DHCPCD_CONFIG_OPTS += --enable-static
endif
ifeq ($(BR2_USE_MMU),)
DHCPCD_CONFIG_OPTS += --disable-fork
DHCPCD_CONFIG_OPTS += --disable-fork --disable-privsep
endif
define DHCPCD_CONFIGURE_CMDS