--- a/components/php-5_3/php-sapi/patches/300_php_20804135.patch Fri Oct 16 07:42:27 2015 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,83 +0,0 @@
-CVE-2015-0273
-Community BUG:
-https://bugs.php.net/bug.php?id=68942
-Community CODE:
-http://git.php.net/?p=php-src.git;a=commit;h=71335e6ebabc1b12c057d8017fd811892ecdfd24
-Below is the community patch.
-
-
-From 71335e6ebabc1b12c057d8017fd811892ecdfd24 Mon Sep 17 00:00:00 2001
-From: Stanislav Malyshev <[email protected]>
-Date: Tue, 17 Feb 2015 06:53:27 +0100
-Subject: [PATCH] Fix bug #68942 (Use after free vulnerability in unserialize()
- with DateTimeZone)
-
----
- ext/date/php_date.c | 21 ++++++++++-----------
- ext/date/tests/bug68942.phpt | 9 +++++++++
- ext/date/tests/bug68942_2.phpt | 9 +++++++++
- 3 files changed, 28 insertions(+), 11 deletions(-)
- create mode 100644 ext/date/tests/bug68942.phpt
- create mode 100644 ext/date/tests/bug68942_2.phpt
-
-diff --git a/ext/date/php_date.c b/ext/date/php_date.c
-index f8571b9..15ca08d 100644
---- a/ext/date/php_date.c
-+++ b/ext/date/php_date.c
-@@ -2807,12 +2807,9 @@ static int php_date_initialize_from_hash(php_date_obj **dateobj, HashTable *myht
- timelib_tzinfo *tzi;
- php_timezone_obj *tzobj;
-
-- if (zend_hash_find(myht, "date", 5, (void**) &z_date) == SUCCESS) {
-- convert_to_string(*z_date);
-- if (zend_hash_find(myht, "timezone_type", 14, (void**) &z_timezone_type) == SUCCESS) {
-- convert_to_long(*z_timezone_type);
-- if (zend_hash_find(myht, "timezone", 9, (void**) &z_timezone) == SUCCESS) {
-- convert_to_string(*z_timezone);
-+ if (zend_hash_find(myht, "date", 5, (void**) &z_date) == SUCCESS && Z_TYPE_PP(z_date) == IS_STRING) {
-+ if (zend_hash_find(myht, "timezone_type", 14, (void**) &z_timezone_type) == SUCCESS && Z_TYPE_PP(z_timezone_type) == IS_LONG) {
-+ if (zend_hash_find(myht, "timezone", 9, (void**) &z_timezone) == SUCCESS && Z_TYPE_PP(z_timezone) == IS_STRING) {
-
- switch (Z_LVAL_PP(z_timezone_type)) {
- case TIMELIB_ZONETYPE_OFFSET:
-@@ -2827,7 +2824,6 @@ static int php_date_initialize_from_hash(php_date_obj **dateobj, HashTable *myht
-
- case TIMELIB_ZONETYPE_ID: {
- int ret;
-- convert_to_string(*z_timezone);
-
- tzi = php_date_parse_tzfile(Z_STRVAL_PP(z_timezone), DATE_TIMEZONEDB TSRMLS_CC);
-
-diff --git a/ext/date/tests/bug68942.phpt b/ext/date/tests/bug68942.phpt
-new file mode 100644
-index 0000000..595cd9f
---- /dev/null
-+++ b/ext/date/tests/bug68942.phpt
-@@ -0,0 +1,9 @@
-+--TEST--
-+Bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone).
-+--FILE--
-+<?php
-+$data = unserialize('a:2:{i:0;O:12:"DateTimeZone":2:{s:13:"timezone_type";a:2:{i:0;i:1;i:1;i:2;}s:8:"timezone";s:1:"A";}i:1;R:4;}');
-+var_dump($data);
-+?>
-+--EXPECTF--
-+Fatal error: DateTimeZone::__wakeup(): Timezone initialization failed in %s/bug68942.php on line %d
-diff --git a/ext/date/tests/bug68942_2.phpt b/ext/date/tests/bug68942_2.phpt
-new file mode 100644
-index 0000000..5b02567
---- /dev/null
-+++ b/ext/date/tests/bug68942_2.phpt
-@@ -0,0 +1,9 @@
-+--TEST--
-+Bug #68942 (Use after free vulnerability in unserialize() with DateTime).
-+--FILE--
-+<?php
-+$data = unserialize('a:2:{i:0;O:8:"DateTime":3:{s:4:"date";s:26:"2000-01-01 00:00:00.000000";s:13:"timezone_type";a:2:{i:0;i:1;i:1;i:2;}s:8:"timezone";s:1:"A";}i:1;R:5;}');
-+var_dump($data);
-+?>
-+--EXPECTF--
-+Fatal error: Invalid serialization data for DateTime object in %s/bug68942_2.php on line %d
---
-2.1.4
-