2a2f97a1da
to fix curses, mremap, and bluetooth modules. --HG-- extra : convert_revision : fd555dc3aeb2085fe1d7913bd5d4fdc24c41959e
25 lines
854 B
Diff
25 lines
854 B
Diff
$NetBSD: patch-at,v 1.2 2008/08/30 10:02:33 tron 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
|