aboutsummaryrefslogtreecommitdiffstats
path: root/main/python/recvfrom_into_buffer_overflow_2.7.patch
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2014-02-24 15:27:57 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2014-02-24 15:33:14 +0000
commitbb4a7567de8e2f06441204087710b882f3b56c26 (patch)
treebea3344cf8ed53b49ddcb21fb09b028e1d8ba5b9 /main/python/recvfrom_into_buffer_overflow_2.7.patch
parent89b40d15ab00cb65885e7f5e1f7336ea20ab80de (diff)
downloadaports-bb4a7567de8e2f06441204087710b882f3b56c26.tar.bz2
aports-bb4a7567de8e2f06441204087710b882f3b56c26.tar.xz
main/python: security fix for CVE-2014-1912
fixes #2712
Diffstat (limited to 'main/python/recvfrom_into_buffer_overflow_2.7.patch')
-rw-r--r--main/python/recvfrom_into_buffer_overflow_2.7.patch17
1 files changed, 17 insertions, 0 deletions
diff --git a/main/python/recvfrom_into_buffer_overflow_2.7.patch b/main/python/recvfrom_into_buffer_overflow_2.7.patch
new file mode 100644
index 0000000000..37e786bd3a
--- /dev/null
+++ b/main/python/recvfrom_into_buffer_overflow_2.7.patch
@@ -0,0 +1,17 @@
+diff -r 40fb60df4755 Modules/socketmodule.c
+--- a/Modules/socketmodule.c Sun Jan 12 12:11:47 2014 +0200
++++ b/Modules/socketmodule.c Mon Jan 13 16:36:35 2014 -0800
+@@ -2744,6 +2744,13 @@
+ recvlen = buflen;
+ }
+
++ /* Check if the buffer is large enough */
++ if (buflen < recvlen) {
++ PyErr_SetString(PyExc_ValueError,
++ "buffer too small for requested bytes");
++ goto error;
++ }
++
+ readlen = sock_recvfrom_guts(s, buf.buf, recvlen, flags, &addr);
+ if (readlen < 0) {
+ /* Return an error */