# HG changeset patch # User Craig Mohrman # Date 1374521807 25200 # Node ID f225f89a05389c8fb4b7bc38856a501ff57d4f8f # Parent 36785586177417eaee87b87ae56f896a80d472ef 16658678 problem in UTILITY/PHP 16004918 problem in UTILITY/PHP 16098069 /etc/apache2/2.2/conf.d/php/php.conf missing on upgrade to s11.1 17026033 problem in UTILITY/PHP 17157091 problem in UTILITY/PHP diff -r 367855861774 -r f225f89a0538 components/apache2/apache-22.p5m --- a/components/apache2/apache-22.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/apache2/apache-22.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -621,3 +621,10 @@ depend fmri=__TBD \ pkg.debug.depend.file=usr/apr-util/1.3/lib/apr-util-1/apr_ldap-1.so \ type=require + +depend type=conditional \ + predicate=web/php-52 \ + fmri=web/server/apache-22/module/apache-php52@5.2.17,$(BUILD_VERSION) +depend type=conditional \ + predicate=web/php-53 \ + fmri=web/server/apache-22/module/apache-php53@5.3.27,$(BUILD_VERSION) diff -r 367855861774 -r f225f89a0538 components/php-5_2/php-sapi/patches/14_php_16658678.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/php-5_2/php-sapi/patches/14_php_16658678.patch Mon Jul 22 12:36:47 2013 -0700 @@ -0,0 +1,201 @@ +From +http://git.php.net/?p=php-src.git;a=commitdiff;h=cc4c318b0c71e1a9c9cf803b5ee5d437344d64db +Check if soap.wsdl_cache_dir confirms to open_basedir + +--- php-5.2.17/ext/soap/soap.c_orig 2010-06-09 08:48:22.000000000 -0700 ++++ php-5.2.17/ext/soap/soap.c 2013-06-05 14:11:41.182400088 -0700 +@@ -416,10 +416,44 @@ + return SUCCESS; + } + ++static PHP_INI_MH(OnUpdateCacheDir) ++{ ++ /* Only do the safemode/open_basedir check at runtime */ ++ if (stage == PHP_INI_STAGE_RUNTIME || stage == PHP_INI_STAGE_HTACCESS) { ++ char *p; ++ ++ if (memchr(new_value, '\0', new_value_length) != NULL) { ++ return FAILURE; ++ } ++ ++ /* we do not use zend_memrchr() since path can contain ; itself */ ++ if ((p = strchr(new_value, ';'))) { ++ char *p2; ++ p++; ++ if ((p2 = strchr(p, ';'))) { ++ p = p2 + 1; ++ } ++ } else { ++ p = new_value; ++ } ++ ++ if (PG(safe_mode) && *p && (!php_checkuid(p, NULL, CHECKUID_CHECK_FILE_AND_DIR))) { ++ return FAILURE; ++ } ++ ++ if (PG(open_basedir) && *p && php_check_open_basedir(p TSRMLS_CC)) { ++ return FAILURE; ++ } ++ } ++ ++ OnUpdateString(entry, new_value, new_value_length, mh_arg1, mh_arg2, mh_arg3, stage TSRMLS_CC); ++ return SUCCESS; ++} ++ + PHP_INI_BEGIN() + STD_PHP_INI_ENTRY("soap.wsdl_cache_enabled", "1", PHP_INI_ALL, OnUpdateCacheEnabled, + cache_enabled, zend_soap_globals, soap_globals) +-STD_PHP_INI_ENTRY("soap.wsdl_cache_dir", "/tmp", PHP_INI_ALL, OnUpdateString, ++STD_PHP_INI_ENTRY("soap.wsdl_cache_dir", "/tmp", PHP_INI_ALL, OnUpdateCacheDir, + cache_dir, zend_soap_globals, soap_globals) + STD_PHP_INI_ENTRY("soap.wsdl_cache_ttl", "86400", PHP_INI_ALL, OnUpdateLong, + cache_ttl, zend_soap_globals, soap_globals) + + +From +http://git.php.net/?p=php-src.git;a=commitdiff;h=8e76d0404b7f664ee6719fd98f0483f0ac4669d6 +Fixed external entity loading +http://git.php.net/?p=php-src.git;a=commitdiff;h=fcd4b5335a6df4e0676ee32e2267ca71d70fe623 +Fix TSRM (after afc1debb) + +--- php-5.2.17/ext/libxml/libxml.c_orig 2010-01-03 01:23:27.000000000 -0800 ++++ php-5.2.17/ext/libxml/libxml.c 2013-06-05 14:18:21.153940829 -0700 +@@ -267,6 +267,7 @@ + libxml_globals->stream_context = NULL; + libxml_globals->error_buffer.c = NULL; + libxml_globals->error_list = NULL; ++ libxml_globals->entity_loader_disabled = 0; + } + + /* Channel libxml file io layer through the PHP streams subsystem. +@@ -356,16 +357,15 @@ + } + + static xmlParserInputBufferPtr +-php_libxml_input_buffer_noload(const char *URI, xmlCharEncoding enc) +-{ +- return NULL; +-} +- +-static xmlParserInputBufferPtr + php_libxml_input_buffer_create_filename(const char *URI, xmlCharEncoding enc) + { + xmlParserInputBufferPtr ret; + void *context = NULL; ++ TSRMLS_FETCH(); ++ ++ if (LIBXML(entity_loader_disabled)) { ++ return NULL; ++ } + + if (URI == NULL) + return(NULL); +@@ -839,28 +839,25 @@ + } + /* }}} */ + ++PHP_LIBXML_API zend_bool php_libxml_disable_entity_loader(zend_bool disable TSRMLS_DC) ++{ ++ zend_bool old = LIBXML(entity_loader_disabled); ++ ++ LIBXML(entity_loader_disabled) = disable; ++ return old; ++} ++ + /* {{{ proto bool libxml_disable_entity_loader([boolean disable]) + Disable/Enable ability to load external entities */ + static PHP_FUNCTION(libxml_disable_entity_loader) + { + zend_bool disable = 1; +- xmlParserInputBufferCreateFilenameFunc old; + + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|b", &disable) == FAILURE) { + return; + } + +- if (disable == 0) { +- old = xmlParserInputBufferCreateFilenameDefault(php_libxml_input_buffer_create_filename); +- } else { +- old = xmlParserInputBufferCreateFilenameDefault(php_libxml_input_buffer_noload); +- } +- +- if (old == php_libxml_input_buffer_noload) { +- RETURN_TRUE; +- } +- +- RETURN_FALSE; ++ RETURN_BOOL(php_libxml_disable_entity_loader(disable TSRMLS_CC)); + } + /* }}} */ + +--- php-5.2.17/ext/libxml/php_libxml.h_orig 2010-01-03 01:23:27.000000000 -0800 ++++ php-5.2.17/ext/libxml/php_libxml.h 2013-06-05 14:20:23.311490825 -0700 +@@ -41,6 +41,7 @@ + zval *stream_context; + smart_str error_buffer; + zend_llist *error_list; ++ zend_bool entity_loader_disabled; + ZEND_END_MODULE_GLOBALS(libxml) + + typedef struct _libxml_doc_props { +@@ -91,6 +92,7 @@ + PHP_LIBXML_API int php_libxml_xmlCheckUTF8(const unsigned char *s); + PHP_LIBXML_API zval *php_libxml_switch_context(zval *context TSRMLS_DC); + PHP_LIBXML_API void php_libxml_issue_error(int level, const char *msg TSRMLS_DC); ++PHP_LIBXML_API zend_bool php_libxml_disable_entity_loader(zend_bool disable TSRMLS_DC); + + /* Init/shutdown functions*/ + PHP_LIBXML_API void php_libxml_initialize(void); +--- php-5.2.17/ext/soap/php_xml.c_orig 2010-01-03 01:23:27.000000000 -0800 ++++ php-5.2.17/ext/soap/php_xml.c 2013-06-05 14:28:21.292038266 -0700 +@@ -20,6 +20,7 @@ + /* $Id: php_xml.c 293036 2010-01-03 09:23:27Z sebastian $ */ + + #include "php_soap.h" ++#include "ext/libxml/php_libxml.h" + #include "libxml/parser.h" + #include "libxml/parserInternals.h" + +@@ -91,13 +92,17 @@ + ctxt = xmlCreateFileParserCtxt(filename); + PG(allow_url_fopen) = old_allow_url_fopen; + if (ctxt) { ++ zend_bool old; ++ + ctxt->keepBlanks = 0; + ctxt->sax->ignorableWhitespace = soap_ignorableWhitespace; + ctxt->sax->comment = soap_Comment; + ctxt->sax->warning = NULL; + ctxt->sax->error = NULL; + /*ctxt->sax->fatalError = NULL;*/ ++ old = php_libxml_disable_entity_loader(1 TSRMLS_CC); + xmlParseDocument(ctxt); ++ php_libxml_disable_entity_loader(old TSRMLS_CC); + if (ctxt->wellFormed) { + ret = ctxt->myDoc; + if (ret->URL == NULL && ctxt->directory != NULL) { +@@ -128,11 +133,14 @@ + xmlParserCtxtPtr ctxt = NULL; + xmlDocPtr ret; + ++ TSRMLS_FETCH(); + /* + xmlInitParser(); + */ + ctxt = xmlCreateMemoryParserCtxt(buf, buf_size); + if (ctxt) { ++ zend_bool old; ++ + ctxt->sax->ignorableWhitespace = soap_ignorableWhitespace; + ctxt->sax->comment = soap_Comment; + ctxt->sax->warning = NULL; +@@ -141,7 +149,9 @@ + #if LIBXML_VERSION >= 20703 + ctxt->options |= XML_PARSE_HUGE; + #endif ++ old = php_libxml_disable_entity_loader(1 TSRMLS_CC); + xmlParseDocument(ctxt); ++ php_libxml_disable_entity_loader(old TSRMLS_CC); + if (ctxt->wellFormed) { + ret = ctxt->myDoc; + if (ret->URL == NULL && ctxt->directory != NULL) { diff -r 367855861774 -r f225f89a0538 components/php-5_2/php-sapi/patches/15_php_16004918.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/php-5_2/php-sapi/patches/15_php_16004918.patch Mon Jul 22 12:36:47 2013 -0700 @@ -0,0 +1,89 @@ +From +http://git.php.net/?p=php-src.git;a=commitdiff;h=fc74503792b1ee92e4b813690890f3ed38fa3ad5 +improve overflow checks + +--- php-5.2.17/main/streams/streams.c_orig 2010-01-06 04:54:53.000000000 -0800 ++++ php-5.2.17/main/streams/streams.c 2013-07-09 10:14:05.583023604 -0700 +@@ -2083,8 +2083,8 @@ + php_stream *stream; + php_stream_dirent sdp; + char **vector = NULL; +- int vector_size = 0; +- int nfiles = 0; ++ unsigned int vector_size = 0; ++ unsigned int nfiles = 0; + + if (!namelist) { + return FAILURE; +@@ -2100,9 +2100,14 @@ + if (vector_size == 0) { + vector_size = 10; + } else { ++ if(vector_size*2 < vector_size) { ++ /* overflow */ ++ efree(vector); ++ return FAILURE; ++ } + vector_size *= 2; + } +- vector = (char **) erealloc(vector, vector_size * sizeof(char *)); ++ vector = (char **) safe_erealloc(vector, vector_size, sizeof(char *), 0); + } + + vector[nfiles] = estrdup(sdp.d_name); + + +From +http://git.php.net/?p=php-src.git;a=commitdiff;h=055ecbc62878e86287d742c7246c21606cee8183 +Improve check for :memory: pseudo-filename in SQlite +php5.2 doesn't have sqlite3 so apply fix to sqlite. + +--- php-5.2.17/ext/pdo_sqlite/sqlite_driver.c_orig 2010-06-20 07:12:06.000000000 -0700 ++++ php-5.2.17/ext/pdo_sqlite/sqlite_driver.c 2013-06-10 10:28:40.178224391 -0700 +@@ -642,7 +642,7 @@ + + static char *make_filename_safe(const char *filename TSRMLS_DC) + { +- if (*filename && strncmp(filename, ":memory:", sizeof(":memory:")-1)) { ++ if (*filename && memcmp(filename, ":memory:", sizeof(":memory:"))) { + char *fullpath = expand_filepath(filename, NULL TSRMLS_CC); + + if (!fullpath) { +--- php-5.2.17/ext/sqlite/sqlite.c_orig 2010-04-28 05:10:10.000000000 -0700 ++++ php-5.2.17/ext/sqlite/sqlite.c 2013-06-10 11:08:25.397573242 -0700 +@@ -747,7 +747,7 @@ + return SQLITE_OK; + #ifdef SQLITE_ATTACH + case SQLITE_ATTACH: +- if (strncmp(arg3, ":memory:", sizeof(":memory:") - 1)) { ++ if (memcmp(arg3, ":memory:", sizeof(":memory:"))) { + TSRMLS_FETCH(); + if (PG(safe_mode) && (!php_checkuid(arg3, NULL, CHECKUID_CHECK_FILE_AND_DIR))) { + return SQLITE_DENY; +@@ -1230,7 +1230,7 @@ + ZVAL_NULL(errmsg); + } + +- if (strncmp(filename, ":memory:", sizeof(":memory:") - 1)) { ++ if (memcmp(filename, ":memory:", sizeof(":memory:")) != 0) { + /* resolve the fully-qualified path name to use as the hash key */ + if (!(fullpath = expand_filepath(filename, NULL TSRMLS_CC))) { + RETURN_FALSE; +@@ -1306,7 +1306,7 @@ + ZVAL_NULL(errmsg); + } + +- if (strncmp(filename, ":memory:", sizeof(":memory:") - 1)) { ++ if (memcmp(filename, ":memory:", sizeof(":memory:")) != 0) { + /* resolve the fully-qualified path name to use as the hash key */ + if (!(fullpath = expand_filepath(filename, NULL TSRMLS_CC))) { + php_std_error_handling(); +@@ -1358,7 +1358,7 @@ + ZVAL_NULL(errmsg); + } + +- if (strncmp(filename, ":memory:", sizeof(":memory:") - 1)) { ++ if (memcmp(filename, ":memory:", sizeof(":memory:")) != 0) { + /* resolve the fully-qualified path name to use as the hash key */ + if (!(fullpath = expand_filepath(filename, NULL TSRMLS_CC))) { + php_std_error_handling(); diff -r 367855861774 -r f225f89a0538 components/php-5_2/php-sapi/patches/16_php_openssl_tests.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/php-5_2/php-sapi/patches/16_php_openssl_tests.patch Mon Jul 22 12:36:47 2013 -0700 @@ -0,0 +1,14 @@ +This test now causing an infinite loop. +Produced fix by comparing to the php 5.3.26 version of the test. + +--- php-5.2.17/ext/openssl/tests/bug48182.phpt_orig 2009-09-22 03:15:10.000000000 -0700 ++++ php-5.2.17/ext/openssl/tests/bug48182.phpt 2013-06-20 14:16:39.947981967 -0700 +@@ -51,7 +51,7 @@ + $socket = stream_socket_client($host, $errno, $errstr, 10, $flags); + stream_set_blocking($socket, 0); + +- while ($data) { ++ while ($socket && $data) { + $wrote = fwrite($socket, $data, strlen($data)); + $data = substr($data, $wrote); + } diff -r 367855861774 -r f225f89a0538 components/php-5_2/php-sapi/patches/17_php_17026033.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/php-5_2/php-sapi/patches/17_php_17026033.patch Mon Jul 22 12:36:47 2013 -0700 @@ -0,0 +1,54 @@ +From +http://git.php.net/?p=php-src.git;a=commitdiff;h=4828f7343b3f31d914f4d4a5545865b8a19f7fb6 +Integer overflow in SndToJewish leads to php hang +and +http://git.php.net/?p=php-src.git;a=commitdiff;h=c50cef1dc54ffd1d0fb71d1afb8b2c3cb3c5b6ef +Fixed bug #64895 Integer overflow in SndToJewish + +CVE-2013-2110 - use correct formula to calculate string size +does NOT apply because no such function to patch. + +--- php-5.2.17/ext/calendar/jewish.c_orig 2003-03-22 17:44:58.000000000 -0800 ++++ php-5.2.17/ext/calendar/jewish.c 2013-07-01 15:33:18.280118195 -0700 +@@ -272,6 +272,7 @@ + #define HALAKIM_PER_METONIC_CYCLE (HALAKIM_PER_LUNAR_CYCLE * (12 * 19 + 7)) + + #define JEWISH_SDN_OFFSET 347997 ++#define JEWISH_SDN_MAX 324542846L /* 12/13/887605, greater value raises interger overflow */ + #define NEW_MOON_OF_CREATION 31524 + + #define SUNDAY 0 +@@ -519,7 +520,7 @@ + int tishri1After; + int yearLength; + +- if (sdn <= JEWISH_SDN_OFFSET) { ++ if (sdn <= JEWISH_SDN_OFFSET || sdn > JEWISH_SDN_MAX) { + *pYear = 0; + *pMonth = 0; + *pDay = 0; + + +--- php-5.2.17/ext/calendar/tests/jdtojewish64.phpt_orig 2013-07-01 15:41:34.918645609 -0700 ++++ php-5.2.17/ext/calendar/tests/jdtojewish64.phpt 2013-07-01 15:37:34.054921308 -0700 +@@ -0,0 +1,19 @@ ++--TEST-- ++Bug #64895: Integer overflow in SndToJewish ++--SKIPIF-- ++ ++--FILE-- ++ltags) { + int inx; +- for (inx = 0; inx < parser->level; inx++) ++ for (inx = 0; ((inx < parser->level) && (inx < XML_MAXLEVEL)); inx++) + efree(parser->ltags[ inx ]); + efree(parser->ltags); + } +@@ -800,45 +800,50 @@ + } + + if (parser->data) { +- zval *tag, *atr; +- int atcnt = 0; ++ if (parser->level <= XML_MAXLEVEL) { ++ zval *tag, *atr; ++ int atcnt = 0; + +- MAKE_STD_ZVAL(tag); +- MAKE_STD_ZVAL(atr); ++ MAKE_STD_ZVAL(tag); ++ MAKE_STD_ZVAL(atr); + +- array_init(tag); +- array_init(atr); ++ array_init(tag); ++ array_init(atr); + +- _xml_add_to_info(parser,((char *) tag_name) + parser->toffset); ++ _xml_add_to_info(parser,((char *) tag_name) + parser->toffset); + +- add_assoc_string(tag,"tag",((char *) tag_name) + parser->toffset,1); /* cast to avoid gcc-warning */ +- add_assoc_string(tag,"type","open",1); +- add_assoc_long(tag,"level",parser->level); ++ add_assoc_string(tag,"tag",((char *) tag_name) + parser->toffset,1); /* cast to avoid gcc-warning */ ++ add_assoc_string(tag,"type","open",1); ++ add_assoc_long(tag,"level",parser->level); + +- parser->ltags[parser->level-1] = estrdup(tag_name); +- parser->lastwasopen = 1; ++ parser->ltags[parser->level-1] = estrdup(tag_name); ++ parser->lastwasopen = 1; + +- attributes = (const XML_Char **) attrs; ++ attributes = (const XML_Char **) attrs; + +- while (attributes && *attributes) { +- att = _xml_decode_tag(parser, attributes[0]); +- val = xml_utf8_decode(attributes[1], strlen(attributes[1]), &val_len, parser->target_encoding); +- +- add_assoc_stringl(atr,att,val,val_len,0); ++ while (attributes && *attributes) { ++ att = _xml_decode_tag(parser, attributes[0]); ++ val = xml_utf8_decode(attributes[1], strlen(attributes[1]), &val_len, parser->target_encoding); + +- atcnt++; +- attributes += 2; ++ add_assoc_stringl(atr,att,val,val_len,0); + +- efree(att); +- } ++ atcnt++; ++ attributes += 2; + +- if (atcnt) { +- zend_hash_add(Z_ARRVAL_P(tag),"attributes",sizeof("attributes"),&atr,sizeof(zval*),NULL); +- } else { +- zval_ptr_dtor(&atr); +- } ++ efree(att); ++ } ++ ++ if (atcnt) { ++ zend_hash_add(Z_ARRVAL_P(tag),"attributes",sizeof("attributes"),&atr,sizeof(zval*),NULL); ++ } else { ++ zval_ptr_dtor(&atr); ++ } + +- zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),(void *) &parser->ctag); ++ zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),(void *) &parser->ctag); ++ } else if (parser->level == (XML_MAXLEVEL + 1)) { ++ TSRMLS_FETCH(); ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Maximum depth exceeded - Results truncated"); ++ } + } + + efree(tag_name); +@@ -890,7 +895,7 @@ + + efree(tag_name); + +- if (parser->ltags) { ++ if ((parser->ltags) && (parser->level <= XML_MAXLEVEL)) { + efree(parser->ltags[parser->level-1]); + } + +@@ -974,18 +979,23 @@ + } + } + +- MAKE_STD_ZVAL(tag); +- +- array_init(tag); +- +- _xml_add_to_info(parser,parser->ltags[parser->level-1] + parser->toffset); ++ if (parser->level <= XML_MAXLEVEL) { ++ MAKE_STD_ZVAL(tag); + +- add_assoc_string(tag,"tag",parser->ltags[parser->level-1] + parser->toffset,1); +- add_assoc_string(tag,"value",decoded_value,0); +- add_assoc_string(tag,"type","cdata",1); +- add_assoc_long(tag,"level",parser->level); ++ array_init(tag); + +- zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),NULL); ++ _xml_add_to_info(parser,parser->ltags[parser->level-1] + parser->toffset); ++ ++ add_assoc_string(tag,"tag",parser->ltags[parser->level-1] + parser->toffset,1); ++ add_assoc_string(tag,"value",decoded_value,0); ++ add_assoc_string(tag,"type","cdata",1); ++ add_assoc_long(tag,"level",parser->level); ++ ++ zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),NULL); ++ } else if (parser->level == (XML_MAXLEVEL + 1)) { ++ TSRMLS_FETCH(); ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Maximum depth exceeded - Results truncated"); ++ } + } + } else { + efree(decoded_value); diff -r 367855861774 -r f225f89a0538 components/php-5_3/apache-php53.p5m --- a/components/php-5_3/apache-php53.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/apache-php53.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -21,18 +21,18 @@ # Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. # -set name=pkg.fmri value=pkg:/web/server/apache-22/module/apache-php53@5.3.14,$(BUILD_VERSION) +set name=pkg.fmri value=pkg:/web/server/apache-22/module/apache-php53@5.3.27,$(BUILD_VERSION) set name=pkg.summary value="PHP Server for Apache Web Server" set name=info.classification value="org.opensolaris.category.2008:Web Services/Application and Web Servers" -set name=info.source-url value=http://us.php.net/get/php-5.3.14.tar.gz/from/this/mirror +set name=info.source-url value=http://us.php.net/get/php-5.3.27.tar.gz/from/this/mirror set name=info.upstream-url value=$(COMPONENT_PROJECT_URL) set name=org.opensolaris.arc-caseid value=PSARC/2012/067 set name=org.opensolaris.consolidation value=$(CONSOLIDATION) license apache-php53.license license='PHP, GPLv2, LGPLv2, Apache v2.0' \ - com.oracle.info.description="the PHP 5.3 module for the Apache web server" \ + com.oracle.info.description="the PHP module for the Apache web server" \ com.oracle.info.name=apache-php53 \ - com.oracle.info.version=5.3.14 + com.oracle.info.version=5.3.27 file path=etc/apache2/2.2/conf.d/php/php5.3.conf mode=0644 preserve=renamenew link path=etc/apache2/2.2/conf.d/php/php.conf target=php5.3.conf \ @@ -40,7 +40,7 @@ file path=usr/apache2/2.2/libexec/mod_php5.3.so # need generic dependency on PHP itself -depend fmri=web/php-53@5.3.14 type=require +depend fmri=web/php-53@5.3.27 type=require # if php5.2 apache is present drag forward because php.conf files # move around diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-53.p5m --- a/components/php-5_3/php-53.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-53.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -26,7 +26,7 @@ default mode 0644> default preserve renamenew> -set name=pkg.fmri value=pkg:/web/php-53@5.3.14,$(BUILD_VERSION) +set name=pkg.fmri value=pkg:/web/php-53@5.3.27,$(BUILD_VERSION) set name=pkg.description \ value="A general-purpose scripting language originally designed for web development to produce dynamic web pages." set name=pkg.summary value="PHP Server" @@ -34,14 +34,14 @@ value="org.opensolaris.category.2008:Development/PHP" set name=info.upstream-url value=$(COMPONENT_PROJECT_URL) set name=info.source-url \ - value=http://us.php.net/get/php-5.3.14.tar.bz2/from/this/mirror + value=http://us.php.net/get/php-5.3.27.tar.bz2/from/this/mirror set name=org.opensolaris.arc-caseid value=PSARC/2012/067 set name=org.opensolaris.consolidation value=$(CONSOLIDATION) license php-53.license license='PHP, GPLv2, LGPLv2, Apache v2.0' \ com.oracle.info.description="the PHP scripting language" \ com.oracle.info.name=php-53 \ - com.oracle.info.version=5.3.14 + com.oracle.info.version=5.3.27 dir path=var/php/5.3/sessions owner=webservd mode=0750 file path=etc/php/5.3/conf.d/bz2.ini diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-apc.p5m --- a/components/php-5_3/php-apc.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-apc.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -50,4 +50,4 @@ file path=usr/php/5.3/zts-modules/apc.so # need generic dependency on PHP itself -depend fmri=web/php-53@5.3.14 type=require +depend fmri=web/php-53@5.3.27 type=require diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-cgi/Makefile --- a/components/php-5_3/php-cgi/Makefile Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-cgi/Makefile Mon Jul 22 12:36:47 2013 -0700 @@ -18,16 +18,16 @@ # # CDDL HEADER END # -# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. # include ../../../make-rules/shared-macros.mk COMPONENT_NAME= php -COMPONENT_VERSION= 5.3.14 +COMPONENT_VERSION= 5.3.27 COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.bz2 COMPONENT_ARCHIVE_HASH= \ - sha256:c8075b6e83c5db0d26cc8426a7456856421089a76c963813b1fcac3ced041cb3 + sha256:e12db21c623b82a2244c4dd9b06bb75af20868c1b748a105a6829a5acc36b287 COMPONENT_ARCHIVE_URL= http://us.php.net/get/$(COMPONENT_ARCHIVE)/from/this/mirror PATCH_DIR = ../php-sapi/patches diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-doc.p5m --- a/components/php-5_3/php-doc.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-doc.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -21,7 +21,7 @@ # Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. # -set name=pkg.fmri value=pkg:/web/php-53/documentation@5.3.14,$(BUILD_VERSION) +set name=pkg.fmri value=pkg:/web/php-53/documentation@5.3.27,$(BUILD_VERSION) set name=pkg.summary value="PHP Server Documentation" set name=info.classification \ value="org.opensolaris.category.2008:Development/PHP" @@ -37,7 +37,7 @@ license php-doc.license license='PHP' \ com.oracle.info.description="the PHP documentation" \ com.oracle.info.name=php-doc \ - com.oracle.info.version=5.3.14 + com.oracle.info.version=5.3.27 link path=usr/php/doc target=5.3/doc mediator=php mediator-version=5.3 file path=usr/php/5.3/doc/php-chunked-xhtml/about.formats.html diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-idn.p5m --- a/components/php-5_3/php-idn.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-idn.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -45,4 +45,4 @@ file path=usr/php/5.3/zts-modules/idn.so # need generic dependency on PHP itself -depend fmri=web/php-53@5.3.14 type=require +depend fmri=web/php-53@5.3.27 type=require diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-memcache.p5m --- a/components/php-5_3/php-memcache.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-memcache.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -49,4 +49,4 @@ file path=usr/php/5.3/zts-modules/memcache.so # need generic dependency on PHP itself -depend fmri=web/php-53@5.3.14 type=require +depend fmri=web/php-53@5.3.27 type=require diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-mysql.p5m --- a/components/php-5_3/php-mysql.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-mysql.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -21,12 +21,12 @@ # Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. # -set name=pkg.fmri value=pkg:/web/php-53/extension/php-mysql@5.3.14,$(BUILD_VERSION) +set name=pkg.fmri value=pkg:/web/php-53/extension/php-mysql@5.3.27,$(BUILD_VERSION) set name=pkg.summary value="MySQL extension module for PHP" set name=info.classification \ value="org.opensolaris.category.2008:Development/PHP" set name=info.upstream-url value=$(COMPONENT_PROJECT_URL) -set name=info.source-url value=http://us.php.net/get/php-5.3.14.tar.gz/from/this/mirror +set name=info.source-url value=http://us.php.net/get/php-5.3.27.tar.gz/from/this/mirror set name=org.opensolaris.arc-caseid value=PSARC/2012/067 set name=org.opensolaris.consolidation value=$(CONSOLIDATION) @@ -37,7 +37,7 @@ license php-mysql.license license='PHP, LGPLv2' \ com.oracle.info.description="the MySQL extension module for PHP" \ com.oracle.info.name=php-mysql \ - com.oracle.info.version=5.3.14 + com.oracle.info.version=5.3.27 file path=etc/php/5.3/conf.d/mysql.ini mode=0644 preserve=renameold file path=etc/php/5.3/conf.d/mysqli.ini mode=0644 preserve=renameold @@ -53,4 +53,4 @@ file path=usr/php/5.3/zts-modules/pdo_mysql.so # need generic dependency on PHP itself -depend fmri=web/php-53@5.3.14 type=require +depend fmri=web/php-53@5.3.27 type=require diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-nsapi/Makefile --- a/components/php-5_3/php-nsapi/Makefile Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-nsapi/Makefile Mon Jul 22 12:36:47 2013 -0700 @@ -18,17 +18,17 @@ # # CDDL HEADER END # -# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. # include ../../../make-rules/shared-macros.mk COMPONENT_NAME= php -COMPONENT_VERSION= 5.3.14 +COMPONENT_VERSION= 5.3.27 COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.bz2 COMPONENT_ARCHIVE_HASH= \ - sha256:c8075b6e83c5db0d26cc8426a7456856421089a76c963813b1fcac3ced041cb3 + sha256:e12db21c623b82a2244c4dd9b06bb75af20868c1b748a105a6829a5acc36b287 COMPONENT_ARCHIVE_URL= http://us.php.net/get/$(COMPONENT_ARCHIVE)/from/this/mirror COMPONENT_PROJECT_URL= http://www.php.net/ diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-pear.p5m --- a/components/php-5_3/php-pear.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-pear.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -26,13 +26,13 @@ default group bin> default preserve renamenew> -set name=pkg.fmri value=pkg:/web/php-53/extension/php-pear@5.3.14,$(BUILD_VERSION) +set name=pkg.fmri value=pkg:/web/php-53/extension/php-pear@5.3.27,$(BUILD_VERSION) set name=pkg.description \ value="Framework and reusable PHP components from PEAR repository for PHP" set name=pkg.summary value="PHP Extension and Application Repository" set name=info.classification \ value="org.opensolaris.category.2008:Development/PHP" -set name=info.source-url value=http://us.php.net/get/php-5.3.14.tar.gz/from/this/mirror +set name=info.source-url value=http://us.php.net/get/php-5.3.27.tar.gz/from/this/mirror set name=info.upstream-url value=http://pear.php.net/ set name=org.opensolaris.arc-caseid value=PSARC/2012/067 set name=org.opensolaris.consolidation value=$(CONSOLIDATION) @@ -44,7 +44,7 @@ license php-pear.license license='PHP, LGPLv2.1' \ com.oracle.info.description="the PEAR extension module for PHP" \ com.oracle.info.name=php-pear \ - com.oracle.info.version=5.3.14 + com.oracle.info.version=5.3.27 dir path=var/php/5.3/include/php dir path=var/php/5.3/modules @@ -247,4 +247,4 @@ file path=var/php/5.3/pear/test/XML_Util/tests/testBug_5392.phpt # need generic dependency on PHP itself -depend fmri=web/php-53@5.3.14 type=require +depend fmri=web/php-53@5.3.27 type=require diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-sapi/Makefile --- a/components/php-5_3/php-sapi/Makefile Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-sapi/Makefile Mon Jul 22 12:36:47 2013 -0700 @@ -18,7 +18,7 @@ # # CDDL HEADER END # -# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. # include ../../../make-rules/shared-macros.mk @@ -29,11 +29,11 @@ # published from. COMPONENT_NAME= php -COMPONENT_VERSION= 5.3.14 +COMPONENT_VERSION= 5.3.27 COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.bz2 COMPONENT_ARCHIVE_HASH= \ - sha256:c8075b6e83c5db0d26cc8426a7456856421089a76c963813b1fcac3ced041cb3 + sha256:e12db21c623b82a2244c4dd9b06bb75af20868c1b748a105a6829a5acc36b287 COMPONENT_ARCHIVE_URL= http://us.php.net/get/$(COMPONENT_ARCHIVE)/from/this/mirror COMPONENT_PROJECT_URL= http://www.php.net/ diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-sapi/patches/091_php_pdo_stmt_race.patch --- a/components/php-5_3/php-sapi/patches/091_php_pdo_stmt_race.patch Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-sapi/patches/091_php_pdo_stmt_race.patch Mon Jul 22 12:36:47 2013 -0700 @@ -1,3 +1,14 @@ +6911348 back port pdo race bug for opensolaris +6909525 PDO race condition fix for multithreaded php +which states: +There is a race condition in pdo which was found when running olio inside Sun Web Server (nsapi). +http://bugs.php.net/bug.php?id=49937&thanks=1 + +Fix has been submitted but because of lack of reviewer it has not been committed into php tree. + +We need to carry this patch until it is merged. + + --- php-5.3.10/ext/pdo/pdo_stmt.c_orig Sun Jan 1 05:15:04 2012 +++ php-5.3.10/ext/pdo/pdo_stmt.c Wed Feb 8 11:25:26 2012 @@ -2322,6 +2322,51 @@ @@ -65,7 +76,7 @@ stmt->refcount = 1; ALLOC_HASHTABLE(stmt->properties); zend_hash_init(stmt->properties, 0, NULL, ZVAL_PTR_DTOR, 0); -- zend_hash_copy(stmt->properties, &ce->default_properties, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); +- zend_hash_copy(stmt->properties, &ce->default_properties, (copy_ctor_func_t) zval_property_ctor, (void *) &tmp, sizeof(zval *)); + init_stmt_properties(stmt TSRMLS_CC); retval.handle = zend_objects_store_put(stmt, (zend_objects_store_dtor_t)zend_objects_destroy_object, (zend_objects_free_object_storage_t)pdo_dbstmt_free_storage, (zend_objects_store_clone_t)dbstmt_clone_obj TSRMLS_CC); diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-sapi/patches/111_php_run-tests.php.patch --- a/components/php-5_3/php-sapi/patches/111_php_run-tests.php.patch Mon Jul 22 07:17:26 2013 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,8 +0,0 @@ ---- php-5.3.10/run-tests.php_orig Mon Dec 5 21:44:54 2011 -+++ php-5.3.10/run-tests.php Wed Feb 8 11:25:26 2012 -@@ -1,4 +1,4 @@ --#!/usr/bin/php -+#!/usr/php/5.3/bin/php - buffer->content, buff->buffer->use, 1); -+#endif - (void)xmlOutputBufferClose(buff); - return SUCCESS; - } -diff --git a/ext/dom/node.c b/ext/dom/node.c -index 5bcb234..727d1bc 100644 ---- a/ext/dom/node.c -+++ b/ext/dom/node.c -@@ -1895,9 +1895,17 @@ static void dom_canonicalization(INTERNAL_FUNCTION_PARAMETERS, int mode) /* {{{ - RETVAL_FALSE; - } else { - if (mode == 0) { -+#ifdef LIBXML2_NEW_BUFFER -+ ret = xmlOutputBufferGetSize(buf); -+#else - ret = buf->buffer->use; -+#endif - if (ret > 0) { -+#ifdef LIBXML2_NEW_BUFFER -+ RETVAL_STRINGL((char *) xmlOutputBufferGetContent(buf), ret, 1); -+#else - RETVAL_STRINGL((char *) buf->buffer->content, ret, 1); -+#endif - } else { - RETVAL_EMPTY_STRING(); - } -diff --git a/ext/simplexml/simplexml.c b/ext/simplexml/simplexml.c -index a379111..2368596 100644 ---- a/ext/simplexml/simplexml.c -+++ b/ext/simplexml/simplexml.c -@@ -1387,7 +1387,11 @@ static int sxe_objects_compare(zval *object1, zval *object2 TSRMLS_DC) /* {{{ */ - - xmlNodeDumpOutput(outbuf, (xmlDocPtr) sxe->document->ptr, node, 0, 0, ((xmlDocPtr) sxe->document->ptr)->encoding); - xmlOutputBufferFlush(outbuf); -+#ifdef LIBXML2_NEW_BUFFER -+ RETVAL_STRINGL((char *)xmlOutputBufferGetContent(outbuf), xmlOutputBufferGetSize(outbuf), 1); -+#else - RETVAL_STRINGL((char *)outbuf->buffer->content, outbuf->buffer->use, 1); -+#endif - xmlOutputBufferClose(outbuf); - } - } else { diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-suhosin.p5m --- a/components/php-5_3/php-suhosin.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-suhosin.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -45,4 +45,4 @@ file path=usr/php/5.3/zts-modules/suhosin.so # need generic dependency on PHP itself -depend fmri=web/php-53@5.3.14 type=require +depend fmri=web/php-53@5.3.27 type=require diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-tcpwrap.p5m --- a/components/php-5_3/php-tcpwrap.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-tcpwrap.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -45,4 +45,4 @@ file path=usr/php/5.3/zts-modules/tcpwrap.so # need generic dependency on PHP itself -depend fmri=web/php-53@5.3.14 type=require +depend fmri=web/php-53@5.3.27 type=require diff -r 367855861774 -r f225f89a0538 components/php-5_3/php-xdebug.p5m --- a/components/php-5_3/php-xdebug.p5m Mon Jul 22 07:17:26 2013 -0700 +++ b/components/php-5_3/php-xdebug.p5m Mon Jul 22 12:36:47 2013 -0700 @@ -47,4 +47,4 @@ file path=usr/php/5.3/zts-modules/xdebug.so # need generic dependency on PHP itself -depend fmri=web/php-53@5.3.14 type=require +depend fmri=web/php-53@5.3.27 type=require diff -r 367855861774 -r f225f89a0538 components/php-common/resolve.deps --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/php-common/resolve.deps Mon Jul 22 12:36:47 2013 -0700 @@ -0,0 +1,1 @@ +system/linker