From 27c4c3ec799dfe95bd80706a6bc9a39f2af6da6f Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Sat, 20 Jul 2013 22:17:55 +0200 Subject: Check return value of fstat() in _PyImport_GetDynLoadFunc() CID 486250 --- Python/dynload_shlib.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Python/dynload_shlib.c b/Python/dynload_shlib.c index 0ca65c7..e220b21 100644 --- a/Python/dynload_shlib.c +++ b/Python/dynload_shlib.c @@ -90,7 +90,9 @@ dl_funcptr _PyImport_GetDynLoadFunc(const char *shortname, if (fp != NULL) { int i; struct stat statb; - fstat(fileno(fp), &statb); + if (fstat(fileno(fp), &statb) == -1) { + return PyErr_SetFromErrno(PyExc_IOError); + } for (i = 0; i < nhandles; i++) { if (statb.st_dev == handles[i].dev && statb.st_ino == handles[i].ino) { -- cgit v0.12