|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
From 3f796750b192e62701e91a95f85389f876d1059b Mon Sep 17 00:00:00 2001
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
From: Tom Gundersen <teg@jklm.no>
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
Date: Wed, 17 Sep 2014 21:44:56 +0200
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
Subject: [PATCH] udev: event - explicitly don't read() from invalid fd
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
This fixes CID #1237641.
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
---
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
src/udev/udev-event.c | 3 +++
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
1 file changed, 3 insertions(+)
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
index 6b8b5a8efa..c8b142077e 100644
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
--- a/src/udev/udev-event.c
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
+++ b/src/udev/udev-event.c
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
@@ -494,6 +494,9 @@ static void spawn_read(struct udev_event *event,
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
for (i = 0; i < fdcount; i++) {
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
int *fd = (int *)ev[i].data.ptr;
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
+ if (*fd < 0)
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
+ continue;
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
+
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
if (ev[i].events & EPOLLIN) {
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
ssize_t count;
|
|
Zbigniew Jędrzejewski-Szmek |
62fe94 |
char buf[4096];
|