From: Roy Marples Date: Wed, 17 May 2023 16:39:27 +0000 (+0100) Subject: dhcpcd: support HANGUP of stderr cb X-Git-Tag: v10.0.2~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4a1d2dcded48e0a1ce592443bba72fa94e3a1723;p=thirdparty%2Fdhcpcd.git dhcpcd: support HANGUP of stderr cb --- diff --git a/src/dhcpcd.c b/src/dhcpcd.c index d663c383..3fdc177d 100644 --- a/src/dhcpcd.c +++ b/src/dhcpcd.c @@ -1816,8 +1816,11 @@ dhcpcd_stderr_cb(void *arg, unsigned short events) char log[BUFSIZ]; ssize_t len; - if (events != ELE_READ) - logerrx("%s: unexpected event 0x%04x", __func__, events); + if (events & ELE_HANGUP) + eloop_exit(ctx->eloop, EXIT_SUCCESS); + + if (!(events & ELE_READ)) + return; len = read(ctx->stderr_fd, log, sizeof(log)); if (len == -1) {