summaryrefslogtreecommitdiff
path: root/lang/python25/patches/patch-at
blob: f42e0b7c3af5df961a626d9898414ad4f4684812 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
$NetBSD: patch-at,v 1.1.1.1.4.1 2008/09/02 14:13:33 rtr Exp $

The first change is part of the fix for CVE-2008-2315 taken from Gentto.

--- Modules/mmapmodule.c.orig	2006-08-22 14:57:07.000000000 +0100
+++ Modules/mmapmodule.c	2008-08-30 10:16:13.000000000 +0100
@@ -223,7 +223,7 @@
 		return(NULL);
 
 	/* silently 'adjust' out-of-range requests */
-	if ((self->pos + num_bytes) > self->size) {
+	if (num_bytes > self->size - self->pos) {
 		num_bytes -= (self->pos+num_bytes) - self->size;
 	}
 	result = Py_BuildValue("s#", self->data+self->pos, num_bytes);
@@ -449,6 +449,9 @@
 
 #ifdef MREMAP_MAYMOVE
 		newmap = mremap(self->data, self->size, new_size, MREMAP_MAYMOVE);
+#elif defined(__NetBSD__)
+                newmap = mremap(self->data, self->size, self->data, new_size, 0);
+
 #else
 		newmap = mremap(self->data, self->size, new_size, 0);
 #endif