components/php-5_2/php-sapi/patches/60_php_18857741.patch
author Craig Mohrman <craig.mohrman@oracle.com>
Tue, 03 Feb 2015 15:20:15 -0800
changeset 3727 425608dcd0e3
permissions -rw-r--r--
19838509 upgrade php to version 5.3.29 18857741 problem in UTILITY/PHP 18890894 problem in UTILITY/PHP 18890895 problem in UTILITY/PHP 19003253 problem in UTILITY/PHP 19167518 problem in UTILITY/PHP 19519142 problem in UTILITY/PHP 19556437 problem in UTILITY/PHP 19707971 problem in UTILITY/PHP 19796954 problem in UTILITY/PHP
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3727
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     1
Fix for CVE-2014-2497
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     2
Patch:
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     3
http://git.php.net/?p=php-src.git;a=patch;h=cf4753691dc55999373d1c576f62ecb298723420
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     4
Code:
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     5
http://git.php.net/?p=php-src.git;a=commit;h=cf4753691dc55999373d1c576f62ecb298723420
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     6
Verified by hand that it patches the correct code
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     7
but needed one slight tweak needing return instead of goto.
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     8
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     9
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    10
diff --git a/ext/gd/libgd/gdxpm.c b/ext/gd/libgd/gdxpm.c
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    11
index 73f86e5..b69414e 100644
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    12
--- a/ext/gd/libgd/gdxpm.c
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    13
+++ b/ext/gd/libgd/gdxpm.c
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    14
@@ -31,12 +31,17 @@ gdImagePtr gdImageCreateFromXpm (char *filename)
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    15
 	if (ret != XpmSuccess) {
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    16
 		return 0;
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    17
 	}
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    18
+	number = image.ncolors;
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    19
+	for(i = 0; i < number; i++) {
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    20
+		if (!image.colorTable[i].c_color) {
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    21
+			return 0;
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    22
+		}
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    23
+	}
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    24
 
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    25
 	if (!(im = gdImageCreate(image.width, image.height))) {
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    26
 		return 0;
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    27
 	}
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    28
 
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    29
-	number = image.ncolors;
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    30
 	colors = (int *) safe_emalloc(number, sizeof(int), 0);
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    31
 	for (i = 0; i < number; i++) {
425608dcd0e3 19838509 upgrade php to version 5.3.29
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    32
 		switch (strlen (image.colorTable[i].c_color)) {