[Python-checkins] cpython: Issue #22117: Fix integer overflow check in socket_parse_timeout() on Windows
victor.stinner
python-checkins at python.org
Tue Mar 31 16:40:19 CEST 2015
https://hg.python.org/cpython/rev/dbc92a254173
changeset: 95330:dbc92a254173
user: Victor Stinner <victor.stinner at gmail.com>
date: Tue Mar 31 16:31:19 2015 +0200
summary:
Issue #22117: Fix integer overflow check in socket_parse_timeout() on Windows
files:
Modules/socketmodule.c | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -2197,6 +2197,9 @@
#ifdef MS_WINDOWS
struct timeval tv;
#endif
+#ifndef HAVE_POLL
+ _PyTime_t ms;
+#endif
int overflow = 0;
if (timeout_obj == Py_None) {
@@ -2214,11 +2217,11 @@
}
#ifdef MS_WINDOWS
- overflow = (_PyTime_AsTimeval(timeout, &tv, _PyTime_ROUND_CEILING) < 0);
+ overflow |= (_PyTime_AsTimeval(*timeout, &tv, _PyTime_ROUND_CEILING) < 0);
#endif
#ifndef HAVE_POLL
- timeout = _PyTime_AsMilliseconds(timeout, _PyTime_ROUND_CEILING);
- overflow = (timeout > INT_MAX);
+ ms = _PyTime_AsMilliseconds(*timeout, _PyTime_ROUND_CEILING);
+ overflow |= (ms > INT_MAX);
#endif
if (overflow) {
PyErr_SetString(PyExc_OverflowError,
--
Repository URL: https://hg.python.org/cpython
More information about the Python-checkins
mailing list