1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-09 06:51:44 +00:00

Update PHP ports to 4.3.11 and 5.0.4 releases:

- fix security issues
- unbreak PEAR packages [1]

PR:		ports/78516 [1]
Submitted by:	Yen-Ming Lee <leeym@utopia.leeym.com> [1]
Tested by:	thierry
This commit is contained in:
Alex Dupre 2005-04-04 09:20:21 +00:00
parent 0a257c6bbd
commit 2cee0c25ff
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=132440
42 changed files with 143 additions and 538 deletions

View File

@ -167,7 +167,7 @@ PLIST_SUB+= PHP_EXT_DIR=${PHP_EXT_DIR}
.if defined(USE_PHPIZE) || defined(USE_PHPEXT)
BUILD_DEPENDS+= phpize:${PHP_PORT}
USE_LIBTOOL_VER= 13
GNU_CONFIGURE= YES
WANT_AUTOMAKE_VER= 15
WANT_AUTOCONF_VER= 253
CONFIGURE_ARGS+=--with-php-config=${LOCALBASE}/bin/php-config

View File

@ -12,8 +12,6 @@ CATEGORIES= archivers pear
MAINTAINER= antonio@php.net
COMMENT= PEAR tar file management class
BROKEN= Incomplete pkg-plist
USE_PHP= yes
WANT_PHP_PEAR= yes

View File

@ -5,7 +5,6 @@
# $FreeBSD$
#
PORTREVISION= 1
CATEGORIES= databases
MASTERDIR= ${.CURDIR}/../../lang/php4

View File

