Blame SOURCES/fix-missing-error-checking-when-reading-proc-net-dev.patch

ff8230
From f8b0e05c03add3d0bd7736c3e3f81e8eb28bc7c3 Mon Sep 17 00:00:00 2001
ff8230
From: David Sommerseth <davids@redhat.com>
ff8230
Date: Fri, 13 Sep 2013 18:54:05 +0200
ff8230
Subject: [PATCH] Fix missing error checking when reading /proc/net/dev
ff8230
ff8230
Signed-off-by: David Sommerseth <davids@redhat.com>
ff8230
---
ff8230
 python-ethtool/ethtool.c | 10 ++++++++--
ff8230
 1 file changed, 8 insertions(+), 2 deletions(-)
ff8230
ff8230
diff --git a/python-ethtool/ethtool.c b/python-ethtool/ethtool.c
ff8230
index e58d5f9..a471726 100644
ff8230
--- a/python-ethtool/ethtool.c
ff8230
+++ b/python-ethtool/ethtool.c
ff8230
@@ -80,7 +80,7 @@ static PyObject *get_active_devices(PyObject *self __unused, PyObject *args __un
ff8230
 static PyObject *get_devices(PyObject *self __unused, PyObject *args __unused)
ff8230
 {
ff8230
 	char buffer[256];
ff8230
-	char *ret;;
ff8230
+	char *ret;
ff8230
 	PyObject *list = PyList_New(0);
ff8230
 	FILE *fd = fopen(_PATH_PROCNET_DEV, "r");
ff8230
 
ff8230
@@ -89,7 +89,13 @@ static PyObject *get_devices(PyObject *self __unused, PyObject *args __unused)
ff8230
 		return NULL;
ff8230
 	}
ff8230
 	/* skip over first two lines */
ff8230
-	ret = fgets(buffer, 256, fd); ret = fgets(buffer, 256, fd);
ff8230
+	ret = fgets(buffer, 256, fd);
ff8230
+	ret = fgets(buffer, 256, fd);
ff8230
+	if( !ret ) {
ff8230
+		PyErr_SetString(PyExc_OSError, strerror(errno));
ff8230
+		return NULL;
ff8230
+	}
ff8230
+
ff8230
 	while (!feof(fd)) {
ff8230
 		PyObject *str;
ff8230
 		char *name = buffer;