diff options
Diffstat (limited to 'dev-lang/python/files/python-3.2-CVE-2014-4616.patch')
-rw-r--r-- | dev-lang/python/files/python-3.2-CVE-2014-4616.patch | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/dev-lang/python/files/python-3.2-CVE-2014-4616.patch b/dev-lang/python/files/python-3.2-CVE-2014-4616.patch deleted file mode 100644 index 5b0a397..0000000 --- a/dev-lang/python/files/python-3.2-CVE-2014-4616.patch +++ /dev/null @@ -1,39 +0,0 @@ -# HG changeset patch -# User Benjamin Peterson <benjamin@python.org> -# Date 1397441438 14400 -# Node ID 50c07ed1743da9cd4540d83de0c30bd17aeb41b0 -# Parent 218e28a935ab4494d05215c243e2129625a71893 -in scan_once, prevent the reading of arbitrary memory when passed a negative index - -Bug reported by Guido Vranken. - -Index: Python-3.2.5/Lib/json/tests/test_decode.py -=================================================================== ---- Python-3.2.5.orig/Lib/test/json_tests/test_decode.py 2014-06-26 18:40:10.825269130 +0200 -+++ Python-3.2.5/Lib/test/json_tests/test_decode.py 2014-06-26 18:40:21.962323035 +0200 -@@ -60,5 +60,9 @@ - msg = 'escape' - self.assertRaisesRegexp(ValueError, msg, self.loads, s) - -+ def test_negative_index(self): -+ d = self.json.JSONDecoder() -+ self.assertRaises(ValueError, d.raw_decode, 'a'*42, -50000) -+ - class TestPyDecode(TestDecode, PyTest): pass - class TestCDecode(TestDecode, CTest): pass -Index: Python-3.2.5/Modules/_json.c -=================================================================== ---- a/Modules/_json.c -+++ b/Modules/_json.c -@@ -930,7 +930,10 @@ scan_once_unicode(PyScannerObject *s, Py - PyObject *res; - Py_UNICODE *str = PyUnicode_AS_UNICODE(pystr); - Py_ssize_t length = PyUnicode_GET_SIZE(pystr); -- if (idx >= length) { -+ if (idx < 0) -+ /* Compatibility with Python version. */ -+ idx += length; -+ if (idx < 0 || idx >= length) { - PyErr_SetNone(PyExc_StopIteration); - return NULL; - } |