@ -1,15 +0,0 @@
--- php_mssql.c 2004/12/14 17:22:10 1.86.2.41
+++ php_mssql.c 2004/12/16 21:48:17 1.86.2.42
@@ -1206,10 +1206,8 @@ PHP_FUNCTION(mssql_query)
while ((num_fields = dbnumcols(mssql_ptr->link)) <= 0 && retvalue == SUCCEED) {
retvalue = dbresults(mssql_ptr->link);
}
- if (retvalue != SUCCEED) {
- RETURN_FALSE;
- }
- if ((num_fields = dbnumcols(mssql_ptr->link)) <= 0) {
+
+ if (num_fields <= 0) {
RETURN_TRUE;
}

View File

@ -5,7 +5,6 @@
# $FreeBSD$
#
PORTREVISION= 2
CATEGORIES= databases
MASTERDIR= ${.CURDIR}/../../lang/php5

View File

@ -1,15 +0,0 @@
--- php_mssql.c 2004/12/06 19:45:57 1.137.2.6
+++ php_mssql.c 2004/12/16 21:49:36 1.137.2.7
@@ -1196,10 +1196,8 @@ PHP_FUNCTION(mssql_query)
while ((num_fields = dbnumcols(mssql_ptr->link)) <= 0 && retvalue == SUCCEED) {
retvalue = dbresults(mssql_ptr->link);
}
- if (retvalue != SUCCEED) {
- RETURN_FALSE;
- }
- if ((num_fields = dbnumcols(mssql_ptr->link)) <= 0) {
+
+ if (num_fields <= 0) {
RETURN_TRUE;
}

View File

@ -12,8 +12,6 @@ CATEGORIES= devel www pear
MAINTAINER= ports@FreeBSD.org
COMMENT= PEAR command-line option parser
BROKEN= Incomplete pkg-plist
WANT_PHP_PEAR= yes
USE_PHP= yes

View File

@ -12,8 +12,6 @@ CATEGORIES= devel www pear
MAINTAINER= antonio@php.net
COMMENT= PHP implementation of the XML-RPC protocol
BROKEN= Incomplete pkg-plist
USE_PHP= yes
WANT_PHP_PEAR= yes

View File

@ -6,8 +6,8 @@
#
PORTNAME= php4
PORTVERSION= 4.3.10
PORTREVISION?= 2
PORTVERSION= 4.3.11
PORTREVISION?= 0
CATEGORIES?= lang devel www
MASTER_SITES= ${MASTER_SITE_PHP:S,$,:release,} \
http://downloads.php.net/ilia/:rc \
@ -113,8 +113,8 @@ CONFIGURE_ENV= ac_cv_pthreads_lib=${PTHREAD_LIBS} \
.if defined(WITH_OPENSSL)
.include "${PORTSDIR}/Mk/bsd.openssl.mk"
CONFIGURE_ARGS+=--with-openssl=${OPENSSLBASE} \
--with-openssl-dir=${OPENSSLBASE}
LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl
--with-openssl-dir=${OPENSSLBASE}
LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl
.endif
.if defined(WITH_APACHE)

View File

@ -139,6 +139,12 @@ USE_ICONV= yes
LIB_DEPENDS+= c-client4.8:${PORTSDIR}/mail/cclient
CONFIGURE_ARGS+=--with-imap=${LOCALBASE}
.if !defined(WITHOUT_SSL)
CONFIGURE_ARGS+=--with-imap-ssl=${OPENSSLBASE}
LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl
USE_OPENSSL= yes
.endif
.endif
.if ${PHP_MODNAME} == "interbase"
@ -429,19 +435,6 @@ CONFIGURE_ARGS+=--enable-gd-jis-conv
. endif
.endif
.if ${PHP_MODNAME} == "imap"
. if !exists(${LOCALBASE}/lib/libc-client4.so)
. if !defined(WITHOUT_SSL)
CONFIGURE_ARGS+=--with-imap-ssl=${LOCALBASE}
. endif
. else
WITH_IMAP_SSL!= /usr/bin/ldd ${LOCALBASE}/lib/libc-client4.so | ${GREP} libssl || ${TRUE}
. if !empty(WITH_IMAP_SSL)
CONFIGURE_ARGS+=--with-imap-ssl=${LOCALBASE}
. endif
. endif
.endif
.if ${PHP_MODNAME} == "mbstring"
. if defined(WITHOUT_REGEX)
CONFIGURE_ARGS+=--disable-mbregex

View File

@ -1,2 +1,2 @@
MD5 (php-4.3.10.tar.bz2) = 7e56824dae9679c59a8234eb848aa542
SIZE (php-4.3.10.tar.bz2) = 4026148
MD5 (php-4.3.11.tar.bz2) = fbc67d240812136a9842bc1f2a217b7a
SIZE (php-4.3.11.tar.bz2) = 4012575

View File

@ -1,13 +0,0 @@
--- Zend/zend_execute.c.orig Tue Dec 28 15:03:55 2004
+++ Zend/zend_execute.c Tue Dec 28 15:03:57 2004
@@ -1577,6 +1577,10 @@
EX(Ts)[EX(opline)->op1.u.var].EA.data.overloaded_element.elements_list = (zend_llist *) emalloc(sizeof(zend_llist));
zend_llist_init(EX(Ts)[EX(opline)->op1.u.var].EA.data.overloaded_element.elements_list, sizeof(zend_overloaded_element), NULL, 0);
EX(object).ptr->refcount++;
+ /* is-ref needed so that assign to this in call won't separate it */
+ if(EX(object).ptr->refcount > 1) {
+ EX(object).ptr->is_ref = 1;
+ }
}
zend_llist_add_element(EX(Ts)[EX(opline)->op1.u.var].EA.data.overloaded_element.elements_list, &overloaded_element);
EX(fbc) = (zend_function *) emalloc(sizeof(zend_function));

View File

@ -1,58 +0,0 @@
--- Zend/zend_strtod.c.orig 2004/12/14 08:35:26
+++ Zend/zend_strtod.c 2004/12/21 01:08:09
@@ -91,22 +91,21 @@
#include <zend_strtod.h>
-#if defined(LIBC_SCCS) && !defined(lint)
-static char *rcsid = "$OpenBSD: strtod.c,v 1.19 2004/02/03 16:52:11 drahn Exp $";
-#endif /* LIBC_SCCS and not lint */
-
-#if defined(__m68k__) || defined(__sparc__) || defined(__i386__) || \
- defined(__mips__) || defined(__ns32k__) || defined(__alpha__) || \
- defined(__powerpc__) || defined(__ppc__) || defined(__m88k__) || \
- defined(__hppa__) || defined(__x86_64__) || (defined(__arm__) && \
- defined(__VFP_FP__))
+#if defined(HAVE_INTTYPES_H)
+#include <inttypes.h>
+#elif defined(HAVE_STDINT_H)
+#include <stdint.h>
+#endif
+
+#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
-#if BYTE_ORDER == BIG_ENDIAN
+#endif
+
+#ifdef WORDS_BIGENDIAN
#define IEEE_BIG_ENDIAN
#else
#define IEEE_LITTLE_ENDIAN
#endif
-#endif
#if defined(__arm__) && !defined(__VFP_FP__)
/*
@@ -123,20 +122,16 @@ static char *rcsid = "$OpenBSD: strtod.c
#if defined(_MSC_VER)
#define int32_t __int32
-#define u_int32_t unsigned __int32
+#define uint32_t unsigned __int32
#define IEEE_LITTLE_ENDIAN
#endif
-#if defined(__sparc__) || defined(__ppc__)
-#define u_int32_t uint32_t
-#endif
-
#ifdef HAVE_SYS_BITYPES_H
#include <sys/bitypes.h>
#endif
#define Long int32_t
-#define ULong u_int32_t
+#define ULong uint32_t
#ifdef __cplusplus
#include "malloc.h"

View File

@ -0,0 +1,14 @@
--- acinclude.m4.orig Mon Apr 4 10:30:15 2005
+++ acinclude.m4 Mon Apr 4 10:33:00 2005
@@ -1685,9 +1685,9 @@
unset OPENSSL_LIBDIR
dnl Fallbacks for different configure options
- if test "$PHP_OPENSSL" != "no"; then
+ if test -n "$PHP_OPENSSL" && test "$PHP_OPENSSL" != "no"; then
PHP_OPENSSL_DIR=$PHP_OPENSSL
- elif test "$PHP_IMAP_SSL" != "no"; then
+ elif test -n "$PHP_IMAP_SSL" && test "$PHP_IMAP_SSL" != "no"; then
PHP_OPENSSL_DIR=$PHP_IMAP_SSL
fi

View File

@ -1,20 +0,0 @@
--- ext/standard/php_var.h.orig 2004/09/05 16:29:04
+++ ext/standard/php_var.h 2005/01/15 18:18:08
@@ -41,6 +41,7 @@ PHPAPI void php_debug_zval_dump(zval **s
struct php_unserialize_data {
void *first;
+ void *first_dtor;
};
typedef struct php_unserialize_data php_unserialize_data_t;
@@ -54,7 +55,8 @@ PHPAPI int php_var_unserialize(zval **rv
zend_hash_destroy(&(var_hash))
#define PHP_VAR_UNSERIALIZE_INIT(var_hash) \
- (var_hash).first = 0
+ (var_hash).first = 0; \
+ (var_hash).first_dtor = 0
#define PHP_VAR_UNSERIALIZE_DESTROY(var_hash) \
var_destroy(&(var_hash))

View File

@ -1,87 +0,0 @@
--- ext/standard/var_unserializer.c.orig 2004/12/03 16:02:48
+++ ext/standard/var_unserializer.c 2005/01/18 10:57:05
@@ -56,6 +56,30 @@ static inline void var_push(php_unserial
var_hash->data[var_hash->used_slots++] = *rval;
}
+static inline void var_push_dtor(php_unserialize_data_t *var_hashx, zval **rval)
+{
+ var_entries *var_hash = var_hashx->first_dtor, *prev = NULL;
+
+ while (var_hash && var_hash->used_slots == VAR_ENTRIES_MAX) {
+ prev = var_hash;
+ var_hash = var_hash->next;
+ }
+
+ if (!var_hash) {
+ var_hash = emalloc(sizeof(var_entries));
+ var_hash->used_slots = 0;
+ var_hash->next = 0;
+
+ if (!var_hashx->first_dtor)
+ var_hashx->first_dtor = var_hash;
+ else
+ prev->next = var_hash;
+ }
+
+ (*rval)->refcount++;
+ var_hash->data[var_hash->used_slots++] = *rval;
+}
+
PHPAPI void var_replace(php_unserialize_data_t *var_hashx, zval *ozval, zval **nzval)
{
int i;
@@ -93,6 +117,7 @@ static int var_access(php_unserialize_da
PHPAPI void var_destroy(php_unserialize_data_t *var_hashx)
{
void *next;
+ int i;
var_entries *var_hash = var_hashx->first;
while (var_hash) {
@@ -100,6 +125,17 @@ PHPAPI void var_destroy(php_unserialize_
efree(var_hash);
var_hash = next;
}
+
+ var_hash = var_hashx->first_dtor;
+
+ while (var_hash) {
+ for (i = 0; i < var_hash->used_slots; i++) {
+ zval_ptr_dtor(&var_hash->data[i]);
+ }
+ next = var_hash->next;
+ efree(var_hash);
+ var_hash = next;
+ }
}
/* }}} */
@@ -177,7 +213,7 @@ static inline size_t parse_uiv(const uns
static inline int process_nested_data(UNSERIALIZE_PARAMETER, HashTable *ht, int elements)
{
while (elements-- > 0) {
- zval *key, *data, *old_data;
+ zval *key, *data, **old_data;
ALLOC_INIT_ZVAL(key);
@@ -205,14 +241,14 @@ static inline int process_nested_data(UN
switch (Z_TYPE_P(key)) {
case IS_LONG:
- if (zend_hash_index_find(ht, Z_LVAL_P(key), (void **)&old_data)) {
- var_replace(var_hash, old_data, rval);
+ if (zend_hash_index_find(ht, Z_LVAL_P(key), (void **)&old_data)==SUCCESS) {
+ var_push_dtor(var_hash, old_data);
}
zend_hash_index_update(ht, Z_LVAL_P(key), &data, sizeof(data), NULL);
break;
case IS_STRING:
- if (zend_hash_find(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, (void **)&old_data)) {
- var_replace(var_hash, old_data, rval);
+ if (zend_hash_find(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, (void **)&old_data)==SUCCESS) {
+ var_push_dtor(var_hash, old_data);
}
zend_hash_update(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, &data, sizeof(data), NULL);
break;

View File

@ -4,7 +4,7 @@
# -*- makefile -*-
peardir=$(PEAR_INSTALLDIR)
+XML_RPC_ver=1.1.0
+XML_RPC_ver=1.2.2
# Skip all php.ini files altogether
PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dsafe_mode=0

View File

@ -1,16 +1,15 @@
--- scripts/phpize.in.orig Fri Nov 14 03:21:15 2003
+++ scripts/phpize.in Wed Jul 7 01:34:05 2004
@@ -56,5 +56,5 @@
--- scripts/phpize.in.orig Fri Apr 1 11:37:05 2005
+++ scripts/phpize.in Fri Apr 1 11:37:25 2005
@@ -102,9 +102,9 @@
-aclocal || exit 1
-autoconf || exit 1
-autoheader || exit 1
+aclocal15 || exit 1
+autoconf253 || exit 1
+autoheader253 || exit 1
test -x $builddir/build/shtool || chmod +x $builddir/build/shtool
@@ -66,3 +66,3 @@
fi
-libtoolize=`$builddir/build/shtool path glibtoolize libtoolize`
+libtoolize=`$builddir/build/shtool path libtoolize13`
$libtoolize -f -c || exit 1
phpize_autotools()
{
- aclocal || exit 1
- autoconf || exit 1
- autoheader || exit 1
+ aclocal15 || exit 1
+ autoconf253 || exit 1
+ autoheader253 || exit 1
}
# Main script

View File

@ -160,6 +160,10 @@ include/php/regex/regex_extra.h
include/php/regex/utils.h
lib/php/build/Makefile.global
lib/php/build/acinclude.m4
lib/php/build/config.guess
lib/php/build/config.sub
lib/php/build/libtool.m4
lib/php/build/ltmain.sh
lib/php/build/mkdep.awk
lib/php/build/phpize.m4
lib/php/build/scan_makefile_in.awk

View File

@ -1,4 +1,6 @@
bin/pear
@unexec rm %D/lib/php/pear/.filemap 2> /dev/null || true
@unexec rm %D/lib/php/pear/.lock 2> /dev/null || true
share/pear/bootstrap/Archive/Tar.php
share/pear/bootstrap/PEAR.php
share/pear/bootstrap/System.php
@ -21,13 +23,18 @@ share/pear/bootstrap/PEAR/Config.php
share/pear/bootstrap/PEAR/Dependency.php
share/pear/bootstrap/PEAR/Downloader.php
share/pear/bootstrap/PEAR/ErrorStack.php
share/pear/bootstrap/PEAR/Exception.php
share/pear/bootstrap/PEAR/Frontend/CLI.php
share/pear/bootstrap/PEAR/Installer.php
share/pear/bootstrap/PEAR/Packager.php
share/pear/bootstrap/PEAR/Registry.php
share/pear/bootstrap/PEAR/Remote.php
share/pear/bootstrap/PEAR/RunTest.php
share/pear/bootstrap/XML/RPC.php
share/pear/bootstrap/XML/RPC/Server.php
@unexec rmdir %D/lib/php/pear/.registry 2> /dev/null || true
@unexec rmdir %D/lib/php/pear 2> /dev/null || true
@unexec rmdir %D/lib/php 2> /dev/null || true
@dirrm share/pear/bootstrap/Archive
@dirrm share/pear/bootstrap/Console
@dirrm share/pear/bootstrap/OS

View File

@ -6,8 +6,8 @@
#
PORTNAME= php5
PORTVERSION= 5.0.3
PORTREVISION?= 2
PORTVERSION= 5.0.4
PORTREVISION?= 0
CATEGORIES?= lang devel www
MASTER_SITES= ${MASTER_SITE_PHP:S,$,:release,} \
http://downloads.php.net/ilia/:rc \
@ -111,10 +111,6 @@ SAPI_FILE= bin/php
.include <bsd.port.pre.mk>
.if ${ARCH} == "ia64"
BROKEN= "Does not compile on ia64"
.endif
CONFIGURE_ENV= ac_cv_pthreads_lib=${PTHREAD_LIBS} \
ac_cv_pthreads_cflags=${PTHREAD_CFLAGS}

View File

@ -133,6 +133,12 @@ USE_ICONV= yes
LIB_DEPENDS+= c-client4.8:${PORTSDIR}/mail/cclient
CONFIGURE_ARGS+=--with-imap=${LOCALBASE}
.if !defined(WITHOUT_SSL)
CONFIGURE_ARGS+=--with-imap-ssl=${OPENSSLBASE}
LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl
USE_OPENSSL= yes
.endif
.endif
.if ${PHP_MODNAME} == "interbase"
@ -441,19 +447,6 @@ CONFIGURE_ARGS+=--enable-gd-jis-conv
. endif
.endif
.if ${PHP_MODNAME} == "imap"
. if !exists(${LOCALBASE}/lib/libc-client4.so)
. if !defined(WITHOUT_SSL)
CONFIGURE_ARGS+=--with-imap-ssl=${LOCALBASE}
. endif
. else
WITH_IMAP_SSL!= /usr/bin/ldd ${LOCALBASE}/lib/libc-client4.so | ${GREP} libssl || ${TRUE}
. if !empty(WITH_IMAP_SSL)
CONFIGURE_ARGS+=--with-imap-ssl=${LOCALBASE}
. endif
. endif
.endif
.if ${PHP_MODNAME} == "mbstring"
. if defined(WITHOUT_REGEX)
CONFIGURE_ARGS+=--disable-mbregex

View File

@ -1,2 +1,2 @@
MD5 (php-5.0.3.tar.bz2) = fd26455febdddee0977ce226b9108d9c
SIZE (php-5.0.3.tar.bz2) = 4607759
MD5 (php-5.0.4.tar.bz2) = 47727afde39329d5cebda4cb5e5ecee0
SIZE (php-5.0.4.tar.bz2) = 4728453

View File

@ -0,0 +1,14 @@
--- acinclude.m4.orig Tue Jan 25 14:02:45 2005
+++ acinclude.m4 Mon Apr 4 11:09:25 2005
@@ -1681,9 +1681,9 @@
unset OPENSSL_LIBDIR
dnl Fallbacks for different configure options
- if test "$PHP_OPENSSL" != "no"; then
+ if test -n "$PHP_OPENSSL" && test "$PHP_OPENSSL" != "no"; then
PHP_OPENSSL_DIR=$PHP_OPENSSL
- elif test "$PHP_IMAP_SSL" != "no"; then
+ elif test -n "$PHP_IMAP_SSL" && test "$PHP_IMAP_SSL" != "no"; then
PHP_OPENSSL_DIR=$PHP_IMAP_SSL
fi

View File

@ -1,20 +0,0 @@
--- ext/standard/php_var.h.orig 2004/09/05 16:29:04
+++ ext/standard/php_var.h 2005/01/15 18:18:08
@@ -41,6 +41,7 @@ PHPAPI void php_debug_zval_dump(zval **s
struct php_unserialize_data {
void *first;
+ void *first_dtor;
};
typedef struct php_unserialize_data php_unserialize_data_t;
@@ -54,7 +55,8 @@ PHPAPI int php_var_unserialize(zval **rv
zend_hash_destroy(&(var_hash))
#define PHP_VAR_UNSERIALIZE_INIT(var_hash) \
- (var_hash).first = 0
+ (var_hash).first = 0; \
+ (var_hash).first_dtor = 0
#define PHP_VAR_UNSERIALIZE_DESTROY(var_hash) \
var_destroy(&(var_hash))

View File

@ -1,87 +0,0 @@
--- ext/standard/var_unserializer.c.orig 2004/12/03 16:02:48
+++ ext/standard/var_unserializer.c 2005/01/18 10:57:05
@@ -56,6 +56,30 @@ static inline void var_push(php_unserial
var_hash->data[var_hash->used_slots++] = *rval;
}
+static inline void var_push_dtor(php_unserialize_data_t *var_hashx, zval **rval)
+{
+ var_entries *var_hash = var_hashx->first_dtor, *prev = NULL;
+
+ while (var_hash && var_hash->used_slots == VAR_ENTRIES_MAX) {
+ prev = var_hash;
+ var_hash = var_hash->next;
+ }
+
+ if (!var_hash) {
+ var_hash = emalloc(sizeof(var_entries));
+ var_hash->used_slots = 0;
+ var_hash->next = 0;
+
+ if (!var_hashx->first_dtor)
+ var_hashx->first_dtor = var_hash;
+ else
+ prev->next = var_hash;
+ }
+
+ (*rval)->refcount++;
+ var_hash->data[var_hash->used_slots++] = *rval;
+}
+
PHPAPI void var_replace(php_unserialize_data_t *var_hashx, zval *ozval, zval **nzval)
{
int i;
@@ -93,6 +117,7 @@ static int var_access(php_unserialize_da
PHPAPI void var_destroy(php_unserialize_data_t *var_hashx)
{
void *next;
+ int i;
var_entries *var_hash = var_hashx->first;
while (var_hash) {
@@ -100,6 +125,17 @@ PHPAPI void var_destroy(php_unserialize_
efree(var_hash);
var_hash = next;
}
+
+ var_hash = var_hashx->first_dtor;
+
+ while (var_hash) {
+ for (i = 0; i < var_hash->used_slots; i++) {
+ zval_ptr_dtor(&var_hash->data[i]);
+ }
+ next = var_hash->next;
+ efree(var_hash);
+ var_hash = next;
+ }
}
/* }}} */
@@ -177,7 +213,7 @@ static inline size_t parse_uiv(const uns
static inline int process_nested_data(UNSERIALIZE_PARAMETER, HashTable *ht, int elements)
{
while (elements-- > 0) {
- zval *key, *data, *old_data;
+ zval *key, *data, **old_data;
ALLOC_INIT_ZVAL(key);
@@ -205,14 +241,14 @@ static inline int process_nested_data(UN
switch (Z_TYPE_P(key)) {
case IS_LONG:
- if (zend_hash_index_find(ht, Z_LVAL_P(key), (void **)&old_data)) {
- var_replace(var_hash, old_data, rval);
+ if (zend_hash_index_find(ht, Z_LVAL_P(key), (void **)&old_data)==SUCCESS) {
+ var_push_dtor(var_hash, old_data);
}
zend_hash_index_update(ht, Z_LVAL_P(key), &data, sizeof(data), NULL);
break;
case IS_STRING:
- if (zend_hash_find(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, (void **)&old_data)) {
- var_replace(var_hash, old_data, rval);
+ if (zend_hash_find(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, (void **)&old_data)==SUCCESS) {
+ var_push_dtor(var_hash, old_data);
}
zend_hash_update(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, &data, sizeof(data), NULL);
break;

View File

@ -4,7 +4,7 @@
# -*- makefile -*-
peardir=$(PEAR_INSTALLDIR)
+XML_RPC_ver=1.1.0
+XML_RPC_ver=1.2.2
# Skip all php.ini files altogether
PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dsafe_mode=0

View File

@ -1,6 +1,6 @@
--- scripts/Makefile.frag.orig Tue Nov 23 14:06:16 2004
+++ scripts/Makefile.frag Tue Jan 25 08:19:07 2005
@@ -26,18 +26,12 @@
--- scripts/Makefile.frag.orig Mon Feb 28 06:28:25 2005
+++ scripts/Makefile.frag Fri Apr 1 15:42:21 2005
@@ -34,21 +34,12 @@
/ \
Zend/ \
TSRM/ \
@ -12,9 +12,12 @@
ext/libxml/ \
ext/standard/ \
- ext/session/ \
- ext/dom/xml_common.h \
- ext/xml/ \
- ext/xml/expat/ \
- ext/mbstring/ \
- ext/mbstring/libmbfl/ \
- ext/mbstring/libmbfl/mbfl/ \
- ext/sqlite/libsqlite/src/sqlite.h
+ ext/spl/

View File

@ -1,21 +1,15 @@
--- scripts/phpize.in.orig Mon Aug 23 14:25:48 2004
+++ scripts/phpize.in Mon Aug 23 14:26:41 2004
@@ -101,14 +101,14 @@
--- scripts/phpize.in.orig Fri Apr 1 15:42:47 2005
+++ scripts/phpize.in Fri Apr 1 15:43:04 2005
@@ -102,9 +102,9 @@
phpize_autotools()
{
- aclocal || exit 1
- autoconf || exit 1
- autoheader || exit 1
+ aclocal15 || exit 1
+ aclocal15 || exit 1
+ autoconf253 || exit 1
+ autoheader253 || exit 1
}
phpize_libtoolize()
{
- libtoolize=`$builddir/build/shtool path glibtoolize libtoolize`
+ libtoolize=`$builddir/build/shtool path libtoolize13`
$libtoolize -f -c || exit 1
}
# Main script

View File

@ -188,6 +188,10 @@ include/php/regex/regex_extra.h
include/php/regex/utils.h
lib/php/build/Makefile.global
lib/php/build/acinclude.m4
lib/php/build/config.guess
lib/php/build/config.sub
lib/php/build/libtool.m4
lib/php/build/ltmain.sh
lib/php/build/mkdep.awk
lib/php/build/phpize.m4
lib/php/build/scan_makefile_in.awk

View File

@ -1,4 +1,6 @@
bin/pear
@unexec rm %D/lib/php/pear/.filemap 2> /dev/null || true
@unexec rm %D/lib/php/pear/.lock 2> /dev/null || true
share/pear/bootstrap/Archive/Tar.php
share/pear/bootstrap/PEAR.php
share/pear/bootstrap/System.php
@ -30,6 +32,9 @@ share/pear/bootstrap/PEAR/Registry.php
share/pear/bootstrap/PEAR/Remote.php
share/pear/bootstrap/XML/RPC.php
share/pear/bootstrap/XML/RPC/Server.php
@unexec rmdir %D/lib/php/pear/.registry 2> /dev/null || true
@unexec rmdir %D/lib/php/pear 2> /dev/null || true
@unexec rmdir %D/lib/php 2> /dev/null || true
@dirrm share/pear/bootstrap/Archive
@dirrm share/pear/bootstrap/Console
@dirrm share/pear/bootstrap/OS

View File

@ -6,8 +6,8 @@
#
PORTNAME= php5
PORTVERSION= 5.0.3
PORTREVISION?= 2
PORTVERSION= 5.0.4
PORTREVISION?= 0
CATEGORIES?= lang devel www
MASTER_SITES= ${MASTER_SITE_PHP:S,$,:release,} \
http://downloads.php.net/ilia/:rc \
@ -111,10 +111,6 @@ SAPI_FILE= bin/php
.include <bsd.port.pre.mk>
.if ${ARCH} == "ia64"
BROKEN= "Does not compile on ia64"
.endif
CONFIGURE_ENV= ac_cv_pthreads_lib=${PTHREAD_LIBS} \
ac_cv_pthreads_cflags=${PTHREAD_CFLAGS}

View File

@ -133,6 +133,12 @@ USE_ICONV= yes
LIB_DEPENDS+= c-client4.8:${PORTSDIR}/mail/cclient
CONFIGURE_ARGS+=--with-imap=${LOCALBASE}
.if !defined(WITHOUT_SSL)
CONFIGURE_ARGS+=--with-imap-ssl=${OPENSSLBASE}
LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl
USE_OPENSSL= yes
.endif
.endif
.if ${PHP_MODNAME} == "interbase"
@ -441,19 +447,6 @@ CONFIGURE_ARGS+=--enable-gd-jis-conv
. endif
.endif
.if ${PHP_MODNAME} == "imap"
. if !exists(${LOCALBASE}/lib/libc-client4.so)
. if !defined(WITHOUT_SSL)
CONFIGURE_ARGS+=--with-imap-ssl=${LOCALBASE}
. endif
. else
WITH_IMAP_SSL!= /usr/bin/ldd ${LOCALBASE}/lib/libc-client4.so | ${GREP} libssl || ${TRUE}
. if !empty(WITH_IMAP_SSL)
CONFIGURE_ARGS+=--with-imap-ssl=${LOCALBASE}
. endif
. endif
.endif
.if ${PHP_MODNAME} == "mbstring"
. if defined(WITHOUT_REGEX)
CONFIGURE_ARGS+=--disable-mbregex

View File

@ -1,2 +1,2 @@
MD5 (php-5.0.3.tar.bz2) = fd26455febdddee0977ce226b9108d9c
SIZE (php-5.0.3.tar.bz2) = 4607759
MD5 (php-5.0.4.tar.bz2) = 47727afde39329d5cebda4cb5e5ecee0
SIZE (php-5.0.4.tar.bz2) = 4728453

View File

@ -0,0 +1,14 @@
--- acinclude.m4.orig Tue Jan 25 14:02:45 2005
+++ acinclude.m4 Mon Apr 4 11:09:25 2005
@@ -1681,9 +1681,9 @@
unset OPENSSL_LIBDIR
dnl Fallbacks for different configure options
- if test "$PHP_OPENSSL" != "no"; then
+ if test -n "$PHP_OPENSSL" && test "$PHP_OPENSSL" != "no"; then
PHP_OPENSSL_DIR=$PHP_OPENSSL
- elif test "$PHP_IMAP_SSL" != "no"; then
+ elif test -n "$PHP_IMAP_SSL" && test "$PHP_IMAP_SSL" != "no"; then
PHP_OPENSSL_DIR=$PHP_IMAP_SSL
fi

View File

@ -1,20 +0,0 @@
--- ext/standard/php_var.h.orig 2004/09/05 16:29:04
+++ ext/standard/php_var.h 2005/01/15 18:18:08
@@ -41,6 +41,7 @@ PHPAPI void php_debug_zval_dump(zval **s
struct php_unserialize_data {
void *first;
+ void *first_dtor;
};
typedef struct php_unserialize_data php_unserialize_data_t;
@@ -54,7 +55,8 @@ PHPAPI int php_var_unserialize(zval **rv
zend_hash_destroy(&(var_hash))
#define PHP_VAR_UNSERIALIZE_INIT(var_hash) \
- (var_hash).first = 0
+ (var_hash).first = 0; \
+ (var_hash).first_dtor = 0
#define PHP_VAR_UNSERIALIZE_DESTROY(var_hash) \
var_destroy(&(var_hash))

View File

@ -1,87 +0,0 @@
--- ext/standard/var_unserializer.c.orig 2004/12/03 16:02:48
+++ ext/standard/var_unserializer.c 2005/01/18 10:57:05
@@ -56,6 +56,30 @@ static inline void var_push(php_unserial
var_hash->data[var_hash->used_slots++] = *rval;
}
+static inline void var_push_dtor(php_unserialize_data_t *var_hashx, zval **rval)
+{
+ var_entries *var_hash = var_hashx->first_dtor, *prev = NULL;
+
+ while (var_hash && var_hash->used_slots == VAR_ENTRIES_MAX) {
+ prev = var_hash;
+ var_hash = var_hash->next;
+ }
+
+ if (!var_hash) {
+ var_hash = emalloc(sizeof(var_entries));
+ var_hash->used_slots = 0;
+ var_hash->next = 0;
+
+ if (!var_hashx->first_dtor)
+ var_hashx->first_dtor = var_hash;
+ else
+ prev->next = var_hash;
+ }
+
+ (*rval)->refcount++;
+ var_hash->data[var_hash->used_slots++] = *rval;
+}
+
PHPAPI void var_replace(php_unserialize_data_t *var_hashx, zval *ozval, zval **nzval)
{
int i;
@@ -93,6 +117,7 @@ static int var_access(php_unserialize_da
PHPAPI void var_destroy(php_unserialize_data_t *var_hashx)
{
void *next;
+ int i;
var_entries *var_hash = var_hashx->first;
while (var_hash) {
@@ -100,6 +125,17 @@ PHPAPI void var_destroy(php_unserialize_
efree(var_hash);
var_hash = next;
}
+
+ var_hash = var_hashx->first_dtor;
+
+ while (var_hash) {
+ for (i = 0; i < var_hash->used_slots; i++) {
+ zval_ptr_dtor(&var_hash->data[i]);
+ }
+ next = var_hash->next;
+ efree(var_hash);
+ var_hash = next;
+ }
}
/* }}} */
@@ -177,7 +213,7 @@ static inline size_t parse_uiv(const uns
static inline int process_nested_data(UNSERIALIZE_PARAMETER, HashTable *ht, int elements)
{
while (elements-- > 0) {
- zval *key, *data, *old_data;
+ zval *key, *data, **old_data;
ALLOC_INIT_ZVAL(key);
@@ -205,14 +241,14 @@ static inline int process_nested_data(UN
switch (Z_TYPE_P(key)) {
case IS_LONG:
- if (zend_hash_index_find(ht, Z_LVAL_P(key), (void **)&old_data)) {
- var_replace(var_hash, old_data, rval);
+ if (zend_hash_index_find(ht, Z_LVAL_P(key), (void **)&old_data)==SUCCESS) {
+ var_push_dtor(var_hash, old_data);
}
zend_hash_index_update(ht, Z_LVAL_P(key), &data, sizeof(data), NULL);
break;
case IS_STRING:
- if (zend_hash_find(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, (void **)&old_data)) {
- var_replace(var_hash, old_data, rval);
+ if (zend_hash_find(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, (void **)&old_data)==SUCCESS) {
+ var_push_dtor(var_hash, old_data);
}
zend_hash_update(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, &data, sizeof(data), NULL);
break;

View File

@ -4,7 +4,7 @@
# -*- makefile -*-
peardir=$(PEAR_INSTALLDIR)
+XML_RPC_ver=1.1.0
+XML_RPC_ver=1.2.2
# Skip all php.ini files altogether
PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dsafe_mode=0

View File

@ -1,6 +1,6 @@
--- scripts/Makefile.frag.orig Tue Nov 23 14:06:16 2004
+++ scripts/Makefile.frag Tue Jan 25 08:19:07 2005
@@ -26,18 +26,12 @@
--- scripts/Makefile.frag.orig Mon Feb 28 06:28:25 2005
+++ scripts/Makefile.frag Fri Apr 1 15:42:21 2005
@@ -34,21 +34,12 @@
/ \
Zend/ \
TSRM/ \
@ -12,9 +12,12 @@
ext/libxml/ \
ext/standard/ \
- ext/session/ \
- ext/dom/xml_common.h \
- ext/xml/ \
- ext/xml/expat/ \
- ext/mbstring/ \
- ext/mbstring/libmbfl/ \
- ext/mbstring/libmbfl/mbfl/ \
- ext/sqlite/libsqlite/src/sqlite.h
+ ext/spl/

View File

@ -1,21 +1,15 @@
--- scripts/phpize.in.orig Mon Aug 23 14:25:48 2004
+++ scripts/phpize.in Mon Aug 23 14:26:41 2004
@@ -101,14 +101,14 @@
--- scripts/phpize.in.orig Fri Apr 1 15:42:47 2005
+++ scripts/phpize.in Fri Apr 1 15:43:04 2005
@@ -102,9 +102,9 @@
phpize_autotools()
{
- aclocal || exit 1
- autoconf || exit 1
- autoheader || exit 1
+ aclocal15 || exit 1
+ aclocal15 || exit 1
+ autoconf253 || exit 1
+ autoheader253 || exit 1
}
phpize_libtoolize()
{
- libtoolize=`$builddir/build/shtool path glibtoolize libtoolize`
+ libtoolize=`$builddir/build/shtool path libtoolize13`
$libtoolize -f -c || exit 1
}
# Main script

View File

@ -188,6 +188,10 @@ include/php/regex/regex_extra.h
include/php/regex/utils.h
lib/php/build/Makefile.global
lib/php/build/acinclude.m4
lib/php/build/config.guess
lib/php/build/config.sub
lib/php/build/libtool.m4
lib/php/build/ltmain.sh
lib/php/build/mkdep.awk
lib/php/build/phpize.m4
lib/php/build/scan_makefile_in.awk

View File

@ -1,4 +1,6 @@
bin/pear
@unexec rm %D/lib/php/pear/.filemap 2> /dev/null || true
@unexec rm %D/lib/php/pear/.lock 2> /dev/null || true
share/pear/bootstrap/Archive/Tar.php
share/pear/bootstrap/PEAR.php
share/pear/bootstrap/System.php
@ -30,6 +32,9 @@ share/pear/bootstrap/PEAR/Registry.php
share/pear/bootstrap/PEAR/Remote.php
share/pear/bootstrap/XML/RPC.php
share/pear/bootstrap/XML/RPC/Server.php
@unexec rmdir %D/lib/php/pear/.registry 2> /dev/null || true
@unexec rmdir %D/lib/php/pear 2> /dev/null || true
@unexec rmdir %D/lib/php 2> /dev/null || true
@dirrm share/pear/bootstrap/Archive
@dirrm share/pear/bootstrap/Console
@dirrm share/pear/bootstrap/OS