From: Roy Marples Date: Sat, 20 Feb 2021 16:25:05 +0000 (+0000) Subject: control: Cannot write with hangup X-Git-Tag: v10.0.0~98 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a75ffaa08d3e540df8648c253028337342dabe09;p=thirdparty%2Fdhcpcd.git control: Cannot write with hangup --- diff --git a/src/control.c b/src/control.c index 6eb42d13..13602914 100644 --- a/src/control.c +++ b/src/control.c @@ -193,11 +193,10 @@ control_handle_data(void *arg, unsigned short events) { struct fd_list *fd = arg; - if (events != ELE_READ && events != ELE_WRITE && - events != (ELE_READ | ELE_WRITE)) + if (!(events & (ELE_READ | ELE_WRITE))) logerrx("%s: unexpected event 0x%04x", __func__, events); - if (events & ELE_WRITE) + if (events & ELE_WRITE && !(events & ELE_HANGUP)) control_handle_write(fd); if (events & ELE_READ) control_handle_read(fd);