From: Tom Gundersen Date: Wed, 17 Sep 2014 19:44:56 +0000 (+0200) Subject: udev: event - explicitly don't read() from invalid fd X-Git-Tag: v217~538 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=3f796750b192e62701e91a95f85389f876d1059b;p=elogind.git udev: event - explicitly don't read() from invalid fd This fixes CID #1237641. --- diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c index 6b8b5a8ef..c8b142077 100644 --- a/src/udev/udev-event.c +++ b/src/udev/udev-event.c @@ -494,6 +494,9 @@ static void spawn_read(struct udev_event *event, for (i = 0; i < fdcount; i++) { int *fd = (int *)ev[i].data.ptr; + if (*fd < 0) + continue; + if (ev[i].events & EPOLLIN) { ssize_t count; char buf[4096];