summaryrefslogtreecommitdiff
path: root/lang/php5/patches
diff options
context:
space:
mode:
authortaca <taca>2007-08-01 01:40:07 +0000
committertaca <taca>2007-08-01 01:40:07 +0000
commit5ae8ea80bd9d5046facf152bbfe4760b0f5d31fe (patch)
tree9a647b4c042892e9b89770632f6e083237015ae5 /lang/php5/patches
parent0ced295fd2ff38de0f1186a640bfa48700b9ef8e (diff)
downloadpkgsrc-5ae8ea80bd9d5046facf152bbfe4760b0f5d31fe.tar.gz
- Add patches to fix CVE-2007-3806 referring CVS repository.
- Fix compile problem on NetBSD with mremap(2). Bump PKGREVISION.
Diffstat (limited to 'lang/php5/patches')
-rw-r--r--lang/php5/patches/patch-ad18
-rw-r--r--lang/php5/patches/patch-ae14
2 files changed, 32 insertions, 0 deletions
diff --git a/lang/php5/patches/patch-ad b/lang/php5/patches/patch-ad
new file mode 100644
index 00000000000..7306b696b20
--- /dev/null
+++ b/lang/php5/patches/patch-ad
@@ -0,0 +1,18 @@
+$NetBSD: patch-ad,v 1.1 2007/08/01 01:40:08 taca Exp $
+
+Adapt NetBSD's remap(2).
+
+--- Zend/zend_alloc.c.orig 2007-05-28 19:07:50.000000000 +0900
++++ Zend/zend_alloc.c
+@@ -148,7 +148,11 @@ static zend_mm_segment* zend_mm_mem_mmap
+ {
+ zend_mm_segment *ret;
+ #ifdef HAVE_MREMAP
++#if defined(__NetBSD__)
++ ret = (zend_mm_segment*)mremap(segment, segment->size, segment, size, MREMAP_MAYMOVE);
++#else
+ ret = (zend_mm_segment*)mremap(segment, segment->size, size, MREMAP_MAYMOVE);
++#endif
+ if (ret == MAP_FAILED) {
+ #endif
+ ret = storage->handlers->_alloc(storage, size);
diff --git a/lang/php5/patches/patch-ae b/lang/php5/patches/patch-ae
new file mode 100644
index 00000000000..80ef96cc0cf
--- /dev/null
+++ b/lang/php5/patches/patch-ae
@@ -0,0 +1,14 @@
+$NetBSD: patch-ae,v 1.1 2007/08/01 01:40:08 taca Exp $
+
+Fix for CVE-2007-3806.
+
+--- ext/standard/dir.c.orig 2007-02-25 02:16:23.000000000 +0900
++++ ext/standard/dir.c
+@@ -395,6 +395,7 @@ PHP_FUNCTION(glob)
+ }
+ #endif
+
++ memset(&globbuf, 0, sizeof(glob_t));
+ globbuf.gl_offs = 0;
+ if (0 != (ret = glob(pattern, flags & GLOB_FLAGMASK, NULL, &globbuf))) {
+ #ifdef GLOB_NOMATCH