diff options
Diffstat (limited to 'dev-lang/php/files')
337 files changed, 16424 insertions, 211 deletions
diff --git a/dev-lang/php/files/.frozen b/dev-lang/php/files/.frozen new file mode 100644 index 0000000..3c5228e --- /dev/null +++ b/dev-lang/php/files/.frozen @@ -0,0 +1 @@ +robbat2 diff --git a/dev-lang/php/files/20php4-envd b/dev-lang/php/files/20php4-envd new file mode 100644 index 0000000..b4eabf7 --- /dev/null +++ b/dev-lang/php/files/20php4-envd @@ -0,0 +1,2 @@ +MANPATH="/usr/lib/php4/man/" +CONFIG_PROTECT_MASK="/etc/php/cli-php4/ext-active/ /etc/php/cgi-php4/ext-active/ /etc/php/apache1-php4/ext-active/ /etc/php/apache2-php4/ext-active/" diff --git a/dev-lang/php/files/20php5-envd b/dev-lang/php/files/20php5-envd new file mode 100644 index 0000000..c69dfb2 --- /dev/null +++ b/dev-lang/php/files/20php5-envd @@ -0,0 +1,2 @@ +MANPATH="/usr/lib/php5/man/" +CONFIG_PROTECT_MASK="/etc/php/cli-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/apache1-php5/ext-active/ /etc/php/apache2-php5/ext-active/" diff --git a/dev-lang/php/files/4-any/CVS/Entries b/dev-lang/php/files/4-any/CVS/Entries new file mode 100644 index 0000000..77835d6 --- /dev/null +++ b/dev-lang/php/files/4-any/CVS/Entries @@ -0,0 +1,8 @@ +D/apache-1.3//// +D/apache-2.0//// +/php4-fastbuild.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4-imap-symlink.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4-iodbc-config.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4-libtool-1.5.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4-uClibc-have_dn_skipname.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4-with-iodbc.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 diff --git a/dev-lang/php/files/4-any/CVS/Repository b/dev-lang/php/files/4-any/CVS/Repository new file mode 100644 index 0000000..1bc8a44 --- /dev/null +++ b/dev-lang/php/files/4-any/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/4-any diff --git a/dev-lang/php/files/4-any/CVS/Root b/dev-lang/php/files/4-any/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/4-any/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/4-any/CVS/Tag b/dev-lang/php/files/4-any/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/4-any/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/4-any/apache-1.3/70_mod_php.conf b/dev-lang/php/files/4-any/apache-1.3/70_mod_php.conf new file mode 100644 index 0000000..34a41d8 --- /dev/null +++ b/dev-lang/php/files/4-any/apache-1.3/70_mod_php.conf @@ -0,0 +1,19 @@ +# vim: ft=apache sw=4 ts=4 +<IfDefine PHP4> + + # Load the module first + <IfModule !sapi_apache.c> + LoadModule php4_module modules/libphp4.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/4-any/apache-1.3/CVS/Entries b/dev-lang/php/files/4-any/apache-1.3/CVS/Entries new file mode 100644 index 0000000..0a4f813 --- /dev/null +++ b/dev-lang/php/files/4-any/apache-1.3/CVS/Entries @@ -0,0 +1,2 @@ +/70_mod_php.conf/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +D diff --git a/dev-lang/php/files/4-any/apache-1.3/CVS/Repository b/dev-lang/php/files/4-any/apache-1.3/CVS/Repository new file mode 100644 index 0000000..073ee00 --- /dev/null +++ b/dev-lang/php/files/4-any/apache-1.3/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/4-any/apache-1.3 diff --git a/dev-lang/php/files/4-any/apache-1.3/CVS/Root b/dev-lang/php/files/4-any/apache-1.3/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/4-any/apache-1.3/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/4-any/apache-1.3/CVS/Tag b/dev-lang/php/files/4-any/apache-1.3/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/4-any/apache-1.3/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/4-any/apache-2.0/70_mod_php.conf b/dev-lang/php/files/4-any/apache-2.0/70_mod_php.conf new file mode 100644 index 0000000..ce68032 --- /dev/null +++ b/dev-lang/php/files/4-any/apache-2.0/70_mod_php.conf @@ -0,0 +1,19 @@ +# vim: ft=apache sw=4 ts=4 +<IfDefine PHP4> + + # Load the module first + <IfModule !sapi_apache2.c> + LoadModule php4_module modules/libphp4.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/4-any/apache-2.0/CVS/Entries b/dev-lang/php/files/4-any/apache-2.0/CVS/Entries new file mode 100644 index 0000000..0a4f813 --- /dev/null +++ b/dev-lang/php/files/4-any/apache-2.0/CVS/Entries @@ -0,0 +1,2 @@ +/70_mod_php.conf/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +D diff --git a/dev-lang/php/files/4-any/apache-2.0/CVS/Repository b/dev-lang/php/files/4-any/apache-2.0/CVS/Repository new file mode 100644 index 0000000..de0b025 --- /dev/null +++ b/dev-lang/php/files/4-any/apache-2.0/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/4-any/apache-2.0 diff --git a/dev-lang/php/files/4-any/apache-2.0/CVS/Root b/dev-lang/php/files/4-any/apache-2.0/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/4-any/apache-2.0/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/4-any/apache-2.0/CVS/Tag b/dev-lang/php/files/4-any/apache-2.0/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/4-any/apache-2.0/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/4-any/php4-fastbuild.patch b/dev-lang/php/files/4-any/php4-fastbuild.patch new file mode 100644 index 0000000..47f0dc7 --- /dev/null +++ b/dev-lang/php/files/4-any/php4-fastbuild.patch @@ -0,0 +1,250 @@ +diff -u --recursive php-4.4.0/acinclude.m4 php-4.4.0-cgi/acinclude.m4 +--- php-4.4.0/acinclude.m4 2005-09-14 22:39:22.000000000 +0200 ++++ php-4.4.0-cgi/acinclude.m4 2005-09-14 22:39:54.000000000 +0200 +@@ -84,7 +84,7 @@ + dnl + dnl which array to append to? + AC_DEFUN([PHP_ADD_SOURCES],[ +- PHP_ADD_SOURCES_X($1, $2, $3, ifelse($4,cli,PHP_CLI_OBJS,ifelse($4,sapi,PHP_SAPI_OBJS,PHP_GLOBAL_OBJS))) ++ PHP_ADD_SOURCES_X($1, $2, $3, ifelse($4,cli,PHP_CLI_OBJS,ifelse($4,sapi,PHP_SAPI_OBJS,ifelse($4,cgi,PHP_CGI_OBJS,PHP_GLOBAL_OBJS)))) + ]) + dnl + dnl _PHP_ASSIGN_BUILD_VARS(type) +diff -u --recursive php-4.4.0/configure.in php-4.4.0-cgi/configure.in +--- php-4.4.0/configure.in 2005-07-11 08:45:09.000000000 +0100 ++++ php-4.4.0-cgi/configure.in 2005-09-01 08:00:54.000000000 +0100 +@@ -1216,20 +1216,20 @@ + INLINE_CFLAGS="$INLINE_CFLAGS $standard_libtool_flag" + CXXFLAGS="$CXXFLAGS $standard_libtool_flag" + +-all_targets='$(OVERALL_TARGET) $(PHP_MODULES) $(PHP_CLI_TARGET)' ++all_targets='$(OVERALL_TARGET) $(PHP_MODULES) $(PHP_CLI_TARGET) $(PHP_CGI_TARGET)' + install_targets="$install_modules $install_pear install-build install-headers install-programs" + +-case $PHP_SAPI in +- cgi) +- install_targets="install-sapi $install_targets" +- ;; +- cli) +- install_targets="$PHP_INSTALL_CLI_TARGET $install_targets" +- ;; +- *) +- install_targets="install-sapi $PHP_INSTALL_CLI_TARGET $install_targets" +- ;; +-esac ++if test "$PHP_SAPI_CGI" != "no" ; then ++ install_targets="install-sapi $install_targets" ++fi ++ ++if test "$PHP_SAPI_CLI" != "no" ; then ++ install_targets="$PHP_INSTALL_CLI_TARGET $install_targets" ++fi ++ ++if test "$PHP_SAPI" != "default" ; then ++ install_targets="install-sapi $PHP_INSTALL_CLI_TARGET $install_targets" ++fi + + PHP_SUBST(all_targets) + PHP_SUBST(install_targets) +diff -u --recursive php-4.4.0/sapi/cgi/Makefile.frag php-4.4.0-cgi/sapi/cgi/Makefile.frag +--- php-4.4.0/sapi/cgi/Makefile.frag 2003-07-02 02:06:29.000000000 +0100 ++++ php-4.4.0-cgi/sapi/cgi/Makefile.frag 2005-09-01 08:03:20.000000000 +0100 +@@ -1,2 +1,6 @@ +-$(SAPI_CGI_PATH): $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) ++$(SAPI_CGI_PATH): $(PHP_GLOBAL_OBJS) $(PHP_CGI_OBJS) + $(BUILD_CGI) ++ ++install-cgi: $(SAPI_CGI_PATH) ++ @echo "Installing PHP CGI binary: $(INSTALL_ROOT)$(bindir)/" ++ @$(INSTALL_CGI) +diff -u --recursive php-4.4.0/sapi/cgi/config9.m4 php-4.4.0-cgi/sapi/cgi/config9.m4 +--- php-4.4.0/sapi/cgi/config9.m4 2004-12-30 07:02:18.000000000 +0000 ++++ php-4.4.0-cgi/sapi/cgi/config9.m4 2005-09-01 08:05:08.000000000 +0100 +@@ -81,93 +81,107 @@ + ]) + + +-if test "$PHP_SAPI" = "default"; then +- AC_MSG_CHECKING(for CGI build) +- if test "$PHP_SAPI_CGI" != "no"; then +- AC_MSG_RESULT(yes) +- +- PHP_ADD_MAKEFILE_FRAGMENT($abs_srcdir/sapi/cgi/Makefile.frag) +- case $host_alias in +- *cygwin* ) +- SAPI_CGI_PATH=sapi/cgi/php.exe +- ;; +- * ) +- SAPI_CGI_PATH=sapi/cgi/php +- ;; +- esac +- PHP_SUBST(SAPI_CGI_PATH) +- +- PHP_TEST_WRITE_STDOUT +- +- AC_MSG_CHECKING(whether to force Apache CGI redirect) +- if test "$PHP_FORCE_CGI_REDIRECT" = "yes"; then +- REDIRECT=1 +- else +- REDIRECT=0 +- fi +- AC_DEFINE_UNQUOTED(FORCE_CGI_REDIRECT,$REDIRECT,[ ]) +- AC_MSG_RESULT($PHP_FORCE_CGI_REDIRECT) ++AC_MSG_CHECKING(for CGI build) ++if test "$PHP_SAPI_CGI" != "no"; then ++ AC_MSG_RESULT(yes) ++ ++ PHP_ADD_MAKEFILE_FRAGMENT($abs_srcdir/sapi/cgi/Makefile.frag) ++ case $host_alias in ++ *cygwin* ) ++ SAPI_CGI_PATH=sapi/cgi/php.exe ++ ;; ++ * ) ++ SAPI_CGI_PATH=sapi/cgi/php ++ ;; ++ esac ++ PHP_SUBST(SAPI_CGI_PATH) + ++ PHP_TEST_WRITE_STDOUT + +- AC_MSG_CHECKING(whether to discard path_info + path_translated) +- if test "$PHP_DISCARD_PATH" = "yes"; then +- DISCARD_PATH=1 +- else +- DISCARD_PATH=0 +- fi +- AC_DEFINE_UNQUOTED(DISCARD_PATH, $DISCARD_PATH, [ ]) +- AC_MSG_RESULT($PHP_DISCARD_PATH) ++ AC_MSG_CHECKING(whether to force Apache CGI redirect) ++ if test "$PHP_FORCE_CGI_REDIRECT" = "yes"; then ++ REDIRECT=1 ++ else ++ REDIRECT=0 ++ fi ++ AC_DEFINE_UNQUOTED(FORCE_CGI_REDIRECT,$REDIRECT,[ ]) ++ AC_MSG_RESULT($PHP_FORCE_CGI_REDIRECT) + +- AC_MSG_CHECKING(whether to enable path info checking) +- if test "$PHP_ENABLE_PATHINFO_CHECK" = "yes"; then +- ENABLE_PATHINFO_CHECK=1 +- else +- ENABLE_PATHINFO_CHECK=0 +- fi +- AC_DEFINE_UNQUOTED(ENABLE_PATHINFO_CHECK, $ENABLE_PATHINFO_CHECK, [ ]) +- AC_MSG_RESULT($PHP_ENABLE_PATHINFO_CHECK) + +- AC_MSG_CHECKING(whether to enable fastcgi support) +- PHP_LIBFCGI_DIR="$abs_srcdir/sapi/cgi/libfcgi" +- if test -z $PHP_LIBFCGI_DIR; then +- echo "$PHP_LIBFCGI_DIR does not exist" +- exit 1 +- fi +- if test "$PHP_ENABLE_FASTCGI" = "yes"; then +- PHP_ADD_BUILD_DIR($abs_builddir/sapi/cgi/libfcgi) +- PHP_FASTCGI=1 +- PHP_FCGI_FILES="libfcgi/fcgi_stdio.c libfcgi/fcgiapp.c libfcgi/os_unix.c" +- PHP_FCGI_INCLUDE="-I$PHP_LIBFCGI_DIR/include" +- PHP_FCGI_STATIC=1 +- else +- PHP_FASTCGI=0 +- PHP_FCGI_FILES="" +- PHP_FCGI_INCLUDE="" +- PHP_FCGI_STATIC=0 +- fi +- AC_DEFINE_UNQUOTED(PHP_FASTCGI, $PHP_FASTCGI, [ ]) +- AC_DEFINE_UNQUOTED(PHP_FCGI_STATIC, $PHP_FCGI_STATIC, [ ]) +- AC_MSG_RESULT($PHP_ENABLE_FASTCGI) +- +- INSTALL_IT="@echo \"Installing PHP CGI into: \$(INSTALL_ROOT)\$(bindir)/\"; \$(INSTALL) -m 0755 \$(SAPI_CGI_PATH) \$(INSTALL_ROOT)\$(bindir)/\$(program_prefix)php\$(program_suffix)" +- PHP_SELECT_SAPI(cgi, program, $PHP_FCGI_FILES cgi_main.c getopt.c, $PHP_FCGI_INCLUDE, '$(SAPI_CGI_PATH)') +- +- case $host_alias in +- *darwin*) +- BUILD_CGI="\$(CC) \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(NATIVE_RPATHS) \$(PHP_GLOBAL_OBJS:.lo=.o) \$(PHP_SAPI_OBJS:.lo=.o) \$(PHP_FRAMEWORKS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" ++ AC_MSG_CHECKING(whether to discard path_info + path_translated) ++ if test "$PHP_DISCARD_PATH" = "yes"; then ++ DISCARD_PATH=1 ++ else ++ DISCARD_PATH=0 ++ fi ++ AC_DEFINE_UNQUOTED(DISCARD_PATH, $DISCARD_PATH, [ ]) ++ AC_MSG_RESULT($PHP_DISCARD_PATH) ++ ++ AC_MSG_CHECKING(whether to enable path info checking) ++ if test "$PHP_ENABLE_PATHINFO_CHECK" = "yes"; then ++ ENABLE_PATHINFO_CHECK=1 ++ else ++ ENABLE_PATHINFO_CHECK=0 ++ fi ++ AC_DEFINE_UNQUOTED(ENABLE_PATHINFO_CHECK, $ENABLE_PATHINFO_CHECK, [ ]) ++ AC_MSG_RESULT($PHP_ENABLE_PATHINFO_CHECK) ++ ++ AC_MSG_CHECKING(whether to enable fastcgi support) ++ PHP_LIBFCGI_DIR="$abs_srcdir/sapi/cgi/libfcgi" ++ if test -z $PHP_LIBFCGI_DIR; then ++ echo "$PHP_LIBFCGI_DIR does not exist" ++ exit 1 ++ fi ++ if test "$PHP_ENABLE_FASTCGI" = "yes"; then ++ PHP_ADD_BUILD_DIR($abs_builddir/sapi/cgi/libfcgi) ++ PHP_FASTCGI=1 ++ PHP_FCGI_FILES="libfcgi/fcgi_stdio.c libfcgi/fcgiapp.c libfcgi/os_unix.c" ++ PHP_FCGI_INCLUDE="-I$PHP_LIBFCGI_DIR/include" ++ PHP_FCGI_STATIC=1 ++ else ++ PHP_FASTCGI=0 ++ PHP_FCGI_FILES="" ++ PHP_FCGI_INCLUDE="" ++ PHP_FCGI_STATIC=0 ++ fi ++ AC_DEFINE_UNQUOTED(PHP_FASTCGI, $PHP_FASTCGI, [ ]) ++ AC_DEFINE_UNQUOTED(PHP_FCGI_STATIC, $PHP_FCGI_STATIC, [ ]) ++ AC_MSG_RESULT($PHP_ENABLE_FASTCGI) ++ ++ INSTALL_CGI="@echo \"Installing PHP CGI into: \$(INSTALL_ROOT)\$(bindir)/\"; \$(INSTALL) -m 0755 \$(SAPI_CGI_PATH) \$(INSTALL_ROOT)\$(bindir)/\$(program_prefix)php\$(program_suffix)" ++ PHP_ADD_SOURCES(sapi/cgi, $PHP_FCGI_FILES cgi_main.c getopt.c, $PHP_FCGI_INCLUDE, cgi) ++ PHP_ADD_SOURCES(/main, internal_functions.c,,cgi) ++ ++ case $host_alias in ++ *darwin*) ++ BUILD_CGI="\$(CC) \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(NATIVE_RPATHS) \$(PHP_GLOBAL_OBJS:.lo=.o) \$(PHP_CGI_OBJS:.lo=.o) \$(PHP_FRAMEWORKS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" + ;; +- *) +- BUILD_CGI="\$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_SAPI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" ++ *) ++ BUILD_CGI="\$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_CGI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" + ;; +- esac ++ esac + +- PHP_SUBST(BUILD_CGI) ++ PHP_CGI_TARGET="$SAPI_CGI_PATH" ++ PHP_INSTALL_CGI_TARGET="install-cgi" + +- elif test "$PHP_SAPI_CLI" != "no"; then +- AC_MSG_RESULT(no) +- OVERALL_TARGET= +- PHP_SAPI=cli +- else +- AC_MSG_ERROR([No SAPIs selected.]) ++ PHP_SUBST(BUILD_CGI) ++ PHP_SUBST(INSTALL_CGI) ++ PHP_SUBST(PHP_CGI_OBJS) ++ PHP_SUBST(PHP_CGI_TARGET) ++ PHP_SUBST(PHP_INSTALL_CGI_TARGET) ++ ++ if test "$PHP_SAPI" = "default" ; then ++ PHP_BUILD_PROGRAM($SAPI_CGI_PATH) ++ fi ++ ++else ++ AC_MSG_RESULT(no) ++ if test "$PHP_SAPI" = "default" ; then ++ if test "$PHP_SAPI_CLI" != "no"; then ++ OVERALL_TARGET= ++ PHP_SAPI=cli ++ else ++ AC_MSG_ERROR([No SAPIs selected.]) ++ fi + fi + fi diff --git a/dev-lang/php/files/4-any/php4-imap-symlink.diff b/dev-lang/php/files/4-any/php4-imap-symlink.diff new file mode 100644 index 0000000..cf74905 --- /dev/null +++ b/dev-lang/php/files/4-any/php4-imap-symlink.diff @@ -0,0 +1,15 @@ +--- ext/imap/config.m4 2005-09-04 02:48:47.000000000 +0200 ++++ ext/imap/config.m4 2005-09-04 02:49:05.000000000 +0200 +@@ -158,12 +158,6 @@ + AC_MSG_ERROR(Cannot find rfc822.h. Please check your c-client installation.) + fi + +- if test -r "$IMAP_DIR/c-client/c-client.a"; then +- ln -s "$IMAP_DIR/c-client/c-client.a" "$IMAP_DIR/c-client/libc-client.a" >/dev/null 2>&1 +- elif test -r "$IMAP_DIR/lib/c-client.a"; then +- ln -s "$IMAP_DIR/lib/c-client.a" "$IMAP_DIR/lib/libc-client.a" >/dev/null 2>&1 +- fi +- + for lib in c-client4 c-client imap; do + IMAP_LIB=$lib + IMAP_LIB_CHK(lib) diff --git a/dev-lang/php/files/4-any/php4-iodbc-config.diff b/dev-lang/php/files/4-any/php4-iodbc-config.diff new file mode 100644 index 0000000..a706916 --- /dev/null +++ b/dev-lang/php/files/4-any/php4-iodbc-config.diff @@ -0,0 +1,14 @@ +--- ext/odbc/config.m4 2005-08-10 02:05:26.000000000 +0200 ++++ ext/odbc/config.m4 2005-08-10 02:06:10.000000000 +0200 +@@ -401,9 +401,9 @@ + fi + if test "$withval" != "no"; then + PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/lib) +- PHP_ADD_INCLUDE($withval/include, 1) ++ PHP_ADD_INCLUDE($withval/include/iodbc, 1) + ODBC_TYPE=iodbc +- ODBC_INCLUDE=-I$withval/include ++ ODBC_INCLUDE=-I$withval/include/iodbc + ODBC_LFLAGS=-L$withval/lib + ODBC_LIBS=-liodbc + AC_DEFINE(HAVE_IODBC,1,[ ]) diff --git a/dev-lang/php/files/4-any/php4-libtool-1.5.patch b/dev-lang/php/files/4-any/php4-libtool-1.5.patch new file mode 100644 index 0000000..0761203 --- /dev/null +++ b/dev-lang/php/files/4-any/php4-libtool-1.5.patch @@ -0,0 +1,19 @@ +--- acinclude.m4 2005-09-08 13:16:38.000000000 +0200 ++++ acinclude.m4 2005-09-08 13:21:09.000000000 +0200 +@@ -783,12 +783,12 @@ + dnl + AC_DEFUN([PHP_BUILD_PROGRAM],[ + OVERALL_TARGET=[]ifelse($1,,php,$1) +- php_c_pre='$(CC)' ++ php_c_pre='$(LIBTOOL) --mode=compile $(CC)' + php_c_meta='$(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS)' +- php_c_post=' && echo > $[@]' +- php_cxx_pre='$(CXX)' ++ php_c_post= ++ php_cxx_pre='$(LIBTOOL) --mode=compile $(CXX)' + php_cxx_meta='$(COMMON_FLAGS) $(CXXFLAGS_CLEAN) $(EXTRA_CXXFLAGS)' +- php_cxx_post=' && echo > $[@]' ++ php_cxx_post= + php_lo=o + + case $with_pic in diff --git a/dev-lang/php/files/4-any/php4-uClibc-have_dn_skipname.patch b/dev-lang/php/files/4-any/php4-uClibc-have_dn_skipname.patch new file mode 100644 index 0000000..3a86dfb --- /dev/null +++ b/dev-lang/php/files/4-any/php4-uClibc-have_dn_skipname.patch @@ -0,0 +1,30 @@ +--- ext/standard/dns.c ++++ ext/standard/dns.c +@@ -275,6 +275,7 @@ PHP_FUNCTION(checkdnsrr) + #define MAXHOSTNAMELEN 256 + #endif /* MAXHOSTNAMELEN */ + ++#if HAVE_DN_SKIPNAME + /* {{{ proto int getmxrr(string hostname, array mxhosts [, array weight]) + Get MX records corresponding to a given Internet host name */ + PHP_FUNCTION(getmxrr) +@@ -355,6 +356,7 @@ PHP_FUNCTION(getmxrr) + RETURN_TRUE; + } + /* }}} */ ++#endif /* HAVE_DN_SKIPNAME */ + + #endif + /* +--- ext/standard/basic_functions.c ++++ ext/standard/basic_functions.c +@@ -449,7 +449,9 @@ function_entry basic_functions[] = { + + #if HAVE_RES_SEARCH && !(defined(__BEOS__) || defined(PHP_WIN32) || defined(NETWARE)) + PHP_FE(checkdnsrr, NULL) ++# if HAVE_DN_SKIPNAME + PHP_FE(getmxrr,second_and_third_args_force_ref) ++# endif + #endif + + PHP_FE(getmyuid, NULL) diff --git a/dev-lang/php/files/4-any/php4-with-iodbc.diff b/dev-lang/php/files/4-any/php4-with-iodbc.diff new file mode 100644 index 0000000..81afcc0 --- /dev/null +++ b/dev-lang/php/files/4-any/php4-with-iodbc.diff @@ -0,0 +1,13 @@ +--- ext/odbc/php_odbc_includes.h 2005-02-22 17:55:18.000000000 +0000 ++++ ext/odbc/php_odbc_includes.h 2005-02-22 17:55:26.000000000 +0000 +@@ -91,8 +91,8 @@ + #elif defined(HAVE_IODBC) /* iODBC library */ + + #define ODBC_TYPE "iODBC" +-#include <isql.h> +-#include <isqlext.h> ++#include <iodbc/isql.h> ++#include <iodbc/isqlext.h> + #define HAVE_SQL_EXTENDED_FETCH 1 + #define SQL_FD_FETCH_ABSOLUTE 0x00000010L + #define SQL_CURSOR_DYNAMIC 2UL diff --git a/dev-lang/php/files/4.3.11/CVS/Entries b/dev-lang/php/files/4.3.11/CVS/Entries new file mode 100644 index 0000000..58a7e39 --- /dev/null +++ b/dev-lang/php/files/4.3.11/CVS/Entries @@ -0,0 +1,15 @@ +/php4.3.11-apache2sapi.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +/php4.3.11-apachesapi.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +/php4.3.11-curl-open_basedir.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +/php4.3.11-curl_safemode.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php4.3.11-fopen_wrappers.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4.3.11-gd-safe_mode.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +/php4.3.11-gd_safe_mode.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4.3.11-globals_overwrite.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php4.3.11-mbstring-header_inj.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +/php4.3.11-multilib-search-path.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +/php4.3.11-pcre-security.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4.3.11-phpinfo_xss.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php4.3.11-pspell-ext-segf.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4.3.11-session_save_path-segf.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +D diff --git a/dev-lang/php/files/4.3.11/CVS/Repository b/dev-lang/php/files/4.3.11/CVS/Repository new file mode 100644 index 0000000..19a4434 --- /dev/null +++ b/dev-lang/php/files/4.3.11/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/4.3.11 diff --git a/dev-lang/php/files/4.3.11/CVS/Root b/dev-lang/php/files/4.3.11/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/4.3.11/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/4.3.11/CVS/Tag b/dev-lang/php/files/4.3.11/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/4.3.11/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/4.3.11/php4.3.11-apache2sapi.patch b/dev-lang/php/files/4.3.11/php4.3.11-apache2sapi.patch new file mode 100644 index 0000000..e6b4337 --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-apache2sapi.patch @@ -0,0 +1,170 @@ +--- sapi/apache2handler/sapi_apache2.c 2005-03-10 12:39:04.000000000 +0100 ++++ sapi/apache2handler/sapi_apache2.c 2005-12-03 02:34:22.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: sapi_apache2.c,v 1.1.2.39 2005/03/10 11:39:04 jorton Exp $ */ ++/* $Id: sapi_apache2.c,v 1.1.2.40.2.8 2005/11/18 19:03:13 iliaa Exp $ */ + + #include <fcntl.h> + +@@ -268,23 +268,18 @@ + TSRMLS_FETCH(); + + ctx = SG(server_context); +- +- /* We use APLOG_STARTUP because it keeps us from printing the +- * data and time information at the beginning of the error log +- * line. Not sure if this is correct, but it mirrors what happens +- * with Apache 1.3 -- rbb +- */ ++ + if (ctx == NULL) { /* we haven't initialized our ctx yet, oh well */ + ap_log_error(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, 0, NULL, "%s", msg); + } else { +- ap_log_rerror(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, 0, ctx->r, "%s", msg); ++ ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, ctx->r, "%s", msg); + } + } + + static void php_apache_sapi_log_message_ex(char *msg, request_rec *r) + { + if (r) { +- ap_log_rerror(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, 0, r, msg, r->filename); ++ ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r, msg, r->filename); + } else { + php_apache_sapi_log_message(msg); + } +@@ -448,6 +443,18 @@ + php_request_shutdown(NULL); + } + ++static void php_apache_ini_dtor(request_rec *r, request_rec *p TSRMLS_DC) ++{ ++ if (strcmp(r->protocol, "INCLUDED")) { ++ zend_try { zend_ini_deactivate(TSRMLS_C); } zend_end_try(); ++ } ++ if (p) { ++ ((php_struct *)SG(server_context))->r = p; ++ } else { ++ apr_pool_cleanup_run(r->pool, (void *)&SG(server_context), php_server_context_cleanup); ++ } ++} ++ + static int php_handler(request_rec *r) + { + php_struct *ctx; +@@ -458,15 +465,31 @@ + request_rec *parent_req = NULL; + TSRMLS_FETCH(); + ++#define PHPAP_INI_OFF php_apache_ini_dtor(r, parent_req TSRMLS_CC); ++ + conf = ap_get_module_config(r->per_dir_config, &php4_module); ++ ++ /* apply_config() needs r in some cases, so allocate server_context early */ ++ ctx = SG(server_context); ++ if (ctx == NULL) { ++ ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); ++ /* register a cleanup so we clear out the SG(server_context) ++ * after each request. Note: We pass in the pointer to the ++ * server_context in case this is handled by a different thread. ++ */ ++ apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); ++ ctx->r = r; ++ ctx = NULL; /* May look weird to null it here, but it is to catch the right case in the first_try later on */ ++ } else { ++ parent_req = ctx->r; ++ ctx->r = r; ++ } + apply_config(conf); + + if (strcmp(r->handler, PHP_MAGIC_TYPE) && strcmp(r->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(r->handler, PHP_SCRIPT)) { + /* Check for xbithack in this case. */ + if (!AP2(xbithack) || strcmp(r->handler, "text/html") || !(r->finfo.protection & APR_UEXECUTE)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + } +@@ -475,32 +498,24 @@ + * the configuration; default behaviour is to accept. */ + if (r->used_path_info == AP_REQ_REJECT_PATH_INFO + && r->path_info && r->path_info[0]) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + + /* handle situations where user turns the engine off */ + if (!AP2(engine)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + + if (r->finfo.filetype == 0) { + php_apache_sapi_log_message_ex("script '%s' not found or unable to stat", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + if (r->finfo.filetype == APR_DIR) { + php_apache_sapi_log_message_ex("attempt to invoke directory '%s' as script", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_FORBIDDEN; + } + +@@ -516,24 +531,30 @@ + + zend_first_try { + +- ctx = SG(server_context); + if (ctx == NULL) { +- ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); +- /* register a cleanup so we clear out the SG(server_context) +- * after each request. Note: We pass in the pointer to the +- * server_context in case this is handled by a different thread. +- */ +- apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); +- +- ctx->r = r; ++normal: + brigade = apr_brigade_create(r->pool, r->connection->bucket_alloc); ++ ctx = SG(server_context); + ctx->brigade = brigade; + + if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { + zend_bailout(); + } + } else { +- parent_req = ctx->r; ++ if (!parent_req) { ++ parent_req = ctx->r; ++ } ++ if (parent_req && parent_req->handler && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { ++ if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { ++ zend_bailout(); ++ } ++ } ++ ++ /* check if comming due to ErrorDocument */ ++ if (parent_req && parent_req->status != HTTP_OK) { ++ parent_req = NULL; ++ goto normal; ++ } + ctx->r = r; + brigade = ctx->brigade; + } diff --git a/dev-lang/php/files/4.3.11/php4.3.11-apachesapi.patch b/dev-lang/php/files/4.3.11/php4.3.11-apachesapi.patch new file mode 100644 index 0000000..82480c7 --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-apachesapi.patch @@ -0,0 +1,33 @@ +--- sapi/apache/mod_php4.c 2004-07-21 18:25:28.000000000 +0200 ++++ sapi/apache/mod_php4.c 2005-05-19 18:14:46.000000000 +0200 +@@ -17,7 +17,7 @@ + | PHP 4.0 patches by Zeev Suraski <zeev@zend.com> | + +----------------------------------------------------------------------+ + */ +-/* $Id: mod_php4.c,v 1.146.2.14 2004/07/21 16:25:28 sesser Exp $ */ ++/* $Id: mod_php4.c,v 1.146.2.15 2005/05/19 16:14:46 rasmus Exp $ */ + + #include "php_apache_http.h" + #include "http_conf_globals.h" +@@ -209,12 +209,18 @@ + */ + static int sapi_apache_send_headers(sapi_headers_struct *sapi_headers TSRMLS_DC) + { +- if(SG(server_context) == NULL) { /* server_context is not here anymore */ ++ request_rec *r = SG(server_context); ++ ++ if(r == NULL) { /* server_context is not here anymore */ + return SAPI_HEADER_SEND_FAILED; + } + +- ((request_rec *) SG(server_context))->status = SG(sapi_headers).http_response_code; +- send_http_header((request_rec *) SG(server_context)); ++ r->status = SG(sapi_headers).http_response_code; ++ if(r->status==304) { ++ send_error_response(r,0); ++ } else { ++ send_http_header(r); ++ } + return SAPI_HEADER_SENT_SUCCESSFULLY; + } + /* }}} */ diff --git a/dev-lang/php/files/4.3.11/php4.3.11-curl-open_basedir.patch b/dev-lang/php/files/4.3.11/php4.3.11-curl-open_basedir.patch new file mode 100644 index 0000000..8817cab --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-curl-open_basedir.patch @@ -0,0 +1,143 @@ +--- ext/curl/curl.c 2005-03-14 10:03:09.000000000 +0100 ++++ ext/curl/curl.c 2005-12-03 02:34:31.000000000 +0100 +@@ -16,7 +16,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: curl.c,v 1.124.2.29 2005/03/14 09:03:09 sniper Exp $ */ ++/* $Id: curl.c,v 1.124.2.30.2.3 2005/10/17 02:42:51 iliaa Exp $ */ + + #ifdef HAVE_CONFIG_H + #include "config.h" +@@ -66,8 +66,8 @@ + #define CAAZ(s, v) add_assoc_zval_ex(return_value, s, sizeof(s), (zval *) v); + + #define PHP_CURL_CHECK_OPEN_BASEDIR(str, len) \ +- if (PG(open_basedir) && *PG(open_basedir) && \ +- strncasecmp(str, "file://", sizeof("file://") - 1) == 0) \ ++ if (((PG(open_basedir) && *PG(open_basedir)) || PG(safe_mode)) && \ ++ strncasecmp(str, "file:", sizeof("file:") - 1) == 0) \ + { \ + php_url *tmp_url; \ + \ +@@ -76,7 +76,7 @@ + RETURN_FALSE; \ + } \ + \ +- if (php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ ++ if (tmp_url->query || tmp_url->fragment || php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ + (PG(safe_mode) && !php_checkuid(tmp_url->path, "rb+", CHECKUID_CHECK_MODE_PARAM)) \ + ) { \ + php_url_free(tmp_url); \ +@@ -436,10 +436,12 @@ + zend_list_addref(ch->id); + ZVAL_STRINGL(argv[1], data, length, 1); + ++ ch->in_callback = 1; + error = call_user_function(EG(function_table), + NULL, + t->func, + retval, 2, argv TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error(E_WARNING, "%s(): Couldn't call the CURLOPT_WRITEFUNCTION", + get_active_function_name(TSRMLS_C)); +@@ -495,10 +497,12 @@ + zend_list_addref(t->fd); + ZVAL_LONG(argv[2], (int) size * nmemb); + ++ ch->in_callback = 1; + error = call_user_function(EG(function_table), + NULL, + t->func, + retval, 3, argv TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error(E_WARNING, "%s(): Cannot call the CURLOPT_READFUNCTION", + get_active_function_name(TSRMLS_C)); +@@ -553,10 +557,12 @@ + zend_list_addref(ch->id); + ZVAL_STRINGL(argv[1], data, length, 1); + ++ ch->in_callback = 1; + error = call_user_function(EG(function_table), + NULL, + t->func, + retval, 2, argv TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error(E_WARNING, "%s(): Couldn't call the CURLOPT_HEADERFUNCTION", + get_active_function_name(TSRMLS_C)); +@@ -606,10 +612,12 @@ + ZVAL_STRING(argv[1], prompt, 1); + ZVAL_LONG(argv[2], buflen); + ++ ch->in_callback = 1; + error = call_user_function(EG(function_table), + NULL, + func, + retval, 2, argv TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error(E_WARNING, "%s(): Couldn't call the CURLOPT_PASSWDFUNCTION", get_active_function_name(TSRMLS_C)); + } else if (Z_TYPE_P(retval) == IS_STRING) { +@@ -680,7 +688,9 @@ + (*ch)->handlers->write_header = ecalloc(1, sizeof(php_curl_write)); + (*ch)->handlers->read = ecalloc(1, sizeof(php_curl_read)); + memset(&(*ch)->err, 0, sizeof((*ch)->err)); +- ++ ++ (*ch)->in_callback = 0; ++ + zend_llist_init(&(*ch)->to_free.str, sizeof(char *), + (void(*)(void *)) curl_free_string, 0); + zend_llist_init(&(*ch)->to_free.slist, sizeof(struct curl_slist), +@@ -982,10 +992,15 @@ + + postval = Z_STRVAL_PP(current); + if (*postval == '@') { ++ ++postval; ++ /* safe_mode / open_basedir check */ ++ if (php_check_open_basedir(postval TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(postval, "rb+", CHECKUID_CHECK_MODE_PARAM))) { ++ RETURN_FALSE; ++ } + error = curl_formadd(&first, &last, + CURLFORM_COPYNAME, string_key, + CURLFORM_NAMELENGTH, (long)string_key_len - 1, +- CURLFORM_FILE, ++postval, ++ CURLFORM_FILE, postval, + CURLFORM_END); + } + else { +@@ -1337,7 +1352,11 @@ + WRONG_PARAM_COUNT; + } + ZEND_FETCH_RESOURCE(ch, php_curl *, zid, -1, le_curl_name, le_curl); +- ++ ++ if (ch->in_callback) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Attempt to close CURL handle from a callback"); ++ return; ++ } + zend_list_delete(Z_LVAL_PP(zid)); + } + /* }}} */ +--- ext/curl/php_curl.h 2002-12-31 17:34:15.000000000 +0100 ++++ ext/curl/php_curl.h 2005-06-02 23:05:06.000000000 +0200 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: php_curl.h,v 1.29.2.1 2002/12/31 16:34:15 sebastian Exp $ */ ++/* $Id: php_curl.h,v 1.29.2.2 2005/06/02 21:05:06 tony2001 Exp $ */ + + #ifndef _PHP_CURL_H + #define _PHP_CURL_H +@@ -93,6 +93,7 @@ + struct _php_curl_free to_free; + long id; + unsigned int uses; ++ zend_bool in_callback; + } php_curl; + + /* streams support */ diff --git a/dev-lang/php/files/4.3.11/php4.3.11-curl_safemode.patch b/dev-lang/php/files/4.3.11/php4.3.11-curl_safemode.patch new file mode 100644 index 0000000..f308dea --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-curl_safemode.patch @@ -0,0 +1,141 @@ +--- ext/curl/curl.c 2005-03-14 10:03:09.000000000 +0100 ++++ ext/curl/curl.c 2005-10-17 04:42:51.000000000 +0200 +@@ -16,7 +16,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: curl.c,v 1.124.2.29 2005/03/14 09:03:09 sniper Exp $ */ ++/* $Id: curl.c,v 1.124.2.30.2.3 2005/10/17 02:42:51 iliaa Exp $ */ + + #ifdef HAVE_CONFIG_H + #include "config.h" +@@ -66,7 +66,7 @@ + #define CAAZ(s, v) add_assoc_zval_ex(return_value, s, sizeof(s), (zval *) v); + + #define PHP_CURL_CHECK_OPEN_BASEDIR(str, len) \ +- if (PG(open_basedir) && *PG(open_basedir) && \ ++ if (((PG(open_basedir) && *PG(open_basedir)) || PG(safe_mode)) && \ + strncasecmp(str, "file://", sizeof("file://") - 1) == 0) \ + { \ + php_url *tmp_url; \ +@@ -76,7 +76,7 @@ + RETURN_FALSE; \ + } \ + \ +- if (php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ ++ if (tmp_url->query || php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ + (PG(safe_mode) && !php_checkuid(tmp_url->path, "rb+", CHECKUID_CHECK_MODE_PARAM)) \ + ) { \ + php_url_free(tmp_url); \ +@@ -436,10 +436,12 @@ + zend_list_addref(ch->id); + ZVAL_STRINGL(argv[1], data, length, 1); + ++ ch->in_callback = 1; + error = call_user_function(EG(function_table), + NULL, + t->func, + retval, 2, argv TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error(E_WARNING, "%s(): Couldn't call the CURLOPT_WRITEFUNCTION", + get_active_function_name(TSRMLS_C)); +@@ -495,10 +497,12 @@ + zend_list_addref(t->fd); + ZVAL_LONG(argv[2], (int) size * nmemb); + ++ ch->in_callback = 1; + error = call_user_function(EG(function_table), + NULL, + t->func, + retval, 3, argv TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error(E_WARNING, "%s(): Cannot call the CURLOPT_READFUNCTION", + get_active_function_name(TSRMLS_C)); +@@ -553,10 +557,12 @@ + zend_list_addref(ch->id); + ZVAL_STRINGL(argv[1], data, length, 1); + ++ ch->in_callback = 1; + error = call_user_function(EG(function_table), + NULL, + t->func, + retval, 2, argv TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error(E_WARNING, "%s(): Couldn't call the CURLOPT_HEADERFUNCTION", + get_active_function_name(TSRMLS_C)); +@@ -606,10 +612,12 @@ + ZVAL_STRING(argv[1], prompt, 1); + ZVAL_LONG(argv[2], buflen); + ++ ch->in_callback = 1; + error = call_user_function(EG(function_table), + NULL, + func, + retval, 2, argv TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error(E_WARNING, "%s(): Couldn't call the CURLOPT_PASSWDFUNCTION", get_active_function_name(TSRMLS_C)); + } else if (Z_TYPE_P(retval) == IS_STRING) { +@@ -680,7 +688,9 @@ + (*ch)->handlers->write_header = ecalloc(1, sizeof(php_curl_write)); + (*ch)->handlers->read = ecalloc(1, sizeof(php_curl_read)); + memset(&(*ch)->err, 0, sizeof((*ch)->err)); +- ++ ++ (*ch)->in_callback = 0; ++ + zend_llist_init(&(*ch)->to_free.str, sizeof(char *), + (void(*)(void *)) curl_free_string, 0); + zend_llist_init(&(*ch)->to_free.slist, sizeof(struct curl_slist), +@@ -982,10 +992,15 @@ + + postval = Z_STRVAL_PP(current); + if (*postval == '@') { ++ ++postval; ++ /* safe_mode / open_basedir check */ ++ if (php_check_open_basedir(postval TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(postval, "rb+", CHECKUID_CHECK_MODE_PARAM))) { ++ RETURN_FALSE; ++ } + error = curl_formadd(&first, &last, + CURLFORM_COPYNAME, string_key, + CURLFORM_NAMELENGTH, (long)string_key_len - 1, +- CURLFORM_FILE, ++postval, ++ CURLFORM_FILE, postval, + CURLFORM_END); + } + else { +@@ -1337,7 +1352,11 @@ + WRONG_PARAM_COUNT; + } + ZEND_FETCH_RESOURCE(ch, php_curl *, zid, -1, le_curl_name, le_curl); +- ++ ++ if (ch->in_callback) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Attempt to close CURL handle from a callback"); ++ return; ++ } + zend_list_delete(Z_LVAL_PP(zid)); + } + /* }}} */ +--- ext/curl/php_curl.h 2002-12-31 17:34:15.000000000 +0100 ++++ ext/curl/php_curl.h 2005-06-02 23:05:06.000000000 +0200 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: php_curl.h,v 1.29.2.1 2002/12/31 16:34:15 sebastian Exp $ */ ++/* $Id: php_curl.h,v 1.29.2.2 2005/06/02 21:05:06 tony2001 Exp $ */ + + #ifndef _PHP_CURL_H + #define _PHP_CURL_H +@@ -93,6 +93,7 @@ + struct _php_curl_free to_free; + long id; + unsigned int uses; ++ zend_bool in_callback; + } php_curl; + + /* streams support */ diff --git a/dev-lang/php/files/4.3.11/php4.3.11-fopen_wrappers.patch b/dev-lang/php/files/4.3.11/php4.3.11-fopen_wrappers.patch new file mode 100644 index 0000000..672da5e --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-fopen_wrappers.patch @@ -0,0 +1,46 @@ +--- main/fopen_wrappers.c 2005/02/02 23:44:07 1.153.2.10 ++++ main/fopen_wrappers.c 2005/09/27 15:08:43 1.153.2.10.2.2 +@@ -16,7 +16,7 @@ + | Jim Winstead <jimw@php.net> | + +----------------------------------------------------------------------+ + */ +-/* $Id: fopen_wrappers.c,v 1.153.2.10 2005/02/02 23:44:07 iliaa Exp $ */ ++/* $Id: fopen_wrappers.c,v 1.153.2.10.2.2 2005/09/27 15:08:43 iliaa Exp $ */ + + /* {{{ includes + */ +@@ -36,14 +36,6 @@ + #include <winsock.h> + #define O_RDONLY _O_RDONLY + #include "win32/param.h" +-#elif defined(NETWARE) +-/*#include <ws2nlm.h>*/ +-/*#include <sys/socket.h>*/ +-#ifdef NEW_LIBC +-#include <sys/param.h> +-#else +-#include "netware/param.h" +-#endif + #else + #include <sys/param.h> + #endif +@@ -57,8 +49,6 @@ + #if HAVE_PWD_H + #ifdef PHP_WIN32 + #include "win32/pwd.h" +-#elif defined(NETWARE) +-#include "netware/pwd.h" + #else + #include <pwd.h> + #endif +@@ -120,8 +110,8 @@ PHPAPI int php_check_specific_open_based + /* Handler for basedirs that end with a / */ + resolved_basedir_len = strlen(resolved_basedir); + if (basedir[strlen(basedir) - 1] == PHP_DIR_SEPARATOR) { +- if (resolved_basedir[resolved_basedir_len - 1] == '/') { +- resolved_basedir[resolved_basedir_len - 1] = PHP_DIR_SEPARATOR; ++ if (resolved_basedir[resolved_basedir_len - 1] != PHP_DIR_SEPARATOR) { ++ resolved_basedir[resolved_basedir_len] = PHP_DIR_SEPARATOR; + resolved_basedir[++resolved_basedir_len] = '\0'; + } + } diff --git a/dev-lang/php/files/4.3.11/php4.3.11-gd-safe_mode.patch b/dev-lang/php/files/4.3.11/php4.3.11-gd-safe_mode.patch new file mode 100644 index 0000000..15f2f95 --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-gd-safe_mode.patch @@ -0,0 +1,131 @@ +--- ext/gd/gd.c 2005-01-17 18:07:57.000000000 +0100 ++++ ext/gd/gd.c 2005-12-03 02:34:41.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: gd.c,v 1.221.2.54 2005/01/17 17:07:57 sniper Exp $ */ ++/* $Id: gd.c,v 1.221.2.56.2.3 2005/11/03 20:20:04 sniper Exp $ */ + + /* gd 1.2 is copyright 1994, 1995, Quest Protein Database Center, + Cold Spring Harbor Labs. */ +@@ -623,7 +623,7 @@ + + convert_to_string_ex(file); + +- stream = php_stream_open_wrapper(Z_STRVAL_PP(file), "rb", IGNORE_PATH | IGNORE_URL_WIN | REPORT_ERRORS, NULL); ++ stream = php_stream_open_wrapper(Z_STRVAL_PP(file), "rb", ENFORCE_SAFE_MODE | IGNORE_PATH | IGNORE_URL_WIN | REPORT_ERRORS, NULL); + if (stream == NULL) { + RETURN_FALSE; + } +@@ -807,6 +807,10 @@ + convert_to_boolean_ex(dither); + convert_to_long_ex(ncolors); + ++ if (Z_LVAL_PP(ncolors) <= 0) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Number of colors has to be greater than zero"); ++ RETURN_FALSE; ++ } + gdImageTrueColorToPalette(im, Z_LVAL_PP(dither), Z_LVAL_PP(ncolors)); + + RETURN_TRUE; +@@ -1436,7 +1440,7 @@ + + fn = Z_STRVAL_PP(file); + +- stream = php_stream_open_wrapper(fn, "rb", REPORT_ERRORS|IGNORE_PATH|IGNORE_URL_WIN, NULL); ++ stream = php_stream_open_wrapper(fn, "rb", ENFORCE_SAFE_MODE|REPORT_ERRORS|IGNORE_PATH|IGNORE_URL_WIN, NULL); + if (stream == NULL) { + RETURN_FALSE; + } +@@ -1644,10 +1648,7 @@ + } + + if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { +- if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC)) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid filename '%s'", fn); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn, "Invalid filename"); + + fp = VCWD_FOPEN(fn, "wb"); + if (!fp) { +@@ -1699,7 +1700,7 @@ + char buf[4096]; + char *path; + +- tmp = php_open_temporary_file("", "", &path TSRMLS_CC); ++ tmp = php_open_temporary_file(NULL, NULL, &path TSRMLS_CC); + if (tmp == NULL) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to open temporary file"); + RETURN_FALSE; +@@ -3017,7 +3018,8 @@ + { + zval *IM, *EXT = NULL; + gdImagePtr im=NULL; +- int col = -1, x = -1, y = -1, str_len, fontname_len, i, brect[8]; ++ long col = -1, x = -1, y = -1; ++ int str_len, fontname_len, i, brect[8]; + double ptsize, angle; + unsigned char *str = NULL, *fontname = NULL; + char *error = NULL; +@@ -3741,16 +3743,10 @@ + } + + /* Check origin file */ +- if (!fn_org || fn_org == empty_string || php_check_open_basedir(fn_org TSRMLS_CC)) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid origin filename '%s'", fn_org); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn_org, "Invalid origin filename"); + + /* Check destination file */ +- if (!fn_dest || fn_dest == empty_string || php_check_open_basedir(fn_dest TSRMLS_CC)) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid destination filename '%s'", fn_dest); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn_dest, "Invalid destination filename"); + + /* Open origin file */ + org = VCWD_FOPEN(fn_org, "rb"); +--- ext/gd/gd_ctx.c 2004-01-28 17:27:42.000000000 +0100 ++++ ext/gd/gd_ctx.c 2005-12-03 02:34:41.000000000 +0100 +@@ -73,10 +73,7 @@ + } + + if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { +- if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC)) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid filename '%s'", fn); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn, "Invalid filename"); + + fp = VCWD_FOPEN(fn, "wb"); + if (!fp) { +--- ext/gd/php_gd.h 2003-03-31 10:49:30.000000000 +0200 ++++ ext/gd/php_gd.h 2005-12-03 02:34:41.000000000 +0100 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: php_gd.h,v 1.44.2.5 2003/03/31 08:49:30 sniper Exp $ */ ++/* $Id: php_gd.h,v 1.44.2.5.8.2 2005/11/15 08:15:36 sniper Exp $ */ + + #ifndef PHP_GD_H + #define PHP_GD_H +@@ -30,6 +30,15 @@ + + #if HAVE_LIBGD + ++/* open_basedir and safe_mode checks */ ++#define PHP_GD_CHECK_OPEN_BASEDIR(filename, errormsg) \ ++ if (!filename || filename == empty_string || php_check_open_basedir(filename TSRMLS_CC) || \ ++ (PG(safe_mode) && !php_checkuid(filename, NULL, CHECKUID_CHECK_FILE_AND_DIR)) \ ++ ) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, errormsg); \ ++ RETURN_FALSE; \ ++ } ++ + #define PHP_GDIMG_TYPE_GIF 1 + #define PHP_GDIMG_TYPE_PNG 2 + #define PHP_GDIMG_TYPE_JPG 3 diff --git a/dev-lang/php/files/4.3.11/php4.3.11-gd_safe_mode.patch b/dev-lang/php/files/4.3.11/php4.3.11-gd_safe_mode.patch new file mode 100644 index 0000000..1901112 --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-gd_safe_mode.patch @@ -0,0 +1,39 @@ +--- ext/gd/gd.c 2005/01/17 17:07:57 1.221.2.54 ++++ ext/gd/gd.c 2005/10/06 20:44:52 1.221.2.56.2.1 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: gd.c,v 1.221.2.54 2005/01/17 17:07:57 sniper Exp $ */ ++/* $Id: gd.c,v 1.221.2.56.2.1 2005/10/06 20:44:52 iliaa Exp $ */ + + /* gd 1.2 is copyright 1994, 1995, Quest Protein Database Center, + Cold Spring Harbor Labs. */ +@@ -1644,7 +1644,7 @@ static void _php_image_output(INTERNAL_F + } + + if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { +- if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC)) { ++ if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(fn, "rb+", CHECKUID_CHECK_FILE_AND_DIR))) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid filename '%s'", fn); + RETURN_FALSE; + } +@@ -1699,7 +1699,7 @@ static void _php_image_output(INTERNAL_F + char buf[4096]; + char *path; + +- tmp = php_open_temporary_file("", "", &path TSRMLS_CC); ++ tmp = php_open_temporary_file(NULL, NULL, &path TSRMLS_CC); + if (tmp == NULL) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to open temporary file"); + RETURN_FALSE; +@@ -3017,7 +3017,8 @@ static void php_imagettftext_common(INTE + { + zval *IM, *EXT = NULL; + gdImagePtr im=NULL; +- int col = -1, x = -1, y = -1, str_len, fontname_len, i, brect[8]; ++ long col = -1, x = -1, y = -1; ++ int str_len, fontname_len, i, brect[8]; + double ptsize, angle; + unsigned char *str = NULL, *fontname = NULL; + char *error = NULL; diff --git a/dev-lang/php/files/4.3.11/php4.3.11-globals_overwrite.patch b/dev-lang/php/files/4.3.11/php4.3.11-globals_overwrite.patch new file mode 100644 index 0000000..d3eb55c --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-globals_overwrite.patch @@ -0,0 +1,559 @@ +--- ext/standard/array.c 2004-12-23 17:40:03.000000000 +0100 ++++ ext/standard/array.c 2005-10-31 23:26:23.000000000 +0100 +@@ -22,7 +22,7 @@ + */ + + +-/* $Id: array.c,v 1.199.2.42 2004/12/23 16:40:03 tony2001 Exp $ */ ++/* $Id: array.c,v 1.199.2.44.2.9 2005/10/03 14:05:07 iliaa Exp $ */ + + #include "php.h" + #include "php_ini.h" +@@ -631,7 +640,7 @@ + s = *((Bucket **) b); + + if (f->nKeyLength) { +- Z_STRVAL(key1) = estrndup(f->arKey, f->nKeyLength); ++ Z_STRVAL(key1) = estrndup(f->arKey, f->nKeyLength-1); + Z_STRLEN(key1) = f->nKeyLength-1; + Z_TYPE(key1) = IS_STRING; + } else { +@@ -639,7 +648,7 @@ + Z_TYPE(key1) = IS_LONG; + } + if (s->nKeyLength) { +- Z_STRVAL(key2) = estrndup(s->arKey, s->nKeyLength); ++ Z_STRVAL(key2) = estrndup(s->arKey, s->nKeyLength-1); + Z_STRLEN(key2) = s->nKeyLength-1; + Z_TYPE(key2) = IS_STRING; + } else { +@@ -1243,6 +1252,10 @@ + /* break omitted intentionally */ + + case EXTR_OVERWRITE: ++ /* GLOBALS protection */ ++ if (var_exists && !strcmp(var_name, "GLOBALS")) { ++ break; ++ } + smart_str_appendl(&final_name, var_name, var_name_len); + break; + +@@ -1291,14 +1304,18 @@ + zval **orig_var; + + if (zend_hash_find(EG(active_symbol_table), final_name.c, final_name.len+1, (void **) &orig_var) == SUCCESS) { +- zval_ptr_dtor(orig_var); +- + SEPARATE_ZVAL_TO_MAKE_IS_REF(entry); + zval_add_ref(entry); + ++ zval_ptr_dtor(orig_var); ++ + *orig_var = *entry; + } else { +- (*entry)->is_ref = 1; ++ if ((*var_array)->refcount > 1) { ++ SEPARATE_ZVAL_TO_MAKE_IS_REF(entry); ++ } else { ++ (*entry)->is_ref = 1; ++ } + zval_add_ref(entry); + zend_hash_update(EG(active_symbol_table), final_name.c, final_name.len+1, (void **) entry, sizeof(zval *), NULL); + } +@@ -1818,8 +1835,8 @@ + hashtable and replace it with new one */ + new_hash = php_splice(Z_ARRVAL_P(stack), 0, 0, &args[1], argc-1, NULL); + zend_hash_destroy(Z_ARRVAL_P(stack)); +- efree(Z_ARRVAL_P(stack)); +- Z_ARRVAL_P(stack) = new_hash; ++ *Z_ARRVAL_P(stack) = *new_hash; ++ FREE_HASHTABLE(new_hash); + + /* Clean up and return the number of elements in the stack */ + efree(args); +@@ -1896,8 +1913,8 @@ + + /* Replace input array's hashtable with the new one */ + zend_hash_destroy(Z_ARRVAL_P(array)); +- efree(Z_ARRVAL_P(array)); +- Z_ARRVAL_P(array) = new_hash; ++ *Z_ARRVAL_P(array) = *new_hash; ++ FREE_HASHTABLE(new_hash); + + /* Clean up */ + if (argc == 4) +@@ -2384,8 +2401,8 @@ + + /* Copy the result hash into return value */ + zend_hash_destroy(Z_ARRVAL_P(return_value)); +- efree(Z_ARRVAL_P(return_value)); +- Z_ARRVAL_P(return_value) = new_hash; ++ *Z_ARRVAL_P(return_value) = *new_hash; ++ FREE_HASHTABLE(new_hash); + + /* Clean up */ + efree(pads); +@@ -2483,7 +2500,7 @@ + zend_hash_index_update(Z_ARRVAL_P(return_value), num_key, entry, sizeof(entry), NULL); + break; + case HASH_KEY_IS_STRING: +- new_key=estrndup(string_key,str_key_len); ++ new_key=estrndup(string_key,str_key_len - 1); + if (change_to_upper) + php_strtoupper(new_key, str_key_len - 1); + else +@@ -2609,6 +2626,15 @@ + /* copy the argument array */ + *return_value = **args[0]; + zval_copy_ctor(return_value); ++ if (return_value->value.ht == &EG(symbol_table)) { ++ HashTable *ht; ++ zval *tmp; ++ ++ ALLOC_HASHTABLE(ht); ++ zend_hash_init(ht, 0, NULL, ZVAL_PTR_DTOR, 0); ++ zend_hash_copy(ht, return_value->value.ht, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); ++ return_value->value.ht = ht; ++ } + + /* go through the lists and look for common values */ + while (*ptrs[0]) { +@@ -2759,6 +2785,15 @@ + /* copy the argument array */ + *return_value = **args[0]; + zval_copy_ctor(return_value); ++ if (return_value->value.ht == &EG(symbol_table)) { ++ HashTable *ht; ++ zval *tmp; ++ ++ ALLOC_HASHTABLE(ht); ++ zend_hash_init(ht, 0, NULL, ZVAL_PTR_DTOR, 0); ++ zend_hash_copy(ht, return_value->value.ht, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); ++ return_value->value.ht = ht; ++ } + + /* go through the lists and look for values of ptr[0] + that are not in the others */ +@@ -3229,8 +3264,11 @@ + efree(callback_name); + + if (ZEND_NUM_ARGS() > 2) { +- convert_to_long_ex(initial); +- result = *initial; ++ ALLOC_ZVAL(result); ++ *result = **initial; ++ zval_copy_ctor(result); ++ convert_to_long(result); ++ INIT_PZVAL(result); + } else { + MAKE_STD_ZVAL(result); + ZVAL_NULL(result); +@@ -3246,6 +3284,7 @@ + if (result) { + *return_value = *result; + zval_copy_ctor(return_value); ++ zval_ptr_dtor(&result); + } + return; + } +@@ -3282,6 +3321,7 @@ + PHP_FUNCTION(array_filter) + { + zval **input, **callback = NULL; ++ zval *array, *func = NULL; + zval **operand; + zval **args[1]; + zval *retval = NULL; +@@ -3300,9 +3340,13 @@ + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The first argument should be an array"); + return; + } ++ if (callback) { ++ func = *callback; ++ } ++ array = *input; + + if (ZEND_NUM_ARGS() > 1) { +- if (!zend_is_callable(*callback, 0, &callback_name)) { ++ if (!zend_is_callable(func, 0, &callback_name)) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The second argument, '%s', should be a valid callback", callback_name); + efree(callback_name); + return; +@@ -3311,16 +3355,16 @@ + } + + array_init(return_value); +- if (zend_hash_num_elements(Z_ARRVAL_PP(input)) == 0) ++ if (zend_hash_num_elements(Z_ARRVAL_P(array)) == 0) + return; + +- for (zend_hash_internal_pointer_reset_ex(Z_ARRVAL_PP(input), &pos); +- zend_hash_get_current_data_ex(Z_ARRVAL_PP(input), (void **)&operand, &pos) == SUCCESS; +- zend_hash_move_forward_ex(Z_ARRVAL_PP(input), &pos)) { ++ for (zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(array), &pos); ++ zend_hash_get_current_data_ex(Z_ARRVAL_P(array), (void **)&operand, &pos) == SUCCESS; ++ zend_hash_move_forward_ex(Z_ARRVAL_P(array), &pos)) { + +- if (callback) { ++ if (func) { + args[0] = operand; +- if (call_user_function_ex(EG(function_table), NULL, *callback, &retval, 1, args, 0, NULL TSRMLS_CC) == SUCCESS && retval) { ++ if (call_user_function_ex(EG(function_table), NULL, func, &retval, 1, args, 0, NULL TSRMLS_CC) == SUCCESS && retval) { + if (!zend_is_true(retval)) { + zval_ptr_dtor(&retval); + continue; +@@ -3334,7 +3378,7 @@ + continue; + + zval_add_ref(operand); +- switch (zend_hash_get_current_key_ex(Z_ARRVAL_PP(input), &string_key, &string_key_len, &num_key, 0, &pos)) { ++ switch (zend_hash_get_current_key_ex(Z_ARRVAL_P(array), &string_key, &string_key_len, &num_key, 0, &pos)) { + case HASH_KEY_IS_STRING: + zend_hash_update(Z_ARRVAL_P(return_value), string_key, + string_key_len, operand, sizeof(zval *), NULL); +@@ -3401,6 +3445,7 @@ + efree(array_pos); + return; + } ++ SEPARATE_ZVAL_IF_NOT_REF(pargs[i]); + args[i] = *pargs[i]; + array_len[i] = zend_hash_num_elements(Z_ARRVAL_PP(pargs[i])); + if (array_len[i] > maxlen) { +--- ext/standard/basic_functions.c 2005-01-18 12:01:20.000000000 +0100 ++++ ext/standard/basic_functions.c 2005-10-31 23:29:26.000000000 +0100 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: basic_functions.c,v 1.543.2.47 2005/01/18 11:01:20 sniper Exp $ */ ++/* $Id: basic_functions.c,v 1.543.2.51.2.3 2005/09/29 16:31:48 iliaa Exp $ */ + + #include "php.h" + #include "php_streams.h" +@@ -42,18 +42,7 @@ + #include <time.h> + #include <stdio.h> + +-#ifndef NETWARE + #include <netdb.h> +-#else +-/*#include "netware/env.h"*/ /* Temporary */ +-#ifdef NEW_LIBC /* Same headers hold good for Winsock and Berkeley sockets */ +-#include <netinet/in.h> +-/*#include <arpa/inet.h>*/ +-#include <netdb.h> +-#else +-#include <sys/socket.h> +-#endif +-#endif + + #if HAVE_ARPA_INET_H + # include <arpa/inet.h> +@@ -813,8 +802,8 @@ + PHP_FE(prev, first_arg_force_ref) + PHP_FE(next, first_arg_force_ref) + PHP_FE(reset, first_arg_force_ref) +- PHP_FE(current, first_arg_force_ref) +- PHP_FE(key, first_arg_force_ref) ++ PHP_FE(current, NULL) ++ PHP_FE(key, NULL) + PHP_FE(min, NULL) + PHP_FE(max, NULL) + PHP_FE(in_array, NULL) +@@ -944,6 +933,13 @@ + static void php_putenv_destructor(putenv_entry *pe) + { + if (pe->previous_value) { ++#if _MSC_VER ++ /* VS.Net has a bug in putenv() when setting a variable that ++ * is already set; if the SetEnvironmentVariable() API call ++ * fails, the Crt will double free() a string. ++ * We try to avoid this by setting our own value first */ ++ SetEnvironmentVariable(pe->key, "bugbug"); ++#endif + putenv(pe->previous_value); + } else { + # if HAVE_UNSETENV +@@ -1232,11 +1228,10 @@ + } + STR_FREE(BG(locale_string)); + +- if (FG(stream_wrappers)) { +- zend_hash_destroy(FG(stream_wrappers)); +- efree(FG(stream_wrappers)); +- FG(stream_wrappers) = NULL; +- } ++ /* ++ FG(stream_wrappers) are destroyed ++ during php_request_shutdown() ++ */ + + PHP_RSHUTDOWN(fsock) (SHUTDOWN_FUNC_ARGS_PASSTHRU); + PHP_RSHUTDOWN(filestat) (SHUTDOWN_FUNC_ARGS_PASSTHRU); +@@ -1430,6 +1425,14 @@ + } + } + ++#if _MSC_VER ++ /* VS.Net has a bug in putenv() when setting a variable that ++ * is already set; if the SetEnvironmentVariable() API call ++ * fails, the Crt will double free() a string. ++ * We try to avoid this by setting our own value first */ ++ SetEnvironmentVariable(pe.key, "bugbug"); ++#endif ++ + if (putenv(pe.putenv_string) == 0) { /* success */ + zend_hash_add(&BG(putenv_ht), pe.key, pe.key_len+1, (void **) &pe, sizeof(putenv_entry), NULL); + #ifdef HAVE_TZSET +@@ -2089,17 +2092,21 @@ + static int user_shutdown_function_call(php_shutdown_function_entry *shutdown_function_entry TSRMLS_DC) + { + zval retval; ++ char *function_name = NULL; + +- if (call_user_function( EG(function_table), NULL, +- shutdown_function_entry->arguments[0], +- &retval, +- shutdown_function_entry->arg_count - 1, +- shutdown_function_entry->arguments + 1 +- TSRMLS_CC ) == SUCCESS ) { ++ if (!zend_is_callable(shutdown_function_entry->arguments[0], 0, &function_name)) { ++ php_error(E_WARNING, "(Registered shutdown functions) Unable to call %s() - function does not exist", function_name); ++ } else if (call_user_function(EG(function_table), NULL, ++ shutdown_function_entry->arguments[0], ++ &retval, ++ shutdown_function_entry->arg_count - 1, ++ shutdown_function_entry->arguments + 1 ++ TSRMLS_CC ) == SUCCESS) ++ { + zval_dtor(&retval); +- +- } else { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to call %s() - function does not exist", Z_STRVAL_P(shutdown_function_entry->arguments[0])); ++ } ++ if (function_name) { ++ efree(function_name); + } + return 0; + } +@@ -2192,6 +2199,7 @@ + PHP_FUNCTION(register_shutdown_function) + { + php_shutdown_function_entry shutdown_function_entry; ++ char *function_name = NULL; + int i; + + shutdown_function_entry.arg_count = ZEND_NUM_ARGS(); +@@ -2200,26 +2208,31 @@ + WRONG_PARAM_COUNT; + } + +- shutdown_function_entry.arguments = (pval **) safe_emalloc(sizeof(pval *), shutdown_function_entry.arg_count, 0); ++ shutdown_function_entry.arguments = (zval **) safe_emalloc(sizeof(zval *), shutdown_function_entry.arg_count, 0); + + if (zend_get_parameters_array(ht, shutdown_function_entry.arg_count, shutdown_function_entry.arguments) == FAILURE) { + RETURN_FALSE; + } + +- /* Prevent entering of anything but arrays/strings */ +- if (Z_TYPE_P(shutdown_function_entry.arguments[0]) != IS_ARRAY) { +- convert_to_string(shutdown_function_entry.arguments[0]); +- } +- +- if (!BG(user_shutdown_function_names)) { +- ALLOC_HASHTABLE(BG(user_shutdown_function_names)); +- zend_hash_init(BG(user_shutdown_function_names), 0, NULL, (void (*)(void *)) user_shutdown_function_dtor, 0); +- } ++ /* Prevent entering of anything but valid callback (syntax check only!) */ ++ if (!zend_is_callable(shutdown_function_entry.arguments[0], 1, &function_name)) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid shutdown callback '%s' passed", function_name); ++ efree(shutdown_function_entry.arguments); ++ RETVAL_FALSE; ++ } else { ++ if (!BG(user_shutdown_function_names)) { ++ ALLOC_HASHTABLE(BG(user_shutdown_function_names)); ++ zend_hash_init(BG(user_shutdown_function_names), 0, NULL, (void (*)(void *)) user_shutdown_function_dtor, 0); ++ } + +- for (i = 0; i < shutdown_function_entry.arg_count; i++) { +- shutdown_function_entry.arguments[i]->refcount++; ++ for (i = 0; i < shutdown_function_entry.arg_count; i++) { ++ shutdown_function_entry.arguments[i]->refcount++; ++ } ++ zend_hash_next_index_insert(BG(user_shutdown_function_names), &shutdown_function_entry, sizeof(php_shutdown_function_entry), NULL); ++ } ++ if (function_name) { ++ efree(function_name); + } +- zend_hash_next_index_insert(BG(user_shutdown_function_names), &shutdown_function_entry, sizeof(php_shutdown_function_entry), NULL); + } + /* }}} */ + +@@ -3014,11 +3027,25 @@ + prefix = va_arg(args, char *); + prefix_len = va_arg(args, uint); + +- new_key_len = prefix_len + hash_key->nKeyLength; +- new_key = (char *) emalloc(new_key_len); ++ if (!prefix_len) { ++ if (!hash_key->nKeyLength) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Numeric key detected - possible security hazard."); ++ return 0; ++ } else if (!strcmp(hash_key->arKey, "GLOBALS")) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Attempted GLOBALS variable overwrite."); ++ return 0; ++ } ++ } ++ ++ if (hash_key->nKeyLength) { ++ new_key_len = prefix_len + hash_key->nKeyLength; ++ new_key = (char *) emalloc(new_key_len); + +- memcpy(new_key, prefix, prefix_len); +- memcpy(new_key+prefix_len, hash_key->arKey, hash_key->nKeyLength); ++ memcpy(new_key, prefix, prefix_len); ++ memcpy(new_key+prefix_len, hash_key->arKey, hash_key->nKeyLength); ++ } else { ++ new_key_len = spprintf(&new_key, 0, "%s%ld", prefix, hash_key->h); ++ } + + zend_hash_del(&EG(symbol_table), new_key, new_key_len); + ZEND_SET_SYMBOL_WITH_LENGTH(&EG(symbol_table), new_key, new_key_len, *var, (*var)->refcount+1, 0); +--- ext/standard/string.c 2005-01-20 18:57:41.000000000 +0100 ++++ ext/standard/string.c 2005-10-31 23:34:37.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: string.c,v 1.333.2.48 2005/01/20 17:57:41 iliaa Exp $ */ ++/* $Id: string.c,v 1.333.2.52.2.1 2005/09/28 22:34:04 iliaa Exp $ */ + + /* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */ + +@@ -1317,8 +1317,6 @@ + if (!Z_STRLEN_PP(needle)) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Empty delimiter."); + efree(haystack_orig); +- zval_ptr_dtor(haystack); +- zval_ptr_dtor(needle); + RETURN_FALSE; + } + +@@ -1339,8 +1337,6 @@ + RETVAL_FALSE; + } + +- zval_ptr_dtor(haystack); +- zval_ptr_dtor(needle); + efree(haystack_orig); + } + /* }}} */ +@@ -1576,7 +1572,13 @@ + } + + if (chunklen > Z_STRLEN_PP(p_str)) { +- RETURN_STRINGL(Z_STRVAL_PP(p_str), Z_STRLEN_PP(p_str), 1); ++ /* to maintain BC, we must return original string + ending */ ++ result_len = endlen + Z_STRLEN_PP(p_str); ++ result = emalloc(result_len + 1); ++ memcpy(result, Z_STRVAL_PP(p_str), Z_STRLEN_PP(p_str)); ++ memcpy(result + Z_STRLEN_PP(p_str), end, endlen); ++ result[result_len] = '\0'; ++ RETURN_STRINGL(result, result_len, 0); + } + + if (!Z_STRLEN_PP(p_str)) { +@@ -3169,7 +3179,6 @@ + zval *sarg; + char *res = NULL; + int argCount; +- int old_rg; + + argCount = ARG_COUNT(ht); + if (argCount < 1 || argCount > 2 || zend_get_parameters_ex(argCount, &arg, &arrayArg) == FAILURE) { +@@ -3182,19 +3191,18 @@ + res = estrndup(Z_STRVAL_P(sarg), Z_STRLEN_P(sarg)); + } + +- old_rg = PG(register_globals); + if (argCount == 1) { +- PG(register_globals) = 1; +- sapi_module.treat_data(PARSE_STRING, res, NULL TSRMLS_CC); ++ zval tmp; ++ Z_ARRVAL(tmp) = EG(active_symbol_table); ++ ++ sapi_module.treat_data(PARSE_STRING, res, &tmp TSRMLS_CC); + } else { +- PG(register_globals) = 0; + /* Clear out the array that was passed in. */ + zval_dtor(*arrayArg); + array_init(*arrayArg); + + sapi_module.treat_data(PARSE_STRING, res, *arrayArg TSRMLS_CC); + } +- PG(register_globals) = old_rg; + } + /* }}} */ + +--- main/php_variables.c 2004-10-18 17:08:46.000000000 +0200 ++++ main/php_variables.c 2005-10-31 23:39:38.000000000 +0100 +@@ -16,7 +16,7 @@ + | Zeev Suraski <zeev@zend.com> | + +----------------------------------------------------------------------+ + */ +-/* $Id: php_variables.c,v 1.45.2.8 2004/10/18 15:08:46 tony2001 Exp $ */ ++/* $Id: php_variables.c,v 1.45.2.13.2.4 2005/10/02 11:33:27 rrichards Exp $ */ + + #include <stdio.h> + #include "php.h" +@@ -73,6 +73,10 @@ + symtable1 = Z_ARRVAL_P(track_vars_array); + } else if (PG(register_globals)) { + symtable1 = EG(active_symbol_table); ++ /* GLOBALS hijack attempt, reject parameter */ ++ if (!strncmp("GLOBALS", var, sizeof("GLOBALS")) || !strncmp("GLOBALS", var, sizeof("GLOBALS[")-1)) { ++ return; ++ } + } + if (!symtable1) { + /* Nothing to do */ +@@ -99,6 +103,13 @@ + zval_dtor(val); + return; + } ++ ++ /* GLOBALS hijack attempt, reject parameter */ ++ if (symtable1 == EG(active_symbol_table) && !strcmp("GLOBALS", var)) { ++ zval_dtor(val); ++ return; ++ } ++ + /* ensure that we don't have spaces or dots in the variable name (not binary safe) */ + for (p=var; *p; p++) { + switch(*p) { +@@ -182,11 +193,25 @@ + if (!index) { + zend_hash_next_index_insert(symtable1, &gpc_element, sizeof(zval *), (void **) &gpc_element_p); + } else { ++ zval **tmp; ++ + if (PG(magic_quotes_gpc) && (index!=var)) { + char *escaped_index = php_addslashes(index, index_len, &index_len, 0 TSRMLS_CC); ++ ++ if (PG(http_globals)[TRACK_VARS_COOKIE] && symtable1 == Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_COOKIE]) && ++ zend_hash_find(symtable1, escaped_index, index_len+1, (void **) &tmp) != FAILURE) { ++ efree(escaped_index); ++ break; ++ } ++ + zend_hash_update(symtable1, escaped_index, index_len+1, &gpc_element, sizeof(zval *), (void **) &gpc_element_p); + efree(escaped_index); + } else { ++ if (PG(http_globals)[TRACK_VARS_COOKIE] && symtable1 == Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_COOKIE]) && ++ zend_hash_find(symtable1, index, index_len+1, (void **) &tmp) != FAILURE) { ++ break; ++ } ++ + zend_hash_update(symtable1, index, index_len+1, &gpc_element, sizeof(zval *), (void **) &gpc_element_p); + } + } diff --git a/dev-lang/php/files/4.3.11/php4.3.11-mbstring-header_inj.patch b/dev-lang/php/files/4.3.11/php4.3.11-mbstring-header_inj.patch new file mode 100644 index 0000000..1eb4c98 --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-mbstring-header_inj.patch @@ -0,0 +1,151 @@ +--- ext/mbstring/mbstring.c 2005-02-21 09:03:47.000000000 +0100 ++++ ext/mbstring/mbstring.c 2005-12-03 02:34:47.000000000 +0100 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: mbstring.c,v 1.142.2.47 2005/02/21 08:03:47 moriyoshi Exp $ */ ++/* $Id: mbstring.c,v 1.142.2.47.2.5 2005/11/21 23:21:19 hirokawa Exp $ */ + + /* + * PHP4 Multibyte String module "mbstring" +@@ -55,6 +55,7 @@ + #include "mbstring.h" + #include "ext/standard/php_string.h" + #include "ext/standard/php_mail.h" ++#include "ext/standard/exec.h" + #include "ext/standard/url.h" + #include "main/php_output.h" + #include "ext/standard/info.h" +@@ -2923,16 +2924,17 @@ + } + /* }}} */ + +-/* {{{ proto string mb_encode_mimeheader(string str [, string charset [, string transfer-encoding [, string linefeed]]]) ++/* {{{ proto string mb_encode_mimeheader(string str [, string charset [, string transfer-encoding [, string linefeed [, int indent]]]]) + Converts the string to MIME "encoded-word" in the format of =?charset?(B|Q)?encoded_string?= */ + PHP_FUNCTION(mb_encode_mimeheader) + { +- pval **argv[4]; ++ pval **argv[5]; + enum mbfl_no_encoding charset, transenc; + mbfl_string string, result, *ret; + char *p, *linefeed; ++ int indent; + +- if (ZEND_NUM_ARGS() < 1 || ZEND_NUM_ARGS() > 4 || zend_get_parameters_array_ex(ZEND_NUM_ARGS(), argv) == FAILURE) { ++ if (ZEND_NUM_ARGS() < 1 || ZEND_NUM_ARGS() > 5 || zend_get_parameters_array_ex(ZEND_NUM_ARGS(), argv) == FAILURE) { + WRONG_PARAM_COUNT; + } + +@@ -2969,6 +2971,12 @@ + linefeed = Z_STRVAL_PP(argv[3]); + } + ++ indent = 0; ++ if (ZEND_NUM_ARGS() >= 5) { ++ convert_to_long_ex(argv[4]); ++ indent = Z_LVAL_PP(argv[4]); ++ } ++ + convert_to_string_ex(argv[0]); + mbfl_string_init(&string); + mbfl_string_init(&result); +@@ -2976,7 +2984,7 @@ + string.no_encoding = MBSTRG(current_internal_encoding); + string.val = Z_STRVAL_PP(argv[0]); + string.len = Z_STRLEN_PP(argv[0]); +- ret = mbfl_mime_header_encode(&string, &result, charset, transenc, linefeed, 0); ++ ret = mbfl_mime_header_encode(&string, &result, charset, transenc, linefeed, indent); + if (ret != NULL) { + RETVAL_STRINGL((char *)ret->val, ret->len, 0) /* the string is already strdup()'ed */ + } else { +@@ -3459,6 +3467,22 @@ + * Sends an email message with MIME scheme + */ + #if HAVE_SENDMAIL ++#define SKIP_LONG_HEADER_SEP_MBSTRING(str, pos) \ ++ if (str[pos] == '\r' && str[pos + 1] == '\n' && (str[pos + 2] == ' ' || str[pos + 2] == '\t')) { \ ++ pos += 3; \ ++ while (str[pos] == ' ' || str[pos] == '\t') { \ ++ pos++; \ ++ } \ ++ continue; \ ++ } \ ++ else if (str[pos] == '\n' && (str[pos + 1] == ' ' || str[pos + 1] == '\t')) { \ ++ pos += 2; \ ++ while (str[pos] == ' ' || str[pos] == '\t') { \ ++ pos++; \ ++ } \ ++ continue; \ ++ } \ ++ + PHP_FUNCTION(mb_send_mail) + { + int argc, n; +@@ -3474,6 +3498,8 @@ + mbfl_memory_device device; /* automatic allocateable buffer for additional header */ + const mbfl_language *lang; + int err = 0; ++ char *to_r; ++ int to_len, i; + + /* initialize */ + mbfl_memory_device_init(&device, 0, 0); +@@ -3500,6 +3526,32 @@ + convert_to_string_ex(argv[0]); + if (Z_STRVAL_PP(argv[0])) { + to = Z_STRVAL_PP(argv[0]); ++ to_len = Z_STRLEN_PP(argv[0]); ++ if (to_len > 0) { ++ to_r = estrndup(to, to_len); ++ for (; to_len; to_len--) { ++ if (!isspace((unsigned char) to_r[to_len - 1])) { ++ break; ++ } ++ to_r[to_len - 1] = '\0'; ++ } ++ for (i = 0; to_r[i]; i++) { ++ if (iscntrl((unsigned char) to_r[i])) { ++ /* According to RFC 822, section 3.1.1 long headers may be ++separated into ++ * parts using CRLF followed at least one linear-white-space ++character ('\t' or ' '). ++ * To prevent these separators from being replaced with a space, ++we use the ++ * SKIP_LONG_HEADER_SEP_MBSTRING to skip over them. ++ */ ++ SKIP_LONG_HEADER_SEP_MBSTRING(to_r, i); ++ to_r[i] = ' '; ++ } ++ } ++ } else { ++ to_r = to; ++ } + } else { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Missing To: field"); + err = 1; +@@ -3594,12 +3646,22 @@ + extra_cmd = Z_STRVAL_PP(argv[4]); + } + +- if (!err && php_mail(to, subject, message, headers, extra_cmd TSRMLS_CC)) { ++ if (extra_cmd) { ++ extra_cmd = php_escape_shell_cmd(extra_cmd); ++ } ++ ++ if (!err && php_mail(to_r, subject, message, headers, extra_cmd TSRMLS_CC)) { + RETVAL_TRUE; + } else { + RETVAL_FALSE; + } + ++ if (to_r != to) { ++ efree(to_r); ++ } ++ if (extra_cmd) { ++ efree(extra_cmd); ++ } + if (subject_buf) { + efree((void *)subject_buf); + } diff --git a/dev-lang/php/files/4.3.11/php4.3.11-multilib-search-path.patch b/dev-lang/php/files/4.3.11/php4.3.11-multilib-search-path.patch new file mode 100644 index 0000000..6d994cf --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-multilib-search-path.patch @@ -0,0 +1,1488 @@ +diff -Nru php-4.3.11.orig/acinclude.m4 php-4.3.11/acinclude.m4 +--- php-4.3.11.orig/acinclude.m4 2005-01-25 14:03:06.000000000 +0100 ++++ php-4.3.11/acinclude.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -194,7 +194,7 @@ + unset ac_new_flags + for i in [$]$1; do + case [$]i in +- -L/usr/lib|-L/usr/lib/[)] ;; ++ -L/usr/lib|-L/usr/lib/|-L/usr/lib64|-L/usr/lib64/[)] ;; + *[)] ac_new_flags="[$]ac_new_flags [$]i" ;; + esac + done +@@ -645,7 +645,7 @@ + ]) + + AC_DEFUN([PHP_PROG_SENDMAIL],[ +-PHP_ALT_PATH=/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib ++PHP_ALT_PATH=/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib:/usr/lib64 + AC_PATH_PROG(PROG_SENDMAIL, sendmail,[], $PATH:$PHP_ALT_PATH) + if test -n "$PROG_SENDMAIL"; then + AC_DEFINE(HAVE_SENDMAIL,1,[whether you have sendmail]) +@@ -856,7 +856,9 @@ + dnl add a library to linkpath/runpath + dnl + AC_DEFUN([PHP_ADD_LIBPATH],[ +- if test "$1" != "/usr/lib"; then ++ case x$1 in ++ x/usr/lib|x/usr/lib64) ;; ++ *) + PHP_EXPAND_PATH($1, ai_p) + ifelse([$2],,[ + _PHP_ADD_LIBPATH_GLOBAL([$ai_p]) +@@ -866,8 +868,8 @@ + else + _PHP_ADD_LIBPATH_GLOBAL([$ai_p]) + fi +- ]) +- fi ++ ]) ;; ++ esac + ]) + + dnl +@@ -1651,15 +1653,20 @@ + fi + + for i in $PHP_KERBEROS; do +- if test -f $i/lib/libkrb5.a || test -f $i/lib/libkrb5.$SHLIB_SUFFIX_NAME; then ++ if test -f $i/lib/libkrb5.a -o -f $i/lib/libkrb5.$SHLIB_SUFFIX_NAME; then + PHP_KERBEROS_DIR=$i ++ PHP_KERBEROS_LIBDIR=$i/lib ++ break ++ elif test -f $i/lib64/libkrb5.a -o -f $i/lib64/libkrb5.$SHLIB_SUFFIX_NAME; then ++ PHP_KERBEROS_DIR=$i ++ PHP_KERBEROS_LIBDIR=$i/lib64 + break + fi + done + + if test "$PHP_KERBEROS_DIR"; then + found_kerberos=yes +- PHP_ADD_LIBPATH($PHP_KERBEROS_DIR/lib, $1) ++ PHP_ADD_LIBPATH($PHP_KERBEROS_LIBDIR, $1) + PHP_ADD_LIBRARY(gssapi_krb5, 1, $1) + PHP_ADD_LIBRARY(krb5, 1, $1) + PHP_ADD_LIBRARY(k5crypto, 1, $1) +@@ -1727,6 +1734,9 @@ + if test -r $i/lib/libssl.a -o -r $i/lib/libssl.$SHLIB_SUFFIX_NAME; then + OPENSSL_LIBDIR=$i/lib + fi ++ if test -r $i/lib64/libssl.a -o -r $i/lib64/libssl.$SHLIB_SUFFIX_NAME; then ++ OPENSSL_LIBDIR=$i/lib64 ++ fi + test -n "$OPENSSL_INCDIR" && test -n "$OPENSSL_LIBDIR" && break + done + +@@ -1847,7 +1857,9 @@ + fi + + if test -f $ICONV_DIR/lib/lib$iconv_lib_name.a || +- test -f $ICONV_DIR/lib/lib$iconv_lib_name.$SHLIB_SUFFIX_NAME ++ test -f $ICONV_DIR/lib/lib$iconv_lib_name.$SHLIB_SUFFIX_NAME || ++ test -f $ICONV_DIR/lib64/lib$iconv_lib_name.a || ++ test -f $ICONV_DIR/lib64/lib$iconv_lib_name.$SHLIB_SUFFIX_NAME + then + PHP_CHECK_LIBRARY($iconv_lib_name, libiconv, [ + found_iconv=yes +diff -Nru php-4.3.11.orig/ext/bz2/config.m4 php-4.3.11/ext/bz2/config.m4 +--- php-4.3.11.orig/ext/bz2/config.m4 2004-01-21 06:04:50.000000000 +0100 ++++ php-4.3.11/ext/bz2/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -19,6 +19,12 @@ + done + fi + ++ for j in lib64 lib; do ++ if test -d $BZIP_DIR/$j; then ++ BZIP_LIBDIR=$BZIP_DIR/$j ++ fi ++ done ++ + if test -z "$BZIP_DIR"; then + AC_MSG_RESULT(not found) + AC_MSG_ERROR(Please reinstall the BZip2 distribution) +@@ -27,12 +33,12 @@ + PHP_CHECK_LIBRARY(bz2, BZ2_bzerror, + [ + PHP_ADD_INCLUDE($BZIP_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(bz2, $BZIP_DIR/lib, BZ2_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(bz2, $BZIP_LIBDIR, BZ2_SHARED_LIBADD) + AC_DEFINE(HAVE_BZ2,1,[ ]) + ], [ + AC_MSG_ERROR(bz2 module requires libbz2 >= 1.0.0) + ], [ +- -L$BZIP_DIR/lib ++ -L$BZIP_LIBDIR + ]) + + PHP_NEW_EXTENSION(bz2, bz2.c, $ext_shared) +diff -Nru php-4.3.11.orig/ext/curl/config.m4 php-4.3.11/ext/curl/config.m4 +--- php-4.3.11.orig/ext/curl/config.m4 2005-02-09 17:23:49.000000000 +0100 ++++ php-4.3.11/ext/curl/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -23,6 +23,12 @@ + done + fi + ++ for j in lib64 lib; do ++ if test -d $CURL_DIR/$j; then ++ CURL_LIBDIR=$CURL_DIR/$j ++ fi ++ done ++ + if test -z "$CURL_DIR"; then + AC_MSG_RESULT(not found) + AC_MSG_ERROR(Please reinstall the libcurl distribution - +@@ -51,7 +57,7 @@ + + PHP_ADD_INCLUDE($CURL_DIR/include) + PHP_EVAL_LIBLINE($CURL_LIBS, CURL_SHARED_LIBADD) +- PHP_ADD_LIBRARY_WITH_PATH(curl, $CURL_DIR/lib, CURL_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(curl, $CURL_LIBDIR, CURL_SHARED_LIBADD) + + PHP_CHECK_LIBRARY(curl,curl_easy_perform, + [ +@@ -59,14 +65,14 @@ + ],[ + AC_MSG_ERROR(There is something wrong. Please check config.log for more information.) + ],[ +- $CURL_LIBS -L$CURL_DIR/lib ++ $CURL_LIBS -L$CURL_LIBDIR + ]) + + PHP_CHECK_LIBRARY(curl,curl_version_info, + [ + AC_DEFINE(HAVE_CURL_VERSION_INFO,1,[ ]) + ],[],[ +- $CURL_LIBS -L$CURL_DIR/lib ++ $CURL_LIBS -L$CURL_LIBDIR + ]) + + dnl if test "$PHP_CURLWRAPPERS" != "no" ; then +diff -Nru php-4.3.11.orig/ext/dba/config.m4 php-4.3.11/ext/dba/config.m4 +--- php-4.3.11.orig/ext/dba/config.m4 2005-01-22 02:37:12.000000000 +0100 ++++ php-4.3.11/ext/dba/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -80,12 +80,18 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + PHP_CHECK_LIBRARY(gdbm, gdbm_open, [ + AC_DEFINE_UNQUOTED(GDBM_INCLUDE_FILE, "$THIS_INCLUDE", [ ]) + AC_DEFINE(DBA_GDBM, 1, [ ]) + THIS_LIBS=gdbm +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + fi + + PHP_DBA_STD_ASSIGN +@@ -110,14 +116,20 @@ + break + fi + done +- ++ ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + for LIB in ndbm db1 c; do + PHP_CHECK_LIBRARY($LIB, dbm_open, [ + AC_DEFINE_UNQUOTED(NDBM_INCLUDE_FILE, "$THIS_INCLUDE", [ ]) + AC_DEFINE(DBA_NDBM, 1, [ ]) + THIS_LIBS=$LIB +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + if test -n "$THIS_LIBS"; then + break + fi +@@ -135,25 +147,28 @@ + dnl parameters(version, library list, function) + AC_DEFUN([PHP_DBA_DB_CHECK],[ + for LIB in $2; do +- if test -f $THIS_PREFIX/lib/lib$LIB.a -o -f $THIS_PREFIX/lib/lib$LIB.$SHLIB_SUFFIX_NAME; then +- PHP_TEMP_LDFLAGS(-L$THIS_PREFIX/lib, -l$LIB,[ +- AC_TRY_LINK([ ++ for LIBDIR in lib64 lib; do ++ if test -f $THIS_PREFIX/$LIBDIR/lib$LIB.a -o -f $THIS_PREFIX/$LIBDIR/lib$LIB.$SHLIB_SUFFIX_NAME; then ++ PHP_TEMP_LDFLAGS(-L$THIS_PREFIX/$LIBDIR, -l$LIB,[ ++ AC_TRY_LINK([ + #include "$THIS_INCLUDE" +- ],[ +- $3; +- ],[ +- AC_EGREP_CPP(yes,[ ++ ],[ ++ $3; ++ ],[ ++ AC_EGREP_CPP(yes,[ + #include "$THIS_INCLUDE" + #if DB_VERSION_MAJOR == $1 +- yes ++ yes + #endif +- ],[ +- THIS_LIBS=$LIB +- break ++ ],[ ++ THIS_LIBS=$LIB ++ break ++ ]) + ]) + ]) +- ]) +- fi ++ fi ++ done ++ test -n "$THIS_LIBS" && break + done + if test -z "$THIS_LIBS"; then + AC_MSG_CHECKING(for db$1 major version) +@@ -314,6 +329,12 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + for LIB in dbm c gdbm; do + PHP_CHECK_LIBRARY($LIB, dbminit, [ +@@ -328,7 +349,7 @@ + fi + AC_DEFINE(DBA_DBM, 1, [ ]) + THIS_LIBS=$LIB +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + if test -n "$THIS_LIBS"; then + break + fi +@@ -364,13 +385,19 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + for LIB in cdb c; do + PHP_CHECK_LIBRARY($LIB, cdb_read, [ + AC_DEFINE_UNQUOTED(CDB_INCLUDE_FILE, "$THIS_INCLUDE", [ ]) + AC_DEFINE(DBA_CDB, 1, [ ]) + THIS_LIBS=$LIB +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + if test -n "$THIS_LIBS"; then + break + fi +diff -Nru php-4.3.11.orig/ext/domxml/config.m4 php-4.3.11/ext/domxml/config.m4 +--- php-4.3.11.orig/ext/domxml/config.m4 2004-12-30 08:02:17.000000000 +0100 ++++ php-4.3.11/ext/domxml/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -48,13 +48,15 @@ + AC_MSG_ERROR(Please reinstall the libxml >= 2.4.14 distribution) + fi + ++ for j in lib64 lib; do ++ if test -d $DOMXML_DIR/$j; then ++ DOMXML_LIBDIR=$DOMXML_DIR/$j ++ fi ++ done ++ + PHP_DOM_CHECK_VERSION + +- if test -f $DOMXML_DIR/lib/libxml2.a -o -f $DOMXML_DIR/lib/libxml2.$SHLIB_SUFFIX_NAME ; then +- DOM_LIBNAME=xml2 +- else +- DOM_LIBNAME=xml +- fi ++ DOM_LIBNAME=xml2 + + XML2_CONFIG=$DOMXML_DIR/bin/xml2-config + +@@ -62,7 +64,7 @@ + DOM_LIBS=`$XML2_CONFIG --libs` + PHP_EVAL_LIBLINE($DOM_LIBS, DOMXML_SHARED_LIBADD) + else +- PHP_ADD_LIBRARY_WITH_PATH($DOM_LIBNAME, $DOMXML_DIR/lib, DOMXML_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH($DOM_LIBNAME, $DOMXML_LIBDIR, DOMXML_SHARED_LIBADD) + fi + + PHP_ADD_INCLUDE($DOMXML_DIR/include$DOMXML_DIR_ADD) +@@ -70,7 +72,13 @@ + if test "$PHP_ZLIB_DIR" = "no"; then + AC_MSG_ERROR(DOMXML requires ZLIB. Use --with-zlib-dir=<DIR>) + else +- PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR/lib, DOMXML_SHARED_LIBADD) ++ for j in lib64 lib; do ++ if test -d $PHP_ZLIB_DIR/$j; then ++ PHP_ZLIB_LIBDIR=$PHP_ZLIB_DIR/$j ++ fi ++ done ++ ++ PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_LIBDIR, DOMXML_SHARED_LIBADD) + fi + + AC_DEFINE(HAVE_DOMXML,1,[ ]) +@@ -135,27 +143,35 @@ + AC_MSG_ERROR(Please reinstall the libxslt >= 1.0.3 distribution) + fi + ++ for j in lib64 lib; do ++ if test -d $DOMXSLT_DIR/$j; then ++ DOMXSLT_LIBDIR=$DOMXSLT_DIR/$j ++ fi ++ done ++ + PHP_DOM_XSLT_CHECK_VERSION + +- PHP_ADD_LIBRARY_WITH_PATH(xslt, $DOMXSLT_DIR/lib, DOMXML_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(xslt, $DOMXSLT_LIBDIR, DOMXML_SHARED_LIBADD) + + PHP_ADD_INCLUDE($DOMXSLT_DIR/include) + + if test "$PHP_DOM" = "no"; then + AC_MSG_ERROR(DOMXSLT requires DOMXML. Use --with-dom=<DIR>) + fi +- +- if test -f $DOMXML_DIR/lib/libxml2.a -o -f $DOMXML_DIR/lib/libxml2.$SHLIB_SUFFIX_NAME ; then +- DOM_LIBNAME=xml2 +- else +- DOM_LIBNAME=xml +- fi + +- PHP_ADD_LIBRARY_WITH_PATH($DOM_LIBNAME, $DOMXML_DIR/lib, DOMXML_SHARED_LIBADD) ++ for j in lib64 lib; do ++ if test -d $DOMXML_DIR/$j; then ++ DOMXML_LIBDIR=$DOMXML_DIR/$j ++ fi ++ done ++ ++ DOM_LIBNAME=xml2 ++ ++ PHP_ADD_LIBRARY_WITH_PATH($DOM_LIBNAME, $DOMXML_LIBDIR, DOMXML_SHARED_LIBADD) + PHP_ADD_INCLUDE($DOMXML_DIR/include$DOMXML_DIR_ADD) + +- if test -f $DOMXML_DIR/lib/libxsltbreakpoint.a -o -f $DOMXML_DIR/lib/libxsltbreakpoint.$SHLIB_SUFFIX_NAME ; then +- PHP_ADD_LIBRARY_WITH_PATH(xsltbreakpoint, $DOMXML_DIR/lib, DOMXML_SHARED_LIBADD) ++ if test -f $DOMXML_LIBDIR/libxsltbreakpoint.a -o -f $DOMXML_LIBDIR/libxsltbreakpoint.$SHLIB_SUFFIX_NAME ; then ++ PHP_ADD_LIBRARY_WITH_PATH(xsltbreakpoint, $DOMXML_LIBDIR, DOMXML_SHARED_LIBADD) + fi + + AC_DEFINE(HAVE_DOMXSLT,1,[ ]) +@@ -185,9 +201,15 @@ + AC_MSG_ERROR(Please reinstall the libxslt >= 1.0.3 distribution) + fi + ++ for j in lib64 lib; do ++ if test -d $DOMEXSLT_DIR/$j; then ++ DOMEXSLT_LIBDIR=$DOMEXSLT_DIR/$j ++ fi ++ done ++ + PHP_DOM_EXSLT_CHECK_VERSION + +- PHP_ADD_LIBRARY_WITH_PATH(exslt, $DOMEXSLT_DIR/lib, DOMXML_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(exslt, $DOMEXSLT_LIBDIR, DOMXML_SHARED_LIBADD) + + PHP_ADD_INCLUDE($DOMEXSLT_DIR/include) + +diff -Nru php-4.3.11.orig/ext/gd/config.m4 php-4.3.11/ext/gd/config.m4 +--- php-4.3.11.orig/ext/gd/config.m4 2005-01-04 07:52:18.000000000 +0100 ++++ php-4.3.11/ext/gd/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -50,8 +50,15 @@ + AC_DEFUN([PHP_GD_JPEG],[ + if test "$PHP_JPEG_DIR" != "no"; then + +- for i in $PHP_JPEG_DIR /usr/local /usr; do +- test -f $i/lib/libjpeg.$SHLIB_SUFFIX_NAME -o -f $i/lib/libjpeg.a && GD_JPEG_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_JPEG_DIR /usr/local /usr; do ++ if test -f "$i/$j/libjpeg.$SHLIB_SUFFIX_NAME" -o -f "$i/$j/libjpeg.a"; then ++ GD_JPEG_DIR=$i ++ GD_JPEG_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_JPEG_DIR" && break + done + + if test -z "$GD_JPEG_DIR"; then +@@ -61,11 +68,11 @@ + PHP_CHECK_LIBRARY(jpeg,jpeg_read_header, + [ + PHP_ADD_INCLUDE($GD_JPEG_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(jpeg, $GD_JPEG_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(jpeg, $GD_JPEG_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libjpeg.(a|so). Please check config.log for more information.]) + ],[ +- -L$GD_JPEG_DIR/lib ++ -L$GD_JPEG_LIB_DIR + ]) + else + AC_MSG_RESULT([If configure fails try --with-jpeg-dir=<DIR>]) +@@ -75,8 +82,15 @@ + AC_DEFUN([PHP_GD_PNG],[ + if test "$PHP_PNG_DIR" != "no"; then + +- for i in $PHP_PNG_DIR /usr/local /usr; do +- test -f $i/lib/libpng.$SHLIB_SUFFIX_NAME -o -f $i/lib/libpng.a && GD_PNG_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_PNG_DIR /usr/local /usr; do ++ if test -f "$i/$j/libpng.$SHLIB_SUFFIX_NAME" -o -f "$i/$j/libpng.a"; then ++ GD_PNG_DIR=$i ++ GD_PNG_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_PNG_DIR" && break + done + + if test -z "$GD_PNG_DIR"; then +@@ -94,12 +108,12 @@ + PHP_CHECK_LIBRARY(png,png_write_image, + [ + PHP_ADD_INCLUDE($GD_PNG_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR/lib, GD_SHARED_LIBADD) +- PHP_ADD_LIBRARY_WITH_PATH(png, $GD_PNG_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_LIB_DIR, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(png, $GD_PNG_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libpng.(a|so) or libz.(a|so). Please check config.log for more information.]) + ],[ +- -L$PHP_ZLIB_DIR/lib -lz -L$GD_PNG_DIR/lib ++ -L$PHP_ZLIB_LIB_DIR -lz -L$GD_PNG_LIB_DIR + ]) + + else +@@ -110,8 +124,15 @@ + AC_DEFUN([PHP_GD_XPM],[ + if test "$PHP_XPM_DIR" != "no"; then + +- for i in $PHP_XPM_DIR /usr/local /usr/X11R6 /usr; do +- test -f $i/lib/libXpm.$SHLIB_SUFFIX_NAME -o -f $i/lib/libXpm.a && GD_XPM_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_XPM_DIR /usr/local /usr/X11R6 /usr; do ++ if test -f "$i/$j/libXpm.$SHLIB_SUFFIX_NAME" -o -f "$i/$j/libXpm.a"; then ++ GD_XPM_DIR=$i ++ GD_XPM_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_XPM_DIR" && break + done + + if test -z "$GD_XPM_DIR"; then +@@ -129,12 +150,12 @@ + PHP_CHECK_LIBRARY(Xpm,XpmFreeXpmImage, + [ + PHP_ADD_INCLUDE($GD_XPM_INC) +- PHP_ADD_LIBRARY_WITH_PATH(Xpm, $GD_XPM_DIR/lib, GD_SHARED_LIBADD) +- PHP_ADD_LIBRARY_WITH_PATH(X11, $GD_XPM_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(Xpm, $GD_XPM_LIB_DIR, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(X11, $GD_XPM_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libXpm.(a|so) or libX11.(a|so). Please check config.log for more information.]) + ],[ +- -L$GD_XPM_DIR/lib -lX11 ++ -L$GD_XPM_LIB_DIR -lX11 + ]) + else + AC_MSG_RESULT(If configure fails try --with-xpm-dir=<DIR>) +@@ -145,25 +166,29 @@ + if test "$PHP_TTF" != "no"; then + if test "$PHP_FREETYPE_DIR" = "no" -o "$PHP_FREETYPE_DIR" = ""; then + if test -n "$PHP_TTF"; then +- for i in $PHP_TTF /usr/local /usr; do +- if test -f "$i/include/freetype.h"; then +- TTF_DIR=$i +- unset TTF_INC_DIR +- fi +- if test -f "$i/include/freetype/freetype.h"; then +- TTF_DIR=$i +- TTF_INC_DIR=$i/include/freetype +- fi +- if test -f "$i/include/freetype1/freetype/freetype.h"; then +- TTF_DIR=$i +- TTF_INC_DIR=$i/include/freetype1/freetype +- fi ++ for j in lib64 lib; do ++ for i in $PHP_TTF /usr/local /usr; do ++ if test -f "$i/$j/libttf.a" -o -f "$i/$j/libttf.$SHLIB_SUFFIX_NAME"; then ++ TTF_DIR=$i ++ TTF_LIB_DIR=$i/$j ++ if test -f "$i/include/freetype.h"; then ++ unset TTF_INC_DIR ++ elif test -f "$i/include/freetype/freetype.h"; then ++ TTF_INC_DIR=$i/include/freetype ++ elif test -f "$i/include/freetype1/freetype/freetype.h"; then ++ TTF_INC_DIR=$i/include/freetype1/freetype ++ else ++ unset TTF_DIR ++ fi ++ fi ++ test -n "$TTF_DIR" && break ++ done + test -n "$TTF_DIR" && break + done + fi + if test -n "$TTF_DIR" ; then + AC_DEFINE(HAVE_LIBTTF,1,[ ]) +- PHP_ADD_LIBRARY_WITH_PATH(ttf, $TTF_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(ttf, $TTF_LIB_DIR, GD_SHARED_LIBADD) + fi + if test -z "$TTF_INC_DIR"; then + TTF_INC_DIR=$TTF_DIR/include +@@ -178,16 +203,21 @@ + AC_DEFUN([PHP_GD_FREETYPE2],[ + if test "$PHP_FREETYPE_DIR" != "no"; then + +- for i in $PHP_FREETYPE_DIR /usr/local /usr; do +- if test -f "$i/include/freetype2/freetype/freetype.h"; then +- FREETYPE2_DIR=$i +- FREETYPE2_INC_DIR=$i/include/freetype2 +- break +- fi ++ for j in lib64 lib; do ++ for i in $PHP_FREETYPE_DIR /usr/local /usr; do ++ if test -f "$i/include/freetype2/freetype/freetype.h" && \ ++ test -f "$i/$j/libfreetype.a" -o -f "$i/$j/libfreetype.$SHLIB_SUFFIX_NAME"; then ++ FREETYPE2_DIR=$i ++ FREETYPE2_LIB_DIR=$i/$j ++ FREETYPE2_INC_DIR=$i/include/freetype2 ++ break ++ fi ++ done ++ test -n "$FREETYPE2_DIR" && break + done + + if test -n "$FREETYPE2_DIR" ; then +- PHP_ADD_LIBRARY_WITH_PATH(freetype, $FREETYPE2_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(freetype, $FREETYPE2_LIB_DIR, GD_SHARED_LIBADD) + PHP_ADD_INCLUDE($FREETYPE2_DIR/include) + PHP_ADD_INCLUDE($FREETYPE2_INC_DIR) + AC_DEFINE(USE_GD_IMGSTRTTF, 1, [ ]) +@@ -203,8 +233,16 @@ + AC_DEFUN([PHP_GD_T1LIB],[ + if test "$PHP_T1LIB" != "no"; then + +- for i in $PHP_T1LIB /usr/local /usr; do +- test -f "$i/include/t1lib.h" && GD_T1_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_T1LIB /usr/local /usr; do ++ if test -f "$i/include/t1lib.h" && \ ++ test -f "$i/$j/libt1.a" -o -f "$i/$j/libt1.$SHLIB_SUFFIX_NAME"; then ++ GD_T1_DIR=$i ++ GD_T1_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_T1_DIR" && break + done + + if test -z "$GD_T1_DIR"; then +@@ -215,11 +253,11 @@ + [ + AC_DEFINE(HAVE_LIBT1,1,[ ]) + PHP_ADD_INCLUDE($GD_T1_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(t1, $GD_T1_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(t1, $GD_T1_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libt1.(a|so). Please check config.log for more information.]) + ],[ +- -L$GD_T1_DIR/lib ++ -L$GD_T1_LIB_DIR + ]) + fi + ]) +@@ -364,7 +402,7 @@ + done + + dnl Library path +- for i in lib/gd1.3 lib/gd lib gd1.3 gd ""; do ++ for i in lib/gd1.3 lib64/gd1.3 lib/gd lib64/gd lib lib64 gd1.3 gd ""; do + test -f "$PHP_GD/$i/libgd.$SHLIB_SUFFIX_NAME" -o -f "$PHP_GD/$i/libgd.a" && GD_LIB="$PHP_GD/$i" + done + +diff -Nru php-4.3.11.orig/ext/gettext/config.m4 php-4.3.11/ext/gettext/config.m4 +--- php-4.3.11.orig/ext/gettext/config.m4 2003-10-01 04:53:58.000000000 +0200 ++++ php-4.3.11/ext/gettext/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -14,11 +14,15 @@ + AC_MSG_ERROR(Cannot locate header file libintl.h) + fi + +- GETTEXT_LIBDIR=$GETTEXT_DIR/lib ++ for j in lib64 lib; do ++ if test -d $GETTEXT_DIR/$j; then ++ GETTEXT_LIBDIR=$GETTEXT_DIR/$j ++ fi ++ done ++ + GETTEXT_INCDIR=$GETTEXT_DIR/include + + O_LDFLAGS=$LDFLAGS +- LDFLAGS="$LDFLAGS -L$GETTEXT_LIBDIR" + AC_CHECK_LIB(intl, bindtextdomain, [ + GETTEXT_LIBS=intl + GETTEXT_CHECK_IN_LIB=intl +diff -Nru php-4.3.11.orig/ext/gmp/config.m4 php-4.3.11/ext/gmp/config.m4 +--- php-4.3.11.orig/ext/gmp/config.m4 2003-11-19 05:44:24.000000000 +0100 ++++ php-4.3.11/ext/gmp/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -14,20 +14,26 @@ + if test -z "$GMP_DIR"; then + AC_MSG_ERROR(Unable to locate gmp.h) + fi +- ++ ++ for j in lib64 lib; do ++ if test -d $GMP_DIR/$j; then ++ GMP_LIBDIR=$GMP_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(gmp, __gmp_randinit_lc_2exp_size, + [],[ + PHP_CHECK_LIBRARY(gmp, gmp_randinit_lc_2exp_size, + [],[ + AC_MSG_ERROR([GNU MP Library version 4.1.2 or greater required.]) + ],[ +- -L$GMP_DIR/lib ++ -L$GMP_LIBDIR + ]) + ],[ +- -L$GMP_DIR/lib ++ -L$GMP_LIBDIR + ]) + +- PHP_ADD_LIBRARY_WITH_PATH(gmp, $GMP_DIR/lib, GMP_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(gmp, $GMP_LIBDIR, GMP_SHARED_LIBADD) + PHP_ADD_INCLUDE($GMP_DIR/include) + + PHP_NEW_EXTENSION(gmp, gmp.c, $ext_shared) +diff -Nru php-4.3.11.orig/ext/iconv/config.m4 php-4.3.11/ext/iconv/config.m4 +--- php-4.3.11.orig/ext/iconv/config.m4 2005-01-10 22:38:56.000000000 +0100 ++++ php-4.3.11/ext/iconv/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -23,8 +23,14 @@ + PHP_ICONV_PREFIX="$ICONV_DIR" + fi + ++ for j in lib64 lib; do ++ if test -d $PHP_ICONV_PREFIX/$j; then ++ PHP_ICONV_PREFIX_LIBDIR=$PHP_ICONV_PREFIX/$j ++ fi ++ done ++ + CFLAGS="-I$PHP_ICONV_PREFIX/include $CFLAGS" +- LDFLAGS="-L$PHP_ICONV_PREFIX/lib $LDFLAGS" ++ LDFLAGS="-L$PHP_ICONV_PREFIX_LIBDIR $LDFLAGS" + + if test -r $PHP_ICONV_PREFIX/include/giconv.h; then + PHP_ICONV_H_PATH="$PHP_ICONV_PREFIX/include/giconv.h" +diff -Nru php-4.3.11.orig/ext/imap/config.m4 php-4.3.11/ext/imap/config.m4 +--- php-4.3.11.orig/ext/imap/config.m4 2005-01-11 05:56:57.000000000 +0100 ++++ php-4.3.11/ext/imap/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -167,6 +167,7 @@ + for lib in c-client4 c-client imap; do + IMAP_LIB=$lib + IMAP_LIB_CHK(lib) ++ IMAP_LIB_CHK(lib64) + IMAP_LIB_CHK(c-client) + done + +diff -Nru php-4.3.11.orig/ext/interbase/config.m4 php-4.3.11/ext/interbase/config.m4 +--- php-4.3.11.orig/ext/interbase/config.m4 2003-04-25 10:59:00.000000000 +0200 ++++ php-4.3.11/ext/interbase/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -9,10 +9,18 @@ + if test "$PHP_INTERBASE" != "no"; then + if test "$PHP_INTERBASE" = "yes"; then + IBASE_INCDIR=/usr/interbase/include +- IBASE_LIBDIR=/usr/interbase/lib ++ for j in lib64 lib; do ++ if test -d /usr/interbase/$j; then ++ IBASE_LIBDIR=/usr/interbase/$j ++ fi ++ done + else + IBASE_INCDIR=$PHP_INTERBASE/include +- IBASE_LIBDIR=$PHP_INTERBASE/lib ++ for j in lib64 lib; do ++ if test -d $PHP_INTERBASE/$j; then ++ IBASE_LIBDIR=$PHP_INTERBASE/$j ++ fi ++ done + fi + + PHP_CHECK_LIBRARY(gds, isc_detach_database, +diff -Nru php-4.3.11.orig/ext/ldap/config.m4 php-4.3.11/ext/ldap/config.m4 +--- php-4.3.11.orig/ext/ldap/config.m4 2004-12-30 08:02:17.000000000 +0100 ++++ php-4.3.11/ext/ldap/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -6,7 +6,8 @@ + if test -f $1/include/ldap.h; then + LDAP_DIR=$1 + LDAP_INCDIR=$1/include +- LDAP_LIBDIR=$1/lib ++ test -f $1/lib/libldap.so && LDAP_LIBDIR=$1/lib ++ test -f $1/lib64/libldap.so && LDAP_LIBDIR=$1/lib64 + elif test -f $1/include/umich-ldap/ldap.h; then + LDAP_DIR=$1 + LDAP_INCDIR=$1/include/umich-ldap +diff -Nru php-4.3.11.orig/ext/mbstring/config.m4 php-4.3.11/ext/mbstring/config.m4 +--- php-4.3.11.orig/ext/mbstring/config.m4 2005-02-21 08:10:13.000000000 +0100 ++++ php-4.3.11/ext/mbstring/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -167,12 +167,18 @@ + PHP_ADD_INCLUDE([$PHP_LIBMBFL_INCLUDE]) + fi + ++ for j in lib64 lib; do ++ if test -d $PHP_LIBMBFL/$j; then ++ PHP_LIBMBFL_LIBDIR=$PHP_LIBMBFL/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(mbfl, mbfl_buffer_converter_new, [ +- PHP_ADD_LIBRARY_WITH_PATH(mbfl, $PHP_LIBMBFL/lib, MBSTRING_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mbfl, $PHP_LIBMBFL_LIBDIR, MBSTRING_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libmbfl. Please check config.log for more information.]) + ], [ +- -LPHP_LIBMBFL/lib ++ -L$PHP_LIBMBFL_LIBDIR + ]) + fi + ]) +diff -Nru php-4.3.11.orig/ext/mcal/config.m4 php-4.3.11/ext/mcal/config.m4 +--- php-4.3.11.orig/ext/mcal/config.m4 2002-03-27 11:26:16.000000000 +0100 ++++ php-4.3.11/ext/mcal/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -19,7 +19,7 @@ + fi + done + +- for i in $MCAL_DIR $MCAL_DIR/mcal $MCAL_DIR/mcal/lib $MCAL_DIR/lib/mcal $MCAL_DIR/lib; do ++ for i in $MCAL_DIR $MCAL_DIR/mcal $MCAL_DIR/mcal/lib $MCAL_DIR/lib/mcal $MCAL_DIR/lib64/mcal $MCAL_DIR/lib $MCAL_DIR/lib64; do + if test -r "$i/libmcal.a"; then + MCAL_LIBRARY=$i + fi +diff -Nru php-4.3.11.orig/ext/mcrypt/config.m4 php-4.3.11/ext/mcrypt/config.m4 +--- php-4.3.11.orig/ext/mcrypt/config.m4 2005-01-22 02:37:12.000000000 +0100 ++++ php-4.3.11/ext/mcrypt/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -14,6 +14,12 @@ + AC_MSG_ERROR(mcrypt.h not found. Please reinstall libmcrypt.) + fi + ++ for j in lib64 lib; do ++ if test -d $MCRYPT_DIR/$j; then ++ MCRYPT_LIBDIR=$MCRYPT_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(mcrypt, mcrypt_module_open, + [ + PHP_ADD_LIBRARY(ltdl,, MCRYPT_SHARED_LIBADD) +@@ -23,7 +29,7 @@ + [ + AC_DEFINE(HAVE_MCRYPT_GENERIC_DEINIT,1,[ ]) + ],[],[ +- -L$MCRYPT_DIR/lib -lltdl ++ -L$MCRYPT_LIBDIR -lltdl + ]) + + ],[ +@@ -35,7 +41,7 @@ + [ + AC_DEFINE(HAVE_MCRYPT_GENERIC_DEINIT,1,[ ]) + ],[],[ +- -L$MCRYPT_DIR/lib ++ -L$MCRYPT_LIBDIR + ]) + ],[ + PHP_CHECK_LIBRARY(mcrypt, init_mcrypt, +@@ -44,16 +50,16 @@ + ],[ + AC_MSG_ERROR([Sorry, I was not able to diagnose which libmcrypt version you have installed.]) + ],[ +- -L$MCRYPT_DIR/lib ++ -L$MCRYPT_LIBDIR + ]) + ],[ +- -L$MCRYPT_DIR/lib ++ -L$MCRYPT_LIBDIR + ]) + ],[ +- -L$MCRYPT_DIR/lib -lltdl ++ -L$MCRYPT_LIBDIR -lltdl + ]) + +- PHP_ADD_LIBRARY_WITH_PATH(mcrypt, $MCRYPT_DIR/lib, MCRYPT_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mcrypt, $MCRYPT_LIBDIR, MCRYPT_SHARED_LIBADD) + PHP_ADD_INCLUDE($MCRYPT_DIR/include) + + PHP_NEW_EXTENSION(mcrypt, mcrypt.c, $ext_shared) +diff -Nru php-4.3.11.orig/ext/mcve/config.m4 php-4.3.11/ext/mcve/config.m4 +--- php-4.3.11.orig/ext/mcve/config.m4 2004-12-08 07:48:11.000000000 +0100 ++++ php-4.3.11/ext/mcve/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -67,8 +67,14 @@ + + CPPFLAGS=$saved_CPPFLAGS + ++ for j in lib64 lib; do ++ if test -d $MCVE_DIR/$j; then ++ MCVE_LIBDIR=$MCVE_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($MCVE_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(mcve, $MCVE_DIR/lib, MCVE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mcve, $MCVE_LIBDIR, MCVE_SHARED_LIBADD) + + dnl Build test. Check for libmcve or libmonetra + dnl libmonetra_compat.h handle's MCVE_ -> M_ conversion +diff -Nru php-4.3.11.orig/ext/mhash/config.m4 php-4.3.11/ext/mhash/config.m4 +--- php-4.3.11.orig/ext/mhash/config.m4 2003-10-01 04:54:01.000000000 +0200 ++++ php-4.3.11/ext/mhash/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -14,8 +14,14 @@ + AC_MSG_ERROR(Please reinstall libmhash - I cannot find mhash.h) + fi + ++ for j in lib64 lib; do ++ if test -d $MHASH_DIR/$j; then ++ MHASH_LIBDIR=$MHASH_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($MHASH_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(mhash, $MHASH_DIR/lib, MHASH_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mhash, $MHASH_LIBDIR, MHASH_SHARED_LIBADD) + + PHP_NEW_EXTENSION(mhash, mhash.c, $ext_shared) + PHP_SUBST(MHASH_SHARED_LIBADD) +diff -Nru php-4.3.11.orig/ext/ming/config.m4 php-4.3.11/ext/ming/config.m4 +--- php-4.3.11.orig/ext/ming/config.m4 2003-07-11 09:48:33.000000000 +0200 ++++ php-4.3.11/ext/ming/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -8,10 +8,12 @@ + if test "$PHP_MING" != "no"; then + AC_CHECK_LIB(m, sin) + +- for i in $PHP_MING /usr/local /usr; do +- if test -f $i/lib/libming.$SHLIB_SUFFIX_NAME -o -f $i/lib/libming.a; then ++ for j in lib64 lib; do ++ for i in $PHP_MING /usr/local /usr; do ++ if test -f $i/$j/libming.$SHLIB_SUFFIX_NAME -o -f $i/$j/libming.a; then + MING_DIR=$i +- fi ++ fi ++ done + done + + if test -z "$MING_DIR"; then +@@ -28,16 +30,22 @@ + AC_MSG_ERROR(Please reinstall ming distribution. ming.h not found.) + fi + ++ for j in lib64 lib; do ++ if test -d $MING_DIR/$j; then ++ MING_LIBDIR=$MING_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(ming, Ming_useSWFVersion, [ + AC_DEFINE(HAVE_MING,1,[ ]) + ],[ + AC_MSG_ERROR([Ming library 0.2a or greater required.]) + ],[ +- -L$MING_DIR/lib ++ -L$MING_LIBDIR + ]) + + PHP_ADD_INCLUDE($MING_INC_DIR) +- PHP_ADD_LIBRARY_WITH_PATH(ming, $MING_DIR/lib, MING_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(ming, $MING_LIBDIR, MING_SHARED_LIBADD) + + AC_MSG_CHECKING([for destroySWFBlock]) + AC_TRY_RUN([ +diff -Nru php-4.3.11.orig/ext/msession/config.m4 php-4.3.11/ext/msession/config.m4 +--- php-4.3.11.orig/ext/msession/config.m4 2002-03-12 17:25:11.000000000 +0100 ++++ php-4.3.11/ext/msession/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -8,13 +8,17 @@ + if test "$PHP_MSESSION" != "no"; then + if test -r $PHP_MSESSION/lib/libphoenix.a; then + PHOENIX_DIR=$PHP_MSESSION ++ PHOENIX_LIBDIR=$PHP_MSESSION/lib + else + AC_MSG_CHECKING(for msession in default path) +- for i in /usr/local/phoenix /usr/local /usr; do +- if test -r $i/lib/libphoenix.a; then +- PHOENIX_DIR=$i +- AC_MSG_RESULT(found in $i) +- fi ++ for j in lib64 lib; do ++ for i in /usr/local/phoenix /usr/local /usr; do ++ if test -r $i/$j/libphoenix.a; then ++ PHOENIX_DIR=$i ++ PHOENIX_LIBDIR=$i/$j ++ AC_MSG_RESULT(found in $i) ++ fi ++ done + done + fi + +@@ -25,7 +29,7 @@ + + + AC_DEFINE(HAVE_MSESSION, 1, [ ]) +- PHP_ADD_LIBRARY_WITH_PATH(phoenix, "$PHOENIX_DIR/lib", PHOENIX_LIB) ++ PHP_ADD_LIBRARY_WITH_PATH(phoenix, "$PHOENIX_LIBDIR", PHOENIX_LIB) + PHOENIX_INCLUDE="-I$PHOENIX_DIR" + PHP_SUBST(PHOENIX_LIB) + +diff -Nru php-4.3.11.orig/ext/mssql/config.m4 php-4.3.11/ext/mssql/config.m4 +--- php-4.3.11.orig/ext/mssql/config.m4 2004-12-08 19:59:11.000000000 +0100 ++++ php-4.3.11/ext/mssql/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -19,6 +19,12 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $FREETDS_INSTALLATION_DIR/$j; then ++ FREETDS_INSTALLATION_DIR_LIBDIR=$FREETDS_INSTALLATION_DIR/$j ++ fi ++ done ++ + if test -z "$FREETDS_INSTALLATION_DIR"; then + AC_MSG_ERROR(Cannot find FreeTDS in known installation directories) + fi +@@ -32,12 +38,12 @@ + fi + fi + +- if test ! -r "$FREETDS_INSTALLATION_DIR/lib/libtds.a" && test ! -r "$FREETDS_INSTALLATION_DIR/lib/libtds.so"; then +- AC_MSG_ERROR(Could not find $FREETDS_INSTALLATION_DIR/lib/libtds.[a|so]) ++ if test ! -r "$FREETDS_INSTALLATION_DIR_LIBDIR/libtds.a" && test ! -r "$FREETDS_INSTALLATION_DIR_LIBDIR/libtds.so"; then ++ AC_MSG_ERROR(Could not find $FREETDS_INSTALLATION_DIR_LIBDIR/libtds.[a|so]) + fi + + MSSQL_INCDIR=$FREETDS_INSTALLATION_DIR/include +- MSSQL_LIBDIR=$FREETDS_INSTALLATION_DIR/lib ++ MSSQL_LIBDIR=$FREETDS_INSTALLATION_DIR_LIBDIR + + PHP_ADD_INCLUDE($MSSQL_INCDIR) + PHP_ADD_LIBRARY_WITH_PATH(sybdb, $MSSQL_LIBDIR, MSSQL_SHARED_LIBADD) +diff -Nru php-4.3.11.orig/ext/mysql/config.m4 php-4.3.11/ext/mysql/config.m4 +--- php-4.3.11.orig/ext/mysql/config.m4 2004-12-30 08:02:17.000000000 +0100 ++++ php-4.3.11/ext/mysql/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -114,7 +114,7 @@ + + MYSQL_MODULE_TYPE=external + +- for i in lib lib/mysql; do ++ for i in lib64 lib64/mysql lib lib/mysql; do + MYSQL_LIB_CHK($i) + done + +@@ -125,13 +125,18 @@ + PHP_CHECK_LIBRARY(mysqlclient, mysql_close, [ ], + [ + if test "$PHP_ZLIB_DIR" != "no"; then ++ for j in lib64 lib; do ++ if test -d $PHP_ZLIB_DIR/$j; then ++ PHP_ZLIB_LIBDIR=$PHP_ZLIB_DIR/$j ++ fi ++ done + PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR, MYSQL_SHARED_LIBADD) + PHP_CHECK_LIBRARY(mysqlclient, mysql_error, [], [ + AC_MSG_ERROR([mysql configure failed. Please check config.log for more information.]) + ], [ +- -L$PHP_ZLIB_DIR/lib -L$MYSQL_LIB_DIR ++ -L$PHP_ZLIB_LIBDIR -L$MYSQL_LIB_DIR + ]) +- MYSQL_LIBS="-L$PHP_ZLIB_DIR/lib -lz" ++ MYSQL_LIBS="-L$PHP_ZLIB_LIBDIR -lz" + else + PHP_ADD_LIBRARY(z,, MYSQL_SHARED_LIBADD) + PHP_CHECK_LIBRARY(mysqlclient, mysql_errno, [], [ +diff -Nru php-4.3.11.orig/ext/ncurses/config.m4 php-4.3.11/ext/ncurses/config.m4 +--- php-4.3.11.orig/ext/ncurses/config.m4 2003-12-09 21:33:22.000000000 +0100 ++++ php-4.3.11/ext/ncurses/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -38,20 +38,26 @@ + LIBNAME=ncurses + LIBSYMBOL=initscr + ++ for j in lib64 lib; do ++ if test -d $NCURSES_DIR/$j; then ++ NCURSES_LIBDIR=$NCURSES_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY($LIBNAME, $LIBSYMBOL, [ + AC_DEFINE(HAVE_NCURSESLIB,1,[ ]) +- PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $NCURSES_DIR/lib, NCURSES_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $NCURSES_LIBDIR, NCURSES_SHARED_LIBADD) + + PHP_CHECK_LIBRARY(panel, new_panel, [ + AC_DEFINE(HAVE_NCURSES_PANEL,1,[ ]) +- PHP_ADD_LIBRARY_WITH_PATH(panel, $NCURSES_DIR/lib, NCURSES_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(panel, $NCURSES_LIBDIR, NCURSES_SHARED_LIBADD) + ], [], [ +- -L$NCURSES_DIR/lib -l$LIBNAME -lm ++ -L$NCURSES_LIBDIR -l$LIBNAME -lm + ]) + ], [ + AC_MSG_ERROR(Wrong ncurses lib version or lib not found) + ], [ +- -L$NCURSES_DIR/lib -lm ++ -L$NCURSES_LIBDIR -lm + ]) + + AC_CHECK_LIB($LIBNAME, color_set, [AC_DEFINE(HAVE_NCURSES_COLOR_SET, 1, [ ])]) +diff -Nru php-4.3.11.orig/ext/odbc/config.m4 php-4.3.11/ext/odbc/config.m4 +--- php-4.3.11.orig/ext/odbc/config.m4 2005-01-18 22:21:16.000000000 +0100 ++++ php-4.3.11/ext/odbc/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -47,19 +47,8 @@ + # + # Check for the library files, and setup the ODBC_LIBS path... + # +-if test ! -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -a \ +- ! -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a; then +- # +- # we have an error and should bail out, as we can't find the libs! +- # +- echo "" +- echo "*********************************************************************" +- echo "* Unable to locate $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so or $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" +- echo "* Please correct this by creating the following links and reconfiguring:" +- echo "* $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a -> $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" +- echo "* $1/${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -> $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so" +- echo "*********************************************************************" +-else ++if test -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -a \ ++ -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a; then + ODBC_LFLAGS=-L$1 + ODBC_LIBS=-l${ac_solid_prefix}${ac_solid_os}${ac_solid_version} + fi +@@ -100,8 +89,12 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ ADABAS_LIBDIR=$withval/$i ++ test -f "$ADABAS_LIBDIR/odbclib.a" && break ++ done + PHP_ADD_INCLUDE($withval/incl) +- PHP_ADD_LIBPATH($withval/lib) ++ PHP_ADD_LIBPATH($ADABAS_LIBDIR) + ODBC_OBJS="$withval/lib/odbclib.a" + ODBC_LIB="$abs_builddir/ext/odbc/libodbc_adabas.a" + $srcdir/build/shtool mkdir -f -p ext/odbc +@@ -132,8 +125,12 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ SAPDB_LIBDIR=$withval/$i ++ test -f "$SAPDB_LIBDIR/libsqlod.a" -o -f "$SAPDB_LIBDIR/libsqlod.$SHLIB_SUFFIX_NAME" && break ++ done + PHP_ADD_INCLUDE($withval/incl) +- PHP_ADD_LIBPATH($withval/lib) ++ PHP_ADD_LIBPATH($SAPDB_LIBDIR) + PHP_ADD_LIBRARY(sqlod) + ODBC_TYPE=sapdb + AC_DEFINE(HAVE_SAPDB,1,[ ]) +@@ -158,19 +155,36 @@ + withval=/usr/local/solid + fi + if test "$withval" != "no"; then +- ODBC_INCDIR=$withval/include +- ODBC_LIBDIR=$withval/lib +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_TYPE=solid +- if test -f $ODBC_LIBDIR/soc*35.a; then +- AC_DEFINE(HAVE_SOLID_35,1,[ ]) +- elif test -f $ODBC_LIBDIR/scl*30.a; then +- AC_DEFINE(HAVE_SOLID_30,1,[ ]) +- elif test -f $ODBC_LIBDIR/scl*23.a; then +- AC_DEFINE(HAVE_SOLID,1,[ ]) ++ for i in lib64 lib; do ++ SOLID_LIBDIR=$withval/$i ++ ODBC_INCDIR=$withval/include ++ ODBC_LIBDIR=$withval/$j ++ ODBC_INCLUDE=-I$ODBC_INCDIR ++ ODBC_TYPE=solid ++ if test -f $ODBC_LIBDIR/soc*35.a; then ++ AC_DEFINE(HAVE_SOLID_35,1,[ ]) ++ elif test -f $ODBC_LIBDIR/scl*30.a; then ++ AC_DEFINE(HAVE_SOLID_30,1,[ ]) ++ elif test -f $ODBC_LIBDIR/scl*23.a; then ++ AC_DEFINE(HAVE_SOLID,1,[ ]) ++ fi ++ AC_MSG_RESULT(yes) ++ ODBC_LIBS= ++ AC_FIND_SOLID_LIBS($ODBC_LIBDIR) ++ test -n "$ODBC_LIBS" && break ++ done ++ if test -z "$ODBC_LIBS"; then ++ # ++ # we have an error and should bail out, as we can't find the libs! ++ # ++ echo "" ++ echo "*********************************************************************" ++ echo "* Unable to locate ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so or ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" ++ echo "* Please correct this by creating the following links and reconfiguring:" ++ echo "* ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a -> ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" ++ echo "* ODBC_LIBDIR/${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -> ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so" ++ echo "*********************************************************************" + fi +- AC_MSG_RESULT(yes) +- AC_FIND_SOLID_LIBS($ODBC_LIBDIR) + else + AC_MSG_RESULT(no) + fi +@@ -375,11 +389,15 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then +- PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/lib) ++ for i in lib64 lib; do ++ IODBC_LIBDIR=$withval/$i ++ test -f "$IODBC_LIBDIR/libiodbc.a" -o -f "$IODBC_LIBDIR/libiodbc.$SHLIB_SUFFIX_NAME" && break ++ done ++ PHP_ADD_LIBRARY_WITH_PATH(iodbc, $IODBC_LIBDIR) + PHP_ADD_INCLUDE($withval/include, 1) + ODBC_TYPE=iodbc + ODBC_INCLUDE=-I$withval/include +- ODBC_LFLAGS=-L$withval/lib ++ ODBC_LFLAGS=-L$IODBC_LIBDIR + ODBC_LIBS=-liodbc + AC_DEFINE(HAVE_IODBC,1,[ ]) + AC_DEFINE(HAVE_ODBC2,1,[ ]) +@@ -404,8 +422,11 @@ + withval=/usr/local/easysoft/oob/client + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ ODBC_LIBDIR=$withval/$i ++ test -f "$ODBC_LIBDIR/libesoobclient.a" -o -f "$ODBC_LIBDIR/libesoobclient.$SHLIB_SUFFIX_NAME" && break ++ done + ODBC_INCDIR=$withval/include +- ODBC_LIBDIR=$withval/lib + ODBC_LFLAGS=-L$ODBC_LIBDIR + ODBC_INCLUDE=-I$ODBC_INCDIR + ODBC_LIBS=-lesoobclient +@@ -431,8 +452,11 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ ODBC_LIBDIR=$withval/$i ++ test -f "$ODBC_LIBDIR/libodbc.a" -o -f "$ODBC_LIBDIR/libodbc.$SHLIB_SUFFIX_NAME" && break ++ done + ODBC_INCDIR=$withval/include +- ODBC_LIBDIR=$withval/lib + ODBC_LFLAGS=-L$ODBC_LIBDIR + ODBC_INCLUDE=-I$ODBC_INCDIR + ODBC_LIBS=-lodbc +diff -Nru php-4.3.11.orig/ext/pcre/config.m4 php-4.3.11/ext/pcre/config.m4 +--- php-4.3.11.orig/ext/pcre/config.m4 2003-12-16 23:14:55.000000000 +0100 ++++ php-4.3.11/ext/pcre/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -25,7 +25,7 @@ + AC_MSG_ERROR([Could not find pcre.h in $PHP_PCRE_REGEX]) + fi + +- for j in $PHP_PCRE_REGEX $PHP_PCRE_REGEX/lib; do ++ for j in $PHP_PCRE_REGEX $PHP_PCRE_REGEX/lib64 $PHP_PCRE_REGEX/lib; do + test -f $j/libpcre.a -o -f $j/libpcre.$SHLIB_SUFFIX_NAME && PCRE_LIBDIR=$j + done + +diff -Nru php-4.3.11.orig/ext/pgsql/config.m4 php-4.3.11/ext/pgsql/config.m4 +--- php-4.3.11.orig/ext/pgsql/config.m4 2004-12-30 08:02:18.000000000 +0100 ++++ php-4.3.11/ext/pgsql/config.m4 2005-12-01 09:14:33.000000000 +0100 +@@ -26,7 +26,7 @@ + fi + done + +- for j in lib lib/pgsql lib/postgres lib/postgresql ""; do ++ for j in lib64 lib lib64/pgsql lib/pgsql lib64/postgres lib/postgres lib64/postgresql lib/postgresql ""; do + if test -f "$i/$j/libpq.so" || test -f "$i/$j/libpq.a"; then + PGSQL_LIBDIR=$i/$j + fi +diff -Nru php-4.3.11.orig/ext/pspell/config.m4 php-4.3.11/ext/pspell/config.m4 +--- php-4.3.11.orig/ext/pspell/config.m4 2005-02-17 04:51:50.000000000 +0100 ++++ php-4.3.11/ext/pspell/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -27,7 +27,11 @@ + AC_MSG_ERROR(Cannot find pspell) + fi + +- PSPELL_LIBDIR=$PSPELL_DIR/lib ++ for j in lib64 lib; do ++ if test -d $PSPELL_DIR/$j; then ++ PSPELL_LIBDIR=$PSPELL_DIR/$j ++ fi ++ done + + PHP_ADD_LIBRARY_WITH_PATH(pspell, $PSPELL_LIBDIR, PSPELL_SHARED_LIBADD) + +diff -Nru php-4.3.11.orig/ext/readline/config.m4 php-4.3.11/ext/readline/config.m4 +--- php-4.3.11.orig/ext/readline/config.m4 2003-10-01 04:54:04.000000000 +0200 ++++ php-4.3.11/ext/readline/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -29,22 +29,28 @@ + ]) + ]) + ++ for j in lib64 lib; do ++ if test -d $READLINE_DIR/$j; then ++ READLINE_LIBDIR=$READLINE_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(readline, readline, + [ +- PHP_ADD_LIBRARY_WITH_PATH(readline, $READLINE_DIR/lib, READLINE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(readline, $READLINE_LIBDIR, READLINE_SHARED_LIBADD) + ], [ + AC_MSG_ERROR(readline library not found) + ], [ +- -L$READLINE_DIR/lib ++ -L$READLINE_LIBDIR + ]) + + PHP_CHECK_LIBRARY(history, add_history, + [ +- PHP_ADD_LIBRARY_WITH_PATH(history, $READLINE_DIR/lib, READLINE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(history, $READLINE_LIBDIR, READLINE_SHARED_LIBADD) + ], [ + AC_MSG_ERROR(history library required by readline not found) + ], [ +- -L$READLINE_DIR/lib ++ -L$READLINE_LIBDIR + ]) + + PHP_NEW_EXTENSION(readline, readline.c, $ext_shared, cli) +@@ -73,13 +79,19 @@ + ]) + ]) + ++ for j in lib64 lib; do ++ if test -d $LIBEDIT_DIR/$j; then ++ LIBEDIT_LIBDIR=$LIBEDIT_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(edit, readline, + [ +- PHP_ADD_LIBRARY_WITH_PATH(edit, $LIBEDIT_DIR/lib, READLINE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(edit, $LIBEDIT_LIBDIR, READLINE_SHARED_LIBADD) + ], [ + AC_MSG_ERROR(edit library required by readline not found) + ], [ +- -L$READLINE_DIR/lib ++ -L$READLINE_LIBDIR + ]) + + PHP_NEW_EXTENSION(readline, readline.c, $ext_shared, cli) +diff -Nru php-4.3.11.orig/ext/session/config.m4 php-4.3.11/ext/session/config.m4 +--- php-4.3.11.orig/ext/session/config.m4 2003-10-01 04:54:06.000000000 +0200 ++++ php-4.3.11/ext/session/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -24,8 +24,14 @@ + if test -z "$MM_DIR" ; then + AC_MSG_ERROR(cannot find mm library) + fi +- +- PHP_ADD_LIBRARY_WITH_PATH(mm, $MM_DIR/lib, SESSION_SHARED_LIBADD) ++ ++ for j in lib64 lib; do ++ if test -d $MM_DIR/$j; then ++ MM_LIBDIR=$MM_DIR/$j ++ fi ++ done ++ ++ PHP_ADD_LIBRARY_WITH_PATH(mm, $MM_LIBDIR, SESSION_SHARED_LIBADD) + PHP_ADD_INCLUDE($MM_DIR/include) + AC_DEFINE(HAVE_LIBMM, 1, [Whether you have libmm]) + fi +diff -Nru php-4.3.11.orig/ext/snmp/config.m4 php-4.3.11/ext/snmp/config.m4 +--- php-4.3.11.orig/ext/snmp/config.m4 2003-09-23 10:16:47.000000000 +0200 ++++ php-4.3.11/ext/snmp/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -45,8 +45,8 @@ + test -f $i/snmp/snmp.h && SNMP_INCDIR=$i/snmp + test -f $i/snmp/include/ucd-snmp/snmp.h && SNMP_INCDIR=$i/snmp/include/ucd-snmp + done +- for i in /usr /usr/snmp /usr/local /usr/local/snmp; do +- test -f $i/lib/libsnmp.a -o -f $i/lib/libsnmp.$SHLIB_SUFFIX_NAME && SNMP_LIBDIR=$i/lib ++ for i in /usr/lib /usr/lib64 /usr/snmp/lib /usr/local/lib /usr/local/snmp/lib; do ++ test -f $i/libsnmp.a -o -f $i/libsnmp.$SHLIB_SUFFIX_NAME && SNMP_LIBDIR=$i + done + else + SNMP_INCDIR=$PHP_SNMP/include +diff -Nru php-4.3.11.orig/ext/xml/config.m4 php-4.3.11/ext/xml/config.m4 +--- php-4.3.11.orig/ext/xml/config.m4 2004-12-20 21:38:18.000000000 +0100 ++++ php-4.3.11/ext/xml/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -33,6 +33,10 @@ + for i in $PHP_XML $PHP_EXPAT_DIR; do + if test -f $i/lib/libexpat.a -o -f $i/lib/libexpat.$SHLIB_SUFFIX_NAME ; then + EXPAT_DIR=$i ++ EXPAT_LIBDIR=$i/lib ++ elif test -f $i/lib64/libexpat.a -o -f $i/lib64/libexpat.$SHLIB_SUFFIX_NAME ; then ++ EXPAT_DIR=$i ++ EXPAT_LIBDIR=$i/lib64 + fi + done + +@@ -41,7 +45,7 @@ + fi + + PHP_ADD_INCLUDE($EXPAT_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(expat, $EXPAT_DIR/lib, XML_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(expat, $EXPAT_LIBDIR, XML_SHARED_LIBADD) + PHP_SUBST(XML_SHARED_LIBADD) + fi + fi +diff -Nru php-4.3.11.orig/ext/xmlrpc/config.m4 php-4.3.11/ext/xmlrpc/config.m4 +--- php-4.3.11.orig/ext/xmlrpc/config.m4 2003-10-03 07:25:43.000000000 +0200 ++++ php-4.3.11/ext/xmlrpc/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -29,6 +29,12 @@ + PHP_ADD_INCLUDE($i/include) + testval=yes + break ++ elif test -f $i/lib64/libexpat.a -o -f $i/lib64/libexpat.$SHLIB_SUFFIX_NAME; then ++ AC_DEFINE(HAVE_LIBEXPAT2,1,[ ]) ++ PHP_ADD_LIBRARY_WITH_PATH(expat, $i/lib64, XMLRPC_SHARED_LIBADD) ++ PHP_ADD_INCLUDE($i/include) ++ testval=yes ++ break + fi + done + +@@ -87,6 +93,12 @@ + AC_MSG_ERROR(Please reinstall the XMLRPC-EPI distribution) + fi + ++ for j in lib64 lib; do ++ if test -d $XMLRPC_DIR/$j; then ++ XMLRPC_LIBDIR=$XMLRPC_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($XMLRPC_DIR) +- PHP_ADD_LIBRARY_WITH_PATH(xmlrpc, $XMLRPC_DIR/lib, XMLRPC_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(xmlrpc, $XMLRPC_LIBDIR, XMLRPC_SHARED_LIBADD) + fi +diff -Nru php-4.3.11.orig/ext/xslt/config.m4 php-4.3.11/ext/xslt/config.m4 +--- php-4.3.11.orig/ext/xslt/config.m4 2004-08-18 07:14:16.000000000 +0200 ++++ php-4.3.11/ext/xslt/config.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -104,6 +104,12 @@ + PHP_ADD_LIBRARY_WITH_PATH(expat, $i/lib, XSLT_SHARED_LIBADD) + found_expat=yes + break ++ elif test -f $i/lib64/libexpat.a -o -f $i/lib64/libexpat.$SHLIB_SUFFIX_NAME; then ++ AC_DEFINE(HAVE_LIBEXPAT2, 1, [ ]) ++ PHP_ADD_INCLUDE($i/include) ++ PHP_ADD_LIBRARY_WITH_PATH(expat, $i/lib64, XSLT_SHARED_LIBADD) ++ found_expat=yes ++ break + fi + done + +@@ -124,29 +130,38 @@ + ]) + + if test "$PHP_SABLOT_JS" != "no"; then +- for i in $PHP_SABLOT_JS /usr/local /usr; do +- if test -f $i/lib/libjs.a -o -f $i/lib/libjs.$SHLIB_SUFFIX_NAME; then +- PHP_SABLOT_JS_DIR=$i +- break +- fi ++ for j in lib64 lib; do ++ for i in $PHP_SABLOT_JS /usr/local /usr; do ++ if test -f $i/$j/libjs.a -o -f $i/$j/libjs.$SHLIB_SUFFIX_NAME; then ++ PHP_SABLOT_JS_DIR=$i ++ PHP_SABLOT_JS_LIBDIR=$i/$j ++ break ++ fi ++ done + done + + PHP_CHECK_LIBRARY(js, JS_GetRuntime, + [ +- PHP_ADD_LIBRARY_WITH_PATH(js, $PHP_SABLOT_JS_DIR/lib, XSLT_SHARED_LIBADD) +- PHP_SABLOT_JS_LIBS="-L$PHP_SABLOT_JS_DIR/lib -ljs" ++ PHP_ADD_LIBRARY_WITH_PATH(js, $PHP_SABLOT_JS_LIBDIR, XSLT_SHARED_LIBADD) ++ PHP_SABLOT_JS_LIBS="-L$PHP_SABLOT_JS_LIBDIR -ljs" + ], [ + AC_MSG_ERROR([libjs not found. Please check config.log for more information.]) + ], [ +- -L$PHP_SABLOT_JS_DIR/lib ++ -L$PHP_SABLOT_JS_LIBDIR + ]) + fi + ++ for j in lib64 lib; do ++ if test -d $XSLT_DIR/$j; then ++ XSLT_LIBDIR=$XSLT_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(sablot, SablotSetEncoding, + [ + AC_DEFINE(HAVE_SABLOT_SET_ENCODING, 1, [ ]) + ], [], [ +- -L$XSLT_DIR/lib $PHP_SABLOT_JS_LIBS ++ -L$XSLT_LIBDIR $PHP_SABLOT_JS_LIBS + ]) + + dnl SablotSetOptions implemented in Sablotron CVS > 2002/10/31 +@@ -154,14 +169,14 @@ + [ + AC_DEFINE(HAVE_SABLOT_GET_OPTIONS, 1, [Whether Sablotron supports SablotGetOptions]) + ], [], [ +- -L$XSLT_DIR/lib $PHP_SABLOT_JS_LIBS ++ -L$XSLT_LIBDIR $PHP_SABLOT_JS_LIBS + ]) + + AC_DEFINE(HAVE_SABLOT_BACKEND, 1, [ ]) + fi + + PHP_ADD_INCLUDE($XSLT_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH($XSLT_LIBNAME, $XSLT_DIR/lib, XSLT_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH($XSLT_LIBNAME, $XSLT_LIBDIR, XSLT_SHARED_LIBADD) + + AC_DEFINE(HAVE_XSLT, 1, [ ]) + fi +diff -Nru php-4.3.11.orig/ext/zlib/config0.m4 php-4.3.11/ext/zlib/config0.m4 +--- php-4.3.11.orig/ext/zlib/config0.m4 2003-07-02 01:54:44.000000000 +0200 ++++ php-4.3.11/ext/zlib/config0.m4 2005-12-01 08:54:41.000000000 +0100 +@@ -36,15 +36,21 @@ + AC_MSG_ERROR(Cannot find libz) + fi + ++ for j in lib64 lib; do ++ if test -d $ZLIB_DIR/$j; then ++ ZLIB_LIBDIR=$ZLIB_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(z, gzgets, [ + AC_DEFINE(HAVE_ZLIB,1,[ ]) + ],[ + AC_MSG_ERROR(ZLIB extension requires zlib >= 1.0.9) + ],[ +- -L$ZLIB_DIR/lib ++ -L$ZLIB_LIBDIR + ]) + +- PHP_ADD_LIBPATH($ZLIB_DIR/lib, ZLIB_SHARED_LIBADD) ++ PHP_ADD_LIBPATH($ZLIB_LIBDIR, ZLIB_SHARED_LIBADD) + + PHP_ZLIB_DIR=$ZLIB_DIR + PHP_ADD_LIBRARY(z,, ZLIB_SHARED_LIBADD) diff --git a/dev-lang/php/files/4.3.11/php4.3.11-pcre-security.patch b/dev-lang/php/files/4.3.11/php4.3.11-pcre-security.patch new file mode 100644 index 0000000..3e44142 --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-pcre-security.patch @@ -0,0 +1,20 @@ +--- ext/pcre/config.m4 2003/12/16 22:14:55 1.29.2.5 ++++ ext/pcre/config.m4 2005/08/09 17:41:56 1.29.2.7.2.1 +@@ -13,7 +13,7 @@ PHP_ARG_WITH(pcre-regex,for PCRE support + + if test "$PHP_PCRE_REGEX" != "no"; then + if test "$PHP_PCRE_REGEX" = "yes"; then +- PHP_NEW_EXTENSION(pcre, pcrelib/maketables.c pcrelib/get.c pcrelib/study.c pcrelib/pcre.c php_pcre.c, $ext_shared,,-DSUPPORT_UTF8 -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -I@ext_srcdir@/pcrelib) ++ PHP_NEW_EXTENSION(pcre, pcrelib/pcre_chartables.c pcrelib/pcre_compile.c pcrelib/pcre_config.c pcrelib/pcre_dfa_exec.c pcrelib/pcre_exec.c pcrelib/pcre_fullinfo.c pcrelib/pcre_get.c pcrelib/pcre_globals.c pcrelib/pcre_info.c pcrelib/pcre_maketables.c pcrelib/pcre_ord2utf8.c pcrelib/pcre_printint.c pcrelib/pcre_refcount.c pcrelib/pcre_study.c pcrelib/pcre_tables.c pcrelib/pcre_try_flipped.c pcrelib/pcre_ucp_findchar.c pcrelib/pcre_valid_utf8.c pcrelib/pcre_version.c pcrelib/pcre_xclass.c php_pcre.c, $ext_shared,,-DEXPORT= -DNEWLINE=10 -DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000 -I@ext_srcdir@/pcrelib) + PHP_ADD_BUILD_DIR($ext_builddir/pcrelib) + AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ]) + else +@@ -50,7 +50,7 @@ if test "$PHP_PCRE_REGEX" != "no"; then + + AC_DEFINE(HAVE_PCRE, 1, [ ]) + PHP_ADD_INCLUDE($PCRE_INCDIR) +- PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,,-DSUPPORT_UTF8 -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10) ++ PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,,-DEXPORT= -DNEWLINE=10 -DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000) + fi + PHP_SUBST(PCRE_SHARED_LIBADD) + fi diff --git a/dev-lang/php/files/4.3.11/php4.3.11-phpinfo_xss.patch b/dev-lang/php/files/4.3.11/php4.3.11-phpinfo_xss.patch new file mode 100644 index 0000000..2c7d999 --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-phpinfo_xss.patch @@ -0,0 +1,75 @@ +--- ext/standard/info.c 2004-06-09 17:10:19.000000000 +0200 ++++ ext/standard/info.c 2005-11-01 01:22:42.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: info.c,v 1.218.2.16 2004/06/09 15:10:19 iliaa Exp $ */ ++/* $Id: info.c,v 1.218.2.18.2.4 2005/08/16 00:26:02 iliaa Exp $ */ + + #include "php.h" + #include "php_ini.h" +@@ -133,10 +133,21 @@ + PUTS(" => "); + } + if (Z_TYPE_PP(tmp) == IS_ARRAY) { ++ zval *tmp3; ++ MAKE_STD_ZVAL(tmp3); + if (!sapi_module.phpinfo_as_text) { + PUTS("<pre>"); + } ++ php_start_ob_buffer(NULL, 4096, 1 TSRMLS_CC); + zend_print_zval_r(*tmp, 0); ++ php_ob_get_buffer(tmp3 TSRMLS_CC); ++ php_end_ob_buffer(0, 0 TSRMLS_CC); ++ ++ elem_esc = php_info_html_esc(Z_STRVAL_P(tmp3) TSRMLS_CC); ++ PUTS(elem_esc); ++ efree(elem_esc); ++ zval_ptr_dtor(&tmp3); ++ + if (!sapi_module.phpinfo_as_text) { + PUTS("</pre>"); + } +@@ -196,7 +207,7 @@ + PHPAPI char *php_info_html_esc(char *string TSRMLS_DC) + { + int new_len; +- return php_escape_html_entities(string, strlen(string), &new_len, 0, ENT_NOQUOTES, NULL TSRMLS_CC); ++ return php_escape_html_entities(string, strlen(string), &new_len, 0, ENT_QUOTES, NULL TSRMLS_CC); + } + /* }}} */ + +@@ -408,7 +419,9 @@ + if (expose_php && !sapi_module.phpinfo_as_text) { + PUTS("<a href=\"http://www.php.net/\"><img border=\"0\" src=\""); + if (SG(request_info).request_uri) { +- PUTS(SG(request_info).request_uri); ++ char *elem_esc = php_info_html_esc(SG(request_info).request_uri TSRMLS_CC); ++ PUTS(elem_esc); ++ efree(elem_esc); + } + if ((ta->tm_mon==3) && (ta->tm_mday==1)) { + PUTS("?="PHP_EGG_LOGO_GUID"\" alt=\"Nadia!\" /></a>"); +@@ -510,7 +529,9 @@ + if (expose_php && !sapi_module.phpinfo_as_text) { + PUTS("<a href=\"http://www.zend.com/\"><img border=\"0\" src=\""); + if (SG(request_info).request_uri) { +- PUTS(SG(request_info).request_uri); ++ char *elem_esc = php_info_html_esc(SG(request_info).request_uri TSRMLS_CC); ++ PUTS(elem_esc); ++ efree(elem_esc); + } + PUTS("?="ZEND_LOGO_GUID"\" alt=\"Zend logo\" /></a>\n"); + } +@@ -525,7 +546,9 @@ + php_info_print_hr(); + PUTS("<h1><a href=\""); + if (SG(request_info).request_uri) { +- PUTS(SG(request_info).request_uri); ++ char *elem_esc = php_info_html_esc(SG(request_info).request_uri TSRMLS_CC); ++ PUTS(elem_esc); ++ efree(elem_esc); + } + PUTS("?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000\">"); + PUTS("PHP Credits"); diff --git a/dev-lang/php/files/4.3.11/php4.3.11-pspell-ext-segf.patch b/dev-lang/php/files/4.3.11/php4.3.11-pspell-ext-segf.patch new file mode 100644 index 0000000..a62c42f --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-pspell-ext-segf.patch @@ -0,0 +1,317 @@ +--- ext/pspell/pspell.c 2003-08-28 22:01:29.000000000 +0200 ++++ ext/pspell/pspell.c 2005-10-26 23:24:22.000000000 +0200 +@@ -16,7 +16,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: pspell.c,v 1.28.8.5 2003/08/28 20:01:29 iliaa Exp $ */ ++/* $Id: pspell.c,v 1.28.8.5.4.2 2005/10/17 15:43:10 iliaa Exp $ */ + + #define IS_EXT_MODULE + +@@ -99,6 +99,22 @@ + delete_pspell_config(config); + } + ++#define PSPELL_FETCH_CONFIG \ ++ convert_to_long_ex(conf); \ ++ config = (PspellConfig *) zend_list_find(Z_LVAL_PP(conf), &type); \ ++ if (config == NULL || type != le_pspell_config) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(conf)); \ ++ RETURN_FALSE; \ ++ } \ ++ ++#define PSPELL_FETCH_MANAGER \ ++ convert_to_long_ex(scin); \ ++ manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); \ ++ if (!manager || type != le_pspell) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); \ ++ RETURN_FALSE; \ ++ } \ ++ + /* {{{ PHP_MINIT_FUNCTION + */ + PHP_MINIT_FUNCTION(pspell) +@@ -350,14 +366,8 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(conf); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(conf), &type); ++ PSPELL_FETCH_CONFIG; + +- if (config == NULL || type != le_pspell_config) { +- php_error(E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(conf)); +- RETURN_FALSE; +- } +- + ret = new_pspell_manager(config); + + if(pspell_error_number(ret) != 0){ +@@ -385,13 +395,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + if(pspell_manager_check(manager, Z_STRVAL_PP(word))){ + RETURN_TRUE; +@@ -417,13 +423,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + array_init(return_value); + +@@ -455,14 +457,10 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(miss); + convert_to_string_ex(corr); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + pspell_manager_store_replacement(manager, Z_STRVAL_PP(miss), Z_STRVAL_PP(corr)); + if(pspell_manager_error_number(manager) == 0){ +@@ -488,13 +486,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + /*If the word is empty, we have to return; otherwise we'll segfault! ouch!*/ + if(Z_STRLEN_PP(word) == 0){ +@@ -525,13 +519,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + /*If the word is empty, we have to return; otherwise we'll segfault! ouch!*/ + if(Z_STRLEN_PP(word) == 0){ +@@ -562,12 +552,7 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + pspell_manager_clear_session(manager); + if(pspell_manager_error_number(manager) == 0){ +@@ -593,12 +578,7 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + pspell_manager_save_all_word_lists(manager); + +@@ -666,22 +646,17 @@ + PHP_FUNCTION(pspell_config_runtogether) + { + int type; +- zval **sccin, **runtogether; ++ zval **conf, **runtogether; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&runtogether) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&runtogether) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_boolean_ex(runtogether); + pspell_config_replace(config, "run-together", Z_LVAL_PP(runtogether) ? "true" : "false"); +@@ -695,22 +670,17 @@ + PHP_FUNCTION(pspell_config_mode) + { + int type; +- zval **sccin, **mode; ++ zval **conf, **mode; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&mode) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&mode) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_long_ex(mode); + +@@ -732,7 +702,7 @@ + PHP_FUNCTION(pspell_config_ignore) + { + int type; +- zval **sccin, **pignore; ++ zval **conf, **pignore; + int argc; + + int loc = PSPELL_LARGEST_WORD; +@@ -742,16 +712,11 @@ + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&pignore) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&pignore) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_long_ex(pignore); + ignore = Z_LVAL_PP(pignore); +@@ -782,22 +747,17 @@ + PHP_FUNCTION(pspell_config_personal) + { + int type; +- zval **sccin, **personal; ++ zval **conf, **personal; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&personal) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&personal) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_string_ex(personal); + +@@ -820,22 +780,17 @@ + PHP_FUNCTION(pspell_config_repl) + { + int type; +- zval **sccin, **repl; ++ zval **conf, **repl; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&repl) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&repl) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + pspell_config_replace(config, "save-repl", "true"); + +@@ -860,22 +815,17 @@ + PHP_FUNCTION(pspell_config_save_repl) + { + int type; +- zval **sccin, **save; ++ zval **conf, **save; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&save) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&save) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_boolean_ex(save); + pspell_config_replace(config, "save-repl", Z_LVAL_PP(save) ? "true" : "false"); diff --git a/dev-lang/php/files/4.3.11/php4.3.11-session_save_path-segf.patch b/dev-lang/php/files/4.3.11/php4.3.11-session_save_path-segf.patch new file mode 100644 index 0000000..3836776 --- /dev/null +++ b/dev-lang/php/files/4.3.11/php4.3.11-session_save_path-segf.patch @@ -0,0 +1,154 @@ +--- sapi/apache2handler/sapi_apache2.c 2005-03-10 12:39:04.000000000 +0100 ++++ sapi/apache2handler/sapi_apache2.c 2005-10-26 16:02:03.000000000 +0200 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: sapi_apache2.c,v 1.1.2.39 2005/03/10 11:39:04 jorton Exp $ */ ++/* $Id: sapi_apache2.c,v 1.1.2.40.2.5 2005/10/12 21:41:36 tony2001 Exp $ */ + + #include <fcntl.h> + +@@ -268,23 +268,18 @@ + TSRMLS_FETCH(); + + ctx = SG(server_context); +- +- /* We use APLOG_STARTUP because it keeps us from printing the +- * data and time information at the beginning of the error log +- * line. Not sure if this is correct, but it mirrors what happens +- * with Apache 1.3 -- rbb +- */ ++ + if (ctx == NULL) { /* we haven't initialized our ctx yet, oh well */ + ap_log_error(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, 0, NULL, "%s", msg); + } else { +- ap_log_rerror(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, 0, ctx->r, "%s", msg); ++ ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, ctx->r, "%s", msg); + } + } + + static void php_apache_sapi_log_message_ex(char *msg, request_rec *r) + { + if (r) { +- ap_log_rerror(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, 0, r, msg, r->filename); ++ ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r, msg, r->filename); + } else { + php_apache_sapi_log_message(msg); + } +@@ -458,15 +453,34 @@ + request_rec *parent_req = NULL; + TSRMLS_FETCH(); + ++#define PHPAP_INI_OFF \ ++ if (strcmp(r->protocol, "INCLUDED")) { \ ++ zend_try { zend_ini_deactivate(TSRMLS_C); } zend_end_try(); \ ++ } \ ++ + conf = ap_get_module_config(r->per_dir_config, &php4_module); ++ ++ /* apply_config() needs r in some cases, so allocate server_context early */ ++ ctx = SG(server_context); ++ if (ctx == NULL) { ++ ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); ++ /* register a cleanup so we clear out the SG(server_context) ++ * after each request. Note: We pass in the pointer to the ++ * server_context in case this is handled by a different thread. ++ */ ++ apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); ++ ctx->r = r; ++ ctx = NULL; /* May look weird to null it here, but it is to catch the right case in the first_try later on */ ++ } else { ++ parent_req = ctx->r; ++ ctx->r = r; ++ } + apply_config(conf); + + if (strcmp(r->handler, PHP_MAGIC_TYPE) && strcmp(r->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(r->handler, PHP_SCRIPT)) { + /* Check for xbithack in this case. */ + if (!AP2(xbithack) || strcmp(r->handler, "text/html") || !(r->finfo.protection & APR_UEXECUTE)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + } +@@ -475,32 +489,24 @@ + * the configuration; default behaviour is to accept. */ + if (r->used_path_info == AP_REQ_REJECT_PATH_INFO + && r->path_info && r->path_info[0]) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + + /* handle situations where user turns the engine off */ + if (!AP2(engine)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + + if (r->finfo.filetype == 0) { + php_apache_sapi_log_message_ex("script '%s' not found or unable to stat", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + if (r->finfo.filetype == APR_DIR) { + php_apache_sapi_log_message_ex("attempt to invoke directory '%s' as script", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_FORBIDDEN; + } + +@@ -516,24 +522,30 @@ + + zend_first_try { + +- ctx = SG(server_context); + if (ctx == NULL) { +- ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); +- /* register a cleanup so we clear out the SG(server_context) +- * after each request. Note: We pass in the pointer to the +- * server_context in case this is handled by a different thread. +- */ +- apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); +- +- ctx->r = r; ++normal: + brigade = apr_brigade_create(r->pool, r->connection->bucket_alloc); ++ ctx = SG(server_context); + ctx->brigade = brigade; + + if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { + zend_bailout(); + } + } else { +- parent_req = ctx->r; ++ if (!parent_req) { ++ parent_req = ctx->r; ++ } ++ if (parent_req && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { ++ if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { ++ zend_bailout(); ++ } ++ } ++ ++ /* check if comming due to ErrorDocument */ ++ if (parent_req && parent_req->status != HTTP_OK) { ++ parent_req = NULL; ++ goto normal; ++ } + ctx->r = r; + brigade = ctx->brigade; + } diff --git a/dev-lang/php/files/4.4.0/CVS/Entries b/dev-lang/php/files/4.4.0/CVS/Entries new file mode 100644 index 0000000..701caa9 --- /dev/null +++ b/dev-lang/php/files/4.4.0/CVS/Entries @@ -0,0 +1,17 @@ +D/apache-1.3//// +D/apache-2.0//// +/fastbuild.patch/1.1/Sun Sep 4 16:58:08 2005//T1.1 +/php4-hphp-acinclude.patch/1.1/Thu Sep 8 20:47:34 2005/-ko/T1.1 +/php4-imap-symlink.diff/1.1/Sun Sep 4 16:58:08 2005//T1.1 +/php4-iodbc-config.diff/1.1/Sun Sep 4 16:58:08 2005//T1.1 +/php4-libtool-1.5.patch/1.1/Sun Sep 18 13:21:54 2005//T1.1 +/php4-with-iodbc.diff/1.1/Sun Sep 4 16:58:08 2005//T1.1 +/php4.3.11-pcre-security.patch/1.1/Sun Sep 18 13:21:54 2005//T1.1 +/php4.4.0-curl_safemode.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php4.4.0-fopen_wrappers.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4.4.0-gd_safe_mode.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4.4.0-globals_overwrite.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php4.4.0-pcre-security.patch/1.1/Sun Sep 18 13:21:54 2005/-ko/T1.1 +/php4.4.0-phpinfo_xss.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php4.4.0-pspell-ext-segf.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php4.4.0-session_save_path-segf.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 diff --git a/dev-lang/php/files/4.4.0/CVS/Repository b/dev-lang/php/files/4.4.0/CVS/Repository new file mode 100644 index 0000000..0be8d4c --- /dev/null +++ b/dev-lang/php/files/4.4.0/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/4.4.0 diff --git a/dev-lang/php/files/4.4.0/CVS/Root b/dev-lang/php/files/4.4.0/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/4.4.0/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/4.4.0/CVS/Tag b/dev-lang/php/files/4.4.0/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/4.4.0/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/4.4.0/apache-1.3/70_mod_php.conf b/dev-lang/php/files/4.4.0/apache-1.3/70_mod_php.conf new file mode 100644 index 0000000..34a41d8 --- /dev/null +++ b/dev-lang/php/files/4.4.0/apache-1.3/70_mod_php.conf @@ -0,0 +1,19 @@ +# vim: ft=apache sw=4 ts=4 +<IfDefine PHP4> + + # Load the module first + <IfModule !sapi_apache.c> + LoadModule php4_module modules/libphp4.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/4.4.0/apache-1.3/CVS/Entries b/dev-lang/php/files/4.4.0/apache-1.3/CVS/Entries new file mode 100644 index 0000000..3bf85e4 --- /dev/null +++ b/dev-lang/php/files/4.4.0/apache-1.3/CVS/Entries @@ -0,0 +1,2 @@ +/70_mod_php.conf/1.1/Sun Sep 4 16:58:08 2005//T1.1 +D diff --git a/dev-lang/php/files/4.4.0/apache-1.3/CVS/Repository b/dev-lang/php/files/4.4.0/apache-1.3/CVS/Repository new file mode 100644 index 0000000..969ffa4 --- /dev/null +++ b/dev-lang/php/files/4.4.0/apache-1.3/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/4.4.0/apache-1.3 diff --git a/dev-lang/php/files/4.4.0/apache-1.3/CVS/Root b/dev-lang/php/files/4.4.0/apache-1.3/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/4.4.0/apache-1.3/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/4.4.0/apache-1.3/CVS/Tag b/dev-lang/php/files/4.4.0/apache-1.3/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/4.4.0/apache-1.3/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/4.4.0/apache-2.0/70_mod_php.conf b/dev-lang/php/files/4.4.0/apache-2.0/70_mod_php.conf new file mode 100644 index 0000000..ce68032 --- /dev/null +++ b/dev-lang/php/files/4.4.0/apache-2.0/70_mod_php.conf @@ -0,0 +1,19 @@ +# vim: ft=apache sw=4 ts=4 +<IfDefine PHP4> + + # Load the module first + <IfModule !sapi_apache2.c> + LoadModule php4_module modules/libphp4.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/4.4.0/apache-2.0/CVS/Entries b/dev-lang/php/files/4.4.0/apache-2.0/CVS/Entries new file mode 100644 index 0000000..3bf85e4 --- /dev/null +++ b/dev-lang/php/files/4.4.0/apache-2.0/CVS/Entries @@ -0,0 +1,2 @@ +/70_mod_php.conf/1.1/Sun Sep 4 16:58:08 2005//T1.1 +D diff --git a/dev-lang/php/files/4.4.0/apache-2.0/CVS/Repository b/dev-lang/php/files/4.4.0/apache-2.0/CVS/Repository new file mode 100644 index 0000000..bc4ce28 --- /dev/null +++ b/dev-lang/php/files/4.4.0/apache-2.0/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/4.4.0/apache-2.0 diff --git a/dev-lang/php/files/4.4.0/apache-2.0/CVS/Root b/dev-lang/php/files/4.4.0/apache-2.0/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/4.4.0/apache-2.0/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/4.4.0/apache-2.0/CVS/Tag b/dev-lang/php/files/4.4.0/apache-2.0/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/4.4.0/apache-2.0/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/4.4.0/fastbuild.patch b/dev-lang/php/files/4.4.0/fastbuild.patch new file mode 100644 index 0000000..0af555e --- /dev/null +++ b/dev-lang/php/files/4.4.0/fastbuild.patch @@ -0,0 +1,250 @@ +diff -u --recursive php-4.4.0/aclocal.m4 php-4.4.0-cgi/aclocal.m4 +--- php-4.4.0/aclocal.m4 2005-07-11 11:07:27.000000000 +0100 ++++ php-4.4.0-cgi/aclocal.m4 2005-09-01 08:03:20.000000000 +0100 +@@ -84,7 +84,7 @@ + dnl + dnl which array to append to? + AC_DEFUN([PHP_ADD_SOURCES],[ +- PHP_ADD_SOURCES_X($1, $2, $3, ifelse($4,cli,PHP_CLI_OBJS,ifelse($4,sapi,PHP_SAPI_OBJS,PHP_GLOBAL_OBJS))) ++ PHP_ADD_SOURCES_X($1, $2, $3, ifelse($4,cli,PHP_CLI_OBJS,ifelse($4,sapi,PHP_SAPI_OBJS,ifelse($4,cgi,PHP_CGI_OBJS,PHP_GLOBAL_OBJS)))) + ]) + dnl + dnl _PHP_ASSIGN_BUILD_VARS(type) +diff -u --recursive php-4.4.0/configure.in php-4.4.0-cgi/configure.in +--- php-4.4.0/configure.in 2005-07-11 08:45:09.000000000 +0100 ++++ php-4.4.0-cgi/configure.in 2005-09-01 08:00:54.000000000 +0100 +@@ -1216,20 +1216,20 @@ + INLINE_CFLAGS="$INLINE_CFLAGS $standard_libtool_flag" + CXXFLAGS="$CXXFLAGS $standard_libtool_flag" + +-all_targets='$(OVERALL_TARGET) $(PHP_MODULES) $(PHP_CLI_TARGET)' ++all_targets='$(OVERALL_TARGET) $(PHP_MODULES) $(PHP_CLI_TARGET) $(PHP_CGI_TARGET)' + install_targets="$install_modules $install_pear install-build install-headers install-programs" + +-case $PHP_SAPI in +- cgi) +- install_targets="install-sapi $install_targets" +- ;; +- cli) +- install_targets="$PHP_INSTALL_CLI_TARGET $install_targets" +- ;; +- *) +- install_targets="install-sapi $PHP_INSTALL_CLI_TARGET $install_targets" +- ;; +-esac ++if test "$PHP_SAPI_CGI" != "no" ; then ++ install_targets="install-sapi $install_targets" ++fi ++ ++if test "$PHP_SAPI_CLI" != "no" ; then ++ install_targets="$PHP_INSTALL_CLI_TARGET $install_targets" ++fi ++ ++if test "$PHP_SAPI" != "default" ; then ++ install_targets="install-sapi $PHP_INSTALL_CLI_TARGET $install_targets" ++fi + + PHP_SUBST(all_targets) + PHP_SUBST(install_targets) +diff -u --recursive php-4.4.0/sapi/cgi/Makefile.frag php-4.4.0-cgi/sapi/cgi/Makefile.frag +--- php-4.4.0/sapi/cgi/Makefile.frag 2003-07-02 02:06:29.000000000 +0100 ++++ php-4.4.0-cgi/sapi/cgi/Makefile.frag 2005-09-01 08:03:20.000000000 +0100 +@@ -1,2 +1,6 @@ +-$(SAPI_CGI_PATH): $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) ++$(SAPI_CGI_PATH): $(PHP_GLOBAL_OBJS) $(PHP_CGI_OBJS) + $(BUILD_CGI) ++ ++install-cgi: $(SAPI_CGI_PATH) ++ @echo "Installing PHP CGI binary: $(INSTALL_ROOT)$(bindir)/" ++ @$(INSTALL_CGI) +diff -u --recursive php-4.4.0/sapi/cgi/config9.m4 php-4.4.0-cgi/sapi/cgi/config9.m4 +--- php-4.4.0/sapi/cgi/config9.m4 2004-12-30 07:02:18.000000000 +0000 ++++ php-4.4.0-cgi/sapi/cgi/config9.m4 2005-09-01 08:05:08.000000000 +0100 +@@ -81,93 +81,107 @@ + ]) + + +-if test "$PHP_SAPI" = "default"; then +- AC_MSG_CHECKING(for CGI build) +- if test "$PHP_SAPI_CGI" != "no"; then +- AC_MSG_RESULT(yes) +- +- PHP_ADD_MAKEFILE_FRAGMENT($abs_srcdir/sapi/cgi/Makefile.frag) +- case $host_alias in +- *cygwin* ) +- SAPI_CGI_PATH=sapi/cgi/php.exe +- ;; +- * ) +- SAPI_CGI_PATH=sapi/cgi/php +- ;; +- esac +- PHP_SUBST(SAPI_CGI_PATH) +- +- PHP_TEST_WRITE_STDOUT +- +- AC_MSG_CHECKING(whether to force Apache CGI redirect) +- if test "$PHP_FORCE_CGI_REDIRECT" = "yes"; then +- REDIRECT=1 +- else +- REDIRECT=0 +- fi +- AC_DEFINE_UNQUOTED(FORCE_CGI_REDIRECT,$REDIRECT,[ ]) +- AC_MSG_RESULT($PHP_FORCE_CGI_REDIRECT) ++AC_MSG_CHECKING(for CGI build) ++if test "$PHP_SAPI_CGI" != "no"; then ++ AC_MSG_RESULT(yes) ++ ++ PHP_ADD_MAKEFILE_FRAGMENT($abs_srcdir/sapi/cgi/Makefile.frag) ++ case $host_alias in ++ *cygwin* ) ++ SAPI_CGI_PATH=sapi/cgi/php.exe ++ ;; ++ * ) ++ SAPI_CGI_PATH=sapi/cgi/php ++ ;; ++ esac ++ PHP_SUBST(SAPI_CGI_PATH) + ++ PHP_TEST_WRITE_STDOUT + +- AC_MSG_CHECKING(whether to discard path_info + path_translated) +- if test "$PHP_DISCARD_PATH" = "yes"; then +- DISCARD_PATH=1 +- else +- DISCARD_PATH=0 +- fi +- AC_DEFINE_UNQUOTED(DISCARD_PATH, $DISCARD_PATH, [ ]) +- AC_MSG_RESULT($PHP_DISCARD_PATH) ++ AC_MSG_CHECKING(whether to force Apache CGI redirect) ++ if test "$PHP_FORCE_CGI_REDIRECT" = "yes"; then ++ REDIRECT=1 ++ else ++ REDIRECT=0 ++ fi ++ AC_DEFINE_UNQUOTED(FORCE_CGI_REDIRECT,$REDIRECT,[ ]) ++ AC_MSG_RESULT($PHP_FORCE_CGI_REDIRECT) + +- AC_MSG_CHECKING(whether to enable path info checking) +- if test "$PHP_ENABLE_PATHINFO_CHECK" = "yes"; then +- ENABLE_PATHINFO_CHECK=1 +- else +- ENABLE_PATHINFO_CHECK=0 +- fi +- AC_DEFINE_UNQUOTED(ENABLE_PATHINFO_CHECK, $ENABLE_PATHINFO_CHECK, [ ]) +- AC_MSG_RESULT($PHP_ENABLE_PATHINFO_CHECK) + +- AC_MSG_CHECKING(whether to enable fastcgi support) +- PHP_LIBFCGI_DIR="$abs_srcdir/sapi/cgi/libfcgi" +- if test -z $PHP_LIBFCGI_DIR; then +- echo "$PHP_LIBFCGI_DIR does not exist" +- exit 1 +- fi +- if test "$PHP_ENABLE_FASTCGI" = "yes"; then +- PHP_ADD_BUILD_DIR($abs_builddir/sapi/cgi/libfcgi) +- PHP_FASTCGI=1 +- PHP_FCGI_FILES="libfcgi/fcgi_stdio.c libfcgi/fcgiapp.c libfcgi/os_unix.c" +- PHP_FCGI_INCLUDE="-I$PHP_LIBFCGI_DIR/include" +- PHP_FCGI_STATIC=1 +- else +- PHP_FASTCGI=0 +- PHP_FCGI_FILES="" +- PHP_FCGI_INCLUDE="" +- PHP_FCGI_STATIC=0 +- fi +- AC_DEFINE_UNQUOTED(PHP_FASTCGI, $PHP_FASTCGI, [ ]) +- AC_DEFINE_UNQUOTED(PHP_FCGI_STATIC, $PHP_FCGI_STATIC, [ ]) +- AC_MSG_RESULT($PHP_ENABLE_FASTCGI) +- +- INSTALL_IT="@echo \"Installing PHP CGI into: \$(INSTALL_ROOT)\$(bindir)/\"; \$(INSTALL) -m 0755 \$(SAPI_CGI_PATH) \$(INSTALL_ROOT)\$(bindir)/\$(program_prefix)php\$(program_suffix)" +- PHP_SELECT_SAPI(cgi, program, $PHP_FCGI_FILES cgi_main.c getopt.c, $PHP_FCGI_INCLUDE, '$(SAPI_CGI_PATH)') +- +- case $host_alias in +- *darwin*) +- BUILD_CGI="\$(CC) \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(NATIVE_RPATHS) \$(PHP_GLOBAL_OBJS:.lo=.o) \$(PHP_SAPI_OBJS:.lo=.o) \$(PHP_FRAMEWORKS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" ++ AC_MSG_CHECKING(whether to discard path_info + path_translated) ++ if test "$PHP_DISCARD_PATH" = "yes"; then ++ DISCARD_PATH=1 ++ else ++ DISCARD_PATH=0 ++ fi ++ AC_DEFINE_UNQUOTED(DISCARD_PATH, $DISCARD_PATH, [ ]) ++ AC_MSG_RESULT($PHP_DISCARD_PATH) ++ ++ AC_MSG_CHECKING(whether to enable path info checking) ++ if test "$PHP_ENABLE_PATHINFO_CHECK" = "yes"; then ++ ENABLE_PATHINFO_CHECK=1 ++ else ++ ENABLE_PATHINFO_CHECK=0 ++ fi ++ AC_DEFINE_UNQUOTED(ENABLE_PATHINFO_CHECK, $ENABLE_PATHINFO_CHECK, [ ]) ++ AC_MSG_RESULT($PHP_ENABLE_PATHINFO_CHECK) ++ ++ AC_MSG_CHECKING(whether to enable fastcgi support) ++ PHP_LIBFCGI_DIR="$abs_srcdir/sapi/cgi/libfcgi" ++ if test -z $PHP_LIBFCGI_DIR; then ++ echo "$PHP_LIBFCGI_DIR does not exist" ++ exit 1 ++ fi ++ if test "$PHP_ENABLE_FASTCGI" = "yes"; then ++ PHP_ADD_BUILD_DIR($abs_builddir/sapi/cgi/libfcgi) ++ PHP_FASTCGI=1 ++ PHP_FCGI_FILES="libfcgi/fcgi_stdio.c libfcgi/fcgiapp.c libfcgi/os_unix.c" ++ PHP_FCGI_INCLUDE="-I$PHP_LIBFCGI_DIR/include" ++ PHP_FCGI_STATIC=1 ++ else ++ PHP_FASTCGI=0 ++ PHP_FCGI_FILES="" ++ PHP_FCGI_INCLUDE="" ++ PHP_FCGI_STATIC=0 ++ fi ++ AC_DEFINE_UNQUOTED(PHP_FASTCGI, $PHP_FASTCGI, [ ]) ++ AC_DEFINE_UNQUOTED(PHP_FCGI_STATIC, $PHP_FCGI_STATIC, [ ]) ++ AC_MSG_RESULT($PHP_ENABLE_FASTCGI) ++ ++ INSTALL_CGI="@echo \"Installing PHP CGI into: \$(INSTALL_ROOT)\$(bindir)/\"; \$(INSTALL) -m 0755 \$(SAPI_CGI_PATH) \$(INSTALL_ROOT)\$(bindir)/\$(program_prefix)php\$(program_suffix)" ++ PHP_ADD_SOURCES(sapi/cgi, $PHP_FCGI_FILES cgi_main.c getopt.c, $PHP_FCGI_INCLUDE, cgi) ++ PHP_ADD_SOURCES(/main, internal_functions.c,,cgi) ++ ++ case $host_alias in ++ *darwin*) ++ BUILD_CGI="\$(CC) \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(NATIVE_RPATHS) \$(PHP_GLOBAL_OBJS:.lo=.o) \$(PHP_CGI_OBJS:.lo=.o) \$(PHP_FRAMEWORKS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" + ;; +- *) +- BUILD_CGI="\$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_SAPI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" ++ *) ++ BUILD_CGI="\$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_CGI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" + ;; +- esac ++ esac + +- PHP_SUBST(BUILD_CGI) ++ PHP_CGI_TARGET="$SAPI_CGI_PATH" ++ PHP_INSTALL_CGI_TARGET="install-cgi" + +- elif test "$PHP_SAPI_CLI" != "no"; then +- AC_MSG_RESULT(no) +- OVERALL_TARGET= +- PHP_SAPI=cli +- else +- AC_MSG_ERROR([No SAPIs selected.]) ++ PHP_SUBST(BUILD_CGI) ++ PHP_SUBST(INSTALL_CGI) ++ PHP_SUBST(PHP_CGI_OBJS) ++ PHP_SUBST(PHP_CGI_TARGET) ++ PHP_SUBST(PHP_INSTALL_CGI_TARGET) ++ ++ if test "$PHP_SAPI" = "default" ; then ++ PHP_BUILD_PROGRAM($SAPI_CGI_PATH) ++ fi ++ ++else ++ AC_MSG_RESULT(no) ++ if test "$PHP_SAPI" = "default" ; then ++ if test "$PHP_SAPI_CLI" != "no"; then ++ OVERALL_TARGET= ++ PHP_SAPI=cli ++ else ++ AC_MSG_ERROR([No SAPIs selected.]) ++ fi + fi + fi diff --git a/dev-lang/php/files/4.4.0/php4-hphp-acinclude.patch b/dev-lang/php/files/4.4.0/php4-hphp-acinclude.patch new file mode 100644 index 0000000..68a6bfe --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4-hphp-acinclude.patch @@ -0,0 +1,19 @@ +--- acinclude.m4.orig 2005-09-08 13:16:38.000000000 +0200 ++++ acinclude.m4 2005-09-08 13:21:09.000000000 +0200 +@@ -783,12 +783,12 @@ + dnl + AC_DEFUN([PHP_BUILD_PROGRAM],[ + OVERALL_TARGET=[]ifelse($1,,php,$1) +- php_c_pre='$(CC)' ++ php_c_pre='$(LIBTOOL) --mode=compile $(CC)' + php_c_meta='$(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS)' +- php_c_post=' && echo > $[@]' +- php_cxx_pre='$(CXX)' ++ php_c_post= ++ php_cxx_pre='$(LIBTOOL) --mode=compile $(CXX)' + php_cxx_meta='$(COMMON_FLAGS) $(CXXFLAGS_CLEAN) $(EXTRA_CXXFLAGS)' +- php_cxx_post=' && echo > $[@]' ++ php_cxx_post= + php_lo=o + + case $with_pic in diff --git a/dev-lang/php/files/4.4.0/php4-imap-symlink.diff b/dev-lang/php/files/4.4.0/php4-imap-symlink.diff new file mode 100644 index 0000000..cf74905 --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4-imap-symlink.diff @@ -0,0 +1,15 @@ +--- ext/imap/config.m4 2005-09-04 02:48:47.000000000 +0200 ++++ ext/imap/config.m4 2005-09-04 02:49:05.000000000 +0200 +@@ -158,12 +158,6 @@ + AC_MSG_ERROR(Cannot find rfc822.h. Please check your c-client installation.) + fi + +- if test -r "$IMAP_DIR/c-client/c-client.a"; then +- ln -s "$IMAP_DIR/c-client/c-client.a" "$IMAP_DIR/c-client/libc-client.a" >/dev/null 2>&1 +- elif test -r "$IMAP_DIR/lib/c-client.a"; then +- ln -s "$IMAP_DIR/lib/c-client.a" "$IMAP_DIR/lib/libc-client.a" >/dev/null 2>&1 +- fi +- + for lib in c-client4 c-client imap; do + IMAP_LIB=$lib + IMAP_LIB_CHK(lib) diff --git a/dev-lang/php/files/4.4.0/php4-iodbc-config.diff b/dev-lang/php/files/4.4.0/php4-iodbc-config.diff new file mode 100644 index 0000000..a706916 --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4-iodbc-config.diff @@ -0,0 +1,14 @@ +--- ext/odbc/config.m4 2005-08-10 02:05:26.000000000 +0200 ++++ ext/odbc/config.m4 2005-08-10 02:06:10.000000000 +0200 +@@ -401,9 +401,9 @@ + fi + if test "$withval" != "no"; then + PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/lib) +- PHP_ADD_INCLUDE($withval/include, 1) ++ PHP_ADD_INCLUDE($withval/include/iodbc, 1) + ODBC_TYPE=iodbc +- ODBC_INCLUDE=-I$withval/include ++ ODBC_INCLUDE=-I$withval/include/iodbc + ODBC_LFLAGS=-L$withval/lib + ODBC_LIBS=-liodbc + AC_DEFINE(HAVE_IODBC,1,[ ]) diff --git a/dev-lang/php/files/4.4.0/php4-libtool-1.5.patch b/dev-lang/php/files/4.4.0/php4-libtool-1.5.patch new file mode 100644 index 0000000..0761203 --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4-libtool-1.5.patch @@ -0,0 +1,19 @@ +--- acinclude.m4 2005-09-08 13:16:38.000000000 +0200 ++++ acinclude.m4 2005-09-08 13:21:09.000000000 +0200 +@@ -783,12 +783,12 @@ + dnl + AC_DEFUN([PHP_BUILD_PROGRAM],[ + OVERALL_TARGET=[]ifelse($1,,php,$1) +- php_c_pre='$(CC)' ++ php_c_pre='$(LIBTOOL) --mode=compile $(CC)' + php_c_meta='$(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS)' +- php_c_post=' && echo > $[@]' +- php_cxx_pre='$(CXX)' ++ php_c_post= ++ php_cxx_pre='$(LIBTOOL) --mode=compile $(CXX)' + php_cxx_meta='$(COMMON_FLAGS) $(CXXFLAGS_CLEAN) $(EXTRA_CXXFLAGS)' +- php_cxx_post=' && echo > $[@]' ++ php_cxx_post= + php_lo=o + + case $with_pic in diff --git a/dev-lang/php/files/4.4.0/php4-with-iodbc.diff b/dev-lang/php/files/4.4.0/php4-with-iodbc.diff new file mode 100644 index 0000000..81afcc0 --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4-with-iodbc.diff @@ -0,0 +1,13 @@ +--- ext/odbc/php_odbc_includes.h 2005-02-22 17:55:18.000000000 +0000 ++++ ext/odbc/php_odbc_includes.h 2005-02-22 17:55:26.000000000 +0000 +@@ -91,8 +91,8 @@ + #elif defined(HAVE_IODBC) /* iODBC library */ + + #define ODBC_TYPE "iODBC" +-#include <isql.h> +-#include <isqlext.h> ++#include <iodbc/isql.h> ++#include <iodbc/isqlext.h> + #define HAVE_SQL_EXTENDED_FETCH 1 + #define SQL_FD_FETCH_ABSOLUTE 0x00000010L + #define SQL_CURSOR_DYNAMIC 2UL diff --git a/dev-lang/php/files/4.4.0/php4.3.11-pcre-security.patch b/dev-lang/php/files/4.4.0/php4.3.11-pcre-security.patch new file mode 100644 index 0000000..284825b --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4.3.11-pcre-security.patch @@ -0,0 +1,38 @@ +--- configure.in 2005-09-17 21:00:43.000000000 +0200 ++++ configure.in 2005-09-17 21:00:18.000000000 +0200 +@@ -41,7 +41,7 @@ + MAJOR_VERSION=4 + MINOR_VERSION=3 + RELEASE_VERSION=11 +-EXTRA_VERSION="" ++EXTRA_VERSION="-gentoo-r1" + VERSION="$MAJOR_VERSION.$MINOR_VERSION.$RELEASE_VERSION$EXTRA_VERSION" + + dnl Define where extension directories are located in the configure context +--- ext/pcre/config.m4 2003/12/16 22:14:55 1.29.2.5 ++++ ext/pcre/config.m4 2005/08/09 17:41:56 1.29.2.7.2.1 +@@ -1,5 +1,5 @@ + dnl +-dnl $Id: php4.3.11-pcre-security.patch,v 1.1 2005/09/18 13:21:54 hollow Exp $ ++dnl $Id: php4.3.11-pcre-security.patch,v 1.1 2005/09/18 13:21:54 hollow Exp $ + dnl + + dnl By default we'll compile and link against the bundled PCRE library +@@ -13,7 +13,7 @@ PHP_ARG_WITH(pcre-regex,for PCRE support + + if test "$PHP_PCRE_REGEX" != "no"; then + if test "$PHP_PCRE_REGEX" = "yes"; then +- PHP_NEW_EXTENSION(pcre, pcrelib/maketables.c pcrelib/get.c pcrelib/study.c pcrelib/pcre.c php_pcre.c, $ext_shared,,-DSUPPORT_UTF8 -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -I@ext_srcdir@/pcrelib) ++ PHP_NEW_EXTENSION(pcre, pcrelib/pcre_chartables.c pcrelib/pcre_compile.c pcrelib/pcre_config.c pcrelib/pcre_dfa_exec.c pcrelib/pcre_exec.c pcrelib/pcre_fullinfo.c pcrelib/pcre_get.c pcrelib/pcre_globals.c pcrelib/pcre_info.c pcrelib/pcre_maketables.c pcrelib/pcre_ord2utf8.c pcrelib/pcre_printint.c pcrelib/pcre_refcount.c pcrelib/pcre_study.c pcrelib/pcre_tables.c pcrelib/pcre_try_flipped.c pcrelib/pcre_ucp_findchar.c pcrelib/pcre_valid_utf8.c pcrelib/pcre_version.c pcrelib/pcre_xclass.c php_pcre.c, $ext_shared,,-DEXPORT= -DNEWLINE=10 -DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000 -I@ext_srcdir@/pcrelib) + PHP_ADD_BUILD_DIR($ext_builddir/pcrelib) + AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ]) + else +@@ -50,7 +50,7 @@ if test "$PHP_PCRE_REGEX" != "no"; then + + AC_DEFINE(HAVE_PCRE, 1, [ ]) + PHP_ADD_INCLUDE($PCRE_INCDIR) +- PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,,-DSUPPORT_UTF8 -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10) ++ PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,,-DEXPORT= -DNEWLINE=10 -DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000) + fi + PHP_SUBST(PCRE_SHARED_LIBADD) + fi diff --git a/dev-lang/php/files/4.4.0/php4.4.0-curl_safemode.patch b/dev-lang/php/files/4.4.0/php4.4.0-curl_safemode.patch new file mode 100644 index 0000000..32a82e0 --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4.4.0-curl_safemode.patch @@ -0,0 +1,46 @@ +--- ext/curl/curl.c 2005-06-02 23:05:06.000000000 +0200 ++++ ext/curl/curl.c 2005-10-17 04:42:51.000000000 +0200 +@@ -16,7 +16,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: curl.c,v 1.124.2.30 2005/06/02 21:05:06 tony2001 Exp $ */ ++/* $Id: curl.c,v 1.124.2.30.2.3 2005/10/17 02:42:51 iliaa Exp $ */ + + #ifdef HAVE_CONFIG_H + #include "config.h" +@@ -66,7 +66,7 @@ + #define CAAZ(s, v) add_assoc_zval_ex(return_value, s, sizeof(s), (zval *) v); + + #define PHP_CURL_CHECK_OPEN_BASEDIR(str, len) \ +- if (PG(open_basedir) && *PG(open_basedir) && \ ++ if (((PG(open_basedir) && *PG(open_basedir)) || PG(safe_mode)) && \ + strncasecmp(str, "file://", sizeof("file://") - 1) == 0) \ + { \ + php_url *tmp_url; \ +@@ -76,7 +76,7 @@ + RETURN_FALSE; \ + } \ + \ +- if (php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ ++ if (tmp_url->query || php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ + (PG(safe_mode) && !php_checkuid(tmp_url->path, "rb+", CHECKUID_CHECK_MODE_PARAM)) \ + ) { \ + php_url_free(tmp_url); \ +@@ -992,10 +992,15 @@ + + postval = Z_STRVAL_PP(current); + if (*postval == '@') { ++ ++postval; ++ /* safe_mode / open_basedir check */ ++ if (php_check_open_basedir(postval TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(postval, "rb+", CHECKUID_CHECK_MODE_PARAM))) { ++ RETURN_FALSE; ++ } + error = curl_formadd(&first, &last, + CURLFORM_COPYNAME, string_key, + CURLFORM_NAMELENGTH, (long)string_key_len - 1, +- CURLFORM_FILE, ++postval, ++ CURLFORM_FILE, postval, + CURLFORM_END); + } + else { diff --git a/dev-lang/php/files/4.4.0/php4.4.0-fopen_wrappers.patch b/dev-lang/php/files/4.4.0/php4.4.0-fopen_wrappers.patch new file mode 100644 index 0000000..672da5e --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4.4.0-fopen_wrappers.patch @@ -0,0 +1,46 @@ +--- main/fopen_wrappers.c 2005/02/02 23:44:07 1.153.2.10 ++++ main/fopen_wrappers.c 2005/09/27 15:08:43 1.153.2.10.2.2 +@@ -16,7 +16,7 @@ + | Jim Winstead <jimw@php.net> | + +----------------------------------------------------------------------+ + */ +-/* $Id: fopen_wrappers.c,v 1.153.2.10 2005/02/02 23:44:07 iliaa Exp $ */ ++/* $Id: fopen_wrappers.c,v 1.153.2.10.2.2 2005/09/27 15:08:43 iliaa Exp $ */ + + /* {{{ includes + */ +@@ -36,14 +36,6 @@ + #include <winsock.h> + #define O_RDONLY _O_RDONLY + #include "win32/param.h" +-#elif defined(NETWARE) +-/*#include <ws2nlm.h>*/ +-/*#include <sys/socket.h>*/ +-#ifdef NEW_LIBC +-#include <sys/param.h> +-#else +-#include "netware/param.h" +-#endif + #else + #include <sys/param.h> + #endif +@@ -57,8 +49,6 @@ + #if HAVE_PWD_H + #ifdef PHP_WIN32 + #include "win32/pwd.h" +-#elif defined(NETWARE) +-#include "netware/pwd.h" + #else + #include <pwd.h> + #endif +@@ -120,8 +110,8 @@ PHPAPI int php_check_specific_open_based + /* Handler for basedirs that end with a / */ + resolved_basedir_len = strlen(resolved_basedir); + if (basedir[strlen(basedir) - 1] == PHP_DIR_SEPARATOR) { +- if (resolved_basedir[resolved_basedir_len - 1] == '/') { +- resolved_basedir[resolved_basedir_len - 1] = PHP_DIR_SEPARATOR; ++ if (resolved_basedir[resolved_basedir_len - 1] != PHP_DIR_SEPARATOR) { ++ resolved_basedir[resolved_basedir_len] = PHP_DIR_SEPARATOR; + resolved_basedir[++resolved_basedir_len] = '\0'; + } + } diff --git a/dev-lang/php/files/4.4.0/php4.4.0-gd_safe_mode.patch b/dev-lang/php/files/4.4.0/php4.4.0-gd_safe_mode.patch new file mode 100644 index 0000000..1e0d49d --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4.4.0-gd_safe_mode.patch @@ -0,0 +1,20 @@ +--- ext/gd/gd.c 2005/05/06 16:51:54 1.221.2.56 ++++ ext/gd/gd.c 2005/10/06 20:44:52 1.221.2.56.2.1 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: gd.c,v 1.221.2.56 2005/05/06 16:51:54 tony2001 Exp $ */ ++/* $Id: gd.c,v 1.221.2.56.2.1 2005/10/06 20:44:52 iliaa Exp $ */ + + /* gd 1.2 is copyright 1994, 1995, Quest Protein Database Center, + Cold Spring Harbor Labs. */ +@@ -1644,7 +1644,7 @@ static void _php_image_output(INTERNAL_F + } + + if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { +- if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC)) { ++ if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(fn, "rb+", CHECKUID_CHECK_FILE_AND_DIR))) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid filename '%s'", fn); + RETURN_FALSE; + } diff --git a/dev-lang/php/files/4.4.0/php4.4.0-globals_overwrite.patch b/dev-lang/php/files/4.4.0/php4.4.0-globals_overwrite.patch new file mode 100644 index 0000000..3aefaee --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4.4.0-globals_overwrite.patch @@ -0,0 +1,314 @@ +--- ext/standard/array.c 2005-06-21 14:11:19.000000000 +0200 ++++ ext/standard/array.c 2005-11-01 00:40:11.000000000 +0100 +@@ -22,7 +22,7 @@ + */ + + +-/* $Id: array.c,v 1.199.2.44.2.2 2005/06/21 12:11:19 dmitry Exp $ */ ++/* $Id: array.c,v 1.199.2.44.2.9 2005/10/03 14:05:07 iliaa Exp $ */ + + #include "php.h" + #include "php_ini.h" +@@ -1252,6 +1252,10 @@ + /* break omitted intentionally */ + + case EXTR_OVERWRITE: ++ /* GLOBALS protection */ ++ if (var_exists && !strcmp(var_name, "GLOBALS")) { ++ break; ++ } + smart_str_appendl(&final_name, var_name, var_name_len); + break; + +@@ -1300,11 +1304,11 @@ + zval **orig_var; + + if (zend_hash_find(EG(active_symbol_table), final_name.c, final_name.len+1, (void **) &orig_var) == SUCCESS) { +- zval_ptr_dtor(orig_var); +- + SEPARATE_ZVAL_TO_MAKE_IS_REF(entry); + zval_add_ref(entry); + ++ zval_ptr_dtor(orig_var); ++ + *orig_var = *entry; + } else { + if ((*var_array)->refcount > 1) { +@@ -1831,8 +1835,8 @@ + hashtable and replace it with new one */ + new_hash = php_splice(Z_ARRVAL_P(stack), 0, 0, &args[1], argc-1, NULL); + zend_hash_destroy(Z_ARRVAL_P(stack)); +- efree(Z_ARRVAL_P(stack)); +- Z_ARRVAL_P(stack) = new_hash; ++ *Z_ARRVAL_P(stack) = *new_hash; ++ FREE_HASHTABLE(new_hash); + + /* Clean up and return the number of elements in the stack */ + efree(args); +@@ -1909,8 +1913,8 @@ + + /* Replace input array's hashtable with the new one */ + zend_hash_destroy(Z_ARRVAL_P(array)); +- efree(Z_ARRVAL_P(array)); +- Z_ARRVAL_P(array) = new_hash; ++ *Z_ARRVAL_P(array) = *new_hash; ++ FREE_HASHTABLE(new_hash); + + /* Clean up */ + if (argc == 4) +@@ -2397,8 +2401,8 @@ + + /* Copy the result hash into return value */ + zend_hash_destroy(Z_ARRVAL_P(return_value)); +- efree(Z_ARRVAL_P(return_value)); +- Z_ARRVAL_P(return_value) = new_hash; ++ *Z_ARRVAL_P(return_value) = *new_hash; ++ FREE_HASHTABLE(new_hash); + + /* Clean up */ + efree(pads); +@@ -2622,6 +2626,15 @@ + /* copy the argument array */ + *return_value = **args[0]; + zval_copy_ctor(return_value); ++ if (return_value->value.ht == &EG(symbol_table)) { ++ HashTable *ht; ++ zval *tmp; ++ ++ ALLOC_HASHTABLE(ht); ++ zend_hash_init(ht, 0, NULL, ZVAL_PTR_DTOR, 0); ++ zend_hash_copy(ht, return_value->value.ht, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); ++ return_value->value.ht = ht; ++ } + + /* go through the lists and look for common values */ + while (*ptrs[0]) { +@@ -2772,6 +2785,15 @@ + /* copy the argument array */ + *return_value = **args[0]; + zval_copy_ctor(return_value); ++ if (return_value->value.ht == &EG(symbol_table)) { ++ HashTable *ht; ++ zval *tmp; ++ ++ ALLOC_HASHTABLE(ht); ++ zend_hash_init(ht, 0, NULL, ZVAL_PTR_DTOR, 0); ++ zend_hash_copy(ht, return_value->value.ht, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); ++ return_value->value.ht = ht; ++ } + + /* go through the lists and look for values of ptr[0] + that are not in the others */ +@@ -3299,6 +3321,7 @@ + PHP_FUNCTION(array_filter) + { + zval **input, **callback = NULL; ++ zval *array, *func = NULL; + zval **operand; + zval **args[1]; + zval *retval = NULL; +@@ -3317,9 +3340,13 @@ + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The first argument should be an array"); + return; + } ++ if (callback) { ++ func = *callback; ++ } ++ array = *input; + + if (ZEND_NUM_ARGS() > 1) { +- if (!zend_is_callable(*callback, 0, &callback_name)) { ++ if (!zend_is_callable(func, 0, &callback_name)) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The second argument, '%s', should be a valid callback", callback_name); + efree(callback_name); + return; +@@ -3328,16 +3355,16 @@ + } + + array_init(return_value); +- if (zend_hash_num_elements(Z_ARRVAL_PP(input)) == 0) ++ if (zend_hash_num_elements(Z_ARRVAL_P(array)) == 0) + return; + +- for (zend_hash_internal_pointer_reset_ex(Z_ARRVAL_PP(input), &pos); +- zend_hash_get_current_data_ex(Z_ARRVAL_PP(input), (void **)&operand, &pos) == SUCCESS; +- zend_hash_move_forward_ex(Z_ARRVAL_PP(input), &pos)) { ++ for (zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(array), &pos); ++ zend_hash_get_current_data_ex(Z_ARRVAL_P(array), (void **)&operand, &pos) == SUCCESS; ++ zend_hash_move_forward_ex(Z_ARRVAL_P(array), &pos)) { + +- if (callback) { ++ if (func) { + args[0] = operand; +- if (call_user_function_ex(EG(function_table), NULL, *callback, &retval, 1, args, 0, NULL TSRMLS_CC) == SUCCESS && retval) { ++ if (call_user_function_ex(EG(function_table), NULL, func, &retval, 1, args, 0, NULL TSRMLS_CC) == SUCCESS && retval) { + if (!zend_is_true(retval)) { + zval_ptr_dtor(&retval); + continue; +@@ -3351,7 +3378,7 @@ + continue; + + zval_add_ref(operand); +- switch (zend_hash_get_current_key_ex(Z_ARRVAL_PP(input), &string_key, &string_key_len, &num_key, 0, &pos)) { ++ switch (zend_hash_get_current_key_ex(Z_ARRVAL_P(array), &string_key, &string_key_len, &num_key, 0, &pos)) { + case HASH_KEY_IS_STRING: + zend_hash_update(Z_ARRVAL_P(return_value), string_key, + string_key_len, operand, sizeof(zval *), NULL); +@@ -3418,6 +3445,7 @@ + efree(array_pos); + return; + } ++ SEPARATE_ZVAL_IF_NOT_REF(pargs[i]); + args[i] = *pargs[i]; + array_len[i] = zend_hash_num_elements(Z_ARRVAL_PP(pargs[i])); + if (array_len[i] > maxlen) { +--- ext/standard/basic_functions.c 2005-05-16 10:55:31.000000000 +0200 ++++ ext/standard/basic_functions.c 2005-11-01 00:40:30.000000000 +0100 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: basic_functions.c,v 1.543.2.51 2005/05/16 08:55:31 tony2001 Exp $ */ ++/* $Id: basic_functions.c,v 1.543.2.51.2.3 2005/09/29 16:31:48 iliaa Exp $ */ + + #include "php.h" + #include "php_streams.h" +@@ -42,18 +42,7 @@ + #include <time.h> + #include <stdio.h> + +-#ifndef NETWARE + #include <netdb.h> +-#else +-/*#include "netware/env.h"*/ /* Temporary */ +-#ifdef NEW_LIBC /* Same headers hold good for Winsock and Berkeley sockets */ +-#include <netinet/in.h> +-/*#include <arpa/inet.h>*/ +-#include <netdb.h> +-#else +-#include <sys/socket.h> +-#endif +-#endif + + #if HAVE_ARPA_INET_H + # include <arpa/inet.h> +@@ -813,8 +802,8 @@ + PHP_FE(prev, first_arg_force_ref) + PHP_FE(next, first_arg_force_ref) + PHP_FE(reset, first_arg_force_ref) +- PHP_FE(current, first_arg_force_ref) +- PHP_FE(key, first_arg_force_ref) ++ PHP_FE(current, NULL) ++ PHP_FE(key, NULL) + PHP_FE(min, NULL) + PHP_FE(max, NULL) + PHP_FE(in_array, NULL) +@@ -3038,11 +3027,25 @@ + prefix = va_arg(args, char *); + prefix_len = va_arg(args, uint); + +- new_key_len = prefix_len + hash_key->nKeyLength; +- new_key = (char *) emalloc(new_key_len); ++ if (!prefix_len) { ++ if (!hash_key->nKeyLength) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Numeric key detected - possible security hazard."); ++ return 0; ++ } else if (!strcmp(hash_key->arKey, "GLOBALS")) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Attempted GLOBALS variable overwrite."); ++ return 0; ++ } ++ } ++ ++ if (hash_key->nKeyLength) { ++ new_key_len = prefix_len + hash_key->nKeyLength; ++ new_key = (char *) emalloc(new_key_len); + +- memcpy(new_key, prefix, prefix_len); +- memcpy(new_key+prefix_len, hash_key->arKey, hash_key->nKeyLength); ++ memcpy(new_key, prefix, prefix_len); ++ memcpy(new_key+prefix_len, hash_key->arKey, hash_key->nKeyLength); ++ } else { ++ new_key_len = spprintf(&new_key, 0, "%s%ld", prefix, hash_key->h); ++ } + + zend_hash_del(&EG(symbol_table), new_key, new_key_len); + ZEND_SET_SYMBOL_WITH_LENGTH(&EG(symbol_table), new_key, new_key_len, *var, (*var)->refcount+1, 0); +--- ext/standard/string.c 2005-06-02 10:50:52.000000000 +0200 ++++ ext/standard/string.c 2005-11-01 00:40:20.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: string.c,v 1.333.2.52 2005/06/02 08:50:52 derick Exp $ */ ++/* $Id: string.c,v 1.333.2.52.2.1 2005/09/28 22:34:04 iliaa Exp $ */ + + /* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */ + +@@ -3179,7 +3179,6 @@ + zval *sarg; + char *res = NULL; + int argCount; +- int old_rg; + + argCount = ARG_COUNT(ht); + if (argCount < 1 || argCount > 2 || zend_get_parameters_ex(argCount, &arg, &arrayArg) == FAILURE) { +@@ -3192,19 +3191,18 @@ + res = estrndup(Z_STRVAL_P(sarg), Z_STRLEN_P(sarg)); + } + +- old_rg = PG(register_globals); + if (argCount == 1) { +- PG(register_globals) = 1; +- sapi_module.treat_data(PARSE_STRING, res, NULL TSRMLS_CC); ++ zval tmp; ++ Z_ARRVAL(tmp) = EG(active_symbol_table); ++ ++ sapi_module.treat_data(PARSE_STRING, res, &tmp TSRMLS_CC); + } else { +- PG(register_globals) = 0; + /* Clear out the array that was passed in. */ + zval_dtor(*arrayArg); + array_init(*arrayArg); + + sapi_module.treat_data(PARSE_STRING, res, *arrayArg TSRMLS_CC); + } +- PG(register_globals) = old_rg; + } + /* }}} */ + +--- main/php_variables.c 2005-05-17 20:42:35.000000000 +0200 ++++ main/php_variables.c 2005-11-01 00:42:56.000000000 +0100 +@@ -16,7 +16,7 @@ + | Zeev Suraski <zeev@zend.com> | + +----------------------------------------------------------------------+ + */ +-/* $Id: php_variables.c,v 1.45.2.13 2005/05/17 18:42:35 iliaa Exp $ */ ++/* $Id: php_variables.c,v 1.45.2.13.2.4 2005/10/02 11:33:27 rrichards Exp $ */ + + #include <stdio.h> + #include "php.h" +@@ -73,6 +73,10 @@ + symtable1 = Z_ARRVAL_P(track_vars_array); + } else if (PG(register_globals)) { + symtable1 = EG(active_symbol_table); ++ /* GLOBALS hijack attempt, reject parameter */ ++ if (!strncmp("GLOBALS", var, sizeof("GLOBALS")) || !strncmp("GLOBALS", var, sizeof("GLOBALS[")-1)) { ++ return; ++ } + } + if (!symtable1) { + /* Nothing to do */ +@@ -99,6 +103,13 @@ + zval_dtor(val); + return; + } ++ ++ /* GLOBALS hijack attempt, reject parameter */ ++ if (symtable1 == EG(active_symbol_table) && !strcmp("GLOBALS", var)) { ++ zval_dtor(val); ++ return; ++ } ++ + /* ensure that we don't have spaces or dots in the variable name (not binary safe) */ + for (p=var; *p; p++) { + switch(*p) { diff --git a/dev-lang/php/files/4.4.0/php4.4.0-pcre-security.patch b/dev-lang/php/files/4.4.0/php4.4.0-pcre-security.patch new file mode 100644 index 0000000..cf257de --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4.4.0-pcre-security.patch @@ -0,0 +1,38 @@ +--- configure.in 2005-09-17 17:44:30.000000000 +0200 ++++ configure.in 2005-09-17 17:45:01.000000000 +0200 +@@ -41,7 +41,7 @@ + MAJOR_VERSION=4 + MINOR_VERSION=4 + RELEASE_VERSION=0 +-EXTRA_VERSION="" ++EXTRA_VERSION="-gentoo-r1" + VERSION="$MAJOR_VERSION.$MINOR_VERSION.$RELEASE_VERSION$EXTRA_VERSION" + + dnl Define where extension directories are located in the configure context +--- ext/pcre/config.m4 2005/05/31 12:22:27 1.29.2.7 ++++ ext/pcre/config.m4 2005/08/09 17:41:56 1.29.2.7.2.1 +@@ -1,5 +1,5 @@ + dnl +-dnl $Id: config.m4,v 1.29.2.7 2005/05/31 12:22:27 sniper Exp $ ++dnl $Id: config.m4,v 1.29.2.7.2.1 2005/08/09 17:41:56 andrei Exp $ + dnl + + dnl By default we'll compile and link against the bundled PCRE library +@@ -13,7 +13,7 @@ PHP_ARG_WITH(pcre-regex,for PCRE support + + if test "$PHP_PCRE_REGEX" != "no"; then + if test "$PHP_PCRE_REGEX" = "yes"; then +- PHP_NEW_EXTENSION(pcre, pcrelib/maketables.c pcrelib/get.c pcrelib/study.c pcrelib/pcre.c php_pcre.c, $ext_shared,,-DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000 -I@ext_srcdir@/pcrelib) ++ PHP_NEW_EXTENSION(pcre, pcrelib/pcre_chartables.c pcrelib/pcre_compile.c pcrelib/pcre_config.c pcrelib/pcre_dfa_exec.c pcrelib/pcre_exec.c pcrelib/pcre_fullinfo.c pcrelib/pcre_get.c pcrelib/pcre_globals.c pcrelib/pcre_info.c pcrelib/pcre_maketables.c pcrelib/pcre_ord2utf8.c pcrelib/pcre_printint.c pcrelib/pcre_refcount.c pcrelib/pcre_study.c pcrelib/pcre_tables.c pcrelib/pcre_try_flipped.c pcrelib/pcre_ucp_findchar.c pcrelib/pcre_valid_utf8.c pcrelib/pcre_version.c pcrelib/pcre_xclass.c php_pcre.c, $ext_shared,,-DEXPORT= -DNEWLINE=10 -DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000 -I@ext_srcdir@/pcrelib) + PHP_ADD_BUILD_DIR($ext_builddir/pcrelib) + AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ]) + else +@@ -50,7 +50,7 @@ if test "$PHP_PCRE_REGEX" != "no"; then + + AC_DEFINE(HAVE_PCRE, 1, [ ]) + PHP_ADD_INCLUDE($PCRE_INCDIR) +- PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,,-DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000) ++ PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,,-DEXPORT= -DNEWLINE=10 -DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000) + fi + PHP_SUBST(PCRE_SHARED_LIBADD) + fi diff --git a/dev-lang/php/files/4.4.0/php4.4.0-phpinfo_xss.patch b/dev-lang/php/files/4.4.0/php4.4.0-phpinfo_xss.patch new file mode 100644 index 0000000..2f03ce4 --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4.4.0-phpinfo_xss.patch @@ -0,0 +1,42 @@ +--- ext/standard/info.c 2005-06-07 15:37:33.000000000 +0200 ++++ ext/standard/info.c 2005-11-01 01:26:54.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: info.c,v 1.218.2.18.2.1 2005/06/07 13:37:33 derick Exp $ */ ++/* $Id: info.c,v 1.218.2.18.2.4 2005/08/16 00:26:02 iliaa Exp $ */ + + #include "php.h" + #include "php_ini.h" +@@ -133,10 +133,21 @@ + PUTS(" => "); + } + if (Z_TYPE_PP(tmp) == IS_ARRAY) { ++ zval *tmp3; ++ MAKE_STD_ZVAL(tmp3); + if (!sapi_module.phpinfo_as_text) { + PUTS("<pre>"); + } ++ php_start_ob_buffer(NULL, 4096, 1 TSRMLS_CC); + zend_print_zval_r(*tmp, 0); ++ php_ob_get_buffer(tmp3 TSRMLS_CC); ++ php_end_ob_buffer(0, 0 TSRMLS_CC); ++ ++ elem_esc = php_info_html_esc(Z_STRVAL_P(tmp3) TSRMLS_CC); ++ PUTS(elem_esc); ++ efree(elem_esc); ++ zval_ptr_dtor(&tmp3); ++ + if (!sapi_module.phpinfo_as_text) { + PUTS("</pre>"); + } +@@ -196,7 +207,7 @@ + PHPAPI char *php_info_html_esc(char *string TSRMLS_DC) + { + int new_len; +- return php_escape_html_entities(string, strlen(string), &new_len, 0, ENT_NOQUOTES, NULL TSRMLS_CC); ++ return php_escape_html_entities(string, strlen(string), &new_len, 0, ENT_QUOTES, NULL TSRMLS_CC); + } + /* }}} */ + diff --git a/dev-lang/php/files/4.4.0/php4.4.0-pspell-ext-segf.patch b/dev-lang/php/files/4.4.0/php4.4.0-pspell-ext-segf.patch new file mode 100644 index 0000000..a62c42f --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4.4.0-pspell-ext-segf.patch @@ -0,0 +1,317 @@ +--- ext/pspell/pspell.c 2003-08-28 22:01:29.000000000 +0200 ++++ ext/pspell/pspell.c 2005-10-26 23:24:22.000000000 +0200 +@@ -16,7 +16,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: pspell.c,v 1.28.8.5 2003/08/28 20:01:29 iliaa Exp $ */ ++/* $Id: pspell.c,v 1.28.8.5.4.2 2005/10/17 15:43:10 iliaa Exp $ */ + + #define IS_EXT_MODULE + +@@ -99,6 +99,22 @@ + delete_pspell_config(config); + } + ++#define PSPELL_FETCH_CONFIG \ ++ convert_to_long_ex(conf); \ ++ config = (PspellConfig *) zend_list_find(Z_LVAL_PP(conf), &type); \ ++ if (config == NULL || type != le_pspell_config) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(conf)); \ ++ RETURN_FALSE; \ ++ } \ ++ ++#define PSPELL_FETCH_MANAGER \ ++ convert_to_long_ex(scin); \ ++ manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); \ ++ if (!manager || type != le_pspell) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); \ ++ RETURN_FALSE; \ ++ } \ ++ + /* {{{ PHP_MINIT_FUNCTION + */ + PHP_MINIT_FUNCTION(pspell) +@@ -350,14 +366,8 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(conf); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(conf), &type); ++ PSPELL_FETCH_CONFIG; + +- if (config == NULL || type != le_pspell_config) { +- php_error(E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(conf)); +- RETURN_FALSE; +- } +- + ret = new_pspell_manager(config); + + if(pspell_error_number(ret) != 0){ +@@ -385,13 +395,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + if(pspell_manager_check(manager, Z_STRVAL_PP(word))){ + RETURN_TRUE; +@@ -417,13 +423,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + array_init(return_value); + +@@ -455,14 +457,10 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(miss); + convert_to_string_ex(corr); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + pspell_manager_store_replacement(manager, Z_STRVAL_PP(miss), Z_STRVAL_PP(corr)); + if(pspell_manager_error_number(manager) == 0){ +@@ -488,13 +486,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + /*If the word is empty, we have to return; otherwise we'll segfault! ouch!*/ + if(Z_STRLEN_PP(word) == 0){ +@@ -525,13 +519,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + /*If the word is empty, we have to return; otherwise we'll segfault! ouch!*/ + if(Z_STRLEN_PP(word) == 0){ +@@ -562,12 +552,7 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + pspell_manager_clear_session(manager); + if(pspell_manager_error_number(manager) == 0){ +@@ -593,12 +578,7 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error(E_WARNING, "%ld is not a PSPELL result index",Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + pspell_manager_save_all_word_lists(manager); + +@@ -666,22 +646,17 @@ + PHP_FUNCTION(pspell_config_runtogether) + { + int type; +- zval **sccin, **runtogether; ++ zval **conf, **runtogether; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&runtogether) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&runtogether) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_boolean_ex(runtogether); + pspell_config_replace(config, "run-together", Z_LVAL_PP(runtogether) ? "true" : "false"); +@@ -695,22 +670,17 @@ + PHP_FUNCTION(pspell_config_mode) + { + int type; +- zval **sccin, **mode; ++ zval **conf, **mode; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&mode) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&mode) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_long_ex(mode); + +@@ -732,7 +702,7 @@ + PHP_FUNCTION(pspell_config_ignore) + { + int type; +- zval **sccin, **pignore; ++ zval **conf, **pignore; + int argc; + + int loc = PSPELL_LARGEST_WORD; +@@ -742,16 +712,11 @@ + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&pignore) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&pignore) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_long_ex(pignore); + ignore = Z_LVAL_PP(pignore); +@@ -782,22 +747,17 @@ + PHP_FUNCTION(pspell_config_personal) + { + int type; +- zval **sccin, **personal; ++ zval **conf, **personal; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&personal) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&personal) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_string_ex(personal); + +@@ -820,22 +780,17 @@ + PHP_FUNCTION(pspell_config_repl) + { + int type; +- zval **sccin, **repl; ++ zval **conf, **repl; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&repl) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&repl) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + pspell_config_replace(config, "save-repl", "true"); + +@@ -860,22 +815,17 @@ + PHP_FUNCTION(pspell_config_save_repl) + { + int type; +- zval **sccin, **save; ++ zval **conf, **save; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&save) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&save) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error(E_WARNING, "%ld is not a PSPELL config index",Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_boolean_ex(save); + pspell_config_replace(config, "save-repl", Z_LVAL_PP(save) ? "true" : "false"); diff --git a/dev-lang/php/files/4.4.0/php4.4.0-session_save_path-segf.patch b/dev-lang/php/files/4.4.0/php4.4.0-session_save_path-segf.patch new file mode 100644 index 0000000..8f936ae --- /dev/null +++ b/dev-lang/php/files/4.4.0/php4.4.0-session_save_path-segf.patch @@ -0,0 +1,127 @@ +--- sapi/apache2handler/sapi_apache2.c 2005/04/08 20:35:02 1.1.2.40 ++++ sapi/apache2handler/sapi_apache2.c 2005/10/12 21:41:36 1.1.2.40.2.5 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: sapi_apache2.c,v 1.1.2.40 2005/04/08 20:35:02 sniper Exp $ */ ++/* $Id: sapi_apache2.c,v 1.1.2.40.2.5 2005/10/12 21:41:36 tony2001 Exp $ */ + + #include <fcntl.h> + +@@ -453,15 +453,34 @@ static int php_handler(request_rec *r) + request_rec *parent_req = NULL; + TSRMLS_FETCH(); + ++#define PHPAP_INI_OFF \ ++ if (strcmp(r->protocol, "INCLUDED")) { \ ++ zend_try { zend_ini_deactivate(TSRMLS_C); } zend_end_try(); \ ++ } \ ++ + conf = ap_get_module_config(r->per_dir_config, &php4_module); ++ ++ /* apply_config() needs r in some cases, so allocate server_context early */ ++ ctx = SG(server_context); ++ if (ctx == NULL) { ++ ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); ++ /* register a cleanup so we clear out the SG(server_context) ++ * after each request. Note: We pass in the pointer to the ++ * server_context in case this is handled by a different thread. ++ */ ++ apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); ++ ctx->r = r; ++ ctx = NULL; /* May look weird to null it here, but it is to catch the right case in the first_try later on */ ++ } else { ++ parent_req = ctx->r; ++ ctx->r = r; ++ } + apply_config(conf); + + if (strcmp(r->handler, PHP_MAGIC_TYPE) && strcmp(r->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(r->handler, PHP_SCRIPT)) { + /* Check for xbithack in this case. */ + if (!AP2(xbithack) || strcmp(r->handler, "text/html") || !(r->finfo.protection & APR_UEXECUTE)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + } +@@ -470,32 +489,24 @@ static int php_handler(request_rec *r) + * the configuration; default behaviour is to accept. */ + if (r->used_path_info == AP_REQ_REJECT_PATH_INFO + && r->path_info && r->path_info[0]) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + + /* handle situations where user turns the engine off */ + if (!AP2(engine)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + + if (r->finfo.filetype == 0) { + php_apache_sapi_log_message_ex("script '%s' not found or unable to stat", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + if (r->finfo.filetype == APR_DIR) { + php_apache_sapi_log_message_ex("attempt to invoke directory '%s' as script", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_FORBIDDEN; + } + +@@ -511,24 +522,30 @@ static int php_handler(request_rec *r) + + zend_first_try { + +- ctx = SG(server_context); + if (ctx == NULL) { +- ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); +- /* register a cleanup so we clear out the SG(server_context) +- * after each request. Note: We pass in the pointer to the +- * server_context in case this is handled by a different thread. +- */ +- apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); +- +- ctx->r = r; ++normal: + brigade = apr_brigade_create(r->pool, r->connection->bucket_alloc); ++ ctx = SG(server_context); + ctx->brigade = brigade; + + if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { + zend_bailout(); + } + } else { +- parent_req = ctx->r; ++ if (!parent_req) { ++ parent_req = ctx->r; ++ } ++ if (parent_req && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { ++ if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { ++ zend_bailout(); ++ } ++ } ++ ++ /* check if comming due to ErrorDocument */ ++ if (parent_req && parent_req->status != HTTP_OK) { ++ parent_req = NULL; ++ goto normal; ++ } + ctx->r = r; + brigade = ctx->brigade; + } diff --git a/dev-lang/php/files/4.4.1/CVS/Entries b/dev-lang/php/files/4.4.1/CVS/Entries new file mode 100644 index 0000000..397aaa4 --- /dev/null +++ b/dev-lang/php/files/4.4.1/CVS/Entries @@ -0,0 +1,8 @@ +/php4.4.1-apache2sapi.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +/php4.4.1-curl-open_basedir.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +/php4.4.1-current_key_by_reference.patch/1.1/Fri Nov 4 11:19:08 2005/-ko/T1.1 +/php4.4.1-gd-safe_mode.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +/php4.4.1-mbstring-header_inj.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +/php4.4.1-mod_rewrite-crash.patch/1.1/Thu Nov 3 23:54:59 2005/-ko/T1.1 +/php4.4.1-multilib-search-path.patch/1.1/Wed Jan 4 09:24:47 2006/-ko/T1.1 +D diff --git a/dev-lang/php/files/4.4.1/CVS/Repository b/dev-lang/php/files/4.4.1/CVS/Repository new file mode 100644 index 0000000..074c579 --- /dev/null +++ b/dev-lang/php/files/4.4.1/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/4.4.1 diff --git a/dev-lang/php/files/4.4.1/CVS/Root b/dev-lang/php/files/4.4.1/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/4.4.1/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/4.4.1/CVS/Tag b/dev-lang/php/files/4.4.1/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/4.4.1/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/4.4.1/php4.4.1-apache2sapi.patch b/dev-lang/php/files/4.4.1/php4.4.1-apache2sapi.patch new file mode 100644 index 0000000..49f5c95 --- /dev/null +++ b/dev-lang/php/files/4.4.1/php4.4.1-apache2sapi.patch @@ -0,0 +1,51 @@ +--- sapi/apache2handler/sapi_apache2.c 2005-10-12 23:41:36.000000000 +0200 ++++ sapi/apache2handler/sapi_apache2.c 2005-11-18 21:19:33.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: sapi_apache2.c,v 1.1.2.40.2.5 2005/10/12 21:41:36 tony2001 Exp $ */ ++/* $Id: sapi_apache2.c,v 1.1.2.40.2.8 2005/11/18 19:03:13 iliaa Exp $ */ + + #include <fcntl.h> + +@@ -443,6 +443,18 @@ + php_request_shutdown(NULL); + } + ++static void php_apache_ini_dtor(request_rec *r, request_rec *p TSRMLS_DC) ++{ ++ if (strcmp(r->protocol, "INCLUDED")) { ++ zend_try { zend_ini_deactivate(TSRMLS_C); } zend_end_try(); ++ } ++ if (p) { ++ ((php_struct *)SG(server_context))->r = p; ++ } else { ++ apr_pool_cleanup_run(r->pool, (void *)&SG(server_context), php_server_context_cleanup); ++ } ++} ++ + static int php_handler(request_rec *r) + { + php_struct *ctx; +@@ -453,10 +465,7 @@ + request_rec *parent_req = NULL; + TSRMLS_FETCH(); + +-#define PHPAP_INI_OFF \ +- if (strcmp(r->protocol, "INCLUDED")) { \ +- zend_try { zend_ini_deactivate(TSRMLS_C); } zend_end_try(); \ +- } \ ++#define PHPAP_INI_OFF php_apache_ini_dtor(r, parent_req TSRMLS_CC); + + conf = ap_get_module_config(r->per_dir_config, &php4_module); + +@@ -535,7 +544,7 @@ + if (!parent_req) { + parent_req = ctx->r; + } +- if (parent_req && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { ++ if (parent_req && parent_req->handler && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { + if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { + zend_bailout(); + } diff --git a/dev-lang/php/files/4.4.1/php4.4.1-curl-open_basedir.patch b/dev-lang/php/files/4.4.1/php4.4.1-curl-open_basedir.patch new file mode 100644 index 0000000..60094c0 --- /dev/null +++ b/dev-lang/php/files/4.4.1/php4.4.1-curl-open_basedir.patch @@ -0,0 +1,20 @@ +--- ext/curl/curl.c 2005-12-02 23:34:12.000000000 +0100 ++++ ext/curl/curl.c 2005-12-03 01:13:51.000000000 +0100 +@@ -67,7 +67,7 @@ + + #define PHP_CURL_CHECK_OPEN_BASEDIR(str, len) \ + if (((PG(open_basedir) && *PG(open_basedir)) || PG(safe_mode)) && \ +- strncasecmp(str, "file://", sizeof("file://") - 1) == 0) \ ++ strncasecmp(str, "file:", sizeof("file:") - 1) == 0) \ + { \ + php_url *tmp_url; \ + \ +@@ -76,7 +76,7 @@ + RETURN_FALSE; \ + } \ + \ +- if (tmp_url->query || php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ ++ if (tmp_url->query || tmp_url->fragment || php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ + (PG(safe_mode) && !php_checkuid(tmp_url->path, "rb+", CHECKUID_CHECK_MODE_PARAM)) \ + ) { \ + php_url_free(tmp_url); \ diff --git a/dev-lang/php/files/4.4.1/php4.4.1-current_key_by_reference.patch b/dev-lang/php/files/4.4.1/php4.4.1-current_key_by_reference.patch new file mode 100644 index 0000000..cf3754d --- /dev/null +++ b/dev-lang/php/files/4.4.1/php4.4.1-current_key_by_reference.patch @@ -0,0 +1,22 @@ +--- ext/standard/basic_functions.c 2005/09/29 16:31:48 1.543.2.51.2.3 ++++ ext/standard/basic_functions.c 2005/11/02 17:58:00 1.543.2.51.2.4 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: basic_functions.c,v 1.543.2.51.2.3 2005/09/29 16:31:48 iliaa Exp $ */ ++/* $Id: basic_functions.c,v 1.543.2.51.2.4 2005/11/02 17:58:00 iliaa Exp $ */ + + #include "php.h" + #include "php_streams.h" +@@ -802,8 +802,8 @@ function_entry basic_functions[] = { + PHP_FE(prev, first_arg_force_ref) + PHP_FE(next, first_arg_force_ref) + PHP_FE(reset, first_arg_force_ref) +- PHP_FE(current, NULL) +- PHP_FE(key, NULL) ++ PHP_FE(current, first_arg_force_ref) ++ PHP_FE(key, first_arg_force_ref) + PHP_FE(min, NULL) + PHP_FE(max, NULL) + PHP_FE(in_array, NULL) diff --git a/dev-lang/php/files/4.4.1/php4.4.1-gd-safe_mode.patch b/dev-lang/php/files/4.4.1/php4.4.1-gd-safe_mode.patch new file mode 100644 index 0000000..a35c28a --- /dev/null +++ b/dev-lang/php/files/4.4.1/php4.4.1-gd-safe_mode.patch @@ -0,0 +1,112 @@ +--- ext/gd/gd.c 2005-10-06 22:44:52.000000000 +0200 ++++ ext/gd/gd.c 2005-11-03 21:42:59.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: gd.c,v 1.221.2.56.2.1 2005/10/06 20:44:52 iliaa Exp $ */ ++/* $Id: gd.c,v 1.221.2.56.2.3 2005/11/03 20:20:04 sniper Exp $ */ + + /* gd 1.2 is copyright 1994, 1995, Quest Protein Database Center, + Cold Spring Harbor Labs. */ +@@ -623,7 +623,7 @@ + + convert_to_string_ex(file); + +- stream = php_stream_open_wrapper(Z_STRVAL_PP(file), "rb", IGNORE_PATH | IGNORE_URL_WIN | REPORT_ERRORS, NULL); ++ stream = php_stream_open_wrapper(Z_STRVAL_PP(file), "rb", ENFORCE_SAFE_MODE | IGNORE_PATH | IGNORE_URL_WIN | REPORT_ERRORS, NULL); + if (stream == NULL) { + RETURN_FALSE; + } +@@ -807,6 +807,10 @@ + convert_to_boolean_ex(dither); + convert_to_long_ex(ncolors); + ++ if (Z_LVAL_PP(ncolors) <= 0) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Number of colors has to be greater than zero"); ++ RETURN_FALSE; ++ } + gdImageTrueColorToPalette(im, Z_LVAL_PP(dither), Z_LVAL_PP(ncolors)); + + RETURN_TRUE; +@@ -1436,7 +1440,7 @@ + + fn = Z_STRVAL_PP(file); + +- stream = php_stream_open_wrapper(fn, "rb", REPORT_ERRORS|IGNORE_PATH|IGNORE_URL_WIN, NULL); ++ stream = php_stream_open_wrapper(fn, "rb", ENFORCE_SAFE_MODE|REPORT_ERRORS|IGNORE_PATH|IGNORE_URL_WIN, NULL); + if (stream == NULL) { + RETURN_FALSE; + } +@@ -1644,10 +1648,7 @@ + } + + if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { +- if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(fn, "rb+", CHECKUID_CHECK_FILE_AND_DIR))) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid filename '%s'", fn); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn, "Invalid filename"); + + fp = VCWD_FOPEN(fn, "wb"); + if (!fp) { +@@ -3742,16 +3743,10 @@ + } + + /* Check origin file */ +- if (!fn_org || fn_org == empty_string || php_check_open_basedir(fn_org TSRMLS_CC)) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid origin filename '%s'", fn_org); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn_org, "Invalid origin filename"); + + /* Check destination file */ +- if (!fn_dest || fn_dest == empty_string || php_check_open_basedir(fn_dest TSRMLS_CC)) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid destination filename '%s'", fn_dest); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn_dest, "Invalid destination filename"); + + /* Open origin file */ + org = VCWD_FOPEN(fn_org, "rb"); +--- ext/gd/gd_ctx.c 2005-10-06 22:44:52.000000000 +0200 ++++ ext/gd/gd_ctx.c 2005-11-03 21:42:59.000000000 +0100 +@@ -73,10 +73,7 @@ + } + + if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { +- if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(fn, "rb+", CHECKUID_CHECK_FILE_AND_DIR))) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid filename '%s'", fn); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn, "Invalid filename"); + + fp = VCWD_FOPEN(fn, "wb"); + if (!fp) { +--- ext/gd/php_gd.h 2003-03-31 10:49:30.000000000 +0200 ++++ ext/gd/php_gd.h 2005-11-15 11:15:27.000000000 +0100 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: php_gd.h,v 1.44.2.5 2003/03/31 08:49:30 sniper Exp $ */ ++/* $Id: php_gd.h,v 1.44.2.5.8.2 2005/11/15 08:15:36 sniper Exp $ */ + + #ifndef PHP_GD_H + #define PHP_GD_H +@@ -30,6 +30,15 @@ + + #if HAVE_LIBGD + ++/* open_basedir and safe_mode checks */ ++#define PHP_GD_CHECK_OPEN_BASEDIR(filename, errormsg) \ ++ if (!filename || filename == empty_string || php_check_open_basedir(filename TSRMLS_CC) || \ ++ (PG(safe_mode) && !php_checkuid(filename, NULL, CHECKUID_CHECK_FILE_AND_DIR)) \ ++ ) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, errormsg); \ ++ RETURN_FALSE; \ ++ } ++ + #define PHP_GDIMG_TYPE_GIF 1 + #define PHP_GDIMG_TYPE_PNG 2 + #define PHP_GDIMG_TYPE_JPG 3 diff --git a/dev-lang/php/files/4.4.1/php4.4.1-mbstring-header_inj.patch b/dev-lang/php/files/4.4.1/php4.4.1-mbstring-header_inj.patch new file mode 100644 index 0000000..adbf35a --- /dev/null +++ b/dev-lang/php/files/4.4.1/php4.4.1-mbstring-header_inj.patch @@ -0,0 +1,145 @@ +--- ext/mbstring/mbstring.c 2005-09-21 15:19:19.000000000 +0200 ++++ ext/mbstring/mbstring.c 2005-11-22 01:00:03.000000000 +0100 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: mbstring.c,v 1.142.2.47.2.1 2005/09/21 13:19:19 iliaa Exp $ */ ++/* $Id: mbstring.c,v 1.142.2.47.2.5 2005/11/21 23:21:19 hirokawa Exp $ */ + + /* + * PHP4 Multibyte String module "mbstring" +@@ -2924,16 +2924,17 @@ + } + /* }}} */ + +-/* {{{ proto string mb_encode_mimeheader(string str [, string charset [, string transfer-encoding [, string linefeed]]]) ++/* {{{ proto string mb_encode_mimeheader(string str [, string charset [, string transfer-encoding [, string linefeed [, int indent]]]]) + Converts the string to MIME "encoded-word" in the format of =?charset?(B|Q)?encoded_string?= */ + PHP_FUNCTION(mb_encode_mimeheader) + { +- pval **argv[4]; ++ pval **argv[5]; + enum mbfl_no_encoding charset, transenc; + mbfl_string string, result, *ret; + char *p, *linefeed; ++ int indent; + +- if (ZEND_NUM_ARGS() < 1 || ZEND_NUM_ARGS() > 4 || zend_get_parameters_array_ex(ZEND_NUM_ARGS(), argv) == FAILURE) { ++ if (ZEND_NUM_ARGS() < 1 || ZEND_NUM_ARGS() > 5 || zend_get_parameters_array_ex(ZEND_NUM_ARGS(), argv) == FAILURE) { + WRONG_PARAM_COUNT; + } + +@@ -2970,6 +2971,12 @@ + linefeed = Z_STRVAL_PP(argv[3]); + } + ++ indent = 0; ++ if (ZEND_NUM_ARGS() >= 5) { ++ convert_to_long_ex(argv[4]); ++ indent = Z_LVAL_PP(argv[4]); ++ } ++ + convert_to_string_ex(argv[0]); + mbfl_string_init(&string); + mbfl_string_init(&result); +@@ -2977,7 +2984,7 @@ + string.no_encoding = MBSTRG(current_internal_encoding); + string.val = Z_STRVAL_PP(argv[0]); + string.len = Z_STRLEN_PP(argv[0]); +- ret = mbfl_mime_header_encode(&string, &result, charset, transenc, linefeed, 0); ++ ret = mbfl_mime_header_encode(&string, &result, charset, transenc, linefeed, indent); + if (ret != NULL) { + RETVAL_STRINGL((char *)ret->val, ret->len, 0) /* the string is already strdup()'ed */ + } else { +@@ -3460,6 +3467,22 @@ + * Sends an email message with MIME scheme + */ + #if HAVE_SENDMAIL ++#define SKIP_LONG_HEADER_SEP_MBSTRING(str, pos) \ ++ if (str[pos] == '\r' && str[pos + 1] == '\n' && (str[pos + 2] == ' ' || str[pos + 2] == '\t')) { \ ++ pos += 3; \ ++ while (str[pos] == ' ' || str[pos] == '\t') { \ ++ pos++; \ ++ } \ ++ continue; \ ++ } \ ++ else if (str[pos] == '\n' && (str[pos + 1] == ' ' || str[pos + 1] == '\t')) { \ ++ pos += 2; \ ++ while (str[pos] == ' ' || str[pos] == '\t') { \ ++ pos++; \ ++ } \ ++ continue; \ ++ } \ ++ + PHP_FUNCTION(mb_send_mail) + { + int argc, n; +@@ -3474,8 +3497,9 @@ + body_enc; /* body transfar encoding */ + mbfl_memory_device device; /* automatic allocateable buffer for additional header */ + const mbfl_language *lang; +- char *force_extra_parameters = INI_STR("mail.force_extra_parameters"); + int err = 0; ++ char *to_r; ++ int to_len, i; + + /* initialize */ + mbfl_memory_device_init(&device, 0, 0); +@@ -3502,6 +3526,32 @@ + convert_to_string_ex(argv[0]); + if (Z_STRVAL_PP(argv[0])) { + to = Z_STRVAL_PP(argv[0]); ++ to_len = Z_STRLEN_PP(argv[0]); ++ if (to_len > 0) { ++ to_r = estrndup(to, to_len); ++ for (; to_len; to_len--) { ++ if (!isspace((unsigned char) to_r[to_len - 1])) { ++ break; ++ } ++ to_r[to_len - 1] = '\0'; ++ } ++ for (i = 0; to_r[i]; i++) { ++ if (iscntrl((unsigned char) to_r[i])) { ++ /* According to RFC 822, section 3.1.1 long headers may be ++separated into ++ * parts using CRLF followed at least one linear-white-space ++character ('\t' or ' '). ++ * To prevent these separators from being replaced with a space, ++we use the ++ * SKIP_LONG_HEADER_SEP_MBSTRING to skip over them. ++ */ ++ SKIP_LONG_HEADER_SEP_MBSTRING(to_r, i); ++ to_r[i] = ' '; ++ } ++ } ++ } else { ++ to_r = to; ++ } + } else { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Missing To: field"); + err = 1; +@@ -3596,18 +3646,19 @@ + extra_cmd = Z_STRVAL_PP(argv[4]); + } + +- if (force_extra_parameters) { +- extra_cmd = estrdup(force_extra_parameters); +- } else if (extra_cmd) { ++ if (extra_cmd) { + extra_cmd = php_escape_shell_cmd(extra_cmd); + } + +- if (!err && php_mail(to, subject, message, headers, extra_cmd TSRMLS_CC)) { ++ if (!err && php_mail(to_r, subject, message, headers, extra_cmd TSRMLS_CC)) { + RETVAL_TRUE; + } else { + RETVAL_FALSE; + } + ++ if (to_r != to) { ++ efree(to_r); ++ } + if (extra_cmd) { + efree(extra_cmd); + } diff --git a/dev-lang/php/files/4.4.1/php4.4.1-mod_rewrite-crash.patch b/dev-lang/php/files/4.4.1/php4.4.1-mod_rewrite-crash.patch new file mode 100644 index 0000000..a08a19e --- /dev/null +++ b/dev-lang/php/files/4.4.1/php4.4.1-mod_rewrite-crash.patch @@ -0,0 +1,20 @@ +--- sapi/apache2handler/sapi_apache2.c 2005/10/12 21:41:36 1.1.2.40.2.5 ++++ sapi/apache2handler/sapi_apache2.c 2005/11/02 17:55:17 1.1.2.40.2.6 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: sapi_apache2.c,v 1.1.2.40.2.5 2005/10/12 21:41:36 tony2001 Exp $ */ ++/* $Id: sapi_apache2.c,v 1.1.2.40.2.6 2005/11/02 17:55:17 iliaa Exp $ */ + + #include <fcntl.h> + +@@ -535,7 +535,7 @@ normal: + if (!parent_req) { + parent_req = ctx->r; + } +- if (parent_req && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { ++ if (parent_req && parent_req->handler && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { + if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { + zend_bailout(); + } diff --git a/dev-lang/php/files/4.4.1/php4.4.1-multilib-search-path.patch b/dev-lang/php/files/4.4.1/php4.4.1-multilib-search-path.patch new file mode 100644 index 0000000..26df783 --- /dev/null +++ b/dev-lang/php/files/4.4.1/php4.4.1-multilib-search-path.patch @@ -0,0 +1,1488 @@ +diff -Nru php-4.4.1.orig/acinclude.m4 php-4.4.1/acinclude.m4 +--- php-4.4.1.orig/acinclude.m4 2005-09-23 11:20:22.000000000 +0200 ++++ php-4.4.1/acinclude.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -194,7 +194,7 @@ + unset ac_new_flags + for i in [$]$1; do + case [$]i in +- -L/usr/lib|-L/usr/lib/[)] ;; ++ -L/usr/lib|-L/usr/lib/|-L/usr/lib64|-L/usr/lib64/[)] ;; + *[)] ac_new_flags="[$]ac_new_flags [$]i" ;; + esac + done +@@ -645,7 +645,7 @@ + ]) + + AC_DEFUN([PHP_PROG_SENDMAIL],[ +-PHP_ALT_PATH=/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib ++PHP_ALT_PATH=/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib:/usr/lib64 + AC_PATH_PROG(PROG_SENDMAIL, sendmail,[], $PATH:$PHP_ALT_PATH) + if test -n "$PROG_SENDMAIL"; then + AC_DEFINE(HAVE_SENDMAIL,1,[whether you have sendmail]) +@@ -856,7 +856,9 @@ + dnl add a library to linkpath/runpath + dnl + AC_DEFUN([PHP_ADD_LIBPATH],[ +- if test "$1" != "/usr/lib"; then ++ case x$1 in ++ x/usr/lib|x/usr/lib64) ;; ++ *) + PHP_EXPAND_PATH($1, ai_p) + ifelse([$2],,[ + _PHP_ADD_LIBPATH_GLOBAL([$ai_p]) +@@ -866,8 +868,8 @@ + else + _PHP_ADD_LIBPATH_GLOBAL([$ai_p]) + fi +- ]) +- fi ++ ]) ;; ++ esac + ]) + + dnl +@@ -1671,15 +1673,20 @@ + fi + + for i in $PHP_KERBEROS; do +- if test -f $i/lib/libkrb5.a || test -f $i/lib/libkrb5.$SHLIB_SUFFIX_NAME; then ++ if test -f $i/lib/libkrb5.a -o -f $i/lib/libkrb5.$SHLIB_SUFFIX_NAME; then + PHP_KERBEROS_DIR=$i ++ PHP_KERBEROS_LIBDIR=$i/lib ++ break ++ elif test -f $i/lib64/libkrb5.a -o -f $i/lib64/libkrb5.$SHLIB_SUFFIX_NAME; then ++ PHP_KERBEROS_DIR=$i ++ PHP_KERBEROS_LIBDIR=$i/lib64 + break + fi + done + + if test "$PHP_KERBEROS_DIR"; then + found_kerberos=yes +- PHP_ADD_LIBPATH($PHP_KERBEROS_DIR/lib, $1) ++ PHP_ADD_LIBPATH($PHP_KERBEROS_LIBDIR, $1) + PHP_ADD_LIBRARY(gssapi_krb5, 1, $1) + PHP_ADD_LIBRARY(krb5, 1, $1) + PHP_ADD_LIBRARY(k5crypto, 1, $1) +@@ -1751,6 +1758,9 @@ + if test -r $i/lib/libssl.a -o -r $i/lib/libssl.$SHLIB_SUFFIX_NAME; then + OPENSSL_LIBDIR=$i/lib + fi ++ if test -r $i/lib64/libssl.a -o -r $i/lib64/libssl.$SHLIB_SUFFIX_NAME; then ++ OPENSSL_LIBDIR=$i/lib64 ++ fi + test -n "$OPENSSL_INCDIR" && test -n "$OPENSSL_LIBDIR" && break + done + +@@ -1871,7 +1881,9 @@ + fi + + if test -f $ICONV_DIR/lib/lib$iconv_lib_name.a || +- test -f $ICONV_DIR/lib/lib$iconv_lib_name.$SHLIB_SUFFIX_NAME ++ test -f $ICONV_DIR/lib/lib$iconv_lib_name.$SHLIB_SUFFIX_NAME || ++ test -f $ICONV_DIR/lib64/lib$iconv_lib_name.a || ++ test -f $ICONV_DIR/lib64/lib$iconv_lib_name.$SHLIB_SUFFIX_NAME + then + PHP_CHECK_LIBRARY($iconv_lib_name, libiconv, [ + found_iconv=yes +diff -Nru php-4.4.1.orig/ext/bz2/config.m4 php-4.4.1/ext/bz2/config.m4 +--- php-4.4.1.orig/ext/bz2/config.m4 2004-01-21 06:04:50.000000000 +0100 ++++ php-4.4.1/ext/bz2/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -19,6 +19,12 @@ + done + fi + ++ for j in lib64 lib; do ++ if test -d $BZIP_DIR/$j; then ++ BZIP_LIBDIR=$BZIP_DIR/$j ++ fi ++ done ++ + if test -z "$BZIP_DIR"; then + AC_MSG_RESULT(not found) + AC_MSG_ERROR(Please reinstall the BZip2 distribution) +@@ -27,12 +33,12 @@ + PHP_CHECK_LIBRARY(bz2, BZ2_bzerror, + [ + PHP_ADD_INCLUDE($BZIP_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(bz2, $BZIP_DIR/lib, BZ2_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(bz2, $BZIP_LIBDIR, BZ2_SHARED_LIBADD) + AC_DEFINE(HAVE_BZ2,1,[ ]) + ], [ + AC_MSG_ERROR(bz2 module requires libbz2 >= 1.0.0) + ], [ +- -L$BZIP_DIR/lib ++ -L$BZIP_LIBDIR + ]) + + PHP_NEW_EXTENSION(bz2, bz2.c, $ext_shared) +diff -Nru php-4.4.1.orig/ext/curl/config.m4 php-4.4.1/ext/curl/config.m4 +--- php-4.4.1.orig/ext/curl/config.m4 2005-02-09 17:23:49.000000000 +0100 ++++ php-4.4.1/ext/curl/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -23,6 +23,12 @@ + done + fi + ++ for j in lib64 lib; do ++ if test -d $CURL_DIR/$j; then ++ CURL_LIBDIR=$CURL_DIR/$j ++ fi ++ done ++ + if test -z "$CURL_DIR"; then + AC_MSG_RESULT(not found) + AC_MSG_ERROR(Please reinstall the libcurl distribution - +@@ -51,7 +57,7 @@ + + PHP_ADD_INCLUDE($CURL_DIR/include) + PHP_EVAL_LIBLINE($CURL_LIBS, CURL_SHARED_LIBADD) +- PHP_ADD_LIBRARY_WITH_PATH(curl, $CURL_DIR/lib, CURL_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(curl, $CURL_LIBDIR, CURL_SHARED_LIBADD) + + PHP_CHECK_LIBRARY(curl,curl_easy_perform, + [ +@@ -59,14 +65,14 @@ + ],[ + AC_MSG_ERROR(There is something wrong. Please check config.log for more information.) + ],[ +- $CURL_LIBS -L$CURL_DIR/lib ++ $CURL_LIBS -L$CURL_LIBDIR + ]) + + PHP_CHECK_LIBRARY(curl,curl_version_info, + [ + AC_DEFINE(HAVE_CURL_VERSION_INFO,1,[ ]) + ],[],[ +- $CURL_LIBS -L$CURL_DIR/lib ++ $CURL_LIBS -L$CURL_LIBDIR + ]) + + dnl if test "$PHP_CURLWRAPPERS" != "no" ; then +diff -Nru php-4.4.1.orig/ext/dba/config.m4 php-4.4.1/ext/dba/config.m4 +--- php-4.4.1.orig/ext/dba/config.m4 2005-08-22 21:59:42.000000000 +0200 ++++ php-4.4.1/ext/dba/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -80,12 +80,18 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + PHP_CHECK_LIBRARY(gdbm, gdbm_open, [ + AC_DEFINE_UNQUOTED(GDBM_INCLUDE_FILE, "$THIS_INCLUDE", [ ]) + AC_DEFINE(DBA_GDBM, 1, [ ]) + THIS_LIBS=gdbm +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + fi + + PHP_DBA_STD_ASSIGN +@@ -110,14 +116,20 @@ + break + fi + done +- ++ ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + for LIB in ndbm db1 c; do + PHP_CHECK_LIBRARY($LIB, dbm_open, [ + AC_DEFINE_UNQUOTED(NDBM_INCLUDE_FILE, "$THIS_INCLUDE", [ ]) + AC_DEFINE(DBA_NDBM, 1, [ ]) + THIS_LIBS=$LIB +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + if test -n "$THIS_LIBS"; then + break + fi +@@ -135,25 +147,28 @@ + dnl parameters(version, library list, function) + AC_DEFUN([PHP_DBA_DB_CHECK],[ + for LIB in $2; do +- if test -f $THIS_PREFIX/lib/lib$LIB.a -o -f $THIS_PREFIX/lib/lib$LIB.$SHLIB_SUFFIX_NAME; then +- PHP_TEMP_LDFLAGS(-L$THIS_PREFIX/lib, -l$LIB,[ +- AC_TRY_LINK([ ++ for LIBDIR in lib64 lib; do ++ if test -f $THIS_PREFIX/$LIBDIR/lib$LIB.a -o -f $THIS_PREFIX/$LIBDIR/lib$LIB.$SHLIB_SUFFIX_NAME; then ++ PHP_TEMP_LDFLAGS(-L$THIS_PREFIX/$LIBDIR, -l$LIB,[ ++ AC_TRY_LINK([ + #include "$THIS_INCLUDE" +- ],[ +- $3; +- ],[ +- AC_EGREP_CPP(yes,[ ++ ],[ ++ $3; ++ ],[ ++ AC_EGREP_CPP(yes,[ + #include "$THIS_INCLUDE" + #if DB_VERSION_MAJOR == $1 +- yes ++ yes + #endif +- ],[ +- THIS_LIBS=$LIB +- break ++ ],[ ++ THIS_LIBS=$LIB ++ break ++ ]) + ]) + ]) +- ]) +- fi ++ fi ++ done ++ test -n "$THIS_LIBS" && break + done + if test -z "$THIS_LIBS"; then + AC_MSG_CHECKING(for db$1 major version) +@@ -314,6 +329,12 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + for LIB in dbm c gdbm; do + PHP_CHECK_LIBRARY($LIB, dbminit, [ +@@ -328,7 +349,7 @@ + fi + AC_DEFINE(DBA_DBM, 1, [ ]) + THIS_LIBS=$LIB +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + if test -n "$THIS_LIBS"; then + break + fi +@@ -364,13 +385,19 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + for LIB in cdb c; do + PHP_CHECK_LIBRARY($LIB, cdb_read, [ + AC_DEFINE_UNQUOTED(CDB_INCLUDE_FILE, "$THIS_INCLUDE", [ ]) + AC_DEFINE(DBA_CDB, 1, [ ]) + THIS_LIBS=$LIB +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + if test -n "$THIS_LIBS"; then + break + fi +diff -Nru php-4.4.1.orig/ext/domxml/config.m4 php-4.4.1/ext/domxml/config.m4 +--- php-4.4.1.orig/ext/domxml/config.m4 2004-12-30 08:02:17.000000000 +0100 ++++ php-4.4.1/ext/domxml/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -48,13 +48,15 @@ + AC_MSG_ERROR(Please reinstall the libxml >= 2.4.14 distribution) + fi + ++ for j in lib64 lib; do ++ if test -d $DOMXML_DIR/$j; then ++ DOMXML_LIBDIR=$DOMXML_DIR/$j ++ fi ++ done ++ + PHP_DOM_CHECK_VERSION + +- if test -f $DOMXML_DIR/lib/libxml2.a -o -f $DOMXML_DIR/lib/libxml2.$SHLIB_SUFFIX_NAME ; then +- DOM_LIBNAME=xml2 +- else +- DOM_LIBNAME=xml +- fi ++ DOM_LIBNAME=xml2 + + XML2_CONFIG=$DOMXML_DIR/bin/xml2-config + +@@ -62,7 +64,7 @@ + DOM_LIBS=`$XML2_CONFIG --libs` + PHP_EVAL_LIBLINE($DOM_LIBS, DOMXML_SHARED_LIBADD) + else +- PHP_ADD_LIBRARY_WITH_PATH($DOM_LIBNAME, $DOMXML_DIR/lib, DOMXML_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH($DOM_LIBNAME, $DOMXML_LIBDIR, DOMXML_SHARED_LIBADD) + fi + + PHP_ADD_INCLUDE($DOMXML_DIR/include$DOMXML_DIR_ADD) +@@ -70,7 +72,13 @@ + if test "$PHP_ZLIB_DIR" = "no"; then + AC_MSG_ERROR(DOMXML requires ZLIB. Use --with-zlib-dir=<DIR>) + else +- PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR/lib, DOMXML_SHARED_LIBADD) ++ for j in lib64 lib; do ++ if test -d $PHP_ZLIB_DIR/$j; then ++ PHP_ZLIB_LIBDIR=$PHP_ZLIB_DIR/$j ++ fi ++ done ++ ++ PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_LIBDIR, DOMXML_SHARED_LIBADD) + fi + + AC_DEFINE(HAVE_DOMXML,1,[ ]) +@@ -135,27 +143,35 @@ + AC_MSG_ERROR(Please reinstall the libxslt >= 1.0.3 distribution) + fi + ++ for j in lib64 lib; do ++ if test -d $DOMXSLT_DIR/$j; then ++ DOMXSLT_LIBDIR=$DOMXSLT_DIR/$j ++ fi ++ done ++ + PHP_DOM_XSLT_CHECK_VERSION + +- PHP_ADD_LIBRARY_WITH_PATH(xslt, $DOMXSLT_DIR/lib, DOMXML_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(xslt, $DOMXSLT_LIBDIR, DOMXML_SHARED_LIBADD) + + PHP_ADD_INCLUDE($DOMXSLT_DIR/include) + + if test "$PHP_DOM" = "no"; then + AC_MSG_ERROR(DOMXSLT requires DOMXML. Use --with-dom=<DIR>) + fi +- +- if test -f $DOMXML_DIR/lib/libxml2.a -o -f $DOMXML_DIR/lib/libxml2.$SHLIB_SUFFIX_NAME ; then +- DOM_LIBNAME=xml2 +- else +- DOM_LIBNAME=xml +- fi + +- PHP_ADD_LIBRARY_WITH_PATH($DOM_LIBNAME, $DOMXML_DIR/lib, DOMXML_SHARED_LIBADD) ++ for j in lib64 lib; do ++ if test -d $DOMXML_DIR/$j; then ++ DOMXML_LIBDIR=$DOMXML_DIR/$j ++ fi ++ done ++ ++ DOM_LIBNAME=xml2 ++ ++ PHP_ADD_LIBRARY_WITH_PATH($DOM_LIBNAME, $DOMXML_LIBDIR, DOMXML_SHARED_LIBADD) + PHP_ADD_INCLUDE($DOMXML_DIR/include$DOMXML_DIR_ADD) + +- if test -f $DOMXML_DIR/lib/libxsltbreakpoint.a -o -f $DOMXML_DIR/lib/libxsltbreakpoint.$SHLIB_SUFFIX_NAME ; then +- PHP_ADD_LIBRARY_WITH_PATH(xsltbreakpoint, $DOMXML_DIR/lib, DOMXML_SHARED_LIBADD) ++ if test -f $DOMXML_LIBDIR/libxsltbreakpoint.a -o -f $DOMXML_LIBDIR/libxsltbreakpoint.$SHLIB_SUFFIX_NAME ; then ++ PHP_ADD_LIBRARY_WITH_PATH(xsltbreakpoint, $DOMXML_LIBDIR, DOMXML_SHARED_LIBADD) + fi + + AC_DEFINE(HAVE_DOMXSLT,1,[ ]) +@@ -185,9 +201,15 @@ + AC_MSG_ERROR(Please reinstall the libxslt >= 1.0.3 distribution) + fi + ++ for j in lib64 lib; do ++ if test -d $DOMEXSLT_DIR/$j; then ++ DOMEXSLT_LIBDIR=$DOMEXSLT_DIR/$j ++ fi ++ done ++ + PHP_DOM_EXSLT_CHECK_VERSION + +- PHP_ADD_LIBRARY_WITH_PATH(exslt, $DOMEXSLT_DIR/lib, DOMXML_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(exslt, $DOMEXSLT_LIBDIR, DOMXML_SHARED_LIBADD) + + PHP_ADD_INCLUDE($DOMEXSLT_DIR/include) + +diff -Nru php-4.4.1.orig/ext/gd/config.m4 php-4.4.1/ext/gd/config.m4 +--- php-4.4.1.orig/ext/gd/config.m4 2005-05-17 14:23:09.000000000 +0200 ++++ php-4.4.1/ext/gd/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -50,8 +50,15 @@ + AC_DEFUN([PHP_GD_JPEG],[ + if test "$PHP_JPEG_DIR" != "no"; then + +- for i in $PHP_JPEG_DIR /usr/local /usr; do +- test -f $i/lib/libjpeg.$SHLIB_SUFFIX_NAME -o -f $i/lib/libjpeg.a && GD_JPEG_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_JPEG_DIR /usr/local /usr; do ++ if test -f "$i/$j/libjpeg.$SHLIB_SUFFIX_NAME" -o -f "$i/$j/libjpeg.a"; then ++ GD_JPEG_DIR=$i ++ GD_JPEG_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_JPEG_DIR" && break + done + + if test -z "$GD_JPEG_DIR"; then +@@ -61,11 +68,11 @@ + PHP_CHECK_LIBRARY(jpeg,jpeg_read_header, + [ + PHP_ADD_INCLUDE($GD_JPEG_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(jpeg, $GD_JPEG_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(jpeg, $GD_JPEG_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libjpeg.(a|so). Please check config.log for more information.]) + ],[ +- -L$GD_JPEG_DIR/lib ++ -L$GD_JPEG_LIB_DIR + ]) + else + AC_MSG_RESULT([If configure fails try --with-jpeg-dir=<DIR>]) +@@ -75,8 +82,15 @@ + AC_DEFUN([PHP_GD_PNG],[ + if test "$PHP_PNG_DIR" != "no"; then + +- for i in $PHP_PNG_DIR /usr/local /usr; do +- test -f $i/lib/libpng.$SHLIB_SUFFIX_NAME -o -f $i/lib/libpng.a && GD_PNG_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_PNG_DIR /usr/local /usr; do ++ if test -f "$i/$j/libpng.$SHLIB_SUFFIX_NAME" -o -f "$i/$j/libpng.a"; then ++ GD_PNG_DIR=$i ++ GD_PNG_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_PNG_DIR" && break + done + + if test -z "$GD_PNG_DIR"; then +@@ -94,12 +108,12 @@ + PHP_CHECK_LIBRARY(png,png_write_image, + [ + PHP_ADD_INCLUDE($GD_PNG_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR/lib, GD_SHARED_LIBADD) +- PHP_ADD_LIBRARY_WITH_PATH(png, $GD_PNG_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_LIB_DIR, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(png, $GD_PNG_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libpng.(a|so) or libz.(a|so). Please check config.log for more information.]) + ],[ +- -L$PHP_ZLIB_DIR/lib -lz -L$GD_PNG_DIR/lib ++ -L$PHP_ZLIB_LIB_DIR -lz -L$GD_PNG_LIB_DIR + ]) + + else +@@ -110,8 +124,15 @@ + AC_DEFUN([PHP_GD_XPM],[ + if test "$PHP_XPM_DIR" != "no"; then + +- for i in $PHP_XPM_DIR /usr/local /usr/X11R6 /usr; do +- test -f $i/lib/libXpm.$SHLIB_SUFFIX_NAME -o -f $i/lib/libXpm.a && GD_XPM_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_XPM_DIR /usr/local /usr/X11R6 /usr; do ++ if test -f "$i/$j/libXpm.$SHLIB_SUFFIX_NAME" -o -f "$i/$j/libXpm.a"; then ++ GD_XPM_DIR=$i ++ GD_XPM_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_XPM_DIR" && break + done + + if test -z "$GD_XPM_DIR"; then +@@ -129,12 +150,12 @@ + PHP_CHECK_LIBRARY(Xpm,XpmFreeXpmImage, + [ + PHP_ADD_INCLUDE($GD_XPM_INC) +- PHP_ADD_LIBRARY_WITH_PATH(Xpm, $GD_XPM_DIR/lib, GD_SHARED_LIBADD) +- PHP_ADD_LIBRARY_WITH_PATH(X11, $GD_XPM_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(Xpm, $GD_XPM_LIB_DIR, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(X11, $GD_XPM_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libXpm.(a|so) or libX11.(a|so). Please check config.log for more information.]) + ],[ +- -L$GD_XPM_DIR/lib -lX11 ++ -L$GD_XPM_LIB_DIR -lX11 + ]) + else + AC_MSG_RESULT(If configure fails try --with-xpm-dir=<DIR>) +@@ -145,25 +166,29 @@ + if test "$PHP_TTF" != "no"; then + if test "$PHP_FREETYPE_DIR" = "no" -o "$PHP_FREETYPE_DIR" = ""; then + if test -n "$PHP_TTF"; then +- for i in $PHP_TTF /usr/local /usr; do +- if test -f "$i/include/freetype.h"; then +- TTF_DIR=$i +- unset TTF_INC_DIR +- fi +- if test -f "$i/include/freetype/freetype.h"; then +- TTF_DIR=$i +- TTF_INC_DIR=$i/include/freetype +- fi +- if test -f "$i/include/freetype1/freetype/freetype.h"; then +- TTF_DIR=$i +- TTF_INC_DIR=$i/include/freetype1/freetype +- fi ++ for j in lib64 lib; do ++ for i in $PHP_TTF /usr/local /usr; do ++ if test -f "$i/$j/libttf.a" -o -f "$i/$j/libttf.$SHLIB_SUFFIX_NAME"; then ++ TTF_DIR=$i ++ TTF_LIB_DIR=$i/$j ++ if test -f "$i/include/freetype.h"; then ++ unset TTF_INC_DIR ++ elif test -f "$i/include/freetype/freetype.h"; then ++ TTF_INC_DIR=$i/include/freetype ++ elif test -f "$i/include/freetype1/freetype/freetype.h"; then ++ TTF_INC_DIR=$i/include/freetype1/freetype ++ else ++ unset TTF_DIR ++ fi ++ fi ++ test -n "$TTF_DIR" && break ++ done + test -n "$TTF_DIR" && break + done + fi + if test -n "$TTF_DIR" ; then + AC_DEFINE(HAVE_LIBTTF,1,[ ]) +- PHP_ADD_LIBRARY_WITH_PATH(ttf, $TTF_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(ttf, $TTF_LIB_DIR, GD_SHARED_LIBADD) + fi + if test -z "$TTF_INC_DIR"; then + TTF_INC_DIR=$TTF_DIR/include +@@ -178,16 +203,21 @@ + AC_DEFUN([PHP_GD_FREETYPE2],[ + if test "$PHP_FREETYPE_DIR" != "no"; then + +- for i in $PHP_FREETYPE_DIR /usr/local /usr; do +- if test -f "$i/include/freetype2/freetype/freetype.h"; then +- FREETYPE2_DIR=$i +- FREETYPE2_INC_DIR=$i/include/freetype2 +- break +- fi ++ for j in lib64 lib; do ++ for i in $PHP_FREETYPE_DIR /usr/local /usr; do ++ if test -f "$i/include/freetype2/freetype/freetype.h" && \ ++ test -f "$i/$j/libfreetype.a" -o -f "$i/$j/libfreetype.$SHLIB_SUFFIX_NAME"; then ++ FREETYPE2_DIR=$i ++ FREETYPE2_LIB_DIR=$i/$j ++ FREETYPE2_INC_DIR=$i/include/freetype2 ++ break ++ fi ++ done ++ test -n "$FREETYPE2_DIR" && break + done + + if test -n "$FREETYPE2_DIR" ; then +- PHP_ADD_LIBRARY_WITH_PATH(freetype, $FREETYPE2_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(freetype, $FREETYPE2_LIB_DIR, GD_SHARED_LIBADD) + PHP_ADD_INCLUDE($FREETYPE2_DIR/include) + PHP_ADD_INCLUDE($FREETYPE2_INC_DIR) + AC_DEFINE(USE_GD_IMGSTRTTF, 1, [ ]) +@@ -203,8 +233,16 @@ + AC_DEFUN([PHP_GD_T1LIB],[ + if test "$PHP_T1LIB" != "no"; then + +- for i in $PHP_T1LIB /usr/local /usr; do +- test -f "$i/include/t1lib.h" && GD_T1_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_T1LIB /usr/local /usr; do ++ if test -f "$i/include/t1lib.h" && \ ++ test -f "$i/$j/libt1.a" -o -f "$i/$j/libt1.$SHLIB_SUFFIX_NAME"; then ++ GD_T1_DIR=$i ++ GD_T1_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_T1_DIR" && break + done + + if test -z "$GD_T1_DIR"; then +@@ -215,11 +253,11 @@ + [ + AC_DEFINE(HAVE_LIBT1,1,[ ]) + PHP_ADD_INCLUDE($GD_T1_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(t1, $GD_T1_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(t1, $GD_T1_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libt1.(a|so). Please check config.log for more information.]) + ],[ +- -L$GD_T1_DIR/lib ++ -L$GD_T1_LIB_DIR + ]) + fi + ]) +@@ -365,7 +403,7 @@ + done + + dnl Library path +- for i in lib/gd1.3 lib/gd lib gd1.3 gd ""; do ++ for i in lib/gd1.3 lib64/gd1.3 lib/gd lib64/gd lib lib64 gd1.3 gd ""; do + test -f "$PHP_GD/$i/libgd.$SHLIB_SUFFIX_NAME" -o -f "$PHP_GD/$i/libgd.a" && GD_LIB="$PHP_GD/$i" + done + +diff -Nru php-4.4.1.orig/ext/gettext/config.m4 php-4.4.1/ext/gettext/config.m4 +--- php-4.4.1.orig/ext/gettext/config.m4 2003-10-01 04:53:58.000000000 +0200 ++++ php-4.4.1/ext/gettext/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -14,11 +14,15 @@ + AC_MSG_ERROR(Cannot locate header file libintl.h) + fi + +- GETTEXT_LIBDIR=$GETTEXT_DIR/lib ++ for j in lib64 lib; do ++ if test -d $GETTEXT_DIR/$j; then ++ GETTEXT_LIBDIR=$GETTEXT_DIR/$j ++ fi ++ done ++ + GETTEXT_INCDIR=$GETTEXT_DIR/include + + O_LDFLAGS=$LDFLAGS +- LDFLAGS="$LDFLAGS -L$GETTEXT_LIBDIR" + AC_CHECK_LIB(intl, bindtextdomain, [ + GETTEXT_LIBS=intl + GETTEXT_CHECK_IN_LIB=intl +diff -Nru php-4.4.1.orig/ext/gmp/config.m4 php-4.4.1/ext/gmp/config.m4 +--- php-4.4.1.orig/ext/gmp/config.m4 2003-11-19 05:44:24.000000000 +0100 ++++ php-4.4.1/ext/gmp/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -14,20 +14,26 @@ + if test -z "$GMP_DIR"; then + AC_MSG_ERROR(Unable to locate gmp.h) + fi +- ++ ++ for j in lib64 lib; do ++ if test -d $GMP_DIR/$j; then ++ GMP_LIBDIR=$GMP_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(gmp, __gmp_randinit_lc_2exp_size, + [],[ + PHP_CHECK_LIBRARY(gmp, gmp_randinit_lc_2exp_size, + [],[ + AC_MSG_ERROR([GNU MP Library version 4.1.2 or greater required.]) + ],[ +- -L$GMP_DIR/lib ++ -L$GMP_LIBDIR + ]) + ],[ +- -L$GMP_DIR/lib ++ -L$GMP_LIBDIR + ]) + +- PHP_ADD_LIBRARY_WITH_PATH(gmp, $GMP_DIR/lib, GMP_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(gmp, $GMP_LIBDIR, GMP_SHARED_LIBADD) + PHP_ADD_INCLUDE($GMP_DIR/include) + + PHP_NEW_EXTENSION(gmp, gmp.c, $ext_shared) +diff -Nru php-4.4.1.orig/ext/iconv/config.m4 php-4.4.1/ext/iconv/config.m4 +--- php-4.4.1.orig/ext/iconv/config.m4 2005-01-10 22:38:56.000000000 +0100 ++++ php-4.4.1/ext/iconv/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -23,8 +23,14 @@ + PHP_ICONV_PREFIX="$ICONV_DIR" + fi + ++ for j in lib64 lib; do ++ if test -d $PHP_ICONV_PREFIX/$j; then ++ PHP_ICONV_PREFIX_LIBDIR=$PHP_ICONV_PREFIX/$j ++ fi ++ done ++ + CFLAGS="-I$PHP_ICONV_PREFIX/include $CFLAGS" +- LDFLAGS="-L$PHP_ICONV_PREFIX/lib $LDFLAGS" ++ LDFLAGS="-L$PHP_ICONV_PREFIX_LIBDIR $LDFLAGS" + + if test -r $PHP_ICONV_PREFIX/include/giconv.h; then + PHP_ICONV_H_PATH="$PHP_ICONV_PREFIX/include/giconv.h" +diff -Nru php-4.4.1.orig/ext/imap/config.m4 php-4.4.1/ext/imap/config.m4 +--- php-4.4.1.orig/ext/imap/config.m4 2005-01-11 05:56:57.000000000 +0100 ++++ php-4.4.1/ext/imap/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -167,6 +167,7 @@ + for lib in c-client4 c-client imap; do + IMAP_LIB=$lib + IMAP_LIB_CHK(lib) ++ IMAP_LIB_CHK(lib64) + IMAP_LIB_CHK(c-client) + done + +diff -Nru php-4.4.1.orig/ext/interbase/config.m4 php-4.4.1/ext/interbase/config.m4 +--- php-4.4.1.orig/ext/interbase/config.m4 2003-04-25 10:59:00.000000000 +0200 ++++ php-4.4.1/ext/interbase/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -9,10 +9,18 @@ + if test "$PHP_INTERBASE" != "no"; then + if test "$PHP_INTERBASE" = "yes"; then + IBASE_INCDIR=/usr/interbase/include +- IBASE_LIBDIR=/usr/interbase/lib ++ for j in lib64 lib; do ++ if test -d /usr/interbase/$j; then ++ IBASE_LIBDIR=/usr/interbase/$j ++ fi ++ done + else + IBASE_INCDIR=$PHP_INTERBASE/include +- IBASE_LIBDIR=$PHP_INTERBASE/lib ++ for j in lib64 lib; do ++ if test -d $PHP_INTERBASE/$j; then ++ IBASE_LIBDIR=$PHP_INTERBASE/$j ++ fi ++ done + fi + + PHP_CHECK_LIBRARY(gds, isc_detach_database, +diff -Nru php-4.4.1.orig/ext/ldap/config.m4 php-4.4.1/ext/ldap/config.m4 +--- php-4.4.1.orig/ext/ldap/config.m4 2005-05-08 18:06:24.000000000 +0200 ++++ php-4.4.1/ext/ldap/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -6,7 +6,8 @@ + if test -f $1/include/ldap.h; then + LDAP_DIR=$1 + LDAP_INCDIR=$1/include +- LDAP_LIBDIR=$1/lib ++ test -f $1/lib/libldap.so && LDAP_LIBDIR=$1/lib ++ test -f $1/lib64/libldap.so && LDAP_LIBDIR=$1/lib64 + elif test -f $1/include/umich-ldap/ldap.h; then + LDAP_DIR=$1 + LDAP_INCDIR=$1/include/umich-ldap +diff -Nru php-4.4.1.orig/ext/mbstring/config.m4 php-4.4.1/ext/mbstring/config.m4 +--- php-4.4.1.orig/ext/mbstring/config.m4 2005-02-21 08:10:13.000000000 +0100 ++++ php-4.4.1/ext/mbstring/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -167,12 +167,18 @@ + PHP_ADD_INCLUDE([$PHP_LIBMBFL_INCLUDE]) + fi + ++ for j in lib64 lib; do ++ if test -d $PHP_LIBMBFL/$j; then ++ PHP_LIBMBFL_LIBDIR=$PHP_LIBMBFL/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(mbfl, mbfl_buffer_converter_new, [ +- PHP_ADD_LIBRARY_WITH_PATH(mbfl, $PHP_LIBMBFL/lib, MBSTRING_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mbfl, $PHP_LIBMBFL_LIBDIR, MBSTRING_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libmbfl. Please check config.log for more information.]) + ], [ +- -LPHP_LIBMBFL/lib ++ -L$PHP_LIBMBFL_LIBDIR + ]) + fi + ]) +diff -Nru php-4.4.1.orig/ext/mcal/config.m4 php-4.4.1/ext/mcal/config.m4 +--- php-4.4.1.orig/ext/mcal/config.m4 2002-03-27 11:26:16.000000000 +0100 ++++ php-4.4.1/ext/mcal/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -19,7 +19,7 @@ + fi + done + +- for i in $MCAL_DIR $MCAL_DIR/mcal $MCAL_DIR/mcal/lib $MCAL_DIR/lib/mcal $MCAL_DIR/lib; do ++ for i in $MCAL_DIR $MCAL_DIR/mcal $MCAL_DIR/mcal/lib $MCAL_DIR/lib/mcal $MCAL_DIR/lib64/mcal $MCAL_DIR/lib $MCAL_DIR/lib64; do + if test -r "$i/libmcal.a"; then + MCAL_LIBRARY=$i + fi +diff -Nru php-4.4.1.orig/ext/mcrypt/config.m4 php-4.4.1/ext/mcrypt/config.m4 +--- php-4.4.1.orig/ext/mcrypt/config.m4 2005-01-22 02:37:12.000000000 +0100 ++++ php-4.4.1/ext/mcrypt/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -14,6 +14,12 @@ + AC_MSG_ERROR(mcrypt.h not found. Please reinstall libmcrypt.) + fi + ++ for j in lib64 lib; do ++ if test -d $MCRYPT_DIR/$j; then ++ MCRYPT_LIBDIR=$MCRYPT_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(mcrypt, mcrypt_module_open, + [ + PHP_ADD_LIBRARY(ltdl,, MCRYPT_SHARED_LIBADD) +@@ -23,7 +29,7 @@ + [ + AC_DEFINE(HAVE_MCRYPT_GENERIC_DEINIT,1,[ ]) + ],[],[ +- -L$MCRYPT_DIR/lib -lltdl ++ -L$MCRYPT_LIBDIR -lltdl + ]) + + ],[ +@@ -35,7 +41,7 @@ + [ + AC_DEFINE(HAVE_MCRYPT_GENERIC_DEINIT,1,[ ]) + ],[],[ +- -L$MCRYPT_DIR/lib ++ -L$MCRYPT_LIBDIR + ]) + ],[ + PHP_CHECK_LIBRARY(mcrypt, init_mcrypt, +@@ -44,16 +50,16 @@ + ],[ + AC_MSG_ERROR([Sorry, I was not able to diagnose which libmcrypt version you have installed.]) + ],[ +- -L$MCRYPT_DIR/lib ++ -L$MCRYPT_LIBDIR + ]) + ],[ +- -L$MCRYPT_DIR/lib ++ -L$MCRYPT_LIBDIR + ]) + ],[ +- -L$MCRYPT_DIR/lib -lltdl ++ -L$MCRYPT_LIBDIR -lltdl + ]) + +- PHP_ADD_LIBRARY_WITH_PATH(mcrypt, $MCRYPT_DIR/lib, MCRYPT_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mcrypt, $MCRYPT_LIBDIR, MCRYPT_SHARED_LIBADD) + PHP_ADD_INCLUDE($MCRYPT_DIR/include) + + PHP_NEW_EXTENSION(mcrypt, mcrypt.c, $ext_shared) +diff -Nru php-4.4.1.orig/ext/mcve/config.m4 php-4.4.1/ext/mcve/config.m4 +--- php-4.4.1.orig/ext/mcve/config.m4 2004-12-08 07:48:11.000000000 +0100 ++++ php-4.4.1/ext/mcve/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -67,8 +67,14 @@ + + CPPFLAGS=$saved_CPPFLAGS + ++ for j in lib64 lib; do ++ if test -d $MCVE_DIR/$j; then ++ MCVE_LIBDIR=$MCVE_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($MCVE_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(mcve, $MCVE_DIR/lib, MCVE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mcve, $MCVE_LIBDIR, MCVE_SHARED_LIBADD) + + dnl Build test. Check for libmcve or libmonetra + dnl libmonetra_compat.h handle's MCVE_ -> M_ conversion +diff -Nru php-4.4.1.orig/ext/mhash/config.m4 php-4.4.1/ext/mhash/config.m4 +--- php-4.4.1.orig/ext/mhash/config.m4 2003-10-01 04:54:01.000000000 +0200 ++++ php-4.4.1/ext/mhash/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -14,8 +14,14 @@ + AC_MSG_ERROR(Please reinstall libmhash - I cannot find mhash.h) + fi + ++ for j in lib64 lib; do ++ if test -d $MHASH_DIR/$j; then ++ MHASH_LIBDIR=$MHASH_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($MHASH_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(mhash, $MHASH_DIR/lib, MHASH_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mhash, $MHASH_LIBDIR, MHASH_SHARED_LIBADD) + + PHP_NEW_EXTENSION(mhash, mhash.c, $ext_shared) + PHP_SUBST(MHASH_SHARED_LIBADD) +diff -Nru php-4.4.1.orig/ext/ming/config.m4 php-4.4.1/ext/ming/config.m4 +--- php-4.4.1.orig/ext/ming/config.m4 2003-07-11 09:48:33.000000000 +0200 ++++ php-4.4.1/ext/ming/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -8,10 +8,12 @@ + if test "$PHP_MING" != "no"; then + AC_CHECK_LIB(m, sin) + +- for i in $PHP_MING /usr/local /usr; do +- if test -f $i/lib/libming.$SHLIB_SUFFIX_NAME -o -f $i/lib/libming.a; then ++ for j in lib64 lib; do ++ for i in $PHP_MING /usr/local /usr; do ++ if test -f $i/$j/libming.$SHLIB_SUFFIX_NAME -o -f $i/$j/libming.a; then + MING_DIR=$i +- fi ++ fi ++ done + done + + if test -z "$MING_DIR"; then +@@ -28,16 +30,22 @@ + AC_MSG_ERROR(Please reinstall ming distribution. ming.h not found.) + fi + ++ for j in lib64 lib; do ++ if test -d $MING_DIR/$j; then ++ MING_LIBDIR=$MING_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(ming, Ming_useSWFVersion, [ + AC_DEFINE(HAVE_MING,1,[ ]) + ],[ + AC_MSG_ERROR([Ming library 0.2a or greater required.]) + ],[ +- -L$MING_DIR/lib ++ -L$MING_LIBDIR + ]) + + PHP_ADD_INCLUDE($MING_INC_DIR) +- PHP_ADD_LIBRARY_WITH_PATH(ming, $MING_DIR/lib, MING_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(ming, $MING_LIBDIR, MING_SHARED_LIBADD) + + AC_MSG_CHECKING([for destroySWFBlock]) + AC_TRY_RUN([ +diff -Nru php-4.4.1.orig/ext/msession/config.m4 php-4.4.1/ext/msession/config.m4 +--- php-4.4.1.orig/ext/msession/config.m4 2002-03-12 17:25:11.000000000 +0100 ++++ php-4.4.1/ext/msession/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -8,13 +8,17 @@ + if test "$PHP_MSESSION" != "no"; then + if test -r $PHP_MSESSION/lib/libphoenix.a; then + PHOENIX_DIR=$PHP_MSESSION ++ PHOENIX_LIBDIR=$PHP_MSESSION/lib + else + AC_MSG_CHECKING(for msession in default path) +- for i in /usr/local/phoenix /usr/local /usr; do +- if test -r $i/lib/libphoenix.a; then +- PHOENIX_DIR=$i +- AC_MSG_RESULT(found in $i) +- fi ++ for j in lib64 lib; do ++ for i in /usr/local/phoenix /usr/local /usr; do ++ if test -r $i/$j/libphoenix.a; then ++ PHOENIX_DIR=$i ++ PHOENIX_LIBDIR=$i/$j ++ AC_MSG_RESULT(found in $i) ++ fi ++ done + done + fi + +@@ -25,7 +29,7 @@ + + + AC_DEFINE(HAVE_MSESSION, 1, [ ]) +- PHP_ADD_LIBRARY_WITH_PATH(phoenix, "$PHOENIX_DIR/lib", PHOENIX_LIB) ++ PHP_ADD_LIBRARY_WITH_PATH(phoenix, "$PHOENIX_LIBDIR", PHOENIX_LIB) + PHOENIX_INCLUDE="-I$PHOENIX_DIR" + PHP_SUBST(PHOENIX_LIB) + +diff -Nru php-4.4.1.orig/ext/mssql/config.m4 php-4.4.1/ext/mssql/config.m4 +--- php-4.4.1.orig/ext/mssql/config.m4 2004-12-08 19:59:11.000000000 +0100 ++++ php-4.4.1/ext/mssql/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -19,6 +19,12 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $FREETDS_INSTALLATION_DIR/$j; then ++ FREETDS_INSTALLATION_DIR_LIBDIR=$FREETDS_INSTALLATION_DIR/$j ++ fi ++ done ++ + if test -z "$FREETDS_INSTALLATION_DIR"; then + AC_MSG_ERROR(Cannot find FreeTDS in known installation directories) + fi +@@ -32,12 +38,12 @@ + fi + fi + +- if test ! -r "$FREETDS_INSTALLATION_DIR/lib/libtds.a" && test ! -r "$FREETDS_INSTALLATION_DIR/lib/libtds.so"; then +- AC_MSG_ERROR(Could not find $FREETDS_INSTALLATION_DIR/lib/libtds.[a|so]) ++ if test ! -r "$FREETDS_INSTALLATION_DIR_LIBDIR/libtds.a" && test ! -r "$FREETDS_INSTALLATION_DIR_LIBDIR/libtds.so"; then ++ AC_MSG_ERROR(Could not find $FREETDS_INSTALLATION_DIR_LIBDIR/libtds.[a|so]) + fi + + MSSQL_INCDIR=$FREETDS_INSTALLATION_DIR/include +- MSSQL_LIBDIR=$FREETDS_INSTALLATION_DIR/lib ++ MSSQL_LIBDIR=$FREETDS_INSTALLATION_DIR_LIBDIR + + PHP_ADD_INCLUDE($MSSQL_INCDIR) + PHP_ADD_LIBRARY_WITH_PATH(sybdb, $MSSQL_LIBDIR, MSSQL_SHARED_LIBADD) +diff -Nru php-4.4.1.orig/ext/mysql/config.m4 php-4.4.1/ext/mysql/config.m4 +--- php-4.4.1.orig/ext/mysql/config.m4 2005-07-26 16:02:00.000000000 +0200 ++++ php-4.4.1/ext/mysql/config.m4 2005-12-01 09:12:18.000000000 +0100 +@@ -121,7 +121,7 @@ + ;; + esac + +- for i in lib lib/mysql; do ++ for i in lib64 lib64/mysql lib lib/mysql; do + MYSQL_LIB_CHK($i) + done + +@@ -132,13 +132,18 @@ + PHP_CHECK_LIBRARY($MY_LIBNAME, mysql_close, [ ], + [ + if test "$PHP_ZLIB_DIR" != "no"; then ++ for j in lib64 lib; do ++ if test -d $PHP_ZLIB_DIR/$j; then ++ PHP_ZLIB_LIBDIR=$PHP_ZLIB_DIR/$j ++ fi ++ done + PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR, MYSQL_SHARED_LIBADD) + PHP_CHECK_LIBRARY($MY_LIBNAME, mysql_error, [], [ + AC_MSG_ERROR([mysql configure failed. Please check config.log for more information.]) + ], [ +- -L$PHP_ZLIB_DIR/lib -L$MYSQL_LIB_DIR ++ -L$PHP_ZLIB_LIBDIR -L$MYSQL_LIB_DIR + ]) +- MYSQL_LIBS="-L$PHP_ZLIB_DIR/lib -lz" ++ MYSQL_LIBS="-L$PHP_ZLIB_LIBDIR -lz" + else + PHP_ADD_LIBRARY(z,, MYSQL_SHARED_LIBADD) + PHP_CHECK_LIBRARY($MY_LIBNAME, mysql_errno, [], [ +diff -Nru php-4.4.1.orig/ext/ncurses/config.m4 php-4.4.1/ext/ncurses/config.m4 +--- php-4.4.1.orig/ext/ncurses/config.m4 2003-12-09 21:33:22.000000000 +0100 ++++ php-4.4.1/ext/ncurses/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -38,20 +38,26 @@ + LIBNAME=ncurses + LIBSYMBOL=initscr + ++ for j in lib64 lib; do ++ if test -d $NCURSES_DIR/$j; then ++ NCURSES_LIBDIR=$NCURSES_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY($LIBNAME, $LIBSYMBOL, [ + AC_DEFINE(HAVE_NCURSESLIB,1,[ ]) +- PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $NCURSES_DIR/lib, NCURSES_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $NCURSES_LIBDIR, NCURSES_SHARED_LIBADD) + + PHP_CHECK_LIBRARY(panel, new_panel, [ + AC_DEFINE(HAVE_NCURSES_PANEL,1,[ ]) +- PHP_ADD_LIBRARY_WITH_PATH(panel, $NCURSES_DIR/lib, NCURSES_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(panel, $NCURSES_LIBDIR, NCURSES_SHARED_LIBADD) + ], [], [ +- -L$NCURSES_DIR/lib -l$LIBNAME -lm ++ -L$NCURSES_LIBDIR -l$LIBNAME -lm + ]) + ], [ + AC_MSG_ERROR(Wrong ncurses lib version or lib not found) + ], [ +- -L$NCURSES_DIR/lib -lm ++ -L$NCURSES_LIBDIR -lm + ]) + + AC_CHECK_LIB($LIBNAME, color_set, [AC_DEFINE(HAVE_NCURSES_COLOR_SET, 1, [ ])]) +diff -Nru php-4.4.1.orig/ext/odbc/config.m4 php-4.4.1/ext/odbc/config.m4 +--- php-4.4.1.orig/ext/odbc/config.m4 2005-04-22 01:02:23.000000000 +0200 ++++ php-4.4.1/ext/odbc/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -47,19 +47,8 @@ + # + # Check for the library files, and setup the ODBC_LIBS path... + # +-if test ! -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -a \ +- ! -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a; then +- # +- # we have an error and should bail out, as we can't find the libs! +- # +- echo "" +- echo "*********************************************************************" +- echo "* Unable to locate $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so or $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" +- echo "* Please correct this by creating the following links and reconfiguring:" +- echo "* $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a -> $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" +- echo "* $1/${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -> $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so" +- echo "*********************************************************************" +-else ++if test -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -a \ ++ -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a; then + ODBC_LFLAGS=-L$1 + ODBC_LIBS=-l${ac_solid_prefix}${ac_solid_os}${ac_solid_version} + fi +@@ -100,8 +89,12 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ ADABAS_LIBDIR=$withval/$i ++ test -f "$ADABAS_LIBDIR/odbclib.a" && break ++ done + PHP_ADD_INCLUDE($withval/incl) +- PHP_ADD_LIBPATH($withval/lib) ++ PHP_ADD_LIBPATH($ADABAS_LIBDIR) + ODBC_OBJS="$withval/lib/odbclib.a" + ODBC_LIB="$abs_builddir/ext/odbc/libodbc_adabas.a" + $srcdir/build/shtool mkdir -f -p ext/odbc +@@ -132,8 +125,12 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ SAPDB_LIBDIR=$withval/$i ++ test -f "$SAPDB_LIBDIR/libsqlod.a" -o -f "$SAPDB_LIBDIR/libsqlod.$SHLIB_SUFFIX_NAME" && break ++ done + PHP_ADD_INCLUDE($withval/incl) +- PHP_ADD_LIBPATH($withval/lib) ++ PHP_ADD_LIBPATH($SAPDB_LIBDIR) + PHP_ADD_LIBRARY(sqlod) + ODBC_TYPE=sapdb + AC_DEFINE(HAVE_SAPDB,1,[ ]) +@@ -158,19 +155,36 @@ + withval=/usr/local/solid + fi + if test "$withval" != "no"; then +- ODBC_INCDIR=$withval/include +- ODBC_LIBDIR=$withval/lib +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_TYPE=solid +- if test -f $ODBC_LIBDIR/soc*35.a; then +- AC_DEFINE(HAVE_SOLID_35,1,[ ]) +- elif test -f $ODBC_LIBDIR/scl*30.a; then +- AC_DEFINE(HAVE_SOLID_30,1,[ ]) +- elif test -f $ODBC_LIBDIR/scl*23.a; then +- AC_DEFINE(HAVE_SOLID,1,[ ]) ++ for i in lib64 lib; do ++ SOLID_LIBDIR=$withval/$i ++ ODBC_INCDIR=$withval/include ++ ODBC_LIBDIR=$withval/$j ++ ODBC_INCLUDE=-I$ODBC_INCDIR ++ ODBC_TYPE=solid ++ if test -f $ODBC_LIBDIR/soc*35.a; then ++ AC_DEFINE(HAVE_SOLID_35,1,[ ]) ++ elif test -f $ODBC_LIBDIR/scl*30.a; then ++ AC_DEFINE(HAVE_SOLID_30,1,[ ]) ++ elif test -f $ODBC_LIBDIR/scl*23.a; then ++ AC_DEFINE(HAVE_SOLID,1,[ ]) ++ fi ++ AC_MSG_RESULT(yes) ++ ODBC_LIBS= ++ AC_FIND_SOLID_LIBS($ODBC_LIBDIR) ++ test -n "$ODBC_LIBS" && break ++ done ++ if test -z "$ODBC_LIBS"; then ++ # ++ # we have an error and should bail out, as we can't find the libs! ++ # ++ echo "" ++ echo "*********************************************************************" ++ echo "* Unable to locate ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so or ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" ++ echo "* Please correct this by creating the following links and reconfiguring:" ++ echo "* ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a -> ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" ++ echo "* ODBC_LIBDIR/${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -> ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so" ++ echo "*********************************************************************" + fi +- AC_MSG_RESULT(yes) +- AC_FIND_SOLID_LIBS($ODBC_LIBDIR) + else + AC_MSG_RESULT(no) + fi +@@ -400,11 +414,15 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then +- PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/lib) ++ for i in lib64 lib; do ++ IODBC_LIBDIR=$withval/$i ++ test -f "$IODBC_LIBDIR/libiodbc.a" -o -f "$IODBC_LIBDIR/libiodbc.$SHLIB_SUFFIX_NAME" && break ++ done ++ PHP_ADD_LIBRARY_WITH_PATH(iodbc, $IODBC_LIBDIR) + PHP_ADD_INCLUDE($withval/include, 1) + ODBC_TYPE=iodbc + ODBC_INCLUDE=-I$withval/include +- ODBC_LFLAGS=-L$withval/lib ++ ODBC_LFLAGS=-L$IODBC_LIBDIR + ODBC_LIBS=-liodbc + AC_DEFINE(HAVE_IODBC,1,[ ]) + AC_DEFINE(HAVE_ODBC2,1,[ ]) +@@ -429,8 +447,11 @@ + withval=/usr/local/easysoft/oob/client + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ ODBC_LIBDIR=$withval/$i ++ test -f "$ODBC_LIBDIR/libesoobclient.a" -o -f "$ODBC_LIBDIR/libesoobclient.$SHLIB_SUFFIX_NAME" && break ++ done + ODBC_INCDIR=$withval/include +- ODBC_LIBDIR=$withval/lib + ODBC_LFLAGS=-L$ODBC_LIBDIR + ODBC_INCLUDE=-I$ODBC_INCDIR + ODBC_LIBS=-lesoobclient +@@ -456,8 +477,11 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ ODBC_LIBDIR=$withval/$i ++ test -f "$ODBC_LIBDIR/libodbc.a" -o -f "$ODBC_LIBDIR/libodbc.$SHLIB_SUFFIX_NAME" && break ++ done + ODBC_INCDIR=$withval/include +- ODBC_LIBDIR=$withval/lib + ODBC_LFLAGS=-L$ODBC_LIBDIR + ODBC_INCLUDE=-I$ODBC_INCDIR + ODBC_LIBS=-lodbc +diff -Nru php-4.4.1.orig/ext/pcre/config.m4 php-4.4.1/ext/pcre/config.m4 +--- php-4.4.1.orig/ext/pcre/config.m4 2005-08-09 19:41:56.000000000 +0200 ++++ php-4.4.1/ext/pcre/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -25,7 +25,7 @@ + AC_MSG_ERROR([Could not find pcre.h in $PHP_PCRE_REGEX]) + fi + +- for j in $PHP_PCRE_REGEX $PHP_PCRE_REGEX/lib; do ++ for j in $PHP_PCRE_REGEX $PHP_PCRE_REGEX/lib64 $PHP_PCRE_REGEX/lib; do + test -f $j/libpcre.a -o -f $j/libpcre.$SHLIB_SUFFIX_NAME && PCRE_LIBDIR=$j + done + +diff -Nru php-4.4.1.orig/ext/pgsql/config.m4 php-4.4.1/ext/pgsql/config.m4 +--- php-4.4.1.orig/ext/pgsql/config.m4 2005-07-25 01:11:45.000000000 +0200 ++++ php-4.4.1/ext/pgsql/config.m4 2005-12-01 09:13:30.000000000 +0100 +@@ -44,7 +44,7 @@ + fi + done + +- for j in lib lib/pgsql lib/postgres lib/postgresql ""; do ++ for j in lib64 lib lib64/pgsql lib/pgsql lib64/postgres lib/postgres lib64/postgresql lib/postgresql ""; do + if test -f "$i/$j/libpq.so" || test -f "$i/$j/libpq.a"; then + PGSQL_LIBDIR=$i/$j + fi +diff -Nru php-4.4.1.orig/ext/pspell/config.m4 php-4.4.1/ext/pspell/config.m4 +--- php-4.4.1.orig/ext/pspell/config.m4 2005-02-17 04:51:50.000000000 +0100 ++++ php-4.4.1/ext/pspell/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -27,7 +27,11 @@ + AC_MSG_ERROR(Cannot find pspell) + fi + +- PSPELL_LIBDIR=$PSPELL_DIR/lib ++ for j in lib64 lib; do ++ if test -d $PSPELL_DIR/$j; then ++ PSPELL_LIBDIR=$PSPELL_DIR/$j ++ fi ++ done + + PHP_ADD_LIBRARY_WITH_PATH(pspell, $PSPELL_LIBDIR, PSPELL_SHARED_LIBADD) + +diff -Nru php-4.4.1.orig/ext/readline/config.m4 php-4.4.1/ext/readline/config.m4 +--- php-4.4.1.orig/ext/readline/config.m4 2003-10-01 04:54:04.000000000 +0200 ++++ php-4.4.1/ext/readline/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -29,22 +29,28 @@ + ]) + ]) + ++ for j in lib64 lib; do ++ if test -d $READLINE_DIR/$j; then ++ READLINE_LIBDIR=$READLINE_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(readline, readline, + [ +- PHP_ADD_LIBRARY_WITH_PATH(readline, $READLINE_DIR/lib, READLINE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(readline, $READLINE_LIBDIR, READLINE_SHARED_LIBADD) + ], [ + AC_MSG_ERROR(readline library not found) + ], [ +- -L$READLINE_DIR/lib ++ -L$READLINE_LIBDIR + ]) + + PHP_CHECK_LIBRARY(history, add_history, + [ +- PHP_ADD_LIBRARY_WITH_PATH(history, $READLINE_DIR/lib, READLINE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(history, $READLINE_LIBDIR, READLINE_SHARED_LIBADD) + ], [ + AC_MSG_ERROR(history library required by readline not found) + ], [ +- -L$READLINE_DIR/lib ++ -L$READLINE_LIBDIR + ]) + + PHP_NEW_EXTENSION(readline, readline.c, $ext_shared, cli) +@@ -73,13 +79,19 @@ + ]) + ]) + ++ for j in lib64 lib; do ++ if test -d $LIBEDIT_DIR/$j; then ++ LIBEDIT_LIBDIR=$LIBEDIT_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(edit, readline, + [ +- PHP_ADD_LIBRARY_WITH_PATH(edit, $LIBEDIT_DIR/lib, READLINE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(edit, $LIBEDIT_LIBDIR, READLINE_SHARED_LIBADD) + ], [ + AC_MSG_ERROR(edit library required by readline not found) + ], [ +- -L$READLINE_DIR/lib ++ -L$READLINE_LIBDIR + ]) + + PHP_NEW_EXTENSION(readline, readline.c, $ext_shared, cli) +diff -Nru php-4.4.1.orig/ext/session/config.m4 php-4.4.1/ext/session/config.m4 +--- php-4.4.1.orig/ext/session/config.m4 2003-10-01 04:54:06.000000000 +0200 ++++ php-4.4.1/ext/session/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -24,8 +24,14 @@ + if test -z "$MM_DIR" ; then + AC_MSG_ERROR(cannot find mm library) + fi +- +- PHP_ADD_LIBRARY_WITH_PATH(mm, $MM_DIR/lib, SESSION_SHARED_LIBADD) ++ ++ for j in lib64 lib; do ++ if test -d $MM_DIR/$j; then ++ MM_LIBDIR=$MM_DIR/$j ++ fi ++ done ++ ++ PHP_ADD_LIBRARY_WITH_PATH(mm, $MM_LIBDIR, SESSION_SHARED_LIBADD) + PHP_ADD_INCLUDE($MM_DIR/include) + AC_DEFINE(HAVE_LIBMM, 1, [Whether you have libmm]) + fi +diff -Nru php-4.4.1.orig/ext/snmp/config.m4 php-4.4.1/ext/snmp/config.m4 +--- php-4.4.1.orig/ext/snmp/config.m4 2003-09-23 10:16:47.000000000 +0200 ++++ php-4.4.1/ext/snmp/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -45,8 +45,8 @@ + test -f $i/snmp/snmp.h && SNMP_INCDIR=$i/snmp + test -f $i/snmp/include/ucd-snmp/snmp.h && SNMP_INCDIR=$i/snmp/include/ucd-snmp + done +- for i in /usr /usr/snmp /usr/local /usr/local/snmp; do +- test -f $i/lib/libsnmp.a -o -f $i/lib/libsnmp.$SHLIB_SUFFIX_NAME && SNMP_LIBDIR=$i/lib ++ for i in /usr/lib /usr/lib64 /usr/snmp/lib /usr/local/lib /usr/local/snmp/lib; do ++ test -f $i/libsnmp.a -o -f $i/libsnmp.$SHLIB_SUFFIX_NAME && SNMP_LIBDIR=$i + done + else + SNMP_INCDIR=$PHP_SNMP/include +diff -Nru php-4.4.1.orig/ext/xml/config.m4 php-4.4.1/ext/xml/config.m4 +--- php-4.4.1.orig/ext/xml/config.m4 2004-12-20 21:38:18.000000000 +0100 ++++ php-4.4.1/ext/xml/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -33,6 +33,10 @@ + for i in $PHP_XML $PHP_EXPAT_DIR; do + if test -f $i/lib/libexpat.a -o -f $i/lib/libexpat.$SHLIB_SUFFIX_NAME ; then + EXPAT_DIR=$i ++ EXPAT_LIBDIR=$i/lib ++ elif test -f $i/lib64/libexpat.a -o -f $i/lib64/libexpat.$SHLIB_SUFFIX_NAME ; then ++ EXPAT_DIR=$i ++ EXPAT_LIBDIR=$i/lib64 + fi + done + +@@ -41,7 +45,7 @@ + fi + + PHP_ADD_INCLUDE($EXPAT_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(expat, $EXPAT_DIR/lib, XML_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(expat, $EXPAT_LIBDIR, XML_SHARED_LIBADD) + PHP_SUBST(XML_SHARED_LIBADD) + fi + fi +diff -Nru php-4.4.1.orig/ext/xmlrpc/config.m4 php-4.4.1/ext/xmlrpc/config.m4 +--- php-4.4.1.orig/ext/xmlrpc/config.m4 2003-10-03 07:25:43.000000000 +0200 ++++ php-4.4.1/ext/xmlrpc/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -29,6 +29,12 @@ + PHP_ADD_INCLUDE($i/include) + testval=yes + break ++ elif test -f $i/lib64/libexpat.a -o -f $i/lib64/libexpat.$SHLIB_SUFFIX_NAME; then ++ AC_DEFINE(HAVE_LIBEXPAT2,1,[ ]) ++ PHP_ADD_LIBRARY_WITH_PATH(expat, $i/lib64, XMLRPC_SHARED_LIBADD) ++ PHP_ADD_INCLUDE($i/include) ++ testval=yes ++ break + fi + done + +@@ -87,6 +93,12 @@ + AC_MSG_ERROR(Please reinstall the XMLRPC-EPI distribution) + fi + ++ for j in lib64 lib; do ++ if test -d $XMLRPC_DIR/$j; then ++ XMLRPC_LIBDIR=$XMLRPC_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($XMLRPC_DIR) +- PHP_ADD_LIBRARY_WITH_PATH(xmlrpc, $XMLRPC_DIR/lib, XMLRPC_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(xmlrpc, $XMLRPC_LIBDIR, XMLRPC_SHARED_LIBADD) + fi +diff -Nru php-4.4.1.orig/ext/xslt/config.m4 php-4.4.1/ext/xslt/config.m4 +--- php-4.4.1.orig/ext/xslt/config.m4 2004-08-18 07:14:16.000000000 +0200 ++++ php-4.4.1/ext/xslt/config.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -104,6 +104,12 @@ + PHP_ADD_LIBRARY_WITH_PATH(expat, $i/lib, XSLT_SHARED_LIBADD) + found_expat=yes + break ++ elif test -f $i/lib64/libexpat.a -o -f $i/lib64/libexpat.$SHLIB_SUFFIX_NAME; then ++ AC_DEFINE(HAVE_LIBEXPAT2, 1, [ ]) ++ PHP_ADD_INCLUDE($i/include) ++ PHP_ADD_LIBRARY_WITH_PATH(expat, $i/lib64, XSLT_SHARED_LIBADD) ++ found_expat=yes ++ break + fi + done + +@@ -124,29 +130,38 @@ + ]) + + if test "$PHP_SABLOT_JS" != "no"; then +- for i in $PHP_SABLOT_JS /usr/local /usr; do +- if test -f $i/lib/libjs.a -o -f $i/lib/libjs.$SHLIB_SUFFIX_NAME; then +- PHP_SABLOT_JS_DIR=$i +- break +- fi ++ for j in lib64 lib; do ++ for i in $PHP_SABLOT_JS /usr/local /usr; do ++ if test -f $i/$j/libjs.a -o -f $i/$j/libjs.$SHLIB_SUFFIX_NAME; then ++ PHP_SABLOT_JS_DIR=$i ++ PHP_SABLOT_JS_LIBDIR=$i/$j ++ break ++ fi ++ done + done + + PHP_CHECK_LIBRARY(js, JS_GetRuntime, + [ +- PHP_ADD_LIBRARY_WITH_PATH(js, $PHP_SABLOT_JS_DIR/lib, XSLT_SHARED_LIBADD) +- PHP_SABLOT_JS_LIBS="-L$PHP_SABLOT_JS_DIR/lib -ljs" ++ PHP_ADD_LIBRARY_WITH_PATH(js, $PHP_SABLOT_JS_LIBDIR, XSLT_SHARED_LIBADD) ++ PHP_SABLOT_JS_LIBS="-L$PHP_SABLOT_JS_LIBDIR -ljs" + ], [ + AC_MSG_ERROR([libjs not found. Please check config.log for more information.]) + ], [ +- -L$PHP_SABLOT_JS_DIR/lib ++ -L$PHP_SABLOT_JS_LIBDIR + ]) + fi + ++ for j in lib64 lib; do ++ if test -d $XSLT_DIR/$j; then ++ XSLT_LIBDIR=$XSLT_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(sablot, SablotSetEncoding, + [ + AC_DEFINE(HAVE_SABLOT_SET_ENCODING, 1, [ ]) + ], [], [ +- -L$XSLT_DIR/lib $PHP_SABLOT_JS_LIBS ++ -L$XSLT_LIBDIR $PHP_SABLOT_JS_LIBS + ]) + + dnl SablotSetOptions implemented in Sablotron CVS > 2002/10/31 +@@ -154,14 +169,14 @@ + [ + AC_DEFINE(HAVE_SABLOT_GET_OPTIONS, 1, [Whether Sablotron supports SablotGetOptions]) + ], [], [ +- -L$XSLT_DIR/lib $PHP_SABLOT_JS_LIBS ++ -L$XSLT_LIBDIR $PHP_SABLOT_JS_LIBS + ]) + + AC_DEFINE(HAVE_SABLOT_BACKEND, 1, [ ]) + fi + + PHP_ADD_INCLUDE($XSLT_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH($XSLT_LIBNAME, $XSLT_DIR/lib, XSLT_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH($XSLT_LIBNAME, $XSLT_LIBDIR, XSLT_SHARED_LIBADD) + + AC_DEFINE(HAVE_XSLT, 1, [ ]) + fi +diff -Nru php-4.4.1.orig/ext/zlib/config0.m4 php-4.4.1/ext/zlib/config0.m4 +--- php-4.4.1.orig/ext/zlib/config0.m4 2003-07-02 01:54:44.000000000 +0200 ++++ php-4.4.1/ext/zlib/config0.m4 2005-12-01 08:55:02.000000000 +0100 +@@ -36,15 +36,21 @@ + AC_MSG_ERROR(Cannot find libz) + fi + ++ for j in lib64 lib; do ++ if test -d $ZLIB_DIR/$j; then ++ ZLIB_LIBDIR=$ZLIB_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(z, gzgets, [ + AC_DEFINE(HAVE_ZLIB,1,[ ]) + ],[ + AC_MSG_ERROR(ZLIB extension requires zlib >= 1.0.9) + ],[ +- -L$ZLIB_DIR/lib ++ -L$ZLIB_LIBDIR + ]) + +- PHP_ADD_LIBPATH($ZLIB_DIR/lib, ZLIB_SHARED_LIBADD) ++ PHP_ADD_LIBPATH($ZLIB_LIBDIR, ZLIB_SHARED_LIBADD) + + PHP_ZLIB_DIR=$ZLIB_DIR + PHP_ADD_LIBRARY(z,, ZLIB_SHARED_LIBADD) diff --git a/dev-lang/php/files/5.0-any/CVS/Entries b/dev-lang/php/files/5.0-any/CVS/Entries new file mode 100644 index 0000000..98f878b --- /dev/null +++ b/dev-lang/php/files/5.0-any/CVS/Entries @@ -0,0 +1,8 @@ +D/apache-1.3//// +D/apache-2.0//// +/php5-imap-symlink.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5-iodbc-config.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5-libtool-1.5.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5-prefork.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5-soap_persistence_session.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5-with-iodbc.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 diff --git a/dev-lang/php/files/5.0-any/CVS/Repository b/dev-lang/php/files/5.0-any/CVS/Repository new file mode 100644 index 0000000..48de559 --- /dev/null +++ b/dev-lang/php/files/5.0-any/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.0-any diff --git a/dev-lang/php/files/5.0-any/CVS/Root b/dev-lang/php/files/5.0-any/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.0-any/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.0-any/CVS/Tag b/dev-lang/php/files/5.0-any/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.0-any/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.0-any/apache-1.3/70_mod_php5.conf b/dev-lang/php/files/5.0-any/apache-1.3/70_mod_php5.conf new file mode 100644 index 0000000..c6f1426 --- /dev/null +++ b/dev-lang/php/files/5.0-any/apache-1.3/70_mod_php5.conf @@ -0,0 +1,20 @@ +# vim: ft=apache sw=4 ts=4 +<IfDefine PHP5> + + # Load the module first + <IfModule !sapi_apache.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php .php5 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/5.0-any/apache-1.3/CVS/Entries b/dev-lang/php/files/5.0-any/apache-1.3/CVS/Entries new file mode 100644 index 0000000..7d7ba85 --- /dev/null +++ b/dev-lang/php/files/5.0-any/apache-1.3/CVS/Entries @@ -0,0 +1,2 @@ +/70_mod_php5.conf/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +D diff --git a/dev-lang/php/files/5.0-any/apache-1.3/CVS/Repository b/dev-lang/php/files/5.0-any/apache-1.3/CVS/Repository new file mode 100644 index 0000000..13831e4 --- /dev/null +++ b/dev-lang/php/files/5.0-any/apache-1.3/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.0-any/apache-1.3 diff --git a/dev-lang/php/files/5.0-any/apache-1.3/CVS/Root b/dev-lang/php/files/5.0-any/apache-1.3/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.0-any/apache-1.3/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.0-any/apache-1.3/CVS/Tag b/dev-lang/php/files/5.0-any/apache-1.3/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.0-any/apache-1.3/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.0-any/apache-2.0/70_mod_php5.conf b/dev-lang/php/files/5.0-any/apache-2.0/70_mod_php5.conf new file mode 100644 index 0000000..40dfa86 --- /dev/null +++ b/dev-lang/php/files/5.0-any/apache-2.0/70_mod_php5.conf @@ -0,0 +1,20 @@ +# vim: ft=apache sw=4 ts=4 +<IfDefine PHP5> + + # Load the module first + <IfModule !sapi_apache2.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php .php5 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/5.0-any/apache-2.0/CVS/Entries b/dev-lang/php/files/5.0-any/apache-2.0/CVS/Entries new file mode 100644 index 0000000..7d7ba85 --- /dev/null +++ b/dev-lang/php/files/5.0-any/apache-2.0/CVS/Entries @@ -0,0 +1,2 @@ +/70_mod_php5.conf/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +D diff --git a/dev-lang/php/files/5.0-any/apache-2.0/CVS/Repository b/dev-lang/php/files/5.0-any/apache-2.0/CVS/Repository new file mode 100644 index 0000000..c090d2c --- /dev/null +++ b/dev-lang/php/files/5.0-any/apache-2.0/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.0-any/apache-2.0 diff --git a/dev-lang/php/files/5.0-any/apache-2.0/CVS/Root b/dev-lang/php/files/5.0-any/apache-2.0/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.0-any/apache-2.0/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.0-any/apache-2.0/CVS/Tag b/dev-lang/php/files/5.0-any/apache-2.0/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.0-any/apache-2.0/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.0-any/php5-imap-symlink.diff b/dev-lang/php/files/5.0-any/php5-imap-symlink.diff new file mode 100644 index 0000000..99cfc9b --- /dev/null +++ b/dev-lang/php/files/5.0-any/php5-imap-symlink.diff @@ -0,0 +1,15 @@ +--- ext/imap/config.m4 2005-09-04 02:49:45.000000000 +0200 ++++ ext/imap/config.m4 2005-09-04 02:50:00.000000000 +0200 +@@ -146,12 +146,6 @@ + AC_MSG_ERROR(Cannot find rfc822.h. Please check your c-client installation.) + fi + +- if test -r "$IMAP_DIR/c-client/c-client.a"; then +- ln -s "$IMAP_DIR/c-client/c-client.a" "$IMAP_DIR/c-client/libc-client.a" >/dev/null 2>&1 +- elif test -r "$IMAP_DIR/lib/c-client.a"; then +- ln -s "$IMAP_DIR/lib/c-client.a" "$IMAP_DIR/lib/libc-client.a" >/dev/null 2>&1 +- fi +- + for lib in c-client4 c-client imap; do + IMAP_LIB=$lib + IMAP_LIB_CHK(lib) diff --git a/dev-lang/php/files/5.0-any/php5-iodbc-config.diff b/dev-lang/php/files/5.0-any/php5-iodbc-config.diff new file mode 100644 index 0000000..1e7a7c5 --- /dev/null +++ b/dev-lang/php/files/5.0-any/php5-iodbc-config.diff @@ -0,0 +1,14 @@ +--- ext/odbc/config.m4 2005-08-31 01:16:38.000000000 +0200 ++++ ext/odbc/config.m4 2005-08-31 01:17:24.000000000 +0200 +@@ -408,9 +408,9 @@ + fi + if test "$withval" != "no"; then + PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/lib) +- PHP_ADD_INCLUDE($withval/include, 1) ++ PHP_ADD_INCLUDE($withval/include/iodbc, 1) + ODBC_TYPE=iodbc +- ODBC_INCLUDE=-I$withval/include ++ ODBC_INCLUDE=-I$withval/include/iodbc + ODBC_LFLAGS=-L$withval/lib + ODBC_LIBS=-liodbc + AC_DEFINE(HAVE_IODBC,1,[ ]) diff --git a/dev-lang/php/files/5.0-any/php5-libtool-1.5.patch b/dev-lang/php/files/5.0-any/php5-libtool-1.5.patch new file mode 100644 index 0000000..7404992 --- /dev/null +++ b/dev-lang/php/files/5.0-any/php5-libtool-1.5.patch @@ -0,0 +1,19 @@ +--- acinclude.m4 2005-09-08 13:27:42.000000000 +0200 ++++ acinclude.m4 2005-09-08 13:28:28.000000000 +0200 +@@ -779,12 +779,12 @@ + dnl + AC_DEFUN([PHP_BUILD_PROGRAM],[ + OVERALL_TARGET=[]ifelse($1,,php,$1) +- php_c_pre='$(CC)' ++ php_c_pre='$(LIBTOOL) --mode=compile $(CC)' + php_c_meta='$(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS)' +- php_c_post=' && echo > $[@]' +- php_cxx_pre='$(CXX)' ++ php_c_post= ++ php_cxx_pre='$(LIBTOOL) --mode=compile $(CXX)' + php_cxx_meta='$(COMMON_FLAGS) $(CXXFLAGS_CLEAN) $(EXTRA_CXXFLAGS)' +- php_cxx_post=' && echo > $[@]' ++ php_cxx_post= + php_lo=o + + case $with_pic in diff --git a/dev-lang/php/files/5.0-any/php5-prefork.patch b/dev-lang/php/files/5.0-any/php5-prefork.patch new file mode 100644 index 0000000..135579c --- /dev/null +++ b/dev-lang/php/files/5.0-any/php5-prefork.patch @@ -0,0 +1,26 @@ +diff -u --recursive php-5.0.4-orig/sapi/apache2filter/config.m4 php-5.0.4/sapi/apache2filter/config.m4 +--- php-5.0.4-orig/sapi/apache2filter/config.m4 2005-03-13 20:30:44.767051120 +0000 ++++ php-5.0.4/sapi/apache2filter/config.m4 2005-03-13 20:32:01.999310032 +0000 +@@ -115,9 +115,6 @@ + ;; + esac + +- if test "$APXS_MPM" != "prefork"; then +- PHP_BUILD_THREAD_SAFE +- fi + AC_MSG_RESULT(yes) + + PHP_SUBST(APXS) +diff -u --recursive php-5.0.4-orig/sapi/apache2handler/config.m4 php-5.0.4/sapi/apache2handler/config.m4 +--- php-5.0.4-orig/sapi/apache2handler/config.m4 2005-03-13 20:30:44.771050512 +0000 ++++ php-5.0.4/sapi/apache2handler/config.m4 2005-03-13 20:31:50.106118072 +0000 +@@ -114,9 +114,6 @@ + ;; + esac + +- if test "$APXS_MPM" != "prefork"; then +- PHP_BUILD_THREAD_SAFE +- fi + AC_MSG_RESULT(yes) + + PHP_SUBST(APXS) diff --git a/dev-lang/php/files/5.0-any/php5-soap_persistence_session.diff b/dev-lang/php/files/5.0-any/php5-soap_persistence_session.diff new file mode 100644 index 0000000..626ac67 --- /dev/null +++ b/dev-lang/php/files/5.0-any/php5-soap_persistence_session.diff @@ -0,0 +1,35 @@ +diff -ruN php-5.0.0RC3.orig/ext/soap/soap.c php-5.0.0RC3/ext/soap/soap.c +--- php-5.0.0RC3.orig/ext/soap/soap.c 2004-06-22 19:35:59.801348936 +0300 ++++ php-5.0.0RC3/ext/soap/soap.c 2004-06-29 13:39:00.506820928 +0300 +@@ -1341,16 +1341,21 @@ + soap_obj = NULL; + #if HAVE_PHP_SESSION + /* If persistent then set soap_obj from from the previous created session (if available) */ ++ char soapname[32+sizeof("_bogus_session_name")]; //Now we use max 32 chars from class name, must be overwriten with dynamic allocation with exact length!! + if (service->soap_class.persistance == SOAP_PERSISTENCE_SESSION) { + zval **tmp_soap; + ++ bzero(soapname,32+sizeof("_bogus_session_name")); ++ strncpy(soapname,service->soap_class.ce->name,32); ++ strcat(soapname,"_bogus_session_name"); ++ + if (PS(session_status) != php_session_active && + PS(session_status) != php_session_disabled) { + php_session_start(TSRMLS_C); + } + + /* Find the soap object and assign */ +- if (zend_hash_find(Z_ARRVAL_P(PS(http_session_vars)), "_bogus_session_name", sizeof("_bogus_session_name"), (void **) &tmp_soap) == SUCCESS && ++ if (zend_hash_find(Z_ARRVAL_P(PS(http_session_vars)), soapname, sizeof(soapname), (void **) &tmp_soap) == SUCCESS && + Z_TYPE_PP(tmp_soap) == IS_OBJECT && + Z_OBJCE_PP(tmp_soap) == service->soap_class.ce) { + soap_obj = *tmp_soap; +@@ -1432,7 +1437,7 @@ + /* If session then update session hash with new object */ + if (service->soap_class.persistance == SOAP_PERSISTENCE_SESSION) { + zval **tmp_soap_pp; +- if (zend_hash_update(Z_ARRVAL_P(PS(http_session_vars)), "_bogus_session_name", sizeof("_bogus_session_name"), &tmp_soap, sizeof(zval *), (void **)&tmp_soap_pp) == SUCCESS) { ++ if (zend_hash_update(Z_ARRVAL_P(PS(http_session_vars)), soapname, sizeof(soapname), &tmp_soap, sizeof(zval *), (void **)&tmp_soap_pp) == SUCCESS) { + soap_obj = *tmp_soap_pp; + } + } else { diff --git a/dev-lang/php/files/5.0-any/php5-with-iodbc.diff b/dev-lang/php/files/5.0-any/php5-with-iodbc.diff new file mode 100644 index 0000000..81afcc0 --- /dev/null +++ b/dev-lang/php/files/5.0-any/php5-with-iodbc.diff @@ -0,0 +1,13 @@ +--- ext/odbc/php_odbc_includes.h 2005-02-22 17:55:18.000000000 +0000 ++++ ext/odbc/php_odbc_includes.h 2005-02-22 17:55:26.000000000 +0000 +@@ -91,8 +91,8 @@ + #elif defined(HAVE_IODBC) /* iODBC library */ + + #define ODBC_TYPE "iODBC" +-#include <isql.h> +-#include <isqlext.h> ++#include <iodbc/isql.h> ++#include <iodbc/isqlext.h> + #define HAVE_SQL_EXTENDED_FETCH 1 + #define SQL_FD_FETCH_ABSOLUTE 0x00000010L + #define SQL_CURSOR_DYNAMIC 2UL diff --git a/dev-lang/php/files/5.0.0/CVS/Entries b/dev-lang/php/files/5.0.0/CVS/Entries new file mode 100644 index 0000000..6061dcf --- /dev/null +++ b/dev-lang/php/files/5.0.0/CVS/Entries @@ -0,0 +1,8 @@ +/php5-hphp-acinclude.patch/1.1/Thu Sep 8 20:47:34 2005/-ko/T1.1 +/php5-imap-symlink.diff/1.1/Sun Sep 4 16:58:08 2005//T1.1 +/php5-iodbc-config.diff/1.1/Sun Sep 4 16:58:08 2005//T1.1 +/php5-libtool-1.5.patch/1.1/Sun Sep 18 13:21:54 2005//T1.1 +/php5.0.4-pcre-security.patch/1.1/Sun Sep 18 13:21:54 2005//T1.1 +/php5.0.4-xmlrcp-ccode.diff/1.1/Sun Sep 18 13:21:54 2005//T1.1 +/php5.0.5-obj-serialize.patch/1.1/Sun Sep 18 13:21:54 2005//T1.1 +D diff --git a/dev-lang/php/files/5.0.0/CVS/Repository b/dev-lang/php/files/5.0.0/CVS/Repository new file mode 100644 index 0000000..ce0f757 --- /dev/null +++ b/dev-lang/php/files/5.0.0/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.0.0 diff --git a/dev-lang/php/files/5.0.0/CVS/Root b/dev-lang/php/files/5.0.0/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.0.0/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.0.0/CVS/Tag b/dev-lang/php/files/5.0.0/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.0.0/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.0.0/php5-hphp-acinclude.patch b/dev-lang/php/files/5.0.0/php5-hphp-acinclude.patch new file mode 100644 index 0000000..c5f1e71 --- /dev/null +++ b/dev-lang/php/files/5.0.0/php5-hphp-acinclude.patch @@ -0,0 +1,19 @@ +--- acinclude.m4.orig 2005-09-08 13:27:42.000000000 +0200 ++++ acinclude.m4 2005-09-08 13:28:28.000000000 +0200 +@@ -779,12 +779,12 @@ + dnl + AC_DEFUN([PHP_BUILD_PROGRAM],[ + OVERALL_TARGET=[]ifelse($1,,php,$1) +- php_c_pre='$(CC)' ++ php_c_pre='$(LIBTOOL) --mode=compile $(CC)' + php_c_meta='$(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS)' +- php_c_post=' && echo > $[@]' +- php_cxx_pre='$(CXX)' ++ php_c_post= ++ php_cxx_pre='$(LIBTOOL) --mode=compile $(CXX)' + php_cxx_meta='$(COMMON_FLAGS) $(CXXFLAGS_CLEAN) $(EXTRA_CXXFLAGS)' +- php_cxx_post=' && echo > $[@]' ++ php_cxx_post= + php_lo=o + + case $with_pic in diff --git a/dev-lang/php/files/5.0.0/php5-imap-symlink.diff b/dev-lang/php/files/5.0.0/php5-imap-symlink.diff new file mode 100644 index 0000000..99cfc9b --- /dev/null +++ b/dev-lang/php/files/5.0.0/php5-imap-symlink.diff @@ -0,0 +1,15 @@ +--- ext/imap/config.m4 2005-09-04 02:49:45.000000000 +0200 ++++ ext/imap/config.m4 2005-09-04 02:50:00.000000000 +0200 +@@ -146,12 +146,6 @@ + AC_MSG_ERROR(Cannot find rfc822.h. Please check your c-client installation.) + fi + +- if test -r "$IMAP_DIR/c-client/c-client.a"; then +- ln -s "$IMAP_DIR/c-client/c-client.a" "$IMAP_DIR/c-client/libc-client.a" >/dev/null 2>&1 +- elif test -r "$IMAP_DIR/lib/c-client.a"; then +- ln -s "$IMAP_DIR/lib/c-client.a" "$IMAP_DIR/lib/libc-client.a" >/dev/null 2>&1 +- fi +- + for lib in c-client4 c-client imap; do + IMAP_LIB=$lib + IMAP_LIB_CHK(lib) diff --git a/dev-lang/php/files/5.0.0/php5-iodbc-config.diff b/dev-lang/php/files/5.0.0/php5-iodbc-config.diff new file mode 100644 index 0000000..1e7a7c5 --- /dev/null +++ b/dev-lang/php/files/5.0.0/php5-iodbc-config.diff @@ -0,0 +1,14 @@ +--- ext/odbc/config.m4 2005-08-31 01:16:38.000000000 +0200 ++++ ext/odbc/config.m4 2005-08-31 01:17:24.000000000 +0200 +@@ -408,9 +408,9 @@ + fi + if test "$withval" != "no"; then + PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/lib) +- PHP_ADD_INCLUDE($withval/include, 1) ++ PHP_ADD_INCLUDE($withval/include/iodbc, 1) + ODBC_TYPE=iodbc +- ODBC_INCLUDE=-I$withval/include ++ ODBC_INCLUDE=-I$withval/include/iodbc + ODBC_LFLAGS=-L$withval/lib + ODBC_LIBS=-liodbc + AC_DEFINE(HAVE_IODBC,1,[ ]) diff --git a/dev-lang/php/files/5.0.0/php5-libtool-1.5.patch b/dev-lang/php/files/5.0.0/php5-libtool-1.5.patch new file mode 100644 index 0000000..7404992 --- /dev/null +++ b/dev-lang/php/files/5.0.0/php5-libtool-1.5.patch @@ -0,0 +1,19 @@ +--- acinclude.m4 2005-09-08 13:27:42.000000000 +0200 ++++ acinclude.m4 2005-09-08 13:28:28.000000000 +0200 +@@ -779,12 +779,12 @@ + dnl + AC_DEFUN([PHP_BUILD_PROGRAM],[ + OVERALL_TARGET=[]ifelse($1,,php,$1) +- php_c_pre='$(CC)' ++ php_c_pre='$(LIBTOOL) --mode=compile $(CC)' + php_c_meta='$(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS)' +- php_c_post=' && echo > $[@]' +- php_cxx_pre='$(CXX)' ++ php_c_post= ++ php_cxx_pre='$(LIBTOOL) --mode=compile $(CXX)' + php_cxx_meta='$(COMMON_FLAGS) $(CXXFLAGS_CLEAN) $(EXTRA_CXXFLAGS)' +- php_cxx_post=' && echo > $[@]' ++ php_cxx_post= + php_lo=o + + case $with_pic in diff --git a/dev-lang/php/files/5.0.0/php5.0.4-pcre-security.patch b/dev-lang/php/files/5.0.0/php5.0.4-pcre-security.patch new file mode 100644 index 0000000..548732d --- /dev/null +++ b/dev-lang/php/files/5.0.0/php5.0.4-pcre-security.patch @@ -0,0 +1,38 @@ +--- configure.in 2005-09-17 21:42:36.000000000 +0200 ++++ configure.in 2005-09-17 21:42:51.000000000 +0200 +@@ -41,7 +41,7 @@ + MAJOR_VERSION=5 + MINOR_VERSION=0 + RELEASE_VERSION=4 +-EXTRA_VERSION="" ++EXTRA_VERSION="-gentoo-r1" + VERSION="$MAJOR_VERSION.$MINOR_VERSION.$RELEASE_VERSION$EXTRA_VERSION" + + dnl Define where extension directories are located in the configure context +--- ext/pcre/config.m4 2003/06/28 04:30:51 1.32 ++++ ext/pcre/config.m4 2005/08/22 16:55:56 1.32.2.2 +@@ -1,5 +1,5 @@ + dnl +-dnl $Id: php5.0.4-pcre-security.patch,v 1.1 2005/09/18 13:21:54 hollow Exp $ ++dnl $Id: php5.0.4-pcre-security.patch,v 1.1 2005/09/18 13:21:54 hollow Exp $ + dnl + + dnl By default we'll compile and link against the bundled PCRE library +@@ -13,7 +13,7 @@ PHP_ARG_WITH(pcre-regex,for PCRE support + + if test "$PHP_PCRE_REGEX" != "no"; then + if test "$PHP_PCRE_REGEX" = "yes"; then +- PHP_NEW_EXTENSION(pcre, pcrelib/maketables.c pcrelib/get.c pcrelib/study.c pcrelib/pcre.c php_pcre.c, $ext_shared,,-DSUPPORT_UTF8 -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -I@ext_srcdir@/pcrelib) ++ PHP_NEW_EXTENSION(pcre, pcrelib/pcre_chartables.c pcrelib/pcre_compile.c pcrelib/pcre_config.c pcrelib/pcre_dfa_exec.c pcrelib/pcre_exec.c pcrelib/pcre_fullinfo.c pcrelib/pcre_get.c pcrelib/pcre_globals.c pcrelib/pcre_info.c pcrelib/pcre_maketables.c pcrelib/pcre_ord2utf8.c pcrelib/pcre_printint.c pcrelib/pcre_refcount.c pcrelib/pcre_study.c pcrelib/pcre_tables.c pcrelib/pcre_try_flipped.c pcrelib/pcre_ucp_findchar.c pcrelib/pcre_valid_utf8.c pcrelib/pcre_version.c pcrelib/pcre_xclass.c php_pcre.c, $ext_shared,,-DEXPORT= -DNEWLINE=10 -DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000 -I@ext_srcdir@/pcrelib) + PHP_ADD_BUILD_DIR($ext_builddir/pcrelib) + AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ]) + else +@@ -50,7 +50,7 @@ if test "$PHP_PCRE_REGEX" != "no"; then + + AC_DEFINE(HAVE_PCRE, 1, [ ]) + PHP_ADD_INCLUDE($PCRE_INCDIR) +- PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,,-DSUPPORT_UTF8 -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10) ++ PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,,-DEXPORT= -DNEWLINE=10 -DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000) + fi + PHP_SUBST(PCRE_SHARED_LIBADD) + fi diff --git a/dev-lang/php/files/5.0.0/php5.0.4-xmlrcp-ccode.diff b/dev-lang/php/files/5.0.0/php5.0.4-xmlrcp-ccode.diff new file mode 100644 index 0000000..15e5950 --- /dev/null +++ b/dev-lang/php/files/5.0.0/php5.0.4-xmlrcp-ccode.diff @@ -0,0 +1,23 @@ +--- ext/xmlrpc/libxmlrpc/xml_element.c 2004-06-01 22:16:06.000000000 +0200 ++++ ext/xmlrpc/libxmlrpc/xml_element.c 2005-04-22 13:54:17.000000000 +0200 +@@ -113,7 +116,7 @@ + #include "expat.h" + #include "encodings.h" + +-#define my_free(thing) if(thing) {free(thing); thing = 0;} ++#define my_free(thing) if(thing) {free(thing); thing = NULL;} + + #define XML_DECL_START "<?xml" + #define XML_DECL_START_LEN sizeof(XML_DECL_START) - 1 +@@ -189,7 +192,10 @@ + + Q_Destroy(&root->children); + Q_Destroy(&root->attrs); +- my_free((char*)root->name); ++ if(root->name) { ++ free((char *)root->name); ++ root->name = NULL; ++ } + simplestring_free(&root->text); + my_free(root); + } diff --git a/dev-lang/php/files/5.0.0/php5.0.5-obj-serialize.patch b/dev-lang/php/files/5.0.0/php5.0.5-obj-serialize.patch new file mode 100644 index 0000000..ed1ad2a --- /dev/null +++ b/dev-lang/php/files/5.0.0/php5.0.5-obj-serialize.patch @@ -0,0 +1,42 @@ +--- ext/standard/incomplete_class.c 2004-11-25 20:28:37.000000000 +0000 ++++ ext/standard/incomplete_class.c 2005-09-09 13:00:39.000000000 +0100 +@@ -122,7 +122,7 @@ + + /* {{{ php_lookup_class_name + */ +-char *php_lookup_class_name(zval *object, size_t *nlen) ++char *php_lookup_class_name(zval *object, zend_uint *nlen) + { + zval **val; + char *retval = NULL; +@@ -144,7 +144,7 @@ + + /* {{{ php_store_class_name + */ +-void php_store_class_name(zval *object, const char *name, size_t len) ++void php_store_class_name(zval *object, const char *name, zend_uint len) + { + zval *val; + TSRMLS_FETCH(); +--- ./ext/standard/php_incomplete_class.h.bug34435 2005-06-29 10:29:08.000000000 +0100 ++++ ./ext/standard/php_incomplete_class.h 2005-09-09 13:00:31.000000000 +0100 +@@ -42,7 +42,7 @@ + + #define PHP_CLASS_ATTRIBUTES \ + char *class_name; \ +- size_t name_len; \ ++ zend_uint name_len; \ + zend_bool free_class_name = 0; \ + zend_bool incomplete_class = 0 + +@@ -55,8 +55,8 @@ + + zend_class_entry *php_create_incomplete_class(TSRMLS_D); + +-char *php_lookup_class_name(zval *object, size_t *nlen); +-void php_store_class_name(zval *object, const char *name, size_t len); ++char *php_lookup_class_name(zval *object, zend_uint *nlen); ++void php_store_class_name(zval *object, const char *name, zend_uint len); + + #ifdef __cplusplus + }; diff --git a/dev-lang/php/files/5.0.4/CVS/Entries b/dev-lang/php/files/5.0.4/CVS/Entries new file mode 100644 index 0000000..15cdc17 --- /dev/null +++ b/dev-lang/php/files/5.0.4/CVS/Entries @@ -0,0 +1,10 @@ +/php5.0.4-curl_safemode.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php5.0.4-fopen_wrappers.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5.0.4-gd_safe_mode.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5.0.4-globals_overwrite.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php5.0.4-pcre-security.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5.0.4-phpinfo_xss.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php5.0.4-pspell-ext-segf.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5.0.4-session_save_path-segf.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5.0.4-xmlrcp-ccode.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +D diff --git a/dev-lang/php/files/5.0.4/CVS/Repository b/dev-lang/php/files/5.0.4/CVS/Repository new file mode 100644 index 0000000..ee20113 --- /dev/null +++ b/dev-lang/php/files/5.0.4/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.0.4 diff --git a/dev-lang/php/files/5.0.4/CVS/Root b/dev-lang/php/files/5.0.4/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.0.4/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.0.4/CVS/Tag b/dev-lang/php/files/5.0.4/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.0.4/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.0.4/php5.0.4-curl_safemode.patch b/dev-lang/php/files/5.0.4/php5.0.4-curl_safemode.patch new file mode 100644 index 0000000..6c498a7 --- /dev/null +++ b/dev-lang/php/files/5.0.4/php5.0.4-curl_safemode.patch @@ -0,0 +1,161 @@ +--- ext/curl/interface.c 2005-03-14 10:02:42.000000000 +0100 ++++ ext/curl/interface.c 2005-10-31 23:09:15.000000000 +0100 +@@ -16,7 +16,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: interface.c,v 1.46.2.7 2005/03/14 09:02:42 sniper Exp $ */ ++/* $Id: interface.c,v 1.46.2.11 2005/10/17 02:42:32 iliaa Exp $ */ + + #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS + +@@ -62,7 +62,7 @@ + #define CAAZ(s, v) add_assoc_zval_ex(return_value, s, sizeof(s), (zval *) v); + + #define PHP_CURL_CHECK_OPEN_BASEDIR(str, len) \ +- if (PG(open_basedir) && *PG(open_basedir) && \ ++ if (((PG(open_basedir) && *PG(open_basedir)) || PG(safe_mode)) && \ + strncasecmp(str, "file://", sizeof("file://") - 1) == 0) \ + { \ + php_url *tmp_url; \ +@@ -72,7 +72,7 @@ + RETURN_FALSE; \ + } \ + \ +- if (php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ ++ if (tmp_url->query || php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ + (PG(safe_mode) && !php_checkuid(tmp_url->path, "rb+", CHECKUID_CHECK_MODE_PARAM)) \ + ) { \ + php_url_free(tmp_url); \ +@@ -484,20 +484,22 @@ + fci.no_separation = 0; + fci.symbol_table = NULL; + ++ ch->in_callback = 1; + error = zend_call_function(&fci, &t->fci_cache TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not call the CURLOPT_WRITEFUNCTION"); + length = -1; +- } else { ++ } else if (retval_ptr) { + if (Z_TYPE_P(retval_ptr) != IS_LONG) { + convert_to_long_ex(&retval_ptr); + } + length = Z_LVAL_P(retval_ptr); ++ zval_ptr_dtor(&retval_ptr); + } + + zval_ptr_dtor(argv[0]); + zval_ptr_dtor(argv[1]); +- zval_ptr_dtor(&retval_ptr); + break; + } + } +@@ -554,20 +556,22 @@ + fci.no_separation = 0; + fci.symbol_table = NULL; + ++ ch->in_callback = 1; + error = zend_call_function(&fci, &t->fci_cache TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot call the CURLOPT_READFUNCTION"); +- } else { ++ } else if (retval_ptr) { + if (Z_TYPE_P(retval_ptr) == IS_STRING) { + length = MIN(size * nmemb, Z_STRLEN_P(retval_ptr)); + memcpy(data, Z_STRVAL_P(retval_ptr), length); + } ++ zval_ptr_dtor(&retval_ptr); + } + + zval_ptr_dtor(argv[0]); + zval_ptr_dtor(argv[1]); + zval_ptr_dtor(argv[2]); +- zval_ptr_dtor(&retval_ptr); + break; + } + } +@@ -625,19 +629,21 @@ + fci.params = argv; + fci.no_separation = 0; + ++ ch->in_callback = 1; + error = zend_call_function(&fci, &t->fci_cache TSRMLS_CC); ++ ch->in_callback = 0; + if (error == FAILURE) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not call the CURLOPT_HEADERFUNCTION"); + length = -1; +- } else { ++ } else if (retval_ptr) { + if (Z_TYPE_P(retval_ptr) != IS_LONG) { + convert_to_long_ex(&retval_ptr); + } + length = Z_LVAL_P(retval_ptr); ++ zval_ptr_dtor(&retval_ptr); + } + zval_ptr_dtor(argv[0]); + zval_ptr_dtor(argv[1]); +- zval_ptr_dtor(&retval_ptr); + break; + } + +@@ -773,6 +779,8 @@ + (*ch)->handlers->write_header = ecalloc(1, sizeof(php_curl_write)); + (*ch)->handlers->read = ecalloc(1, sizeof(php_curl_read)); + ++ (*ch)->in_callback = 0; ++ + memset(&(*ch)->err, 0, sizeof((*ch)->err)); + + zend_llist_init(&(*ch)->to_free.str, sizeof(char *), (void(*)(void *)) curl_free_string, 0); +@@ -1120,10 +1128,15 @@ + * must be explicitly cast to long in curl_formadd + * use since curl needs a long not an int. */ + if (*postval == '@') { ++ ++postval; ++ /* safe_mode / open_basedir check */ ++ if (php_check_open_basedir(postval TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(postval, "rb+", CHECKUID_CHECK_MODE_PARAM))) { ++ RETURN_FALSE; ++ } + error = curl_formadd(&first, &last, + CURLFORM_COPYNAME, string_key, + CURLFORM_NAMELENGTH, (long)string_key_len - 1, +- CURLFORM_FILE, ++postval, ++ CURLFORM_FILE, postval, + CURLFORM_END); + } else { + error = curl_formadd(&first, &last, +@@ -1468,6 +1481,12 @@ + } + + ZEND_FETCH_RESOURCE(ch, php_curl *, zid, -1, le_curl_name, le_curl); ++ ++ if (ch->in_callback) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Attempt to close CURL handle from a callback"); ++ return; ++ } ++ + if (ch->uses) { + ch->uses--; + } else { +--- ext/curl/php_curl.h 2004/03/12 18:37:55 1.41 ++++ ext/curl/php_curl.h 2005/06/02 21:04:43 1.41.2.1 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: php_curl.h,v 1.41 2004/03/12 18:37:55 sterling Exp $ */ ++/* $Id: php_curl.h,v 1.41.2.1 2005/06/02 21:04:43 tony2001 Exp $ */ + + #ifndef _PHP_CURL_H + #define _PHP_CURL_H +@@ -121,6 +121,7 @@ typedef struct { + php_curl_handlers *handlers; + long id; + unsigned int uses; ++ zend_bool in_callback; + } php_curl; + + typedef struct { diff --git a/dev-lang/php/files/5.0.4/php5.0.4-fopen_wrappers.patch b/dev-lang/php/files/5.0.4/php5.0.4-fopen_wrappers.patch new file mode 100644 index 0000000..f645199 --- /dev/null +++ b/dev-lang/php/files/5.0.4/php5.0.4-fopen_wrappers.patch @@ -0,0 +1,46 @@ +--- main/fopen_wrappers.c 2005/03/11 06:55:22 1.170.2.2 ++++ main/fopen_wrappers.c 2005/09/27 15:08:11 1.170.2.5 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: fopen_wrappers.c,v 1.170.2.2 2005/03/11 06:55:22 hyanantha Exp $ */ ++/* $Id: fopen_wrappers.c,v 1.170.2.5 2005/09/27 15:08:11 iliaa Exp $ */ + + /* {{{ includes + */ +@@ -35,14 +35,6 @@ + #ifdef PHP_WIN32 + #define O_RDONLY _O_RDONLY + #include "win32/param.h" +-#elif defined(NETWARE) +-/*#include <ws2nlm.h>*/ +-/*#include <sys/socket.h>*/ +-#ifdef NEW_LIBC +-#include <sys/param.h> +-#else +-#include "netware/param.h" +-#endif + #else + #include <sys/param.h> + #endif +@@ -117,8 +109,8 @@ PHPAPI int php_check_specific_open_based + /* Handler for basedirs that end with a / */ + resolved_basedir_len = strlen(resolved_basedir); + if (basedir[strlen(basedir) - 1] == PHP_DIR_SEPARATOR) { +- if (resolved_basedir[resolved_basedir_len - 1] == '/') { +- resolved_basedir[resolved_basedir_len - 1] = PHP_DIR_SEPARATOR; ++ if (resolved_basedir[resolved_basedir_len - 1] != PHP_DIR_SEPARATOR) { ++ resolved_basedir[resolved_basedir_len] = PHP_DIR_SEPARATOR; + resolved_basedir[++resolved_basedir_len] = '\0'; + } + } +@@ -132,7 +124,7 @@ PHPAPI int php_check_specific_open_based + } + + /* Check the path */ +-#ifdef PHP_WIN32 ++#if defined(PHP_WIN32) || defined(NETWARE) + if (strncasecmp(resolved_basedir, resolved_name, resolved_basedir_len) == 0) { + #else + if (strncmp(resolved_basedir, resolved_name, resolved_basedir_len) == 0) { diff --git a/dev-lang/php/files/5.0.4/php5.0.4-gd_safe_mode.patch b/dev-lang/php/files/5.0.4/php5.0.4-gd_safe_mode.patch new file mode 100644 index 0000000..91b0aae --- /dev/null +++ b/dev-lang/php/files/5.0.4/php5.0.4-gd_safe_mode.patch @@ -0,0 +1,29 @@ +--- ext/gd/gd.c 2005/01/17 17:07:47 1.294.2.11 ++++ ext/gd/gd.c 2005/10/06 20:42:56 1.294.2.13 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: gd.c,v 1.294.2.11 2005/01/17 17:07:47 sniper Exp $ */ ++/* $Id: gd.c,v 1.294.2.13 2005/10/06 20:42:56 iliaa Exp $ */ + + /* gd 1.2 is copyright 1994, 1995, Quest Protein Database Center, + Cold Spring Harbor Labs. */ +@@ -1726,7 +1726,7 @@ static void _php_image_output(INTERNAL_F + } + + if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { +- if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC)) { ++ if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(fn, "rb+", CHECKUID_CHECK_FILE_AND_DIR))) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid filename '%s'", fn); + RETURN_FALSE; + } +@@ -1781,7 +1781,7 @@ static void _php_image_output(INTERNAL_F + char buf[4096]; + char *path; + +- tmp = php_open_temporary_file("", "", &path TSRMLS_CC); ++ tmp = php_open_temporary_file(NULL, NULL, &path TSRMLS_CC); + if (tmp == NULL) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to open temporary file"); + RETURN_FALSE; diff --git a/dev-lang/php/files/5.0.4/php5.0.4-globals_overwrite.patch b/dev-lang/php/files/5.0.4/php5.0.4-globals_overwrite.patch new file mode 100644 index 0000000..02a9a83 --- /dev/null +++ b/dev-lang/php/files/5.0.4/php5.0.4-globals_overwrite.patch @@ -0,0 +1,1013 @@ +--- ext/standard/array.c 2005-03-12 11:12:49.000000000 +0100 ++++ ext/standard/array.c 2005-11-01 01:03:21.000000000 +0100 +@@ -21,7 +21,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: array.c,v 1.266.2.15 2005/03/12 10:12:49 andrey Exp $ */ ++/* $Id: array.c,v 1.266.2.29 2005/10/28 09:57:15 dmitry Exp $ */ + + #include "php.h" + #include "php_ini.h" +@@ -578,43 +578,66 @@ + } + } + +-/* check is comparison function is valid */ ++/* check if comparison function is valid */ + #define PHP_ARRAY_CMP_FUNC_CHECK(func_name) \ + if (!zend_is_callable(*func_name, 0, NULL)) { \ + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid comparison function."); \ ++ BG(user_compare_fci_cache) = old_user_compare_fci_cache; \ + BG(user_compare_func_name) = old_compare_func; \ + RETURN_FALSE; \ + } \ + ++ /* clear FCI cache otherwise : for example the same or other array with ++ (partly) the same key values has been sorted with uasort() or ++ other sorting function the comparison is cached, however the the name ++ of the function for comparison is not respected. see bug #28739 AND #33295 ++ ++ following defines will assist in backup / restore values. ++ */ ++ ++#define PHP_ARRAY_CMP_FUNC_VARS \ ++ zval **old_compare_func; \ ++ zend_fcall_info_cache old_user_compare_fci_cache ++ ++#define PHP_ARRAY_CMP_FUNC_BACKUP() \ ++ old_compare_func = BG(user_compare_func_name); \ ++ old_user_compare_fci_cache = BG(user_compare_fci_cache); \ ++ BG(user_compare_fci_cache) = empty_fcall_info_cache ++ ++#define PHP_ARRAY_CMP_FUNC_RESTORE() \ ++ BG(user_compare_fci_cache) = old_user_compare_fci_cache; \ ++ BG(user_compare_func_name) = old_compare_func ++ ++ + /* {{{ proto bool usort(array array_arg, string cmp_function) + Sort an array by values using a user-defined comparison function */ + PHP_FUNCTION(usort) + { + zval **array; +- zval **old_compare_func; + HashTable *target_hash; ++ PHP_ARRAY_CMP_FUNC_VARS; ++ ++ PHP_ARRAY_CMP_FUNC_BACKUP(); + +- old_compare_func = BG(user_compare_func_name); +- BG(user_compare_fci_cache) = empty_fcall_info_cache; + + if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &array, &BG(user_compare_func_name)) == FAILURE) { +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); + WRONG_PARAM_COUNT; + } + target_hash = HASH_OF(*array); + if (!target_hash) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The argument should be an array"); +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); + RETURN_FALSE; + } + + PHP_ARRAY_CMP_FUNC_CHECK(BG(user_compare_func_name)) + + if (zend_hash_sort(target_hash, zend_qsort, array_user_compare, 1 TSRMLS_CC) == FAILURE) { +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); + RETURN_FALSE; + } +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); + RETURN_TRUE; + } + /* }}} */ +@@ -624,29 +647,30 @@ + PHP_FUNCTION(uasort) + { + zval **array; +- zval **old_compare_func; + HashTable *target_hash; ++ PHP_ARRAY_CMP_FUNC_VARS; ++ ++ PHP_ARRAY_CMP_FUNC_BACKUP(); + +- old_compare_func = BG(user_compare_func_name); +- BG(user_compare_fci_cache) = empty_fcall_info_cache; + if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &array, &BG(user_compare_func_name)) == FAILURE) { +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); + WRONG_PARAM_COUNT; + } + target_hash = HASH_OF(*array); + if (!target_hash) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The argument should be an array"); +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); + RETURN_FALSE; + } + + PHP_ARRAY_CMP_FUNC_CHECK(BG(user_compare_func_name)) + + if (zend_hash_sort(target_hash, zend_qsort, array_user_compare, 0 TSRMLS_CC) == FAILURE) { +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); + RETURN_FALSE; + } +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); ++ + RETURN_TRUE; + } + /* }}} */ +@@ -669,7 +693,7 @@ + s = *((Bucket **) b); + + if (f->nKeyLength) { +- Z_STRVAL(key1) = estrndup(f->arKey, f->nKeyLength); ++ Z_STRVAL(key1) = estrndup(f->arKey, f->nKeyLength-1); + Z_STRLEN(key1) = f->nKeyLength-1; + Z_TYPE(key1) = IS_STRING; + } else { +@@ -677,7 +701,7 @@ + Z_TYPE(key1) = IS_LONG; + } + if (s->nKeyLength) { +- Z_STRVAL(key2) = estrndup(s->arKey, s->nKeyLength); ++ Z_STRVAL(key2) = estrndup(s->arKey, s->nKeyLength-1); + Z_STRLEN(key2) = s->nKeyLength-1; + Z_TYPE(key2) = IS_STRING; + } else { +@@ -703,28 +727,33 @@ + PHP_FUNCTION(uksort) + { + zval **array; +- zval **old_compare_func; + HashTable *target_hash; ++ PHP_ARRAY_CMP_FUNC_VARS; ++ ++ ++ PHP_ARRAY_CMP_FUNC_BACKUP(); + +- old_compare_func = BG(user_compare_func_name); + if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &array, &BG(user_compare_func_name)) == FAILURE) { +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); + WRONG_PARAM_COUNT; + } + target_hash = HASH_OF(*array); + if (!target_hash) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The argument should be an array"); +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); ++ + RETURN_FALSE; + } + + PHP_ARRAY_CMP_FUNC_CHECK(BG(user_compare_func_name)) + + if (zend_hash_sort(target_hash, zend_qsort, array_user_key_compare, 0 TSRMLS_CC) == FAILURE) { +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); ++ + RETURN_FALSE; + } +- BG(user_compare_func_name) = old_compare_func; ++ ++ PHP_ARRAY_CMP_FUNC_RESTORE(); + RETURN_TRUE; + } + /* }}} */ +@@ -1008,6 +1037,7 @@ + uint string_key_len; + ulong num_key; + HashPosition pos; ++ zend_fcall_info_cache array_walk_fci_cache = empty_fcall_info_cache; + + /* Set up known arguments */ + args[1] = &key; +@@ -1020,6 +1050,7 @@ + if (recursive && Z_TYPE_PP(args[0]) == IS_ARRAY) { + HashTable *thash; + ++ SEPARATE_ZVAL_TO_MAKE_IS_REF(args[0]); + thash = HASH_OF(*(args[0])); + if (thash == target_hash) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "recursion detected"); +@@ -1051,7 +1082,7 @@ + fci.no_separation = 0; + + /* Call the userland function */ +- if (zend_call_function(&fci, &BG(array_walk_fci_cache) TSRMLS_CC) == SUCCESS) { ++ if (zend_call_function(&fci, &array_walk_fci_cache TSRMLS_CC) == SUCCESS) { + if (retval_ptr) { + zval_ptr_dtor(&retval_ptr); + } +@@ -1094,7 +1125,6 @@ + HashTable *target_hash; + + argc = ZEND_NUM_ARGS(); +- BG(array_walk_fci_cache) = empty_fcall_info_cache; + old_walk_func_name = BG(array_walk_func_name); + if (argc < 2 || argc > 3 || + zend_get_parameters_ex(argc, &array, &BG(array_walk_func_name), &userdata) == FAILURE) { +@@ -1131,7 +1161,6 @@ + + argc = ZEND_NUM_ARGS(); + old_walk_func_name = BG(array_walk_func_name); +- BG(array_walk_fci_cache) = empty_fcall_info_cache; + + if (argc < 2 || argc > 3 || + zend_get_parameters_ex(argc, &array, &BG(array_walk_func_name), &userdata) == FAILURE) { +@@ -1345,6 +1374,10 @@ + /* break omitted intentionally */ + + case EXTR_OVERWRITE: ++ /* GLOBALS protection */ ++ if (var_exists && !strcmp(var_name, "GLOBALS")) { ++ break; ++ } + smart_str_appendl(&final_name, var_name, var_name_len); + break; + +@@ -1393,14 +1426,18 @@ + zval **orig_var; + + if (zend_hash_find(EG(active_symbol_table), final_name.c, final_name.len+1, (void **) &orig_var) == SUCCESS) { +- zval_ptr_dtor(orig_var); +- + SEPARATE_ZVAL_TO_MAKE_IS_REF(entry); + zval_add_ref(entry); + ++ zval_ptr_dtor(orig_var); ++ + *orig_var = *entry; + } else { +- (*entry)->is_ref = 1; ++ if ((*var_array)->refcount > 1) { ++ SEPARATE_ZVAL_TO_MAKE_IS_REF(entry); ++ } else { ++ (*entry)->is_ref = 1; ++ } + zval_add_ref(entry); + zend_hash_update(EG(active_symbol_table), final_name.c, final_name.len+1, (void **) entry, sizeof(zval *), NULL); + } +@@ -2005,8 +2042,8 @@ + hashtable and replace it with new one */ + new_hash = php_splice(Z_ARRVAL_P(stack), 0, 0, &args[1], argc-1, NULL); + zend_hash_destroy(Z_ARRVAL_P(stack)); +- efree(Z_ARRVAL_P(stack)); +- Z_ARRVAL_P(stack) = new_hash; ++ *Z_ARRVAL_P(stack) = *new_hash; ++ FREE_HASHTABLE(new_hash); + + /* Clean up and return the number of elements in the stack */ + efree(args); +@@ -2082,8 +2119,8 @@ + + /* Replace input array's hashtable with the new one */ + zend_hash_destroy(Z_ARRVAL_P(array)); +- efree(Z_ARRVAL_P(array)); +- Z_ARRVAL_P(array) = new_hash; ++ *Z_ARRVAL_P(array) = *new_hash; ++ FREE_HASHTABLE(new_hash); + + /* Clean up */ + if (argc == 4) +@@ -2443,7 +2480,6 @@ + zend_hash_internal_pointer_reset_ex(myht, &pos); + while (zend_hash_get_current_data_ex(myht, (void **)&entry, &pos) == SUCCESS) { + if (Z_TYPE_PP(entry) == IS_LONG) { +-int_key: + if (zend_hash_index_find(Z_ARRVAL_P(return_value), + Z_LVAL_PP(entry), + (void**)&tmp) == FAILURE) { +@@ -2456,11 +2492,31 @@ + Z_LVAL_PP(tmp)++; + } + } else if (Z_TYPE_PP(entry) == IS_STRING) { +- /* make sure our array does not end up with numeric string keys */ +- if (is_numeric_string(Z_STRVAL_PP(entry), Z_STRLEN_PP(entry), NULL, NULL, 0) == IS_LONG) { +- SEPARATE_ZVAL(entry); +- convert_to_long_ex(entry); +- goto int_key; ++ /* make sure our array does not end up with numeric string keys ++ * but don't touch those strings that start with 0 */ ++ if (!(Z_STRLEN_PP(entry) > 1 && Z_STRVAL_PP(entry)[0] == '0') && is_numeric_string(Z_STRVAL_PP(entry), Z_STRLEN_PP(entry), NULL, NULL, 0) == IS_LONG) { ++ zval tmp_entry; ++ ++ tmp_entry = **entry; ++ zval_copy_ctor(&tmp_entry); ++ ++ convert_to_long(&tmp_entry); ++ ++ if (zend_hash_index_find(Z_ARRVAL_P(return_value), ++ Z_LVAL(tmp_entry), ++ (void**)&tmp) == FAILURE) { ++ zval *data; ++ MAKE_STD_ZVAL(data); ++ Z_TYPE_P(data) = IS_LONG; ++ Z_LVAL_P(data) = 1; ++ zend_hash_index_update(Z_ARRVAL_P(return_value), Z_LVAL(tmp_entry), &data, sizeof(data), NULL); ++ } else { ++ Z_LVAL_PP(tmp)++; ++ } ++ ++ zval_dtor(&tmp_entry); ++ zend_hash_move_forward_ex(myht, &pos); ++ continue; + } + + if (zend_hash_find(Z_ARRVAL_P(return_value), Z_STRVAL_PP(entry), Z_STRLEN_PP(entry)+1, (void**)&tmp) == FAILURE) { +@@ -2598,8 +2654,8 @@ + + /* Copy the result hash into return value */ + zend_hash_destroy(Z_ARRVAL_P(return_value)); +- efree(Z_ARRVAL_P(return_value)); +- Z_ARRVAL_P(return_value) = new_hash; ++ *Z_ARRVAL_P(return_value) = *new_hash; ++ FREE_HASHTABLE(new_hash); + + /* Clean up */ + efree(pads); +@@ -2697,7 +2753,7 @@ + zend_hash_index_update(Z_ARRVAL_P(return_value), num_key, entry, sizeof(entry), NULL); + break; + case HASH_KEY_IS_STRING: +- new_key=estrndup(string_key,str_key_len); ++ new_key=estrndup(string_key,str_key_len - 1); + if (change_to_upper) + php_strtoupper(new_key, str_key_len - 1); + else +@@ -2787,7 +2843,8 @@ + Bucket ***lists, **list, ***ptrs, *p; + + char *callback_name; +- zval **old_compare_func; ++ PHP_ARRAY_CMP_FUNC_VARS; ++ + + int (*intersect_key_compare_func)(const void *, const void * TSRMLS_DC); + int (*intersect_data_compare_func)(const void *, const void * TSRMLS_DC); +@@ -2801,13 +2858,7 @@ + WRONG_PARAM_COUNT; + } + +- old_compare_func = BG(user_compare_func_name); +- /* clear FCI cache otherwise : for example the same or other array with +- (partly) the same key values has been sorted with uasort() or +- other sorting function the comparison is cached, however the the name +- of the function for comparison is not respected. see bug #28739 +- */ +- BG(user_compare_fci_cache) = empty_fcall_info_cache; ++ PHP_ARRAY_CMP_FUNC_BACKUP(); + + if (behavior == INTERSECT_NORMAL) { + intersect_key_compare_func = array_key_compare; +@@ -2962,6 +3013,15 @@ + /* copy the argument array */ + *return_value = **args[0]; + zval_copy_ctor(return_value); ++ if (return_value->value.ht == &EG(symbol_table)) { ++ HashTable *ht; ++ zval *tmp; ++ ++ ALLOC_HASHTABLE(ht); ++ zend_hash_init(ht, 0, NULL, ZVAL_PTR_DTOR, 0); ++ zend_hash_copy(ht, return_value->value.ht, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); ++ return_value->value.ht = ht; ++ } + + if (behavior == INTERSECT_NORMAL && data_compare_type == INTERSECT_COMP_DATA_USER) { + /* array_uintersect() */ +@@ -3069,7 +3129,8 @@ + pefree(lists[i], hash->persistent); + } + +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); ++ + + efree(ptrs); + efree(lists); +@@ -3141,7 +3202,8 @@ + Bucket ***lists, **list, ***ptrs, *p; + char *callback_name; + +- zval **old_compare_func; ++ PHP_ARRAY_CMP_FUNC_VARS; ++ + int (*diff_key_compare_func)(const void *, const void * TSRMLS_DC); + int (*diff_data_compare_func)(const void *, const void * TSRMLS_DC); + +@@ -3155,13 +3217,7 @@ + WRONG_PARAM_COUNT; + } + +- old_compare_func = BG(user_compare_func_name); +- /* clear FCI cache otherwise : for example the same or other array with +- (partly) the same key values has been sorted with uasort() or +- other sorting function the comparison is cached, however the the name +- of the function for comparison is not respected. see bug #28739 +- */ +- BG(user_compare_fci_cache) = empty_fcall_info_cache; ++ PHP_ARRAY_CMP_FUNC_BACKUP(); + + if (behavior == DIFF_NORMAL) { + diff_key_compare_func = array_key_compare; +@@ -3316,6 +3372,15 @@ + /* copy the argument array */ + *return_value = **args[0]; + zval_copy_ctor(return_value); ++ if (return_value->value.ht == &EG(symbol_table)) { ++ HashTable *ht; ++ zval *tmp; ++ ++ ALLOC_HASHTABLE(ht); ++ zend_hash_init(ht, 0, NULL, ZVAL_PTR_DTOR, 0); ++ zend_hash_copy(ht, return_value->value.ht, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); ++ return_value->value.ht = ht; ++ } + + if (behavior == DIFF_NORMAL && data_compare_type == DIFF_COMP_DATA_USER) { + /* array_udiff() */ +@@ -3410,7 +3475,8 @@ + pefree(lists[i], hash->persistent); + } + +- BG(user_compare_func_name) = old_compare_func; ++ PHP_ARRAY_CMP_FUNC_RESTORE(); ++ + + efree(ptrs); + efree(lists); +@@ -3845,8 +3911,11 @@ + efree(callback_name); + + if (ZEND_NUM_ARGS() > 2) { +- convert_to_long_ex(initial); +- result = *initial; ++ ALLOC_ZVAL(result); ++ *result = **initial; ++ zval_copy_ctor(result); ++ convert_to_long(result); ++ INIT_PZVAL(result); + } else { + MAKE_STD_ZVAL(result); + ZVAL_NULL(result); +@@ -3862,6 +3931,7 @@ + if (result) { + *return_value = *result; + zval_copy_ctor(return_value); ++ zval_ptr_dtor(&result); + } + return; + } +@@ -3911,6 +3981,7 @@ + PHP_FUNCTION(array_filter) + { + zval **input, **callback = NULL; ++ zval *array, *func = NULL; + zval **operand; + zval **args[1]; + zval *retval = NULL; +@@ -3930,9 +4001,13 @@ + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The first argument should be an array"); + return; + } ++ if (callback) { ++ func = *callback; ++ } ++ array = *input; + + if (ZEND_NUM_ARGS() > 1) { +- if (!zend_is_callable(*callback, 0, &callback_name)) { ++ if (!zend_is_callable(func, 0, &callback_name)) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The second argument, '%s', should be a valid callback", callback_name); + efree(callback_name); + return; +@@ -3941,22 +4016,22 @@ + } + + array_init(return_value); +- if (zend_hash_num_elements(Z_ARRVAL_PP(input)) == 0) { ++ if (zend_hash_num_elements(Z_ARRVAL_P(array)) == 0) { + return; + } + +- for (zend_hash_internal_pointer_reset_ex(Z_ARRVAL_PP(input), &pos); +- zend_hash_get_current_data_ex(Z_ARRVAL_PP(input), (void **)&operand, &pos) == SUCCESS; +- zend_hash_move_forward_ex(Z_ARRVAL_PP(input), &pos)) { ++ for (zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(array), &pos); ++ zend_hash_get_current_data_ex(Z_ARRVAL_P(array), (void **)&operand, &pos) == SUCCESS; ++ zend_hash_move_forward_ex(Z_ARRVAL_P(array), &pos)) { + +- if (callback) { ++ if (func) { + zend_fcall_info fci; + + args[0] = operand; + + fci.size = sizeof(fci); + fci.function_table = EG(function_table); +- fci.function_name = *callback; ++ fci.function_name = func; + fci.symbol_table = NULL; + fci.object_pp = NULL; + fci.retval_ptr_ptr = &retval; +@@ -3980,7 +4055,7 @@ + } + + zval_add_ref(operand); +- switch (zend_hash_get_current_key_ex(Z_ARRVAL_PP(input), &string_key, &string_key_len, &num_key, 0, &pos)) { ++ switch (zend_hash_get_current_key_ex(Z_ARRVAL_P(array), &string_key, &string_key_len, &num_key, 0, &pos)) { + case HASH_KEY_IS_STRING: + zend_hash_update(Z_ARRVAL_P(return_value), string_key, string_key_len, operand, sizeof(zval *), NULL); + break; +@@ -4046,6 +4121,7 @@ + efree(array_pos); + return; + } ++ SEPARATE_ZVAL_IF_NOT_REF(pargs[i]); + args[i] = *pargs[i]; + array_len[i] = zend_hash_num_elements(Z_ARRVAL_PP(pargs[i])); + if (array_len[i] > maxlen) { +--- ext/standard/basic_functions.c 2005-03-10 13:10:57.000000000 +0100 ++++ ext/standard/basic_functions.c 2005-11-01 01:03:31.000000000 +0100 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: basic_functions.c,v 1.673.2.13 2005/03/10 12:10:57 hyanantha Exp $ */ ++/* $Id: basic_functions.c,v 1.673.2.21 2005/09/29 16:31:20 iliaa Exp $ */ + + #include "php.h" + #include "php_streams.h" +@@ -469,7 +469,6 @@ + PHP_FALIAS(show_source, highlight_file, NULL) + PHP_FE(highlight_string, NULL) + PHP_FE(php_strip_whitespace, NULL) +- PHP_FE(php_check_syntax, second_arg_force_ref) + + PHP_FE(ini_get, NULL) + PHP_FE(ini_get_all, NULL) +@@ -743,8 +743,8 @@ + PHP_FE(prev, first_arg_force_ref) + PHP_FE(next, first_arg_force_ref) + PHP_FE(reset, first_arg_force_ref) +- PHP_FE(current, first_arg_force_ref) +- PHP_FE(key, first_arg_force_ref) ++ PHP_FE(current, NULL) ++ PHP_FE(key, NULL) + PHP_FE(min, NULL) + PHP_FE(max, NULL) + PHP_FE(in_array, NULL) +@@ -930,7 +930,6 @@ + BG(user_tick_functions) = NULL; + BG(user_filter_map) = NULL; + BG(user_compare_fci_cache) = empty_fcall_info_cache; +- /*BG(array_walk_fci_cache) = empty_fcall_info_cache;*/ + zend_hash_init(&BG(sm_protected_env_vars), 5, NULL, NULL, 1); + BG(sm_allowed_env_vars) = NULL; + +@@ -1192,17 +1191,10 @@ + } + STR_FREE(BG(locale_string)); + +- if (FG(stream_wrappers)) { +- zend_hash_destroy(FG(stream_wrappers)); +- efree(FG(stream_wrappers)); +- FG(stream_wrappers) = NULL; +- } +- +- if (FG(stream_filters)) { +- zend_hash_destroy(FG(stream_filters)); +- efree(FG(stream_filters)); +- FG(stream_filters) = NULL; +- } ++ /* ++ FG(stream_wrappers) and FG(stream_filters) are destroyed ++ during php_request_shutdown() ++ */ + + PHP_RSHUTDOWN(filestat)(SHUTDOWN_FUNC_ARGS_PASSTHRU); + #ifdef HAVE_SYSLOG_H +@@ -2103,17 +2095,21 @@ + static int user_shutdown_function_call(php_shutdown_function_entry *shutdown_function_entry TSRMLS_DC) + { + zval retval; ++ char *function_name = NULL; + +- if (call_user_function( EG(function_table), NULL, +- shutdown_function_entry->arguments[0], +- &retval, +- shutdown_function_entry->arg_count - 1, +- shutdown_function_entry->arguments + 1 +- TSRMLS_CC ) == SUCCESS ) { ++ if (!zend_is_callable(shutdown_function_entry->arguments[0], 0, &function_name)) { ++ php_error(E_WARNING, "(Registered shutdown functions) Unable to call %s() - function does not exist", function_name); ++ } else if (call_user_function(EG(function_table), NULL, ++ shutdown_function_entry->arguments[0], ++ &retval, ++ shutdown_function_entry->arg_count - 1, ++ shutdown_function_entry->arguments + 1 ++ TSRMLS_CC ) == SUCCESS) ++ { + zval_dtor(&retval); +- +- } else { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to call %s() - function does not exist", Z_STRVAL_P(shutdown_function_entry->arguments[0])); ++ } ++ if (function_name) { ++ efree(function_name); + } + return 0; + } +@@ -2206,6 +2202,7 @@ + PHP_FUNCTION(register_shutdown_function) + { + php_shutdown_function_entry shutdown_function_entry; ++ char *function_name = NULL; + int i; + + shutdown_function_entry.arg_count = ZEND_NUM_ARGS(); +@@ -2214,26 +2211,31 @@ + WRONG_PARAM_COUNT; + } + +- shutdown_function_entry.arguments = (pval **) safe_emalloc(sizeof(pval *), shutdown_function_entry.arg_count, 0); ++ shutdown_function_entry.arguments = (zval **) safe_emalloc(sizeof(zval *), shutdown_function_entry.arg_count, 0); + + if (zend_get_parameters_array(ht, shutdown_function_entry.arg_count, shutdown_function_entry.arguments) == FAILURE) { + RETURN_FALSE; + } + +- /* Prevent entering of anything but arrays/strings */ +- if (Z_TYPE_P(shutdown_function_entry.arguments[0]) != IS_ARRAY) { +- convert_to_string(shutdown_function_entry.arguments[0]); +- } +- +- if (!BG(user_shutdown_function_names)) { +- ALLOC_HASHTABLE(BG(user_shutdown_function_names)); +- zend_hash_init(BG(user_shutdown_function_names), 0, NULL, (void (*)(void *)) user_shutdown_function_dtor, 0); +- } ++ /* Prevent entering of anything but valid callback (syntax check only!) */ ++ if (!zend_is_callable(shutdown_function_entry.arguments[0], 1, &function_name)) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid shutdown callback '%s' passed", function_name); ++ efree(shutdown_function_entry.arguments); ++ RETVAL_FALSE; ++ } else { ++ if (!BG(user_shutdown_function_names)) { ++ ALLOC_HASHTABLE(BG(user_shutdown_function_names)); ++ zend_hash_init(BG(user_shutdown_function_names), 0, NULL, (void (*)(void *)) user_shutdown_function_dtor, 0); ++ } + +- for (i = 0; i < shutdown_function_entry.arg_count; i++) { +- shutdown_function_entry.arguments[i]->refcount++; ++ for (i = 0; i < shutdown_function_entry.arg_count; i++) { ++ shutdown_function_entry.arguments[i]->refcount++; ++ } ++ zend_hash_next_index_insert(BG(user_shutdown_function_names), &shutdown_function_entry, sizeof(php_shutdown_function_entry), NULL); ++ } ++ if (function_name) { ++ efree(function_name); + } +- zend_hash_next_index_insert(BG(user_shutdown_function_names), &shutdown_function_entry, sizeof(php_shutdown_function_entry), NULL); + } + /* }}} */ + +@@ -2323,49 +2325,6 @@ + } + /* }}} */ + +-/* {{{ proto bool php_check_syntax(string file_name [, &$error_message]) +- Check the syntax of the specified file. */ +-PHP_FUNCTION(php_check_syntax) +-{ +- char *filename; +- int filename_len; +- zval *errm=NULL; +- zend_file_handle file_handle = {0}; +- +- int old_errors = PG(display_errors); +- int log_errors = PG(log_errors); +- +- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|z", &filename, &filename_len, &errm) == FAILURE) { +- RETURN_FALSE; +- } +- +- file_handle.type = ZEND_HANDLE_FILENAME; +- file_handle.filename = filename; +- file_handle.free_filename = 0; +- file_handle.opened_path = NULL; +- +- PG(log_errors) = PG(display_errors) = 0; +- +- if (php_lint_script(&file_handle TSRMLS_CC) != SUCCESS) { +- if (errm) { +- char *error_str; +- +- zval_dtor(errm); +- spprintf(&error_str, 0, "%s in %s on line %d", PG(last_error_message), PG(last_error_file), PG(last_error_lineno)); +- ZVAL_STRING(errm, error_str, 0); +- } +- RETVAL_FALSE; +- } else { +- RETVAL_TRUE; +- } +- +- PG(display_errors) = old_errors; +- PG(log_errors) = log_errors; +- +- return; +-} +-/* }}} */ +- + /* {{{ proto bool highlight_string(string string [, bool return] ) + Syntax highlight a string or optionally return it */ + PHP_FUNCTION(highlight_string) +@@ -3118,11 +3077,25 @@ + prefix = va_arg(args, char *); + prefix_len = va_arg(args, uint); + +- new_key_len = prefix_len + hash_key->nKeyLength; +- new_key = (char *) emalloc(new_key_len); ++ if (!prefix_len) { ++ if (!hash_key->nKeyLength) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Numeric key detected - possible security hazard."); ++ return 0; ++ } else if (!strcmp(hash_key->arKey, "GLOBALS")) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Attempted GLOBALS variable overwrite."); ++ return 0; ++ } ++ } ++ ++ if (hash_key->nKeyLength) { ++ new_key_len = prefix_len + hash_key->nKeyLength; ++ new_key = (char *) emalloc(new_key_len); + +- memcpy(new_key, prefix, prefix_len); +- memcpy(new_key+prefix_len, hash_key->arKey, hash_key->nKeyLength); ++ memcpy(new_key, prefix, prefix_len); ++ memcpy(new_key+prefix_len, hash_key->arKey, hash_key->nKeyLength); ++ } else { ++ new_key_len = spprintf(&new_key, 0, "%s%ld", prefix, hash_key->h); ++ } + + zend_hash_del(&EG(symbol_table), new_key, new_key_len); + ZEND_SET_SYMBOL_WITH_LENGTH(&EG(symbol_table), new_key, new_key_len, *var, (*var)->refcount+1, 0); +--- ext/standard/string.c 2005-03-01 16:01:08.000000000 +0100 ++++ ext/standard/string.c 2005-11-01 01:03:40.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: string.c,v 1.420.2.6 2005/03/01 15:01:08 hyanantha Exp $ */ ++/* $Id: string.c,v 1.420.2.13 2005/09/28 22:35:43 iliaa Exp $ */ + + /* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */ + +@@ -1175,6 +1175,22 @@ + return len; + } + } ++#elif defined(NETWARE) ++ /* ++ * Find the first occurence of : from the left ++ * move the path pointer to the position just after : ++ * increment the len_adjust to the length of path till colon character(inclusive) ++ * If there is no character beyond : simple return len ++ */ ++ char *colonpos = NULL; ++ colonpos = strchr(path, ':'); ++ if(colonpos != NULL) { ++ len_adjust = ((colonpos - path) + 1); ++ path += len_adjust; ++ if(len_adjust == len) { ++ return len; ++ } ++ } + #endif + + if (len == 0) { +@@ -1199,9 +1215,21 @@ + } + if (end < path) { + /* No slash found, therefore return '.' */ ++#ifdef NETWARE ++ if(len_adjust == 0) { ++ path[0] = '.'; ++ path[1] = '\0'; ++ return 1; //only one character ++ } ++ else { ++ path[0] = '\0'; ++ return len_adjust; ++ } ++#else + path[0] = '.'; + path[1] = '\0'; + return 1 + len_adjust; ++#endif + } + + /* Strip slashes which came before the file name */ +@@ -1382,8 +1410,6 @@ + if (!Z_STRLEN_PP(needle)) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Empty delimiter."); + efree(haystack_orig); +- zval_ptr_dtor(haystack); +- zval_ptr_dtor(needle); + RETURN_FALSE; + } + +@@ -1409,8 +1435,6 @@ + RETVAL_FALSE; + } + +- zval_ptr_dtor(haystack); +- zval_ptr_dtor(needle); + efree(haystack_orig); + } + /* }}} */ +@@ -1839,7 +1863,13 @@ + } + + if (chunklen > Z_STRLEN_PP(p_str)) { +- RETURN_STRINGL(Z_STRVAL_PP(p_str), Z_STRLEN_PP(p_str), 1); ++ /* to maintain BC, we must return original string + ending */ ++ result_len = endlen + Z_STRLEN_PP(p_str); ++ result = emalloc(result_len + 1); ++ memcpy(result, Z_STRVAL_PP(p_str), Z_STRLEN_PP(p_str)); ++ memcpy(result + Z_STRLEN_PP(p_str), end, endlen); ++ result[result_len] = '\0'; ++ RETURN_STRINGL(result, result_len, 0); + } + + if (!Z_STRLEN_PP(p_str)) { +@@ -2937,7 +2975,7 @@ + char *source, *target, *tmp, *source_end=str+len, *tmp_end = NULL; + + for (source = str; source < source_end; source++) { +- if (*source == from) { ++ if ((case_sensitivity && *source == from) || (!case_sensitivity && tolower(*source) == tolower(from))) { + char_count++; + } + } +@@ -3771,7 +3809,6 @@ + zval *sarg; + char *res = NULL; + int argCount; +- int old_rg; + + argCount = ZEND_NUM_ARGS(); + if (argCount < 1 || argCount > 2 || zend_get_parameters_ex(argCount, &arg, &arrayArg) == FAILURE) { +@@ -3784,19 +3821,18 @@ + res = estrndup(Z_STRVAL_P(sarg), Z_STRLEN_P(sarg)); + } + +- old_rg = PG(register_globals); + if (argCount == 1) { +- PG(register_globals) = 1; +- sapi_module.treat_data(PARSE_STRING, res, NULL TSRMLS_CC); ++ zval tmp; ++ Z_ARRVAL(tmp) = EG(active_symbol_table); ++ ++ sapi_module.treat_data(PARSE_STRING, res, &tmp TSRMLS_CC); + } else { +- PG(register_globals) = 0; + /* Clear out the array that was passed in. */ + zval_dtor(*arrayArg); + array_init(*arrayArg); + + sapi_module.treat_data(PARSE_STRING, res, *arrayArg TSRMLS_CC); + } +- PG(register_globals) = old_rg; + } + /* }}} */ + +--- main/php_variables.c 2005-02-17 05:46:10.000000000 +0100 ++++ main/php_variables.c 2005-11-01 01:07:38.000000000 +0100 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: php_variables.c,v 1.81.2.3 2005/02/17 04:46:10 iliaa Exp $ */ ++/* $Id: php_variables.c,v 1.81.2.13 2005/09/28 22:35:42 iliaa Exp $ */ + + #include <stdio.h> + #include "php.h" +@@ -103,6 +103,13 @@ + zval_dtor(val); + return; + } ++ ++ /* GLOBALS hijack attempt, reject parameter */ ++ if (symtable1 == EG(active_symbol_table) && !strcmp("GLOBALS", var)) { ++ zval_dtor(val); ++ return; ++ } ++ + /* ensure that we don't have spaces or dots in the variable name (not binary safe) */ + for (p=var; *p; p++) { + switch(*p) { +@@ -186,7 +193,19 @@ + if (!index) { + zend_hash_next_index_insert(symtable1, &gpc_element, sizeof(zval *), (void **) &gpc_element_p); + } else { ++ zval **tmp; + char *escaped_index = php_addslashes(index, index_len, &index_len, 0 TSRMLS_CC); ++ /* ++ * According to rfc2965, more specific paths are listed above the less specific ones. ++ * If we encounter a duplicate cookie name, we should skip it, since it is not possible ++ * to have the same (plain text) cookie name for the same path and we should not overwrite ++ * more specific cookies with the less specific ones. ++ */ ++ if (PG(http_globals)[TRACK_VARS_COOKIE] && symtable1 == Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_COOKIE]) && ++ zend_symtable_find(symtable1, escaped_index, index_len+1, (void **) &tmp) != FAILURE) { ++ efree(escaped_index); ++ break; ++ } + zend_symtable_update(symtable1, escaped_index, index_len+1, &gpc_element, sizeof(zval *), (void **) &gpc_element_p); + efree(escaped_index); + } +@@ -250,12 +269,21 @@ + INIT_PZVAL(array_ptr); + switch (arg) { + case PARSE_POST: ++ if (PG(http_globals)[TRACK_VARS_POST]) { ++ zval_ptr_dtor(&PG(http_globals)[TRACK_VARS_POST]); ++ } + PG(http_globals)[TRACK_VARS_POST] = array_ptr; + break; + case PARSE_GET: ++ if (PG(http_globals)[TRACK_VARS_GET]) { ++ zval_ptr_dtor(&PG(http_globals)[TRACK_VARS_GET]); ++ } + PG(http_globals)[TRACK_VARS_GET] = array_ptr; + break; + case PARSE_COOKIE: ++ if (PG(http_globals)[TRACK_VARS_COOKIE]) { ++ zval_ptr_dtor(&PG(http_globals)[TRACK_VARS_COOKIE]); ++ } + PG(http_globals)[TRACK_VARS_COOKIE] = array_ptr; + break; + } +@@ -500,6 +528,9 @@ + ALLOC_ZVAL(array_ptr); + array_init(array_ptr); + INIT_PZVAL(array_ptr); ++ if (PG(http_globals)[TRACK_VARS_SERVER]) { ++ zval_ptr_dtor(&PG(http_globals)[TRACK_VARS_SERVER]); ++ } + PG(http_globals)[TRACK_VARS_SERVER] = array_ptr; + PG(magic_quotes_gpc) = 0; + +@@ -675,8 +706,8 @@ + PG(http_globals)[i] = dummy_track_vars_array; + } + +- zend_hash_update(&EG(symbol_table), auto_global_records[i].name, auto_global_records[i].name_len, &PG(http_globals)[i], sizeof(zval *), NULL); + PG(http_globals)[i]->refcount++; ++ zend_hash_update(&EG(symbol_table), auto_global_records[i].name, auto_global_records[i].name_len, &PG(http_globals)[i], sizeof(zval *), NULL); + if (PG(register_long_arrays)) { + zend_hash_update(&EG(symbol_table), auto_global_records[i].long_name, auto_global_records[i].long_name_len, &PG(http_globals)[i], sizeof(zval *), NULL); + PG(http_globals)[i]->refcount++; +@@ -696,7 +727,18 @@ + + static zend_bool php_auto_globals_create_server(char *name, uint name_len TSRMLS_DC) + { +- php_register_server_variables(TSRMLS_C); ++ if (PG(variables_order) && (strchr(PG(variables_order),'S') || strchr(PG(variables_order),'s'))) { ++ php_register_server_variables(TSRMLS_C); ++ } else { ++ zval *server_vars=NULL; ++ ALLOC_ZVAL(server_vars); ++ array_init(server_vars); ++ INIT_PZVAL(server_vars); ++ if (PG(http_globals)[TRACK_VARS_SERVER]) { ++ zval_ptr_dtor(&PG(http_globals)[TRACK_VARS_SERVER]); ++ } ++ PG(http_globals)[TRACK_VARS_SERVER] = server_vars; ++ } + + zend_hash_update(&EG(symbol_table), name, name_len+1, &PG(http_globals)[TRACK_VARS_SERVER], sizeof(zval *), NULL); + PG(http_globals)[TRACK_VARS_SERVER]->refcount++; +@@ -716,9 +758,14 @@ + ALLOC_ZVAL(env_vars); + array_init(env_vars); + INIT_PZVAL(env_vars); ++ if (PG(http_globals)[TRACK_VARS_ENV]) { ++ zval_ptr_dtor(&PG(http_globals)[TRACK_VARS_ENV]); ++ } + PG(http_globals)[TRACK_VARS_ENV] = env_vars; + +- php_import_environment_variables(PG(http_globals)[TRACK_VARS_ENV] TSRMLS_CC); ++ if (PG(variables_order) && (strchr(PG(variables_order),'E') || strchr(PG(variables_order),'e'))) { ++ php_import_environment_variables(PG(http_globals)[TRACK_VARS_ENV] TSRMLS_CC); ++ } + + zend_hash_update(&EG(symbol_table), name, name_len+1, &PG(http_globals)[TRACK_VARS_ENV], sizeof(zval *), NULL); + PG(http_globals)[TRACK_VARS_ENV]->refcount++; diff --git a/dev-lang/php/files/5.0.4/php5.0.4-pcre-security.patch b/dev-lang/php/files/5.0.4/php5.0.4-pcre-security.patch new file mode 100644 index 0000000..41bfd23 --- /dev/null +++ b/dev-lang/php/files/5.0.4/php5.0.4-pcre-security.patch @@ -0,0 +1,20 @@ +--- ext/pcre/config.m4 2003/06/28 04:30:51 1.32 ++++ ext/pcre/config.m4 2005/08/22 16:55:56 1.32.2.2 +@@ -13,7 +13,7 @@ PHP_ARG_WITH(pcre-regex,for PCRE support + + if test "$PHP_PCRE_REGEX" != "no"; then + if test "$PHP_PCRE_REGEX" = "yes"; then +- PHP_NEW_EXTENSION(pcre, pcrelib/maketables.c pcrelib/get.c pcrelib/study.c pcrelib/pcre.c php_pcre.c, $ext_shared,,-DSUPPORT_UTF8 -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -I@ext_srcdir@/pcrelib) ++ PHP_NEW_EXTENSION(pcre, pcrelib/pcre_chartables.c pcrelib/pcre_compile.c pcrelib/pcre_config.c pcrelib/pcre_dfa_exec.c pcrelib/pcre_exec.c pcrelib/pcre_fullinfo.c pcrelib/pcre_get.c pcrelib/pcre_globals.c pcrelib/pcre_info.c pcrelib/pcre_maketables.c pcrelib/pcre_ord2utf8.c pcrelib/pcre_printint.c pcrelib/pcre_refcount.c pcrelib/pcre_study.c pcrelib/pcre_tables.c pcrelib/pcre_try_flipped.c pcrelib/pcre_ucp_findchar.c pcrelib/pcre_valid_utf8.c pcrelib/pcre_version.c pcrelib/pcre_xclass.c php_pcre.c, $ext_shared,,-DEXPORT= -DNEWLINE=10 -DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000 -I@ext_srcdir@/pcrelib) + PHP_ADD_BUILD_DIR($ext_builddir/pcrelib) + AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ]) + else +@@ -50,7 +50,7 @@ if test "$PHP_PCRE_REGEX" != "no"; then + + AC_DEFINE(HAVE_PCRE, 1, [ ]) + PHP_ADD_INCLUDE($PCRE_INCDIR) +- PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,,-DSUPPORT_UTF8 -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10) ++ PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared,,-DEXPORT= -DNEWLINE=10 -DSUPPORT_UTF8 -DSUPPORT_UCP -DLINK_SIZE=2 -DPOSIX_MALLOC_THRESHOLD=10 -DMATCH_LIMIT=10000000) + fi + PHP_SUBST(PCRE_SHARED_LIBADD) + fi diff --git a/dev-lang/php/files/5.0.4/php5.0.4-phpinfo_xss.patch b/dev-lang/php/files/5.0.4/php5.0.4-phpinfo_xss.patch new file mode 100644 index 0000000..e19c9fe --- /dev/null +++ b/dev-lang/php/files/5.0.4/php5.0.4-phpinfo_xss.patch @@ -0,0 +1,79 @@ +--- ext/standard/info.c 2004-05-02 15:23:30.000000000 +0200 ++++ ext/standard/info.c 2005-11-01 01:30:58.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: info.c,v 1.245 2004/05/02 13:23:30 helly Exp $ */ ++/* $Id: info.c,v 1.245.2.5 2005/08/16 00:25:46 iliaa Exp $ */ + + #include "php.h" + #include "php_ini.h" +@@ -135,10 +135,25 @@ + PUTS(" => "); + } + if (Z_TYPE_PP(tmp) == IS_ARRAY) { ++ zval *tmp3; ++ ++ MAKE_STD_ZVAL(tmp3); ++ + if (!sapi_module.phpinfo_as_text) { + PUTS("<pre>"); + } ++ php_start_ob_buffer(NULL, 4096, 1 TSRMLS_CC); ++ + zend_print_zval_r(*tmp, 0 TSRMLS_CC); ++ ++ php_ob_get_buffer(tmp3 TSRMLS_CC); ++ php_end_ob_buffer(0, 0 TSRMLS_CC); ++ ++ elem_esc = php_info_html_esc(Z_STRVAL_P(tmp3) TSRMLS_CC); ++ PUTS(elem_esc); ++ efree(elem_esc); ++ zval_ptr_dtor(&tmp3); ++ + if (!sapi_module.phpinfo_as_text) { + PUTS("</pre>"); + } +@@ -198,7 +213,7 @@ + PHPAPI char *php_info_html_esc(char *string TSRMLS_DC) + { + int new_len; +- return php_escape_html_entities(string, strlen(string), &new_len, 0, ENT_NOQUOTES, NULL TSRMLS_CC); ++ return php_escape_html_entities(string, strlen(string), &new_len, 0, ENT_QUOTES, NULL TSRMLS_CC); + } + /* }}} */ + +@@ -406,7 +421,9 @@ + if (expose_php && !sapi_module.phpinfo_as_text) { + PUTS("<a href=\"http://www.php.net/\"><img border=\"0\" src=\""); + if (SG(request_info).request_uri) { +- PUTS(SG(request_info).request_uri); ++ char *elem_esc = php_info_html_esc(SG(request_info).request_uri TSRMLS_CC); ++ PUTS(elem_esc); ++ efree(elem_esc); + } + PUTS("?="); + logo_guid = php_logo_guid(); +@@ -551,7 +574,9 @@ + if (expose_php && !sapi_module.phpinfo_as_text) { + PUTS("<a href=\"http://www.zend.com/\"><img border=\"0\" src=\""); + if (SG(request_info).request_uri) { +- PUTS(SG(request_info).request_uri); ++ char *elem_esc = php_info_html_esc(SG(request_info).request_uri TSRMLS_CC); ++ PUTS(elem_esc); ++ efree(elem_esc); + } + PUTS("?="ZEND_LOGO_GUID"\" alt=\"Zend logo\" /></a>\n"); + } +@@ -570,7 +595,9 @@ + php_info_print_hr(); + PUTS("<h1><a href=\""); + if (SG(request_info).request_uri) { +- PUTS(SG(request_info).request_uri); ++ char *elem_esc = php_info_html_esc(SG(request_info).request_uri TSRMLS_CC); ++ PUTS(elem_esc); ++ efree(elem_esc); + } + PUTS("?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000\">"); + PUTS("PHP Credits"); diff --git a/dev-lang/php/files/5.0.4/php5.0.4-pspell-ext-segf.patch b/dev-lang/php/files/5.0.4/php5.0.4-pspell-ext-segf.patch new file mode 100644 index 0000000..5c32b14 --- /dev/null +++ b/dev-lang/php/files/5.0.4/php5.0.4-pspell-ext-segf.patch @@ -0,0 +1,320 @@ +--- ext/pspell/pspell.c 2004-05-18 14:32:05.000000000 +0200 ++++ ext/pspell/pspell.c 2005-10-26 23:30:48.000000000 +0200 +@@ -2,7 +2,7 @@ + +----------------------------------------------------------------------+ + | PHP Version 5 | + +----------------------------------------------------------------------+ +- | Copyright (c) 1997-2004 The PHP Group | ++ | Copyright (c) 1997-2005 The PHP Group | + +----------------------------------------------------------------------+ + | This source file is subject to version 3.0 of the PHP license, | + | that is bundled with this package in the file LICENSE, and is | +@@ -16,7 +16,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: pspell.c,v 1.44 2004/05/18 12:32:05 edink Exp $ */ ++/* $Id: pspell.c,v 1.47 2005/10/17 15:29:55 iliaa Exp $ */ + + #define IS_EXT_MODULE + +@@ -101,6 +101,22 @@ + delete_pspell_config(config); + } + ++#define PSPELL_FETCH_CONFIG \ ++ convert_to_long_ex(conf); \ ++ config = (PspellConfig *) zend_list_find(Z_LVAL_PP(conf), &type); \ ++ if (config == NULL || type != le_pspell_config) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(conf)); \ ++ RETURN_FALSE; \ ++ } \ ++ ++#define PSPELL_FETCH_MANAGER \ ++ convert_to_long_ex(scin); \ ++ manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); \ ++ if (!manager || type != le_pspell) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); \ ++ RETURN_FALSE; \ ++ } \ ++ + /* {{{ PHP_MINIT_FUNCTION + */ + PHP_MINIT_FUNCTION(pspell) +@@ -352,13 +368,7 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(conf); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(conf), &type); +- +- if (config == NULL || type != le_pspell_config) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(conf)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + ret = new_pspell_manager(config); + +@@ -387,13 +397,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + if(pspell_manager_check(manager, Z_STRVAL_PP(word))){ + RETURN_TRUE; +@@ -419,13 +425,8 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + array_init(return_value); + +@@ -457,14 +458,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(miss); + convert_to_string_ex(corr); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + pspell_manager_store_replacement(manager, Z_STRVAL_PP(miss), Z_STRVAL_PP(corr)); + if(pspell_manager_error_number(manager) == 0){ +@@ -490,13 +486,8 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + /*If the word is empty, we have to return; otherwise we'll segfault! ouch!*/ + if(Z_STRLEN_PP(word) == 0){ +@@ -527,13 +518,8 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + /*If the word is empty, we have to return; otherwise we'll segfault! ouch!*/ + if(Z_STRLEN_PP(word) == 0){ +@@ -564,12 +550,7 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + pspell_manager_clear_session(manager); + if(pspell_manager_error_number(manager) == 0){ +@@ -595,12 +576,7 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + pspell_manager_save_all_word_lists(manager); + +@@ -694,22 +670,17 @@ + PHP_FUNCTION(pspell_config_runtogether) + { + int type; +- zval **sccin, **runtogether; ++ zval **conf, **runtogether; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&runtogether) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&runtogether) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_boolean_ex(runtogether); + pspell_config_replace(config, "run-together", Z_LVAL_PP(runtogether) ? "true" : "false"); +@@ -723,22 +694,17 @@ + PHP_FUNCTION(pspell_config_mode) + { + int type; +- zval **sccin, **mode; ++ zval **conf, **mode; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&mode) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&mode) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_long_ex(mode); + +@@ -760,7 +726,7 @@ + PHP_FUNCTION(pspell_config_ignore) + { + int type; +- zval **sccin, **pignore; ++ zval **conf, **pignore; + int argc; + + int loc = PSPELL_LARGEST_WORD; +@@ -770,16 +736,11 @@ + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&pignore) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&pignore) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_long_ex(pignore); + ignore = Z_LVAL_PP(pignore); +@@ -808,21 +769,16 @@ + static void pspell_config_path(INTERNAL_FUNCTION_PARAMETERS, char *option) + { + int type; +- zval **sccin, **value; ++ zval **conf, **value; + int argc; + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc, &sccin, &value) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc, &conf, &value) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if (!config) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_string_ex(value); + +@@ -868,22 +824,17 @@ + PHP_FUNCTION(pspell_config_repl) + { + int type; +- zval **sccin, **repl; ++ zval **conf, **repl; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&repl) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&repl) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + pspell_config_replace(config, "save-repl", "true"); + +@@ -908,22 +859,17 @@ + PHP_FUNCTION(pspell_config_save_repl) + { + int type; +- zval **sccin, **save; ++ zval **conf, **save; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&save) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&save) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_boolean_ex(save); + pspell_config_replace(config, "save-repl", Z_LVAL_PP(save) ? "true" : "false"); diff --git a/dev-lang/php/files/5.0.4/php5.0.4-session_save_path-segf.patch b/dev-lang/php/files/5.0.4/php5.0.4-session_save_path-segf.patch new file mode 100644 index 0000000..f984d73 --- /dev/null +++ b/dev-lang/php/files/5.0.4/php5.0.4-session_save_path-segf.patch @@ -0,0 +1,164 @@ +--- sapi/apache2handler/sapi_apache2.c 2005-03-10 12:23:57.000000000 +0100 ++++ sapi/apache2handler/sapi_apache2.c 2005-10-26 16:09:39.000000000 +0200 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: sapi_apache2.c,v 1.40.2.7 2005/03/10 11:23:57 jorton Exp $ */ ++/* $Id: sapi_apache2.c,v 1.40.2.13 2005/10/17 19:35:39 rasmus Exp $ */ + + #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS + +@@ -111,10 +111,8 @@ + } else { + apr_table_add(ctx->r->headers_out, sapi_header->header, val); + } +- +- sapi_free_header(sapi_header); + +- return 0; ++ return SAPI_HEADER_ADD; + } + + static int +@@ -264,22 +262,17 @@ + + ctx = SG(server_context); + +- /* We use APLOG_STARTUP because it keeps us from printing the +- * data and time information at the beginning of the error log +- * line. Not sure if this is correct, but it mirrors what happens +- * with Apache 1.3 -- rbb +- */ + if (ctx == NULL) { /* we haven't initialized our ctx yet, oh well */ + ap_log_error(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, 0, NULL, "%s", msg); + } else { +- ap_log_rerror(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, 0, ctx->r, "%s", msg); ++ ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, ctx->r, "%s", msg); + } + } + + static void php_apache_sapi_log_message_ex(char *msg, request_rec *r) + { + if (r) { +- ap_log_rerror(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, 0, r, msg, r->filename); ++ ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r, msg, r->filename); + } else { + php_apache_sapi_log_message(msg); + } +@@ -453,15 +446,35 @@ + request_rec *parent_req = NULL; + TSRMLS_FETCH(); + ++#define PHPAP_INI_OFF \ ++ if (strcmp(r->protocol, "INCLUDED")) { \ ++ zend_try { zend_ini_deactivate(TSRMLS_C); } zend_end_try(); \ ++ } \ ++ + conf = ap_get_module_config(r->per_dir_config, &php5_module); ++ ++ /* apply_config() needs r in some cases, so allocate server_context early */ ++ ctx = SG(server_context); ++ if (ctx == NULL) { ++normal: ++ ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); ++ /* register a cleanup so we clear out the SG(server_context) ++ * after each request. Note: We pass in the pointer to the ++ * server_context in case this is handled by a different thread. ++ */ ++ apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); ++ ctx->r = r; ++ ctx = NULL; /* May look weird to null it here, but it is to catch the right case in the first_try later on */ ++ } else { ++ parent_req = ctx->r; ++ ctx->r = r; ++ } + apply_config(conf); + + if (strcmp(r->handler, PHP_MAGIC_TYPE) && strcmp(r->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(r->handler, PHP_SCRIPT)) { + /* Check for xbithack in this case. */ + if (!AP2(xbithack) || strcmp(r->handler, "text/html") || !(r->finfo.protection & APR_UEXECUTE)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + } +@@ -470,32 +483,24 @@ + * the configuration; default behaviour is to accept. */ + if (r->used_path_info == AP_REQ_REJECT_PATH_INFO + && r->path_info && r->path_info[0]) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + + /* handle situations where user turns the engine off */ + if (!AP2(engine)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + + if (r->finfo.filetype == 0) { + php_apache_sapi_log_message_ex("script '%s' not found or unable to stat", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + if (r->finfo.filetype == APR_DIR) { + php_apache_sapi_log_message_ex("attempt to invoke directory '%s' as script", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_FORBIDDEN; + } + +@@ -511,24 +516,29 @@ + + zend_first_try { + +- ctx = SG(server_context); + if (ctx == NULL) { +- ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); +- /* register a cleanup so we clear out the SG(server_context) +- * after each request. Note: We pass in the pointer to the +- * server_context in case this is handled by a different thread. +- */ +- apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); +- +- ctx->r = r; + brigade = apr_brigade_create(r->pool, r->connection->bucket_alloc); ++ ctx = SG(server_context); + ctx->brigade = brigade; + + if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { + zend_bailout(); + } + } else { +- parent_req = ctx->r; ++ if (!parent_req) { ++ parent_req = ctx->r; ++ } ++ if (parent_req && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { ++ if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { ++ zend_bailout(); ++ } ++ } ++ ++ /* check if comming due to ErrorDocument */ ++ if (parent_req && parent_req->status != HTTP_OK) { ++ parent_req = NULL; ++ goto normal; ++ } + ctx->r = r; + brigade = ctx->brigade; + } diff --git a/dev-lang/php/files/5.0.4/php5.0.4-xmlrcp-ccode.diff b/dev-lang/php/files/5.0.4/php5.0.4-xmlrcp-ccode.diff new file mode 100644 index 0000000..15e5950 --- /dev/null +++ b/dev-lang/php/files/5.0.4/php5.0.4-xmlrcp-ccode.diff @@ -0,0 +1,23 @@ +--- ext/xmlrpc/libxmlrpc/xml_element.c 2004-06-01 22:16:06.000000000 +0200 ++++ ext/xmlrpc/libxmlrpc/xml_element.c 2005-04-22 13:54:17.000000000 +0200 +@@ -113,7 +116,7 @@ + #include "expat.h" + #include "encodings.h" + +-#define my_free(thing) if(thing) {free(thing); thing = 0;} ++#define my_free(thing) if(thing) {free(thing); thing = NULL;} + + #define XML_DECL_START "<?xml" + #define XML_DECL_START_LEN sizeof(XML_DECL_START) - 1 +@@ -189,7 +192,10 @@ + + Q_Destroy(&root->children); + Q_Destroy(&root->attrs); +- my_free((char*)root->name); ++ if(root->name) { ++ free((char *)root->name); ++ root->name = NULL; ++ } + simplestring_free(&root->text); + my_free(root); + } diff --git a/dev-lang/php/files/5.0.5/CVS/Entries b/dev-lang/php/files/5.0.5/CVS/Entries new file mode 100644 index 0000000..fcb858a --- /dev/null +++ b/dev-lang/php/files/5.0.5/CVS/Entries @@ -0,0 +1,14 @@ +/php5.0.5-apache2sapi.patch/1.1/Wed Jan 4 09:24:48 2006/-ko/T1.1 +/php5.0.5-curl-open_basedir.patch/1.1/Wed Jan 4 09:24:48 2006/-ko/T1.1 +/php5.0.5-curl_safemode.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php5.0.5-fopen_wrappers.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5.0.5-gd-safe_mode.patch/1.1/Wed Jan 4 09:24:48 2006/-ko/T1.1 +/php5.0.5-gd_safe_mode.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5.0.5-globals_overwrite.patch/1.1/Thu Nov 3 14:09:24 2005/-ko/T1.1 +/php5.0.5-mbstring-header_inj.patch/1.1/Wed Jan 4 09:24:48 2006/-ko/T1.1 +/php5.0.5-multilib-search-path.patch/1.1/Wed Jan 4 09:24:48 2006/-ko/T1.1 +/php5.0.5-obj-serialize.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5.0.5-pspell-ext-segf.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5.0.5-session_save_path-segf.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5.0.5-tsrm-gcc4.patch/1.1/Wed Jan 4 09:24:48 2006/-ko/T1.1 +D diff --git a/dev-lang/php/files/5.0.5/CVS/Repository b/dev-lang/php/files/5.0.5/CVS/Repository new file mode 100644 index 0000000..5ae0be2 --- /dev/null +++ b/dev-lang/php/files/5.0.5/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.0.5 diff --git a/dev-lang/php/files/5.0.5/CVS/Root b/dev-lang/php/files/5.0.5/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.0.5/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.0.5/CVS/Tag b/dev-lang/php/files/5.0.5/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.0.5/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.0.5/php5.0.5-apache2sapi.patch b/dev-lang/php/files/5.0.5/php5.0.5-apache2sapi.patch new file mode 100644 index 0000000..2fa5fb3 --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-apache2sapi.patch @@ -0,0 +1,139 @@ +--- sapi/apache2handler/sapi_apache2.c 2005-09-02 15:51:26.000000000 +0200 ++++ sapi/apache2handler/sapi_apache2.c 2005-12-08 18:43:54.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: sapi_apache2.c,v 1.40.2.11 2005/09/02 13:51:26 sniper Exp $ */ ++/* $Id: sapi_apache2.c,v 1.40.2.15 2005/11/29 13:30:11 dmitry Exp $ */ + + #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS + +@@ -436,6 +436,18 @@ + php_request_shutdown(NULL); + } + ++static void php_apache_ini_dtor(request_rec *r, request_rec *p TSRMLS_DC) ++{ ++ if (strcmp(r->protocol, "INCLUDED")) { ++ zend_try { zend_ini_deactivate(TSRMLS_C); } zend_end_try(); ++ } ++ if (p) { ++ ((php_struct *)SG(server_context))->r = p; ++ } else { ++ apr_pool_cleanup_run(r->pool, (void *)&SG(server_context), php_server_context_cleanup); ++ } ++} ++ + static int php_handler(request_rec *r) + { + php_struct *ctx; +@@ -446,15 +458,32 @@ + request_rec *parent_req = NULL; + TSRMLS_FETCH(); + ++#define PHPAP_INI_OFF php_apache_ini_dtor(r, parent_req TSRMLS_CC); ++ + conf = ap_get_module_config(r->per_dir_config, &php5_module); ++ ++ /* apply_config() needs r in some cases, so allocate server_context early */ ++ ctx = SG(server_context); ++ if (ctx == NULL) { ++normal: ++ ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); ++ /* register a cleanup so we clear out the SG(server_context) ++ * after each request. Note: We pass in the pointer to the ++ * server_context in case this is handled by a different thread. ++ */ ++ apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); ++ ctx->r = r; ++ ctx = NULL; /* May look weird to null it here, but it is to catch the right case in the first_try later on */ ++ } else { ++ parent_req = ctx->r; ++ ctx->r = r; ++ } + apply_config(conf); + + if (strcmp(r->handler, PHP_MAGIC_TYPE) && strcmp(r->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(r->handler, PHP_SCRIPT)) { + /* Check for xbithack in this case. */ + if (!AP2(xbithack) || strcmp(r->handler, "text/html") || !(r->finfo.protection & APR_UEXECUTE)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + } +@@ -463,32 +492,24 @@ + * the configuration; default behaviour is to accept. */ + if (r->used_path_info == AP_REQ_REJECT_PATH_INFO + && r->path_info && r->path_info[0]) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + + /* handle situations where user turns the engine off */ + if (!AP2(engine)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + + if (r->finfo.filetype == 0) { + php_apache_sapi_log_message_ex("script '%s' not found or unable to stat", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + if (r->finfo.filetype == APR_DIR) { + php_apache_sapi_log_message_ex("attempt to invoke directory '%s' as script", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_FORBIDDEN; + } + +@@ -504,25 +525,24 @@ + + zend_first_try { + +- ctx = SG(server_context); + if (ctx == NULL) { +-normal: +- ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); +- /* register a cleanup so we clear out the SG(server_context) +- * after each request. Note: We pass in the pointer to the +- * server_context in case this is handled by a different thread. +- */ +- apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); +- +- ctx->r = r; + brigade = apr_brigade_create(r->pool, r->connection->bucket_alloc); ++ ctx = SG(server_context); + ctx->brigade = brigade; + + if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { + zend_bailout(); + } + } else { +- parent_req = ctx->r; ++ if (!parent_req) { ++ parent_req = ctx->r; ++ } ++ if (parent_req && parent_req->handler && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { ++ if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { ++ zend_bailout(); ++ } ++ } ++ + /* check if comming due to ErrorDocument */ + if (parent_req && parent_req->status != HTTP_OK) { + parent_req = NULL; diff --git a/dev-lang/php/files/5.0.5/php5.0.5-curl-open_basedir.patch b/dev-lang/php/files/5.0.5/php5.0.5-curl-open_basedir.patch new file mode 100644 index 0000000..4f16430 --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-curl-open_basedir.patch @@ -0,0 +1,48 @@ +--- ext/curl/interface.c 2005/06/02 21:04:43 1.46.2.8 ++++ ext/curl/interface.c 2005/11/29 11:03:29 1.46.2.13 +@@ -16,7 +16,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: interface.c,v 1.46.2.8 2005/06/02 21:04:43 tony2001 Exp $ */ ++/* $Id: interface.c,v 1.46.2.13 2005/11/29 11:03:29 dmitry Exp $ */ + + #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS + +@@ -62,8 +62,8 @@ static void _php_curl_close(zend_rsrc_li + #define CAAZ(s, v) add_assoc_zval_ex(return_value, s, sizeof(s), (zval *) v); + + #define PHP_CURL_CHECK_OPEN_BASEDIR(str, len) \ +- if (PG(open_basedir) && *PG(open_basedir) && \ +- strncasecmp(str, "file://", sizeof("file://") - 1) == 0) \ ++ if (((PG(open_basedir) && *PG(open_basedir)) || PG(safe_mode)) && \ ++ strncasecmp(str, "file:", sizeof("file:") - 1) == 0) \ + { \ + php_url *tmp_url; \ + \ +@@ -72,7 +72,7 @@ static void _php_curl_close(zend_rsrc_li + RETURN_FALSE; \ + } \ + \ +- if (php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ ++ if (tmp_url->query || tmp_url->fragment || php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ + (PG(safe_mode) && !php_checkuid(tmp_url->path, "rb+", CHECKUID_CHECK_MODE_PARAM)) \ + ) { \ + php_url_free(tmp_url); \ +@@ -1128,10 +1128,15 @@ PHP_FUNCTION(curl_setopt) + * must be explicitly cast to long in curl_formadd + * use since curl needs a long not an int. */ + if (*postval == '@') { ++ ++postval; ++ /* safe_mode / open_basedir check */ ++ if (php_check_open_basedir(postval TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(postval, "rb+", CHECKUID_CHECK_MODE_PARAM))) { ++ RETURN_FALSE; ++ } + error = curl_formadd(&first, &last, + CURLFORM_COPYNAME, string_key, + CURLFORM_NAMELENGTH, (long)string_key_len - 1, +- CURLFORM_FILE, ++postval, ++ CURLFORM_FILE, postval, + CURLFORM_END); + } else { + error = curl_formadd(&first, &last, diff --git a/dev-lang/php/files/5.0.5/php5.0.5-curl_safemode.patch b/dev-lang/php/files/5.0.5/php5.0.5-curl_safemode.patch new file mode 100644 index 0000000..91424e4 --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-curl_safemode.patch @@ -0,0 +1,46 @@ +--- ext/curl/interface.c 2005-06-02 23:04:43.000000000 +0200 ++++ ext/curl/interface.c.new 2005-10-31 23:18:13.000000000 +0100 +@@ -16,7 +16,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: interface.c,v 1.46.2.8 2005/06/02 21:04:43 tony2001 Exp $ */ ++/* $Id: interface.c,v 1.46.2.11 2005/10/17 02:42:32 iliaa Exp $ */ + + #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS + +@@ -62,7 +62,7 @@ + #define CAAZ(s, v) add_assoc_zval_ex(return_value, s, sizeof(s), (zval *) v); + + #define PHP_CURL_CHECK_OPEN_BASEDIR(str, len) \ +- if (PG(open_basedir) && *PG(open_basedir) && \ ++ if (((PG(open_basedir) && *PG(open_basedir)) || PG(safe_mode)) && \ + strncasecmp(str, "file://", sizeof("file://") - 1) == 0) \ + { \ + php_url *tmp_url; \ +@@ -72,7 +72,7 @@ + RETURN_FALSE; \ + } \ + \ +- if (php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ ++ if (tmp_url->query || php_check_open_basedir(tmp_url->path TSRMLS_CC) || \ + (PG(safe_mode) && !php_checkuid(tmp_url->path, "rb+", CHECKUID_CHECK_MODE_PARAM)) \ + ) { \ + php_url_free(tmp_url); \ +@@ -1128,10 +1128,15 @@ + * must be explicitly cast to long in curl_formadd + * use since curl needs a long not an int. */ + if (*postval == '@') { ++ ++postval; ++ /* safe_mode / open_basedir check */ ++ if (php_check_open_basedir(postval TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(postval, "rb+", CHECKUID_CHECK_MODE_PARAM))) { ++ RETURN_FALSE; ++ } + error = curl_formadd(&first, &last, + CURLFORM_COPYNAME, string_key, + CURLFORM_NAMELENGTH, (long)string_key_len - 1, +- CURLFORM_FILE, ++postval, ++ CURLFORM_FILE, postval, + CURLFORM_END); + } else { + error = curl_formadd(&first, &last, diff --git a/dev-lang/php/files/5.0.5/php5.0.5-fopen_wrappers.patch b/dev-lang/php/files/5.0.5/php5.0.5-fopen_wrappers.patch new file mode 100644 index 0000000..b945c11 --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-fopen_wrappers.patch @@ -0,0 +1,22 @@ +--- main/fopen_wrappers.c 2005/07/16 12:14:44 1.170.2.4 ++++ main/fopen_wrappers.c 2005/09/27 15:08:11 1.170.2.5 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: fopen_wrappers.c,v 1.170.2.4 2005/07/16 12:14:44 hyanantha Exp $ */ ++/* $Id: fopen_wrappers.c,v 1.170.2.5 2005/09/27 15:08:11 iliaa Exp $ */ + + /* {{{ includes + */ +@@ -109,8 +109,8 @@ PHPAPI int php_check_specific_open_based + /* Handler for basedirs that end with a / */ + resolved_basedir_len = strlen(resolved_basedir); + if (basedir[strlen(basedir) - 1] == PHP_DIR_SEPARATOR) { +- if (resolved_basedir[resolved_basedir_len - 1] == '/') { +- resolved_basedir[resolved_basedir_len - 1] = PHP_DIR_SEPARATOR; ++ if (resolved_basedir[resolved_basedir_len - 1] != PHP_DIR_SEPARATOR) { ++ resolved_basedir[resolved_basedir_len] = PHP_DIR_SEPARATOR; + resolved_basedir[++resolved_basedir_len] = '\0'; + } + } diff --git a/dev-lang/php/files/5.0.5/php5.0.5-gd-safe_mode.patch b/dev-lang/php/files/5.0.5/php5.0.5-gd-safe_mode.patch new file mode 100644 index 0000000..8b09432 --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-gd-safe_mode.patch @@ -0,0 +1,95 @@ +--- ext/gd/gd.c 2005-12-08 15:44:36.000000000 +0100 ++++ ext/gd/gd.c 2005-12-08 17:21:55.000000000 +0100 +@@ -705,7 +705,7 @@ + + convert_to_string_ex(file); + +- stream = php_stream_open_wrapper(Z_STRVAL_PP(file), "rb", IGNORE_PATH | IGNORE_URL_WIN | REPORT_ERRORS, NULL); ++ stream = php_stream_open_wrapper(Z_STRVAL_PP(file), "rb", ENFORCE_SAFE_MODE | IGNORE_PATH | IGNORE_URL_WIN | REPORT_ERRORS, NULL); + if (stream == NULL) { + RETURN_FALSE; + } +@@ -889,6 +889,10 @@ + convert_to_boolean_ex(dither); + convert_to_long_ex(ncolors); + ++ if (Z_LVAL_PP(ncolors) <= 0) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Number of colors has to be greater than zero"); ++ RETURN_FALSE; ++ } + gdImageTrueColorToPalette(im, Z_LVAL_PP(dither), Z_LVAL_PP(ncolors)); + + RETURN_TRUE; +@@ -1518,7 +1522,7 @@ + + fn = Z_STRVAL_PP(file); + +- stream = php_stream_open_wrapper(fn, "rb", REPORT_ERRORS|IGNORE_PATH|IGNORE_URL_WIN, NULL); ++ stream = php_stream_open_wrapper(fn, "rb", ENFORCE_SAFE_MODE|REPORT_ERRORS|IGNORE_PATH|IGNORE_URL_WIN, NULL); + if (stream == NULL) { + RETURN_FALSE; + } +@@ -1726,10 +1730,7 @@ + } + + if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { +- if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC)) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid filename '%s'", fn); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn, "Invalid filename"); + + fp = VCWD_FOPEN(fn, "wb"); + if (!fp) { +@@ -3824,16 +3825,10 @@ + } + + /* Check origin file */ +- if (!fn_org || fn_org == empty_string || php_check_open_basedir(fn_org TSRMLS_CC)) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid origin filename '%s'", fn_org); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn_org, "Invalid origin filename"); + + /* Check destination file */ +- if (!fn_dest || fn_dest == empty_string || php_check_open_basedir(fn_dest TSRMLS_CC)) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid destination filename '%s'", fn_dest); +- RETURN_FALSE; +- } ++ PHP_GD_CHECK_OPEN_BASEDIR(fn_dest, "Invalid destination filename"); + + /* Open origin file */ + org = VCWD_FOPEN(fn_org, "rb"); +--- ext/gd/gd_ctx.c 2005-12-08 15:44:42.000000000 +0100 ++++ ext/gd/gd_ctx.c 2005-12-08 17:25:24.000000000 +0100 +@@ -82,10 +82,8 @@ + } + + if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { +- if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC)) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid filename '%s'", fn); +- RETURN_FALSE; +- } ++ ++ PHP_GD_CHECK_OPEN_BASEDIR(fn, "Invalid filename"); + + fp = VCWD_FOPEN(fn, "wb"); + if (!fp) { +--- ext/gd/php_gd.h 2005-12-08 15:44:49.000000000 +0100 ++++ ext/gd/php_gd.h 2005-12-08 17:29:53.000000000 +0100 +@@ -30,6 +30,15 @@ + + #if HAVE_LIBGD + ++/* open_basedir and safe_mode checks */ ++#define PHP_GD_CHECK_OPEN_BASEDIR(filename, errormsg) \ ++ if (!filename || php_check_open_basedir(filename TSRMLS_CC) || \ ++ (PG(safe_mode) && !php_checkuid(filename, NULL, CHECKUID_CHECK_FILE_AND_DIR)) \ ++ ) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, errormsg); \ ++ RETURN_FALSE; \ ++ } ++ + #define PHP_GDIMG_TYPE_GIF 1 + #define PHP_GDIMG_TYPE_PNG 2 + #define PHP_GDIMG_TYPE_JPG 3 diff --git a/dev-lang/php/files/5.0.5/php5.0.5-gd_safe_mode.patch b/dev-lang/php/files/5.0.5/php5.0.5-gd_safe_mode.patch new file mode 100644 index 0000000..05bb354 --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-gd_safe_mode.patch @@ -0,0 +1,20 @@ +--- ext/gd/gd.c 2005/05/06 16:49:04 1.294.2.12 ++++ ext/gd/gd.c 2005/10/06 20:42:56 1.294.2.13 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: gd.c,v 1.294.2.12 2005/05/06 16:49:04 tony2001 Exp $ */ ++/* $Id: gd.c,v 1.294.2.13 2005/10/06 20:42:56 iliaa Exp $ */ + + /* gd 1.2 is copyright 1994, 1995, Quest Protein Database Center, + Cold Spring Harbor Labs. */ +@@ -1726,7 +1726,7 @@ static void _php_image_output(INTERNAL_F + } + + if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { +- if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC)) { ++ if (!fn || fn == empty_string || php_check_open_basedir(fn TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(fn, "rb+", CHECKUID_CHECK_FILE_AND_DIR))) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid filename '%s'", fn); + RETURN_FALSE; + } diff --git a/dev-lang/php/files/5.0.5/php5.0.5-globals_overwrite.patch b/dev-lang/php/files/5.0.5/php5.0.5-globals_overwrite.patch new file mode 100644 index 0000000..cdae541 --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-globals_overwrite.patch @@ -0,0 +1,203 @@ +--- ext/standard/array.c 2005-09-01 14:01:01.000000000 +0200 ++++ ext/standard/array.c 2005-11-01 01:15:13.000000000 +0100 +@@ -21,7 +21,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: array.c,v 1.266.2.25 2005/09/01 12:01:01 dmitry Exp $ */ ++/* $Id: array.c,v 1.266.2.29 2005/10/28 09:57:15 dmitry Exp $ */ + + #include "php.h" + #include "php_ini.h" +@@ -1050,6 +1050,7 @@ + if (recursive && Z_TYPE_PP(args[0]) == IS_ARRAY) { + HashTable *thash; + ++ SEPARATE_ZVAL_TO_MAKE_IS_REF(args[0]); + thash = HASH_OF(*(args[0])); + if (thash == target_hash) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "recursion detected"); +@@ -1373,6 +1374,10 @@ + /* break omitted intentionally */ + + case EXTR_OVERWRITE: ++ /* GLOBALS protection */ ++ if (var_exists && !strcmp(var_name, "GLOBALS")) { ++ break; ++ } + smart_str_appendl(&final_name, var_name, var_name_len); + break; + +@@ -2487,8 +2492,9 @@ + Z_LVAL_PP(tmp)++; + } + } else if (Z_TYPE_PP(entry) == IS_STRING) { +- /* make sure our array does not end up with numeric string keys */ +- if (is_numeric_string(Z_STRVAL_PP(entry), Z_STRLEN_PP(entry), NULL, NULL, 0) == IS_LONG) { ++ /* make sure our array does not end up with numeric string keys ++ * but don't touch those strings that start with 0 */ ++ if (!(Z_STRLEN_PP(entry) > 1 && Z_STRVAL_PP(entry)[0] == '0') && is_numeric_string(Z_STRVAL_PP(entry), Z_STRLEN_PP(entry), NULL, NULL, 0) == IS_LONG) { + zval tmp_entry; + + tmp_entry = **entry; +@@ -3975,7 +3981,7 @@ + PHP_FUNCTION(array_filter) + { + zval **input, **callback = NULL; +- zval *array; ++ zval *array, *func = NULL; + zval **operand; + zval **args[1]; + zval *retval = NULL; +@@ -3995,10 +4001,13 @@ + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The first argument should be an array"); + return; + } ++ if (callback) { ++ func = *callback; ++ } + array = *input; + + if (ZEND_NUM_ARGS() > 1) { +- if (!zend_is_callable(*callback, 0, &callback_name)) { ++ if (!zend_is_callable(func, 0, &callback_name)) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The second argument, '%s', should be a valid callback", callback_name); + efree(callback_name); + return; +@@ -4015,14 +4024,14 @@ + zend_hash_get_current_data_ex(Z_ARRVAL_P(array), (void **)&operand, &pos) == SUCCESS; + zend_hash_move_forward_ex(Z_ARRVAL_P(array), &pos)) { + +- if (callback) { ++ if (func) { + zend_fcall_info fci; + + args[0] = operand; + + fci.size = sizeof(fci); + fci.function_table = EG(function_table); +- fci.function_name = *callback; ++ fci.function_name = func; + fci.symbol_table = NULL; + fci.object_pp = NULL; + fci.retval_ptr_ptr = &retval; +--- ext/standard/basic_functions.c 2005-08-21 20:36:33.000000000 +0200 ++++ ext/standard/basic_functions.c 2005-11-01 01:15:20.000000000 +0100 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: basic_functions.c,v 1.673.2.18 2005/08/21 18:36:33 zeev Exp $ */ ++/* $Id: basic_functions.c,v 1.673.2.21 2005/09/29 16:31:20 iliaa Exp $ */ + + #include "php.h" + #include "php_streams.h" +@@ -742,8 +743,8 @@ + PHP_FE(prev, first_arg_force_ref) + PHP_FE(next, first_arg_force_ref) + PHP_FE(reset, first_arg_force_ref) +- PHP_FE(current, first_arg_force_ref) +- PHP_FE(key, first_arg_force_ref) ++ PHP_FE(current, NULL) ++ PHP_FE(key, NULL) + PHP_FE(min, NULL) + PHP_FE(max, NULL) + PHP_FE(in_array, NULL) +@@ -3076,11 +3077,25 @@ + prefix = va_arg(args, char *); + prefix_len = va_arg(args, uint); + +- new_key_len = prefix_len + hash_key->nKeyLength; +- new_key = (char *) emalloc(new_key_len); ++ if (!prefix_len) { ++ if (!hash_key->nKeyLength) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Numeric key detected - possible security hazard."); ++ return 0; ++ } else if (!strcmp(hash_key->arKey, "GLOBALS")) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Attempted GLOBALS variable overwrite."); ++ return 0; ++ } ++ } ++ ++ if (hash_key->nKeyLength) { ++ new_key_len = prefix_len + hash_key->nKeyLength; ++ new_key = (char *) emalloc(new_key_len); + +- memcpy(new_key, prefix, prefix_len); +- memcpy(new_key+prefix_len, hash_key->arKey, hash_key->nKeyLength); ++ memcpy(new_key, prefix, prefix_len); ++ memcpy(new_key+prefix_len, hash_key->arKey, hash_key->nKeyLength); ++ } else { ++ new_key_len = spprintf(&new_key, 0, "%s%ld", prefix, hash_key->h); ++ } + + zend_hash_del(&EG(symbol_table), new_key, new_key_len); + ZEND_SET_SYMBOL_WITH_LENGTH(&EG(symbol_table), new_key, new_key_len, *var, (*var)->refcount+1, 0); +--- ext/standard/string.c 2005-07-16 13:18:35.000000000 +0200 ++++ ext/standard/string.c 2005-11-01 01:15:27.000000000 +0100 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: string.c,v 1.420.2.12 2005/07/16 11:18:35 hyanantha Exp $ */ ++/* $Id: string.c,v 1.420.2.13 2005/09/28 22:35:43 iliaa Exp $ */ + + /* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */ + +@@ -3809,7 +3809,6 @@ + zval *sarg; + char *res = NULL; + int argCount; +- int old_rg; + + argCount = ZEND_NUM_ARGS(); + if (argCount < 1 || argCount > 2 || zend_get_parameters_ex(argCount, &arg, &arrayArg) == FAILURE) { +@@ -3822,19 +3821,18 @@ + res = estrndup(Z_STRVAL_P(sarg), Z_STRLEN_P(sarg)); + } + +- old_rg = PG(register_globals); + if (argCount == 1) { +- PG(register_globals) = 1; +- sapi_module.treat_data(PARSE_STRING, res, NULL TSRMLS_CC); ++ zval tmp; ++ Z_ARRVAL(tmp) = EG(active_symbol_table); ++ ++ sapi_module.treat_data(PARSE_STRING, res, &tmp TSRMLS_CC); + } else { +- PG(register_globals) = 0; + /* Clear out the array that was passed in. */ + zval_dtor(*arrayArg); + array_init(*arrayArg); + + sapi_module.treat_data(PARSE_STRING, res, *arrayArg TSRMLS_CC); + } +- PG(register_globals) = old_rg; + } + /* }}} */ + +--- main/php_variables.c 2005-09-01 21:15:51.000000000 +0200 ++++ main/php_variables.c 2005-11-01 01:16:22.000000000 +0100 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: php_variables.c,v 1.81.2.12 2005/09/01 19:15:51 iliaa Exp $ */ ++/* $Id: php_variables.c,v 1.81.2.13 2005/09/28 22:35:42 iliaa Exp $ */ + + #include <stdio.h> + #include "php.h" +@@ -103,6 +103,13 @@ + zval_dtor(val); + return; + } ++ ++ /* GLOBALS hijack attempt, reject parameter */ ++ if (symtable1 == EG(active_symbol_table) && !strcmp("GLOBALS", var)) { ++ zval_dtor(val); ++ return; ++ } ++ + /* ensure that we don't have spaces or dots in the variable name (not binary safe) */ + for (p=var; *p; p++) { + switch(*p) { diff --git a/dev-lang/php/files/5.0.5/php5.0.5-mbstring-header_inj.patch b/dev-lang/php/files/5.0.5/php5.0.5-mbstring-header_inj.patch new file mode 100644 index 0000000..93701e9 --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-mbstring-header_inj.patch @@ -0,0 +1,133 @@ +--- ext/mbstring/mbstring.c 2005/02/21 15:15:08 1.214.2.4 ++++ ext/mbstring/mbstring.c 2005/11/25 22:18:45 1.214.2.7 +@@ -17,7 +17,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: mbstring.c,v 1.214.2.4 2005/02/21 15:15:08 moriyoshi Exp $ */ ++/* $Id: mbstring.c,v 1.214.2.7 2005/11/25 22:18:45 hirokawa Exp $ */ + + /* + * PHP 4 Multibyte String module "mbstring" +@@ -2267,7 +2267,7 @@ PHP_FUNCTION(mb_list_encodings) + } + /* }}} */ + +-/* {{{ proto string mb_encode_mimeheader(string str [, string charset [, string transfer-encoding [, string linefeed]]]) ++/* {{{ proto string mb_encode_mimeheader(string str [, string charset [, string transfer-encoding [, string linefeed [, int indent]]]]) + Converts the string to MIME "encoded-word" in the format of =?charset?(B|Q)?encoded_string?= */ + PHP_FUNCTION(mb_encode_mimeheader) + { +@@ -2279,12 +2279,13 @@ PHP_FUNCTION(mb_encode_mimeheader) + int trans_enc_name_len; + char *linefeed = "\r\n"; + int linefeed_len; ++ int indent = 0; + + mbfl_string_init(&string); + string.no_language = MBSTRG(current_language); + string.no_encoding = MBSTRG(current_internal_encoding); + +- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|sss", (char **)&string.val, &string.len, &charset_name, &charset_name_len, &trans_enc_name, &trans_enc_name_len, &linefeed, &linefeed_len) == FAILURE) { ++ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|sssl", (char **)&string.val, &string.len, &charset_name, &charset_name_len, &trans_enc_name, &trans_enc_name_len, &linefeed, &linefeed_len, &indent) == FAILURE) { + return; + } + +@@ -2314,7 +2315,7 @@ PHP_FUNCTION(mb_encode_mimeheader) + } + + mbfl_string_init(&result); +- ret = mbfl_mime_header_encode(&string, &result, charset, transenc, linefeed, 0); ++ ret = mbfl_mime_header_encode(&string, &result, charset, transenc, linefeed, indent); + if (ret != NULL) { + RETVAL_STRINGL((char *)ret->val, ret->len, 0) /* the string is already strdup()'ed */ + } else { +@@ -2770,6 +2771,15 @@ PHP_FUNCTION(mb_decode_numericentity) + */ + #if HAVE_SENDMAIL + ++#define SKIP_LONG_HEADER_SEP_MBSTRING(str, pos) \ ++ if (str[pos] == '\r' && str[pos + 1] == '\n' && (str[pos + 2] == ' ' || str[pos + 2] == '\t')) { \ ++ pos += 3; \ ++ while (str[pos] == ' ' || str[pos] == '\t') { \ ++ pos++; \ ++ } \ ++ continue; \ ++ } ++ + #define APPEND_ONE_CHAR(ch) do { \ + if (token.a > 0) { \ + smart_str_appendc(&token, ch); \ +@@ -2981,6 +2991,9 @@ PHP_FUNCTION(mb_send_mail) + int subject_len; + char *extra_cmd=NULL; + int extra_cmd_len; ++ int i; ++ char *to_r; ++ char *force_extra_parameters = INI_STR("mail.force_extra_parameters"); + struct { + int cnt_type:1; + int cnt_trans_enc:1; +@@ -3086,7 +3099,30 @@ PHP_FUNCTION(mb_send_mail) + } + + /* To: */ +- if (to == NULL || to_len <= 0) { ++ if (to != NULL) { ++ if (to_len > 0) { ++ to_r = estrndup(to, to_len); ++ for (; to_len; to_len--) { ++ if (!isspace((unsigned char) to_r[to_len - 1])) { ++ break; ++ } ++ to_r[to_len - 1] = '\0'; ++ } ++ for (i = 0; to_r[i]; i++) { ++ if (iscntrl((unsigned char) to_r[i])) { ++ /* According to RFC 822, section 3.1.1 long headers may be separated into ++ * parts using CRLF followed at least one linear-white-space character ('\t' or ' '). ++ * To prevent these separators from being replaced with a space, we use the ++ * SKIP_LONG_HEADER_SEP_MBSTRING to skip over them. ++ */ ++ SKIP_LONG_HEADER_SEP_MBSTRING(to_r, i); ++ to_r[i] = ' '; ++ } ++ } ++ } else { ++ to_r = to; ++ } ++ } else { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Missing To: field"); + err = 1; + } +@@ -3182,12 +3218,20 @@ PHP_FUNCTION(mb_send_mail) + mbfl_memory_device_output('\0', &device); + headers = (char *)device.buffer; + +- if (!err && php_mail(to, subject, message, headers, extra_cmd TSRMLS_CC)) { ++ if (force_extra_parameters) { ++ extra_cmd = estrdup(force_extra_parameters); ++ } else if (extra_cmd) { ++ extra_cmd = php_escape_shell_cmd(extra_cmd); ++ } ++ ++ if (!err && php_mail(to_r, subject, message, headers, extra_cmd TSRMLS_CC)) { + RETVAL_TRUE; + } else { + RETVAL_FALSE; + } +- ++ if (to_r != to) { ++ efree(to_r); ++ } + if (subject_buf) { + efree((void *)subject_buf); + } +@@ -3198,6 +3242,7 @@ PHP_FUNCTION(mb_send_mail) + zend_hash_destroy(&ht_headers); + } + ++#undef SKIP_LONG_HEADER_SEP_MBSTRING + #undef APPEND_ONE_CHAR + #undef SEPARATE_SMART_STR + #undef PHP_MBSTR_MAIL_MIME_HEADER1 diff --git a/dev-lang/php/files/5.0.5/php5.0.5-multilib-search-path.patch b/dev-lang/php/files/5.0.5/php5.0.5-multilib-search-path.patch new file mode 100644 index 0000000..6580e1b --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-multilib-search-path.patch @@ -0,0 +1,1372 @@ +diff -Nru php-5.0.5.orig/acinclude.m4 php-5.0.5/acinclude.m4 +--- php-5.0.5.orig/acinclude.m4 2005-07-26 00:31:07.000000000 +0200 ++++ php-5.0.5/acinclude.m4 2005-12-04 16:12:45.000000000 +0100 +@@ -190,7 +190,7 @@ + unset ac_new_flags + for i in [$]$1; do + case [$]i in +- -L/usr/lib|-L/usr/lib/[)] ;; ++ -L/usr/lib|-L/usr/lib/|-L/usr/lib64|-L/usr/lib64/[)] ;; + *[)] ac_new_flags="[$]ac_new_flags [$]i" ;; + esac + done +@@ -641,7 +641,7 @@ + ]) + + AC_DEFUN([PHP_PROG_SENDMAIL],[ +-PHP_ALT_PATH=/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib ++PHP_ALT_PATH=/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib:/usr/lib64 + AC_PATH_PROG(PROG_SENDMAIL, sendmail,[], $PATH:$PHP_ALT_PATH) + if test -n "$PROG_SENDMAIL"; then + AC_DEFINE(HAVE_SENDMAIL,1,[whether you have sendmail]) +@@ -852,7 +852,9 @@ + dnl add a library to linkpath/runpath + dnl + AC_DEFUN([PHP_ADD_LIBPATH],[ +- if test "$1" != "/usr/lib"; then ++ case x$1 in ++ x/usr/lib|x/usr/lib64) ;; ++ *) + PHP_EXPAND_PATH($1, ai_p) + ifelse([$2],,[ + _PHP_ADD_LIBPATH_GLOBAL([$ai_p]) +@@ -862,8 +864,8 @@ + else + _PHP_ADD_LIBPATH_GLOBAL([$ai_p]) + fi +- ]) +- fi ++ ]) ;; ++ esac + ]) + + dnl +@@ -1669,15 +1671,20 @@ + fi + + for i in $PHP_KERBEROS; do +- if test -f $i/lib/libkrb5.a || test -f $i/lib/libkrb5.$SHLIB_SUFFIX_NAME; then ++ if test -f $i/lib/libkrb5.a -o -f $i/lib/libkrb5.$SHLIB_SUFFIX_NAME; then + PHP_KERBEROS_DIR=$i ++ PHP_KERBEROS_LIBDIR=$i/lib ++ break ++ elif test -f $i/lib64/libkrb5.a -o -f $i/lib64/libkrb5.$SHLIB_SUFFIX_NAME; then ++ PHP_KERBEROS_DIR=$i ++ PHP_KERBEROS_LIBDIR=$i/lib64 + break + fi + done + + if test "$PHP_KERBEROS_DIR"; then + found_kerberos=yes +- PHP_ADD_LIBPATH($PHP_KERBEROS_DIR/lib, $1) ++ PHP_ADD_LIBPATH($PHP_KERBEROS_LIBDIR, $1) + PHP_ADD_LIBRARY(gssapi_krb5, 1, $1) + PHP_ADD_LIBRARY(krb5, 1, $1) + PHP_ADD_LIBRARY(k5crypto, 1, $1) +@@ -1749,6 +1756,9 @@ + if test -r $i/lib/libssl.a -o -r $i/lib/libssl.$SHLIB_SUFFIX_NAME; then + OPENSSL_LIBDIR=$i/lib + fi ++ if test -r $i/lib64/libssl.a -o -r $i/lib64/libssl.$SHLIB_SUFFIX_NAME; then ++ OPENSSL_LIBDIR=$i/lib64 ++ fi + test -n "$OPENSSL_INCDIR" && test -n "$OPENSSL_LIBDIR" && break + done + +@@ -1869,7 +1879,9 @@ + fi + + if test -f $ICONV_DIR/lib/lib$iconv_lib_name.a || +- test -f $ICONV_DIR/lib/lib$iconv_lib_name.$SHLIB_SUFFIX_NAME ++ test -f $ICONV_DIR/lib/lib$iconv_lib_name.$SHLIB_SUFFIX_NAME || ++ test -f $ICONV_DIR/lib64/lib$iconv_lib_name.a || ++ test -f $ICONV_DIR/lib64/lib$iconv_lib_name.$SHLIB_SUFFIX_NAME + then + PHP_CHECK_LIBRARY($iconv_lib_name, libiconv, [ + found_iconv=yes +diff -Nru php-5.0.5.orig/ext/bz2/config.m4 php-5.0.5/ext/bz2/config.m4 +--- php-5.0.5.orig/ext/bz2/config.m4 2004-01-21 06:04:30.000000000 +0100 ++++ php-5.0.5/ext/bz2/config.m4 2005-12-04 16:41:58.000000000 +0100 +@@ -19,6 +19,12 @@ + done + fi + ++ for j in lib64 lib; do ++ if test -d $BZIP_DIR/$j; then ++ BZIP_LIBDIR=$BZIP_DIR/$j ++ fi ++ done ++ + if test -z "$BZIP_DIR"; then + AC_MSG_RESULT(not found) + AC_MSG_ERROR(Please reinstall the BZip2 distribution) +@@ -27,12 +33,12 @@ + PHP_CHECK_LIBRARY(bz2, BZ2_bzerror, + [ + PHP_ADD_INCLUDE($BZIP_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(bz2, $BZIP_DIR/lib, BZ2_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(bz2, $BZIP_LIBDIR, BZ2_SHARED_LIBADD) + AC_DEFINE(HAVE_BZ2,1,[ ]) + ], [ + AC_MSG_ERROR(bz2 module requires libbz2 >= 1.0.0) + ], [ +- -L$BZIP_DIR/lib ++ -L$BZIP_LIBDIR + ]) + + PHP_NEW_EXTENSION(bz2, bz2.c, $ext_shared) +diff -Nru php-5.0.5.orig/ext/curl/config.m4 php-5.0.5/ext/curl/config.m4 +--- php-5.0.5.orig/ext/curl/config.m4 2005-02-09 17:23:31.000000000 +0100 ++++ php-5.0.5/ext/curl/config.m4 2005-12-04 16:43:25.000000000 +0100 +@@ -49,9 +49,15 @@ + AC_MSG_ERROR(cURL version 7.10.5 or later is required to compile php with cURL support) + fi + ++ for j in lib64 lib; do ++ if test -d $CURL_DIR/$j; then ++ CURL_LIBDIR=$CURL_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($CURL_DIR/include) + PHP_EVAL_LIBLINE($CURL_LIBS, CURL_SHARED_LIBADD) +- PHP_ADD_LIBRARY_WITH_PATH(curl, $CURL_DIR/lib, CURL_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(curl, $CURL_LIBDIR, CURL_SHARED_LIBADD) + + PHP_CHECK_LIBRARY(curl,curl_easy_perform, + [ +@@ -59,14 +65,14 @@ + ],[ + AC_MSG_ERROR(There is something wrong. Please check config.log for more information.) + ],[ +- $CURL_LIBS -L$CURL_DIR/lib ++ $CURL_LIBS -L$CURL_LIBDIR + ]) + + PHP_CHECK_LIBRARY(curl,curl_version_info, + [ + AC_DEFINE(HAVE_CURL_VERSION_INFO,1,[ ]) + ],[],[ +- $CURL_LIBS -L$CURL_DIR/lib ++ $CURL_LIBS -L$CURL_LIBDIR + ]) + + if test "$PHP_CURLWRAPPERS" != "no" ; then +diff -Nru php-5.0.5.orig/ext/dba/config.m4 php-5.0.5/ext/dba/config.m4 +--- php-5.0.5.orig/ext/dba/config.m4 2005-08-22 21:59:36.000000000 +0200 ++++ php-5.0.5/ext/dba/config.m4 2005-12-04 16:58:22.000000000 +0100 +@@ -80,13 +80,19 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + for LIB in qdbm; do + PHP_CHECK_LIBRARY($LIB, dpopen, [ + AC_DEFINE_UNQUOTED(QDBM_INCLUDE_FILE, "$THIS_INCLUDE", [ ]) + AC_DEFINE(DBA_QDBM, 1, [ ]) + THIS_LIBS=$LIB +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + if test -n "$THIS_LIBS"; then + break + fi +@@ -115,12 +121,18 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + PHP_CHECK_LIBRARY(gdbm, gdbm_open, [ + AC_DEFINE_UNQUOTED(GDBM_INCLUDE_FILE, "$THIS_INCLUDE", [ ]) + AC_DEFINE(DBA_GDBM, 1, [ ]) + THIS_LIBS=gdbm +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + fi + + PHP_DBA_STD_ASSIGN +@@ -145,14 +157,20 @@ + break + fi + done +- ++ ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + for LIB in ndbm db1 c; do + PHP_CHECK_LIBRARY($LIB, dbm_open, [ + AC_DEFINE_UNQUOTED(NDBM_INCLUDE_FILE, "$THIS_INCLUDE", [ ]) + AC_DEFINE(DBA_NDBM, 1, [ ]) + THIS_LIBS=$LIB +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + if test -n "$THIS_LIBS"; then + break + fi +@@ -170,25 +188,28 @@ + dnl parameters(version, library list, function) + AC_DEFUN([PHP_DBA_DB_CHECK],[ + for LIB in $2; do +- if test -f $THIS_PREFIX/lib/lib$LIB.a -o -f $THIS_PREFIX/lib/lib$LIB.$SHLIB_SUFFIX_NAME; then +- PHP_TEMP_LDFLAGS(-L$THIS_PREFIX/lib, -l$LIB,[ +- AC_TRY_LINK([ ++ for LIBDIR in lib64 lib; do ++ if test -f $THIS_PREFIX/$LIBDIR/lib$LIB.a -o -f $THIS_PREFIX/$LIBDIR/lib$LIB.$SHLIB_SUFFIX_NAME; then ++ PHP_TEMP_LDFLAGS(-L$THIS_PREFIX/$LIBDIR, -l$LIB,[ ++ AC_TRY_LINK([ + #include "$THIS_INCLUDE" +- ],[ +- $3; +- ],[ +- AC_EGREP_CPP(yes,[ ++ ],[ ++ $3; ++ ],[ ++ AC_EGREP_CPP(yes,[ + #include "$THIS_INCLUDE" + #if DB_VERSION_MAJOR == $1 +- yes ++ yes + #endif +- ],[ +- THIS_LIBS=$LIB +- break ++ ],[ ++ THIS_LIBS=$LIB ++ break ++ ]) + ]) + ]) +- ]) +- fi ++ fi ++ done ++ test -n "$THIS_LIBS" && break + done + if test -z "$THIS_LIBS"; then + AC_MSG_CHECKING(for db$1 major version) +@@ -352,6 +373,12 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + for LIB in dbm c gdbm; do + PHP_CHECK_LIBRARY($LIB, dbminit, [ +@@ -366,7 +393,7 @@ + fi + AC_DEFINE(DBA_DBM, 1, [ ]) + THIS_LIBS=$LIB +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + if test -n "$THIS_LIBS"; then + break + fi +@@ -402,13 +429,19 @@ + fi + done + ++ for j in lib64 lib; do ++ if test -d $THIS_PREFIX/$j; then ++ THIS_PREFIX_LIBDIR=$THIS_PREFIX/$j ++ fi ++ done ++ + if test -n "$THIS_INCLUDE"; then + for LIB in cdb c; do + PHP_CHECK_LIBRARY($LIB, cdb_read, [ + AC_DEFINE_UNQUOTED(CDB_INCLUDE_FILE, "$THIS_INCLUDE", [ ]) + AC_DEFINE(DBA_CDB, 1, [ ]) + THIS_LIBS=$LIB +- ], [], [-L$THIS_PREFIX/lib]) ++ ], [], [-L$THIS_PREFIX_LIBDIR]) + if test -n "$THIS_LIBS"; then + break + fi +diff -Nru php-5.0.5.orig/ext/gd/config.m4 php-5.0.5/ext/gd/config.m4 +--- php-5.0.5.orig/ext/gd/config.m4 2005-05-17 14:23:02.000000000 +0200 ++++ php-5.0.5/ext/gd/config.m4 2005-12-04 17:20:08.000000000 +0100 +@@ -50,8 +50,15 @@ + AC_DEFUN([PHP_GD_JPEG],[ + if test "$PHP_JPEG_DIR" != "no"; then + +- for i in $PHP_JPEG_DIR /usr/local /usr; do +- test -f $i/lib/libjpeg.$SHLIB_SUFFIX_NAME -o -f $i/lib/libjpeg.a && GD_JPEG_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_JPEG_DIR /usr/local /usr; do ++ if test -f "$i/$j/libjpeg.$SHLIB_SUFFIX_NAME" -o -f "$i/$j/libjpeg.a"; then ++ GD_JPEG_DIR=$i ++ GD_JPEG_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_JPEG_DIR" && break + done + + if test -z "$GD_JPEG_DIR"; then +@@ -61,11 +68,11 @@ + PHP_CHECK_LIBRARY(jpeg,jpeg_read_header, + [ + PHP_ADD_INCLUDE($GD_JPEG_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(jpeg, $GD_JPEG_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(jpeg, $GD_JPEG_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libjpeg.(a|so). Please check config.log for more information.]) + ],[ +- -L$GD_JPEG_DIR/lib ++ -L$GD_JPEG_LIB_DIR + ]) + else + AC_MSG_RESULT([If configure fails try --with-jpeg-dir=<DIR>]) +@@ -75,8 +82,15 @@ + AC_DEFUN([PHP_GD_PNG],[ + if test "$PHP_PNG_DIR" != "no"; then + +- for i in $PHP_PNG_DIR /usr/local /usr; do +- test -f $i/lib/libpng.$SHLIB_SUFFIX_NAME -o -f $i/lib/libpng.a && GD_PNG_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_PNG_DIR /usr/local /usr; do ++ if test -f "$i/$j/libpng.$SHLIB_SUFFIX_NAME" -o -f "$i/$j/libpng.a"; then ++ GD_PNG_DIR=$i ++ GD_PNG_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_PNG_DIR" && break + done + + if test -z "$GD_PNG_DIR"; then +@@ -91,15 +105,21 @@ + AC_MSG_ERROR([png.h not found.]) + fi + ++ for j in lib64 lib; do ++ if test -d $PHP_ZLIB_DIR/$j; then ++ PHP_ZLIB_LIB_DIR=$PHP_ZLIB_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(png,png_write_image, + [ + PHP_ADD_INCLUDE($GD_PNG_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR/lib, GD_SHARED_LIBADD) +- PHP_ADD_LIBRARY_WITH_PATH(png, $GD_PNG_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_LIB_DIR, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(png, $GD_PNG_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libpng.(a|so) or libz.(a|so). Please check config.log for more information.]) + ],[ +- -L$PHP_ZLIB_DIR/lib -lz -L$GD_PNG_DIR/lib ++ -L$PHP_ZLIB_LIB_DIR -lz -L$GD_PNG_LIB_DIR + ]) + + else +@@ -110,8 +130,15 @@ + AC_DEFUN([PHP_GD_XPM],[ + if test "$PHP_XPM_DIR" != "no"; then + +- for i in $PHP_XPM_DIR /usr/local /usr/X11R6 /usr; do +- test -f $i/lib/libXpm.$SHLIB_SUFFIX_NAME -o -f $i/lib/libXpm.a && GD_XPM_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_XPM_DIR /usr/local /usr/X11R6 /usr; do ++ if test -f "$i/$j/libXpm.$SHLIB_SUFFIX_NAME" -o -f "$i/$j/libXpm.a"; then ++ GD_XPM_DIR=$i ++ GD_XPM_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_XPM_DIR" && break + done + + if test -z "$GD_XPM_DIR"; then +@@ -129,12 +156,12 @@ + PHP_CHECK_LIBRARY(Xpm,XpmFreeXpmImage, + [ + PHP_ADD_INCLUDE($GD_XPM_INC) +- PHP_ADD_LIBRARY_WITH_PATH(Xpm, $GD_XPM_DIR/lib, GD_SHARED_LIBADD) +- PHP_ADD_LIBRARY_WITH_PATH(X11, $GD_XPM_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(Xpm, $GD_XPM_LIB_DIR, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(X11, $GD_XPM_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libXpm.(a|so) or libX11.(a|so). Please check config.log for more information.]) + ],[ +- -L$GD_XPM_DIR/lib -lX11 ++ -L$GD_XPM_LIB_DIR -lX11 + ]) + else + AC_MSG_RESULT(If configure fails try --with-xpm-dir=<DIR>) +@@ -145,25 +172,29 @@ + if test "$PHP_TTF" != "no"; then + if test "$PHP_FREETYPE_DIR" = "no" -o "$PHP_FREETYPE_DIR" = ""; then + if test -n "$PHP_TTF"; then +- for i in $PHP_TTF /usr/local /usr; do +- if test -f "$i/include/freetype.h"; then +- TTF_DIR=$i +- unset TTF_INC_DIR +- fi +- if test -f "$i/include/freetype/freetype.h"; then +- TTF_DIR=$i +- TTF_INC_DIR=$i/include/freetype +- fi +- if test -f "$i/include/freetype1/freetype/freetype.h"; then +- TTF_DIR=$i +- TTF_INC_DIR=$i/include/freetype1/freetype +- fi ++ for j in lib64 lib; do ++ for i in $PHP_TTF /usr/local /usr; do ++ if test -f "$i/$j/libttf.a" -o -f "$i/$j/libttf.$SHLIB_SUFFIX_NAME"; then ++ TTF_DIR=$i ++ TTF_LIB_DIR=$i/$j ++ if test -f "$i/include/freetype.h"; then ++ unset TTF_INC_DIR ++ elif test -f "$i/include/freetype/freetype.h"; then ++ TTF_INC_DIR=$i/include/freetype ++ elif test -f "$i/include/freetype1/freetype/freetype.h"; then ++ TTF_INC_DIR=$i/include/freetype1/freetype ++ else ++ unset TTF_DIR ++ fi ++ fi ++ test -n "$TTF_DIR" && break ++ done + test -n "$TTF_DIR" && break + done + fi + if test -n "$TTF_DIR" ; then + AC_DEFINE(HAVE_LIBTTF,1,[ ]) +- PHP_ADD_LIBRARY_WITH_PATH(ttf, $TTF_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(ttf, $TTF_LIB_DIR, GD_SHARED_LIBADD) + fi + if test -z "$TTF_INC_DIR"; then + TTF_INC_DIR=$TTF_DIR/include +@@ -179,16 +210,21 @@ + AC_DEFUN([PHP_GD_FREETYPE2],[ + if test "$PHP_FREETYPE_DIR" != "no"; then + +- for i in $PHP_FREETYPE_DIR /usr/local /usr; do +- if test -f "$i/include/freetype2/freetype/freetype.h"; then +- FREETYPE2_DIR=$i +- FREETYPE2_INC_DIR=$i/include/freetype2 +- break +- fi ++ for j in lib64 lib; do ++ for i in $PHP_FREETYPE_DIR /usr/local /usr; do ++ if test -f "$i/include/freetype2/freetype/freetype.h" && \ ++ test -f "$i/$j/libfreetype.a" -o -f "$i/$j/libfreetype.$SHLIB_SUFFIX_NAME"; then ++ FREETYPE2_DIR=$i ++ FREETYPE2_LIB_DIR=$i/$j ++ FREETYPE2_INC_DIR=$i/include/freetype2 ++ break ++ fi ++ done ++ test -n "$FREETYPE2_DIR" && break + done + + if test -n "$FREETYPE2_DIR" ; then +- PHP_ADD_LIBRARY_WITH_PATH(freetype, $FREETYPE2_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(freetype, $FREETYPE2_LIB_DIR, GD_SHARED_LIBADD) + PHP_ADD_INCLUDE($FREETYPE2_DIR/include) + PHP_ADD_INCLUDE($FREETYPE2_INC_DIR) + AC_DEFINE(USE_GD_IMGSTRTTF, 1, [ ]) +@@ -204,8 +240,16 @@ + AC_DEFUN([PHP_GD_T1LIB],[ + if test "$PHP_T1LIB" != "no"; then + +- for i in $PHP_T1LIB /usr/local /usr; do +- test -f "$i/include/t1lib.h" && GD_T1_DIR=$i && break ++ for j in lib64 lib; do ++ for i in $PHP_T1LIB /usr/local /usr; do ++ if test -f "$i/include/t1lib.h" && \ ++ test -f "$i/$j/libt1.a" -o -f "$i/$j/libt1.$SHLIB_SUFFIX_NAME"; then ++ GD_T1_DIR=$i ++ GD_T1_LIB_DIR=$i/$j ++ break ++ fi ++ done ++ test -n "$GD_T1_DIR" && break + done + + if test -z "$GD_T1_DIR"; then +@@ -216,11 +260,11 @@ + [ + AC_DEFINE(HAVE_LIBT1,1,[ ]) + PHP_ADD_INCLUDE($GD_T1_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(t1, $GD_T1_DIR/lib, GD_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(t1, $GD_T1_LIB_DIR, GD_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libt1.(a|so). Please check config.log for more information.]) + ],[ +- -L$GD_T1_DIR/lib ++ -L$GD_T1_LIB_DIR + ]) + fi + ]) +@@ -366,7 +410,7 @@ + done + + dnl Library path +- for i in lib/gd1.3 lib/gd lib gd1.3 gd ""; do ++ for i in lib/gd1.3 lib64/gd1.3 lib/gd lib64/gd lib lib64 gd1.3 gd ""; do + test -f "$PHP_GD/$i/libgd.$SHLIB_SUFFIX_NAME" -o -f "$PHP_GD/$i/libgd.a" && GD_LIB="$PHP_GD/$i" + done + +diff -Nru php-5.0.5.orig/ext/gettext/config.m4 php-5.0.5/ext/gettext/config.m4 +--- php-5.0.5.orig/ext/gettext/config.m4 2003-10-01 04:53:07.000000000 +0200 ++++ php-5.0.5/ext/gettext/config.m4 2005-12-04 17:04:33.000000000 +0100 +@@ -14,11 +14,15 @@ + AC_MSG_ERROR(Cannot locate header file libintl.h) + fi + +- GETTEXT_LIBDIR=$GETTEXT_DIR/lib ++ for j in lib64 lib; do ++ if test -d $GETTEXT_DIR/$j; then ++ GETTEXT_LIBDIR=$GETTEXT_DIR/$j ++ fi ++ done ++ + GETTEXT_INCDIR=$GETTEXT_DIR/include + + O_LDFLAGS=$LDFLAGS +- LDFLAGS="$LDFLAGS -L$GETTEXT_LIBDIR" + AC_CHECK_LIB(intl, bindtextdomain, [ + GETTEXT_LIBS=intl + GETTEXT_CHECK_IN_LIB=intl +diff -Nru php-5.0.5.orig/ext/gmp/config.m4 php-5.0.5/ext/gmp/config.m4 +--- php-5.0.5.orig/ext/gmp/config.m4 2003-11-19 05:44:06.000000000 +0100 ++++ php-5.0.5/ext/gmp/config.m4 2005-12-04 17:05:51.000000000 +0100 +@@ -14,20 +14,26 @@ + if test -z "$GMP_DIR"; then + AC_MSG_ERROR(Unable to locate gmp.h) + fi +- ++ ++ for j in lib64 lib; do ++ if test -d $GMP_DIR/$j; then ++ GMP_LIBDIR=$GMP_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(gmp, __gmp_randinit_lc_2exp_size, + [],[ + PHP_CHECK_LIBRARY(gmp, gmp_randinit_lc_2exp_size, + [],[ + AC_MSG_ERROR([GNU MP Library version 4.1.2 or greater required.]) + ],[ +- -L$GMP_DIR/lib ++ -L$GMP_LIBDIR + ]) + ],[ +- -L$GMP_DIR/lib ++ -L$GMP_LIBDIR + ]) + +- PHP_ADD_LIBRARY_WITH_PATH(gmp, $GMP_DIR/lib, GMP_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(gmp, $GMP_LIBDIR, GMP_SHARED_LIBADD) + PHP_ADD_INCLUDE($GMP_DIR/include) + + PHP_NEW_EXTENSION(gmp, gmp.c, $ext_shared) +diff -Nru php-5.0.5.orig/ext/iconv/config.m4 php-5.0.5/ext/iconv/config.m4 +--- php-5.0.5.orig/ext/iconv/config.m4 2005-01-10 22:37:59.000000000 +0100 ++++ php-5.0.5/ext/iconv/config.m4 2005-12-04 17:13:26.000000000 +0100 +@@ -23,8 +23,14 @@ + PHP_ICONV_PREFIX="$ICONV_DIR" + fi + ++ for j in lib64 lib; do ++ if test -d $PHP_ICONV_PREFIX/$j; then ++ PHP_ICONV_PREFIX_LIBDIR=$PHP_ICONV_PREFIX/$j ++ fi ++ done ++ + CFLAGS="-I$PHP_ICONV_PREFIX/include $CFLAGS" +- LDFLAGS="-L$PHP_ICONV_PREFIX/lib $LDFLAGS" ++ LDFLAGS="-L$PHP_ICONV_PREFIX_LIBDIR $LDFLAGS" + + if test -r $PHP_ICONV_PREFIX/include/giconv.h; then + PHP_ICONV_H_PATH="$PHP_ICONV_PREFIX/include/giconv.h" +diff -Nru php-5.0.5.orig/ext/imap/config.m4 php-5.0.5/ext/imap/config.m4 +--- php-5.0.5.orig/ext/imap/config.m4 2005-01-11 05:56:44.000000000 +0100 ++++ php-5.0.5/ext/imap/config.m4 2005-12-04 16:10:26.000000000 +0100 +@@ -155,6 +155,7 @@ + for lib in c-client4 c-client imap; do + IMAP_LIB=$lib + IMAP_LIB_CHK(lib) ++ IMAP_LIB_CHK(lib64) + IMAP_LIB_CHK(c-client) + done + +diff -Nru php-5.0.5.orig/ext/interbase/config.m4 php-5.0.5/ext/interbase/config.m4 +--- php-5.0.5.orig/ext/interbase/config.m4 2004-05-12 16:29:42.000000000 +0200 ++++ php-5.0.5/ext/interbase/config.m4 2005-12-04 19:10:10.000000000 +0100 +@@ -9,10 +9,18 @@ + if test "$PHP_INTERBASE" != "no"; then + if test "$PHP_INTERBASE" = "yes"; then + IBASE_INCDIR=/usr/interbase/include +- IBASE_LIBDIR=/usr/interbase/lib ++ for j in lib64 lib; do ++ if test -d /usr/interbase/$j; then ++ IBASE_LIBDIR=/usr/interbase/$j ++ fi ++ done + else + IBASE_INCDIR=$PHP_INTERBASE/include +- IBASE_LIBDIR=$PHP_INTERBASE/lib ++ for j in lib64 lib; do ++ if test -d $PHP_INTERBASE/$j; then ++ IBASE_LIBDIR=$PHP_INTERBASE/$j ++ fi ++ done + fi + + PHP_CHECK_LIBRARY(fbclient, isc_detach_database, +diff -Nru php-5.0.5.orig/ext/ldap/config.m4 php-5.0.5/ext/ldap/config.m4 +--- php-5.0.5.orig/ext/ldap/config.m4 2005-05-08 17:59:18.000000000 +0200 ++++ php-5.0.5/ext/ldap/config.m4 2005-12-04 19:15:50.000000000 +0100 +@@ -6,7 +6,8 @@ + if test -f $1/include/ldap.h; then + LDAP_DIR=$1 + LDAP_INCDIR=$1/include +- LDAP_LIBDIR=$1/lib ++ test -f $1/lib/libldap.so && LDAP_LIBDIR=$1/lib ++ test -f $1/lib64/libldap.so && LDAP_LIBDIR=$1/lib64 + elif test -f $1/include/umich-ldap/ldap.h; then + LDAP_DIR=$1 + LDAP_INCDIR=$1/include/umich-ldap +@@ -39,7 +40,11 @@ + + if test "$LDAP_SASL_DIR"; then + LDAP_SASL_INCDIR=$LDAP_SASL_DIR/include +- LDAP_SASL_LIBDIR=$LDAP_SASL_DIR/lib ++ for j in lib64 lib; do ++ if test -d $LDAP_SASL_DIR/$j; then ++ LDAP_SASL_LIBDIR=$LDAP_SASL_DIR/$j ++ fi ++ done + else + AC_MSG_ERROR([sasl.h not found!]) + fi +diff -Nru php-5.0.5.orig/ext/mbstring/config.m4 php-5.0.5/ext/mbstring/config.m4 +--- php-5.0.5.orig/ext/mbstring/config.m4 2005-02-21 00:02:48.000000000 +0100 ++++ php-5.0.5/ext/mbstring/config.m4 2005-12-04 19:18:03.000000000 +0100 +@@ -235,12 +235,18 @@ + PHP_ADD_INCLUDE([$PHP_LIBMBFL_INCLUDE]) + fi + ++ for j in lib64 lib; do ++ if test -d $PHP_LIBMBFL/$j; then ++ PHP_LIBMBFL_LIBDIR=$PHP_LIBMBFL/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(mbfl, mbfl_buffer_converter_new, [ +- PHP_ADD_LIBRARY_WITH_PATH(mbfl, $PHP_LIBMBFL/lib, MBSTRING_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mbfl, $PHP_LIBMBFL_LIBDIR, MBSTRING_SHARED_LIBADD) + ],[ + AC_MSG_ERROR([Problem with libmbfl. Please check config.log for more information.]) + ], [ +- -LPHP_LIBMBFL/lib ++ -L$PHP_LIBMBFL_LIBDIR + ]) + fi + ]) +diff -Nru php-5.0.5.orig/ext/mcrypt/config.m4 php-5.0.5/ext/mcrypt/config.m4 +--- php-5.0.5.orig/ext/mcrypt/config.m4 2005-01-22 02:36:56.000000000 +0100 ++++ php-5.0.5/ext/mcrypt/config.m4 2005-12-04 19:33:28.000000000 +0100 +@@ -34,6 +34,12 @@ + + PHP_MCRYPT_CHECK_VERSION + ++ for j in lib64 lib; do ++ if test -d $MCRYPT_DIR/$j; then ++ MCRYPT_LIBDIR=MCRYPT_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(mcrypt, mcrypt_module_open, + [ + PHP_ADD_LIBRARY(ltdl,, MCRYPT_SHARED_LIBADD) +@@ -45,13 +51,13 @@ + ],[ + AC_MSG_ERROR([Sorry, I was not able to diagnose which libmcrypt version you have installed.]) + ],[ +- -L$MCRYPT_DIR/lib ++ -L$MCRYPT_LIBDIR + ]) + ],[ +- -L$MCRYPT_DIR/lib -lltdl ++ -L$MCRYPT_LIBDIR -lltdl + ]) + +- PHP_ADD_LIBRARY_WITH_PATH(mcrypt, $MCRYPT_DIR/lib, MCRYPT_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mcrypt, $MCRYPT_LIBDIR, MCRYPT_SHARED_LIBADD) + PHP_ADD_INCLUDE($MCRYPT_DIR/include) + + PHP_SUBST(MCRYPT_SHARED_LIBADD) +diff -Nru php-5.0.5.orig/ext/mcve/config.m4 php-5.0.5/ext/mcve/config.m4 +--- php-5.0.5.orig/ext/mcve/config.m4 2004-12-08 07:47:07.000000000 +0100 ++++ php-5.0.5/ext/mcve/config.m4 2005-12-04 19:35:35.000000000 +0100 +@@ -67,8 +67,14 @@ + + CPPFLAGS=$saved_CPPFLAGS + ++ for j in lib64 lib; do ++ if test -d $MCVE_DIR/$j; then ++ MCVE_LIBDIR=MCVE_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($MCVE_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(mcve, $MCVE_DIR/lib, MCVE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mcve, $MCVE_LIBDIR, MCVE_SHARED_LIBADD) + + dnl Build test. Check for libmcve or libmonetra + dnl libmonetra_compat.h handle's MCVE_ -> M_ conversion +diff -Nru php-5.0.5.orig/ext/mhash/config.m4 php-5.0.5/ext/mhash/config.m4 +--- php-5.0.5.orig/ext/mhash/config.m4 2003-10-01 04:53:11.000000000 +0200 ++++ php-5.0.5/ext/mhash/config.m4 2005-12-04 20:18:36.000000000 +0100 +@@ -14,8 +14,14 @@ + AC_MSG_ERROR(Please reinstall libmhash - I cannot find mhash.h) + fi + ++ for j in lib64 lib; do ++ if test -d $MHASH_DIR/$j; then ++ MHASH_LIBDIR=$MHASH_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($MHASH_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(mhash, $MHASH_DIR/lib, MHASH_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mhash, $MHASH_LIBDIR, MHASH_SHARED_LIBADD) + + PHP_NEW_EXTENSION(mhash, mhash.c, $ext_shared) + PHP_SUBST(MHASH_SHARED_LIBADD) +diff -Nru php-5.0.5.orig/ext/ming/config.m4 php-5.0.5/ext/ming/config.m4 +--- php-5.0.5.orig/ext/ming/config.m4 2005-07-25 23:03:27.000000000 +0200 ++++ php-5.0.5/ext/ming/config.m4 2005-12-04 20:22:21.000000000 +0100 +@@ -8,11 +8,13 @@ + if test "$PHP_MING" != "no"; then + AC_CHECK_LIB(m, sin) + +- for i in $PHP_MING /usr/local /usr; do +- if test -f $i/lib/libming.$SHLIB_SUFFIX_NAME -o -f $i/lib/libming.a; then +- MING_DIR=$i +- break +- fi ++ for j in lib64 lib; do ++ for i in $PHP_MING /usr/local /usr; do ++ if test -f $i/$j/libming.$SHLIB_SUFFIX_NAME -o -f $i/$j/libming.a; then ++ MING_DIR=$i ++ break ++ fi ++ done + done + + if test -z "$MING_DIR"; then +@@ -29,16 +31,22 @@ + AC_MSG_ERROR(Please reinstall ming distribution. ming.h not found.) + fi + ++ for j in lib64 lib; do ++ if test -d $MING_DIR/$j; then ++ MING_LIBDIR=$MING_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(ming, Ming_useSWFVersion, [ + AC_DEFINE(HAVE_MING,1,[ ]) + ],[ + AC_MSG_ERROR([Ming library 0.2a or greater required.]) + ],[ +- -L$MING_DIR/lib ++ -L$MING_LIBDIR + ]) + + PHP_ADD_INCLUDE($MING_INC_DIR) +- PHP_ADD_LIBRARY_WITH_PATH(ming, $MING_DIR/lib, MING_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(ming, $MING_LIBDIR, MING_SHARED_LIBADD) + + AC_MSG_CHECKING([for destroySWFBlock]) + AC_TRY_RUN([ +diff -Nru php-5.0.5.orig/ext/msession/config.m4 php-5.0.5/ext/msession/config.m4 +--- php-5.0.5.orig/ext/msession/config.m4 2003-02-12 19:34:20.000000000 +0100 ++++ php-5.0.5/ext/msession/config.m4 2005-12-04 20:26:49.000000000 +0100 +@@ -8,13 +8,17 @@ + if test "$PHP_MSESSION" != "no"; then + if test -r $PHP_MSESSION/lib/libphoenix.a; then + PHOENIX_DIR=$PHP_MSESSION ++ PHOENIX_LIBDIR=$PHP_MSESSION/lib + else + AC_MSG_CHECKING(for msession in default path) +- for i in /usr/local/phoenix /usr/local /usr; do +- if test -r $i/lib/libphoenix.a; then +- PHOENIX_DIR=$i +- AC_MSG_RESULT(found in $i) +- fi ++ for j in lib64 lib; do ++ for i in /usr/local/phoenix /usr/local /usr; do ++ if test -r $i/$j/libphoenix.a; then ++ PHOENIX_DIR=$i ++ PHOENIX_LIBDIR=$i/$j ++ AC_MSG_RESULT(found in $i) ++ fi ++ done + done + fi + +@@ -25,7 +29,7 @@ + + + AC_DEFINE(HAVE_MSESSION, 1, [ ]) +- PHP_ADD_LIBRARY_WITH_PATH(phoenix, "$PHOENIX_DIR/lib", PHOENIX_LIB) ++ PHP_ADD_LIBRARY_WITH_PATH(phoenix, "$PHOENIX_LIBDIR", PHOENIX_LIB) + PHOENIX_INCLUDE="-I$PHOENIX_DIR" + PHP_SUBST(PHOENIX_LIB) + +diff -Nru php-5.0.5.orig/ext/mssql/config.m4 php-5.0.5/ext/mssql/config.m4 +--- php-5.0.5.orig/ext/mssql/config.m4 2004-12-08 19:58:25.000000000 +0100 ++++ php-5.0.5/ext/mssql/config.m4 2005-12-04 22:12:15.000000000 +0100 +@@ -30,14 +30,20 @@ + else + AC_MSG_ERROR(Directory $PHP_MSSQL is not a FreeTDS installation directory) + fi +- fi ++ fi ++ ++ for j in lib64 lib; do ++ if test -d $FREETDS_INSTALLATION_DIR/$j; then ++ FREETDS_INSTALLATION_DIR_LIBDIR=$FREETDS_INSTALLATION_DIR/$j ++ fi ++ done + +- if test ! -r "$FREETDS_INSTALLATION_DIR/lib/libtds.a" && test ! -r "$FREETDS_INSTALLATION_DIR/lib/libtds.so"; then +- AC_MSG_ERROR(Could not find $FREETDS_INSTALLATION_DIR/lib/libtds.[a|so]) ++ if test ! -r "$FREETDS_INSTALLATION_DIR_LIBDIR/libtds.a" && test ! -r "$FREETDS_INSTALLATION_DIR_LIBDIR/libtds.so"; then ++ AC_MSG_ERROR(Could not find $FREETDS_INSTALLATION_DIR_LIBDIR/libtds.[a|so]) + fi + + MSSQL_INCDIR=$FREETDS_INSTALLATION_DIR/include +- MSSQL_LIBDIR=$FREETDS_INSTALLATION_DIR/lib ++ MSSQL_LIBDIR=$FREETDS_INSTALLATION_DIR_LIBDIR + + PHP_ADD_INCLUDE($MSSQL_INCDIR) + PHP_ADD_LIBRARY_WITH_PATH(sybdb, $MSSQL_LIBDIR, MSSQL_SHARED_LIBADD) +diff -Nru php-5.0.5.orig/ext/mysql/config.m4 php-5.0.5/ext/mysql/config.m4 +--- php-5.0.5.orig/ext/mysql/config.m4 2005-06-20 15:46:02.000000000 +0200 ++++ php-5.0.5/ext/mysql/config.m4 2005-12-04 22:43:27.000000000 +0100 +@@ -90,7 +90,7 @@ + ;; + esac + +- for i in lib lib/mysql lib64 lib64/mysql; do ++ for i in lib64 lib64/mysql lib lib/mysql; do + MYSQL_LIB_CHK($i) + done + +@@ -102,13 +102,18 @@ + PHP_CHECK_LIBRARY($MY_LIBNAME, mysql_close, [ ], + [ + if test "$PHP_ZLIB_DIR" != "no"; then ++ for j in lib64 lib; do ++ if test -d $PHP_ZLIB_DIR/$j; then ++ PHP_ZLIB_LIBDIR=$PHP_ZLIB_DIR/$j ++ fi ++ done + PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR, MYSQL_SHARED_LIBADD) + PHP_CHECK_LIBRARY($MY_LIBNAME, mysql_error, [], [ + AC_MSG_ERROR([mysql configure failed. Please check config.log for more information.]) + ], [ +- -L$PHP_ZLIB_DIR/lib -L$MYSQL_LIB_DIR ++ -L$PHP_ZLIB_LIBDIR -L$MYSQL_LIB_DIR + ]) +- MYSQL_LIBS="-L$PHP_ZLIB_DIR/lib -lz" ++ MYSQL_LIBS="-L$PHP_ZLIB_LIBDIR -lz" + else + PHP_ADD_LIBRARY(z,, MYSQL_SHARED_LIBADD) + PHP_CHECK_LIBRARY($MY_LIBNAME, mysql_errno, [], [ +diff -Nru php-5.0.5.orig/ext/ncurses/config.m4 php-5.0.5/ext/ncurses/config.m4 +--- php-5.0.5.orig/ext/ncurses/config.m4 2003-12-09 21:33:08.000000000 +0100 ++++ php-5.0.5/ext/ncurses/config.m4 2005-12-04 22:47:05.000000000 +0100 +@@ -38,20 +38,26 @@ + LIBNAME=ncurses + LIBSYMBOL=initscr + ++ for j in lib64 lib; do ++ if test -d $NCURSES_DIR/$j; then ++ NCURSES_LIBDIR=$NCURSES_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY($LIBNAME, $LIBSYMBOL, [ + AC_DEFINE(HAVE_NCURSESLIB,1,[ ]) +- PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $NCURSES_DIR/lib, NCURSES_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $NCURSES_LIBDIR, NCURSES_SHARED_LIBADD) + + PHP_CHECK_LIBRARY(panel, new_panel, [ + AC_DEFINE(HAVE_NCURSES_PANEL,1,[ ]) +- PHP_ADD_LIBRARY_WITH_PATH(panel, $NCURSES_DIR/lib, NCURSES_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(panel, $NCURSES_LIBDIR, NCURSES_SHARED_LIBADD) + ], [], [ +- -L$NCURSES_DIR/lib -l$LIBNAME -lm ++ -L$NCURSES_LIBDIR -l$LIBNAME -lm + ]) + ], [ + AC_MSG_ERROR(Wrong ncurses lib version or lib not found) + ], [ +- -L$NCURSES_DIR/lib -lm ++ -L$NCURSES_LIBDIR -lm + ]) + + AC_CHECK_LIB($LIBNAME, color_set, [AC_DEFINE(HAVE_NCURSES_COLOR_SET, 1, [ ])]) +diff -Nru php-5.0.5.orig/ext/odbc/config.m4 php-5.0.5/ext/odbc/config.m4 +--- php-5.0.5.orig/ext/odbc/config.m4 2005-04-22 01:02:15.000000000 +0200 ++++ php-5.0.5/ext/odbc/config.m4 2005-12-05 18:19:09.000000000 +0100 +@@ -47,19 +47,8 @@ + # + # Check for the library files, and setup the ODBC_LIBS path... + # +-if test ! -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -a \ +- ! -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a; then +- # +- # we have an error and should bail out, as we can't find the libs! +- # +- echo "" +- echo "*********************************************************************" +- echo "* Unable to locate $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so or $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" +- echo "* Please correct this by creating the following links and reconfiguring:" +- echo "* $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a -> $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" +- echo "* $1/${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -> $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so" +- echo "*********************************************************************" +-else ++if test -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -a \ ++ -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a; then + ODBC_LFLAGS=-L$1 + ODBC_LIBS=-l${ac_solid_prefix}${ac_solid_os}${ac_solid_version} + fi +@@ -100,8 +89,12 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ ADABAS_LIBDIR=$withval/$i ++ test -f "$ADABAS_LIBDIR/odbclib.a" && break ++ done + PHP_ADD_INCLUDE($withval/incl) +- PHP_ADD_LIBPATH($withval/lib) ++ PHP_ADD_LIBPATH($ADABAS_LIBDIR) + ODBC_OBJS="$withval/lib/odbclib.a" + ODBC_LIB="$abs_builddir/ext/odbc/libodbc_adabas.a" + $srcdir/build/shtool mkdir -f -p ext/odbc +@@ -132,8 +125,12 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ SAPDB_LIBDIR=$withval/$i ++ test -f "$SAPDB_LIBDIR/libsqlod.a" -o -f "$SAPDB_LIBDIR/libsqlod.$SHLIB_SUFFIX_NAME" && break ++ done + PHP_ADD_INCLUDE($withval/incl) +- PHP_ADD_LIBPATH($withval/lib) ++ PHP_ADD_LIBPATH($SAPDB_LIBDIR) + PHP_ADD_LIBRARY(sqlod) + ODBC_TYPE=sapdb + AC_DEFINE(HAVE_SAPDB,1,[ ]) +@@ -158,19 +155,36 @@ + withval=/usr/local/solid + fi + if test "$withval" != "no"; then +- ODBC_INCDIR=$withval/include +- ODBC_LIBDIR=$withval/lib +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_TYPE=solid +- if test -f $ODBC_LIBDIR/soc*35.a; then +- AC_DEFINE(HAVE_SOLID_35,1,[ ]) +- elif test -f $ODBC_LIBDIR/scl*30.a; then +- AC_DEFINE(HAVE_SOLID_30,1,[ ]) +- elif test -f $ODBC_LIBDIR/scl*23.a; then +- AC_DEFINE(HAVE_SOLID,1,[ ]) ++ for i in lib64 lib; do ++ SOLID_LIBDIR=$withval/$i ++ ODBC_INCDIR=$withval/include ++ ODBC_LIBDIR=$withval/$j ++ ODBC_INCLUDE=-I$ODBC_INCDIR ++ ODBC_TYPE=solid ++ if test -f $ODBC_LIBDIR/soc*35.a; then ++ AC_DEFINE(HAVE_SOLID_35,1,[ ]) ++ elif test -f $ODBC_LIBDIR/scl*30.a; then ++ AC_DEFINE(HAVE_SOLID_30,1,[ ]) ++ elif test -f $ODBC_LIBDIR/scl*23.a; then ++ AC_DEFINE(HAVE_SOLID,1,[ ]) ++ fi ++ AC_MSG_RESULT(yes) ++ ODBC_LIBS= ++ AC_FIND_SOLID_LIBS($ODBC_LIBDIR) ++ test -n "$ODBC_LIBS" && break ++ done ++ if test -z "$ODBC_LIBS"; then ++ # ++ # we have an error and should bail out, as we can't find the libs! ++ # ++ echo "" ++ echo "*********************************************************************" ++ echo "* Unable to locate ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so or ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" ++ echo "* Please correct this by creating the following links and reconfiguring:" ++ echo "* ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a -> ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" ++ echo "* ODBC_LIBDIR/${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -> ODBC_LIBDIR/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so" ++ echo "*********************************************************************" + fi +- AC_MSG_RESULT(yes) +- AC_FIND_SOLID_LIBS($ODBC_LIBDIR) + else + AC_MSG_RESULT(no) + fi +@@ -407,11 +421,15 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then +- PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/lib) ++ for i in lib64 lib; do ++ IODBC_LIBDIR=$withval/$i ++ test -f "$IODBC_LIBDIR/libiodbc.a" -o -f "$IODBC_LIBDIR/libiodbc.$SHLIB_SUFFIX_NAME" && break ++ done ++ PHP_ADD_LIBRARY_WITH_PATH(iodbc, $IODBC_LIBDIR) + PHP_ADD_INCLUDE($withval/include, 1) + ODBC_TYPE=iodbc + ODBC_INCLUDE=-I$withval/include +- ODBC_LFLAGS=-L$withval/lib ++ ODBC_LFLAGS=-L$IODBC_LIBDIR + ODBC_LIBS=-liodbc + AC_DEFINE(HAVE_IODBC,1,[ ]) + AC_DEFINE(HAVE_ODBC2,1,[ ]) +@@ -436,8 +454,11 @@ + withval=/usr/local/easysoft/oob/client + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ ODBC_LIBDIR=$withval/$i ++ test -f "$ODBC_LIBDIR/libesoobclient.a" -o -f "$ODBC_LIBDIR/libesoobclient.$SHLIB_SUFFIX_NAME" && break ++ done + ODBC_INCDIR=$withval/include +- ODBC_LIBDIR=$withval/lib + ODBC_LFLAGS=-L$ODBC_LIBDIR + ODBC_INCLUDE=-I$ODBC_INCDIR + ODBC_LIBS=-lesoobclient +@@ -463,8 +484,11 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then ++ for i in lib64 lib; do ++ ODBC_LIBDIR=$withval/$i ++ test -f "$ODBC_LIBDIR/libodbc.a" -o -f "$ODBC_LIBDIR/libodbc.$SHLIB_SUFFIX_NAME" && break ++ done + ODBC_INCDIR=$withval/include +- ODBC_LIBDIR=$withval/lib + ODBC_LFLAGS=-L$ODBC_LIBDIR + ODBC_INCLUDE=-I$ODBC_INCDIR + ODBC_LIBS=-lodbc +diff -Nru php-5.0.5.orig/ext/pcre/config.m4 php-5.0.5/ext/pcre/config.m4 +--- php-5.0.5.orig/ext/pcre/config.m4 2005-08-22 18:55:56.000000000 +0200 ++++ php-5.0.5/ext/pcre/config.m4 2005-12-04 16:10:26.000000000 +0100 +@@ -25,7 +25,7 @@ + AC_MSG_ERROR([Could not find pcre.h in $PHP_PCRE_REGEX]) + fi + +- for j in $PHP_PCRE_REGEX $PHP_PCRE_REGEX/lib; do ++ for j in $PHP_PCRE_REGEX $PHP_PCRE_REGEX/lib64 $PHP_PCRE_REGEX/lib; do + test -f $j/libpcre.a -o -f $j/libpcre.$SHLIB_SUFFIX_NAME && PCRE_LIBDIR=$j + done + +diff -Nru php-5.0.5.orig/ext/pgsql/config.m4 php-5.0.5/ext/pgsql/config.m4 +--- php-5.0.5.orig/ext/pgsql/config.m4 2005-04-03 15:06:33.000000000 +0200 ++++ php-5.0.5/ext/pgsql/config.m4 2005-12-05 18:22:38.000000000 +0100 +@@ -44,7 +44,7 @@ + fi + done + +- for j in lib lib/pgsql lib/postgres lib/postgresql ""; do ++ for j in lib64 lib lib64/pgsql lib/pgsql lib64/postgres lib/postgres lib64/postgresql lib/postgresql ""; do + if test -f "$i/$j/libpq.so" || test -f "$i/$j/libpq.a"; then + PGSQL_LIBDIR=$i/$j + fi +diff -Nru php-5.0.5.orig/ext/pspell/config.m4 php-5.0.5/ext/pspell/config.m4 +--- php-5.0.5.orig/ext/pspell/config.m4 2005-02-17 04:51:35.000000000 +0100 ++++ php-5.0.5/ext/pspell/config.m4 2005-12-05 18:23:49.000000000 +0100 +@@ -27,7 +27,11 @@ + AC_MSG_ERROR(Cannot find pspell) + fi + +- PSPELL_LIBDIR=$PSPELL_DIR/lib ++ for j in lib64 lib; do ++ if test -d $PSPELL_DIR/$j; then ++ PSPELL_LIBDIR=$PSPELL_DIR/$j ++ fi ++ done + + PHP_ADD_LIBRARY_WITH_PATH(pspell, $PSPELL_LIBDIR, PSPELL_SHARED_LIBADD) + +diff -Nru php-5.0.5.orig/ext/readline/config.m4 php-5.0.5/ext/readline/config.m4 +--- php-5.0.5.orig/ext/readline/config.m4 2003-10-01 04:53:13.000000000 +0200 ++++ php-5.0.5/ext/readline/config.m4 2005-12-05 18:27:29.000000000 +0100 +@@ -29,22 +29,28 @@ + ]) + ]) + ++ for j in lib64 lib; do ++ if test -d $READLINE_DIR/$j; then ++ READLINE_LIBDIR=$READLINE_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(readline, readline, + [ +- PHP_ADD_LIBRARY_WITH_PATH(readline, $READLINE_DIR/lib, READLINE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(readline, $READLINE_LIBDIR, READLINE_SHARED_LIBADD) + ], [ + AC_MSG_ERROR(readline library not found) + ], [ +- -L$READLINE_DIR/lib ++ -L$READLINE_LIBDIR + ]) + + PHP_CHECK_LIBRARY(history, add_history, + [ +- PHP_ADD_LIBRARY_WITH_PATH(history, $READLINE_DIR/lib, READLINE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(history, $READLINE_LIBDIR, READLINE_SHARED_LIBADD) + ], [ + AC_MSG_ERROR(history library required by readline not found) + ], [ +- -L$READLINE_DIR/lib ++ -L$READLINE_LIBDIR + ]) + + PHP_NEW_EXTENSION(readline, readline.c, $ext_shared, cli) +@@ -73,13 +79,19 @@ + ]) + ]) + ++ for j in lib64 lib; do ++ if test -d $LIBEDIT_DIR/$j; then ++ LIBEDIT_LIBDIR=$LIBEDIT_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(edit, readline, + [ +- PHP_ADD_LIBRARY_WITH_PATH(edit, $LIBEDIT_DIR/lib, READLINE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(edit, $LIBEDIT_LIBDIR, READLINE_SHARED_LIBADD) + ], [ + AC_MSG_ERROR(edit library required by readline not found) + ], [ +- -L$READLINE_DIR/lib ++ -L$READLINE_LIBDIR + ]) + + PHP_NEW_EXTENSION(readline, readline.c, $ext_shared, cli) +diff -Nru php-5.0.5.orig/ext/session/config.m4 php-5.0.5/ext/session/config.m4 +--- php-5.0.5.orig/ext/session/config.m4 2003-10-01 04:53:15.000000000 +0200 ++++ php-5.0.5/ext/session/config.m4 2005-12-05 18:28:36.000000000 +0100 +@@ -24,8 +24,14 @@ + if test -z "$MM_DIR" ; then + AC_MSG_ERROR(cannot find mm library) + fi +- +- PHP_ADD_LIBRARY_WITH_PATH(mm, $MM_DIR/lib, SESSION_SHARED_LIBADD) ++ ++ for j in lib64 lib; do ++ if test -d $MM_DIR/$j; then ++ MM_LIBDIR=$MM_DIR/$j ++ fi ++ done ++ ++ PHP_ADD_LIBRARY_WITH_PATH(mm, $MM_LIBDIR, SESSION_SHARED_LIBADD) + PHP_ADD_INCLUDE($MM_DIR/include) + AC_DEFINE(HAVE_LIBMM, 1, [Whether you have libmm]) + fi +diff -Nru php-5.0.5.orig/ext/snmp/config.m4 php-5.0.5/ext/snmp/config.m4 +--- php-5.0.5.orig/ext/snmp/config.m4 2003-09-23 10:15:49.000000000 +0200 ++++ php-5.0.5/ext/snmp/config.m4 2005-12-04 16:10:26.000000000 +0100 +@@ -45,8 +45,8 @@ + test -f $i/snmp/snmp.h && SNMP_INCDIR=$i/snmp + test -f $i/snmp/include/ucd-snmp/snmp.h && SNMP_INCDIR=$i/snmp/include/ucd-snmp + done +- for i in /usr /usr/snmp /usr/local /usr/local/snmp; do +- test -f $i/lib/libsnmp.a -o -f $i/lib/libsnmp.$SHLIB_SUFFIX_NAME && SNMP_LIBDIR=$i/lib ++ for i in /usr/lib /usr/lib64 /usr/snmp/lib /usr/local/lib /usr/local/snmp/lib; do ++ test -f $i/libsnmp.a -o -f $i/libsnmp.$SHLIB_SUFFIX_NAME && SNMP_LIBDIR=$i + done + else + SNMP_INCDIR=$PHP_SNMP/include +diff -Nru php-5.0.5.orig/ext/sqlite/config.m4 php-5.0.5/ext/sqlite/config.m4 +--- php-5.0.5.orig/ext/sqlite/config.m4 2005-08-29 01:20:20.000000000 +0200 ++++ php-5.0.5/ext/sqlite/config.m4 2005-12-05 18:31:39.000000000 +0100 +@@ -38,14 +38,20 @@ + LIBNAME=sqlite + LIBSYMBOL=sqlite_open + ++ for j in lib64 lib; do ++ if test -d $SQLITE_DIR/$j; then ++ SQLITE_LIBDIR=$SQLITE_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY($LIBNAME,$LIBSYMBOL, + [ +- PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $SQLITE_DIR/lib, SQLITE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $SQLITE_LIBDIR, SQLITE_SHARED_LIBADD) + AC_DEFINE(HAVE_SQLITELIB,1,[ ]) + ],[ + AC_MSG_ERROR([wrong sqlite lib version or lib not found]) + ],[ +- -L$SQLITE_DIR/lib -lm ++ -L$SQLITE_LIBDIR -lm + ]) + + PHP_SUBST(SQLITE_SHARED_LIBADD) +diff -Nru php-5.0.5.orig/ext/tidy/config.m4 php-5.0.5/ext/tidy/config.m4 +--- php-5.0.5.orig/ext/tidy/config.m4 2003-12-18 20:59:58.000000000 +0100 ++++ php-5.0.5/ext/tidy/config.m4 2005-12-05 18:32:54.000000000 +0100 +@@ -27,7 +27,11 @@ + AC_MSG_ERROR(Cannot find libtidy) + fi + +- TIDY_LIBDIR=$TIDY_DIR/lib ++ for j in lib64 lib; do ++ if test -d $TIDY_DIR/$j; then ++ TIDY_LIBDIR=$TIDY_DIR/$j ++ fi ++ done + + PHP_ADD_LIBRARY_WITH_PATH(tidy, $TIDY_LIBDIR, TIDY_SHARED_LIBADD) + PHP_ADD_INCLUDE($TIDY_INCDIR) +diff -Nru php-5.0.5.orig/ext/xml/config.m4 php-5.0.5/ext/xml/config.m4 +--- php-5.0.5.orig/ext/xml/config.m4 2005-04-27 15:13:38.000000000 +0200 ++++ php-5.0.5/ext/xml/config.m4 2005-12-04 16:10:26.000000000 +0100 +@@ -35,11 +35,15 @@ + dnl Check for expat only if --with-libexpat-dir is used. + dnl + if test "$PHP_LIBEXPAT_DIR" != "no"; then +- for i in $PHP_XML $PHP_LIBEXPAT_DIR; do +- if test -f "$i/lib/libexpat.a" || test -f "$i/lib/libexpat.$SHLIB_SUFFIX_NAME"; then +- EXPAT_DIR=$i +- break +- fi ++ for j in lib64 lib; do ++ for i in $PHP_XML $PHP_LIBEXPAT_DIR; do ++ if test -f "$i/$j/libexpat.a" || test -f "$i/$j/libexpat.$SHLIB_SUFFIX_NAME"; then ++ EXPAT_DIR=$i ++ EXPAT_LIBDIR=$i/$j ++ break ++ fi ++ done ++ test -n "$EXPAT_DIR" && break + done + + if test -z "$EXPAT_DIR"; then +@@ -47,7 +51,7 @@ + fi + + PHP_ADD_INCLUDE($EXPAT_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(expat, $EXPAT_DIR/lib, XML_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(expat, $EXPAT_LIBDIR, XML_SHARED_LIBADD) + AC_DEFINE(HAVE_LIBEXPAT, 1, [ ]) + fi + +diff -Nru php-5.0.5.orig/ext/xmlrpc/config.m4 php-5.0.5/ext/xmlrpc/config.m4 +--- php-5.0.5.orig/ext/xmlrpc/config.m4 2003-10-01 04:53:15.000000000 +0200 ++++ php-5.0.5/ext/xmlrpc/config.m4 2005-12-05 18:40:33.000000000 +0100 +@@ -30,6 +30,13 @@ + testval=yes + break + fi ++ if test -f $i/lib64/libexpat.a -o -f $i/lib64/libexpat.$SHLIB_SUFFIX_NAME; then ++ AC_DEFINE(HAVE_LIBEXPAT2,1,[ ]) ++ PHP_ADD_LIBRARY_WITH_PATH(expat, $i/lib64, XMLRPC_SHARED_LIBADD) ++ PHP_ADD_INCLUDE($i/include) ++ testval=yes ++ break ++ fi + done + + if test "$testval" = "no"; then +@@ -87,7 +94,13 @@ + AC_MSG_ERROR(Please reinstall the XMLRPC-EPI distribution) + fi + ++ for j in lib64 lib; do ++ if test -d $XMLRPC_DIR/$j; then ++ XMLRPC_LIBDIR=$XMLRCP_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($XMLRPC_DIR) +- PHP_ADD_LIBRARY_WITH_PATH(xmlrpc, $XMLRPC_DIR/lib, XMLRPC_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(xmlrpc, $XMLRPC_LIBDIR, XMLRPC_SHARED_LIBADD) + fi + +diff -Nru php-5.0.5.orig/ext/xsl/config.m4 php-5.0.5/ext/xsl/config.m4 +--- php-5.0.5.orig/ext/xsl/config.m4 2005-04-27 15:13:38.000000000 +0200 ++++ php-5.0.5/ext/xsl/config.m4 2005-12-05 18:42:56.000000000 +0100 +@@ -48,8 +48,13 @@ + if test -z "$PHP_XSL_EXSL_DIR"; then + AC_MSG_RESULT(not found) + else ++ for j in lib64 lib; do ++ if test -d $PHP_XSL_EXSL_DIR/$j; then ++ PHP_XSL_EXSL_LIBDIR=$PHP_XSL_EXSL_DIR/$j ++ fi ++ done + AC_MSG_RESULT(found) +- PHP_ADD_LIBRARY_WITH_PATH(exslt, $PHP_XSL_EXSL_DIR/lib, XSL_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(exslt, $PHP_XSL_EXSL_LIBDIR, XSL_SHARED_LIBADD) + PHP_ADD_INCLUDE($PHP_XSL_EXSL_DIR/include) + AC_DEFINE(HAVE_XSL_EXSLT,1,[ ]) + fi +diff -Nru php-5.0.5.orig/ext/zlib/config0.m4 php-5.0.5/ext/zlib/config0.m4 +--- php-5.0.5.orig/ext/zlib/config0.m4 2003-06-27 02:37:21.000000000 +0200 ++++ php-5.0.5/ext/zlib/config0.m4 2005-12-05 18:35:49.000000000 +0100 +@@ -36,10 +36,11 @@ + AC_MSG_ERROR(Cannot find libz) + fi + +- case $ZLIB_DIR in +- /usr) ac_extra= ;; +- *) ac_extra=-L$ZLIB_DIR/lib ;; +- esac ++ for j in lib64 lib; do ++ if test -d $ZLIB_DIR/$j; then ++ ZLIB_LIBDIR=$ZLIB_DIR/$j ++ fi ++ done + + PHP_CHECK_LIBRARY(z, gzgets, [ + AC_DEFINE(HAVE_ZLIB,1,[ ]) +@@ -49,7 +50,7 @@ + $ac_extra + ]) + +- PHP_ADD_LIBPATH($ZLIB_DIR/lib, ZLIB_SHARED_LIBADD) ++ PHP_ADD_LIBPATH($ZLIB_LIBDIR, ZLIB_SHARED_LIBADD) + + PHP_ZLIB_DIR=$ZLIB_DIR + PHP_ADD_LIBRARY(z,, ZLIB_SHARED_LIBADD) diff --git a/dev-lang/php/files/5.0.5/php5.0.5-obj-serialize.patch b/dev-lang/php/files/5.0.5/php5.0.5-obj-serialize.patch new file mode 100644 index 0000000..8dbae7b --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-obj-serialize.patch @@ -0,0 +1,42 @@ +--- ext/standard/incomplete_class.c 2004-11-25 20:28:37.000000000 +0000 ++++ ext/standard/incomplete_class.c 2005-09-09 13:00:39.000000000 +0100 +@@ -122,7 +122,7 @@ + + /* {{{ php_lookup_class_name + */ +-char *php_lookup_class_name(zval *object, size_t *nlen) ++char *php_lookup_class_name(zval *object, zend_uint *nlen) + { + zval **val; + char *retval = NULL; +@@ -144,7 +144,7 @@ + + /* {{{ php_store_class_name + */ +-void php_store_class_name(zval *object, const char *name, size_t len) ++void php_store_class_name(zval *object, const char *name, zend_uint len) + { + zval *val; + TSRMLS_FETCH(); +--- ext/standard/php_incomplete_class.h 2005-06-29 10:29:08.000000000 +0100 ++++ ext/standard/php_incomplete_class.h 2005-09-09 13:00:31.000000000 +0100 +@@ -42,7 +42,7 @@ + + #define PHP_CLASS_ATTRIBUTES \ + char *class_name; \ +- size_t name_len; \ ++ zend_uint name_len; \ + zend_bool free_class_name = 0; \ + zend_bool incomplete_class = 0 + +@@ -55,8 +55,8 @@ + + zend_class_entry *php_create_incomplete_class(TSRMLS_D); + +-char *php_lookup_class_name(zval *object, size_t *nlen); +-void php_store_class_name(zval *object, const char *name, size_t len); ++char *php_lookup_class_name(zval *object, zend_uint *nlen); ++void php_store_class_name(zval *object, const char *name, zend_uint len); + + #ifdef __cplusplus + }; diff --git a/dev-lang/php/files/5.0.5/php5.0.5-pspell-ext-segf.patch b/dev-lang/php/files/5.0.5/php5.0.5-pspell-ext-segf.patch new file mode 100644 index 0000000..5c32b14 --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-pspell-ext-segf.patch @@ -0,0 +1,320 @@ +--- ext/pspell/pspell.c 2004-05-18 14:32:05.000000000 +0200 ++++ ext/pspell/pspell.c 2005-10-26 23:30:48.000000000 +0200 +@@ -2,7 +2,7 @@ + +----------------------------------------------------------------------+ + | PHP Version 5 | + +----------------------------------------------------------------------+ +- | Copyright (c) 1997-2004 The PHP Group | ++ | Copyright (c) 1997-2005 The PHP Group | + +----------------------------------------------------------------------+ + | This source file is subject to version 3.0 of the PHP license, | + | that is bundled with this package in the file LICENSE, and is | +@@ -16,7 +16,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: pspell.c,v 1.44 2004/05/18 12:32:05 edink Exp $ */ ++/* $Id: pspell.c,v 1.47 2005/10/17 15:29:55 iliaa Exp $ */ + + #define IS_EXT_MODULE + +@@ -101,6 +101,22 @@ + delete_pspell_config(config); + } + ++#define PSPELL_FETCH_CONFIG \ ++ convert_to_long_ex(conf); \ ++ config = (PspellConfig *) zend_list_find(Z_LVAL_PP(conf), &type); \ ++ if (config == NULL || type != le_pspell_config) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(conf)); \ ++ RETURN_FALSE; \ ++ } \ ++ ++#define PSPELL_FETCH_MANAGER \ ++ convert_to_long_ex(scin); \ ++ manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); \ ++ if (!manager || type != le_pspell) { \ ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); \ ++ RETURN_FALSE; \ ++ } \ ++ + /* {{{ PHP_MINIT_FUNCTION + */ + PHP_MINIT_FUNCTION(pspell) +@@ -352,13 +368,7 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(conf); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(conf), &type); +- +- if (config == NULL || type != le_pspell_config) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(conf)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + ret = new_pspell_manager(config); + +@@ -387,13 +397,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ ++ PSPELL_FETCH_MANAGER; + + if(pspell_manager_check(manager, Z_STRVAL_PP(word))){ + RETURN_TRUE; +@@ -419,13 +425,8 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + array_init(return_value); + +@@ -457,14 +458,9 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(miss); + convert_to_string_ex(corr); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + pspell_manager_store_replacement(manager, Z_STRVAL_PP(miss), Z_STRVAL_PP(corr)); + if(pspell_manager_error_number(manager) == 0){ +@@ -490,13 +486,8 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + /*If the word is empty, we have to return; otherwise we'll segfault! ouch!*/ + if(Z_STRLEN_PP(word) == 0){ +@@ -527,13 +518,8 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); + convert_to_string_ex(word); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + /*If the word is empty, we have to return; otherwise we'll segfault! ouch!*/ + if(Z_STRLEN_PP(word) == 0){ +@@ -564,12 +550,7 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + pspell_manager_clear_session(manager); + if(pspell_manager_error_number(manager) == 0){ +@@ -595,12 +576,7 @@ + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(scin); +- manager = (PspellManager *) zend_list_find(Z_LVAL_PP(scin), &type); +- if(!manager){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL result index", Z_LVAL_PP(scin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_MANAGER; + + pspell_manager_save_all_word_lists(manager); + +@@ -694,22 +670,17 @@ + PHP_FUNCTION(pspell_config_runtogether) + { + int type; +- zval **sccin, **runtogether; ++ zval **conf, **runtogether; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&runtogether) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&runtogether) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_boolean_ex(runtogether); + pspell_config_replace(config, "run-together", Z_LVAL_PP(runtogether) ? "true" : "false"); +@@ -723,22 +694,17 @@ + PHP_FUNCTION(pspell_config_mode) + { + int type; +- zval **sccin, **mode; ++ zval **conf, **mode; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&mode) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&mode) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_long_ex(mode); + +@@ -760,7 +726,7 @@ + PHP_FUNCTION(pspell_config_ignore) + { + int type; +- zval **sccin, **pignore; ++ zval **conf, **pignore; + int argc; + + int loc = PSPELL_LARGEST_WORD; +@@ -770,16 +736,11 @@ + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&pignore) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&pignore) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_long_ex(pignore); + ignore = Z_LVAL_PP(pignore); +@@ -808,21 +769,16 @@ + static void pspell_config_path(INTERNAL_FUNCTION_PARAMETERS, char *option) + { + int type; +- zval **sccin, **value; ++ zval **conf, **value; + int argc; + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc, &sccin, &value) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc, &conf, &value) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if (!config) { +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_string_ex(value); + +@@ -868,22 +824,17 @@ + PHP_FUNCTION(pspell_config_repl) + { + int type; +- zval **sccin, **repl; ++ zval **conf, **repl; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&repl) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&repl) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + pspell_config_replace(config, "save-repl", "true"); + +@@ -908,22 +859,17 @@ + PHP_FUNCTION(pspell_config_save_repl) + { + int type; +- zval **sccin, **save; ++ zval **conf, **save; + int argc; + + PspellConfig *config; + + argc = ZEND_NUM_ARGS(); +- if (argc != 2 || zend_get_parameters_ex(argc,&sccin,&save) == FAILURE) { ++ if (argc != 2 || zend_get_parameters_ex(argc,&conf,&save) == FAILURE) { + WRONG_PARAM_COUNT; + } + +- convert_to_long_ex(sccin); +- config = (PspellConfig *) zend_list_find(Z_LVAL_PP(sccin), &type); +- if(!config){ +- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a PSPELL config index", Z_LVAL_PP(sccin)); +- RETURN_FALSE; +- } ++ PSPELL_FETCH_CONFIG; + + convert_to_boolean_ex(save); + pspell_config_replace(config, "save-repl", Z_LVAL_PP(save) ? "true" : "false"); diff --git a/dev-lang/php/files/5.0.5/php5.0.5-session_save_path-segf.patch b/dev-lang/php/files/5.0.5/php5.0.5-session_save_path-segf.patch new file mode 100644 index 0000000..aee032f --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-session_save_path-segf.patch @@ -0,0 +1,123 @@ +--- sapi/apache2handler/sapi_apache2.c 2005/09/02 13:51:26 1.40.2.11 ++++ sapi/apache2handler/sapi_apache2.c 2005/10/17 19:35:39 1.40.2.13 +@@ -18,7 +18,7 @@ + +----------------------------------------------------------------------+ + */ + +-/* $Id: sapi_apache2.c,v 1.40.2.11 2005/09/02 13:51:26 sniper Exp $ */ ++/* $Id: sapi_apache2.c,v 1.40.2.13 2005/10/17 19:35:39 rasmus Exp $ */ + + #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS + +@@ -446,15 +446,35 @@ static int php_handler(request_rec *r) + request_rec *parent_req = NULL; + TSRMLS_FETCH(); + ++#define PHPAP_INI_OFF \ ++ if (strcmp(r->protocol, "INCLUDED")) { \ ++ zend_try { zend_ini_deactivate(TSRMLS_C); } zend_end_try(); \ ++ } \ ++ + conf = ap_get_module_config(r->per_dir_config, &php5_module); ++ ++ /* apply_config() needs r in some cases, so allocate server_context early */ ++ ctx = SG(server_context); ++ if (ctx == NULL) { ++normal: ++ ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); ++ /* register a cleanup so we clear out the SG(server_context) ++ * after each request. Note: We pass in the pointer to the ++ * server_context in case this is handled by a different thread. ++ */ ++ apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); ++ ctx->r = r; ++ ctx = NULL; /* May look weird to null it here, but it is to catch the right case in the first_try later on */ ++ } else { ++ parent_req = ctx->r; ++ ctx->r = r; ++ } + apply_config(conf); + + if (strcmp(r->handler, PHP_MAGIC_TYPE) && strcmp(r->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(r->handler, PHP_SCRIPT)) { + /* Check for xbithack in this case. */ + if (!AP2(xbithack) || strcmp(r->handler, "text/html") || !(r->finfo.protection & APR_UEXECUTE)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + } +@@ -463,32 +483,24 @@ static int php_handler(request_rec *r) + * the configuration; default behaviour is to accept. */ + if (r->used_path_info == AP_REQ_REJECT_PATH_INFO + && r->path_info && r->path_info[0]) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + + /* handle situations where user turns the engine off */ + if (!AP2(engine)) { +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return DECLINED; + } + + if (r->finfo.filetype == 0) { + php_apache_sapi_log_message_ex("script '%s' not found or unable to stat", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_NOT_FOUND; + } + if (r->finfo.filetype == APR_DIR) { + php_apache_sapi_log_message_ex("attempt to invoke directory '%s' as script", r); +- zend_try { +- zend_ini_deactivate(TSRMLS_C); +- } zend_end_try(); ++ PHPAP_INI_OFF; + return HTTP_FORBIDDEN; + } + +@@ -504,25 +516,24 @@ static int php_handler(request_rec *r) + + zend_first_try { + +- ctx = SG(server_context); + if (ctx == NULL) { +-normal: +- ctx = SG(server_context) = apr_pcalloc(r->pool, sizeof(*ctx)); +- /* register a cleanup so we clear out the SG(server_context) +- * after each request. Note: We pass in the pointer to the +- * server_context in case this is handled by a different thread. +- */ +- apr_pool_cleanup_register(r->pool, (void *)&SG(server_context), php_server_context_cleanup, apr_pool_cleanup_null); +- +- ctx->r = r; + brigade = apr_brigade_create(r->pool, r->connection->bucket_alloc); ++ ctx = SG(server_context); + ctx->brigade = brigade; + + if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { + zend_bailout(); + } + } else { +- parent_req = ctx->r; ++ if (!parent_req) { ++ parent_req = ctx->r; ++ } ++ if (parent_req && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { ++ if (php_apache_request_ctor(r, ctx TSRMLS_CC)!=SUCCESS) { ++ zend_bailout(); ++ } ++ } ++ + /* check if comming due to ErrorDocument */ + if (parent_req && parent_req->status != HTTP_OK) { + parent_req = NULL; diff --git a/dev-lang/php/files/5.0.5/php5.0.5-tsrm-gcc4.patch b/dev-lang/php/files/5.0.5/php5.0.5-tsrm-gcc4.patch new file mode 100644 index 0000000..ee4fee5 --- /dev/null +++ b/dev-lang/php/files/5.0.5/php5.0.5-tsrm-gcc4.patch @@ -0,0 +1,11 @@ +--- TSRM/TSRM.h 2005-12-02 19:04:27.000000000 +0100 ++++ TSRM/TSRM.h 2005-12-02 19:05:01.000000000 +0100 +@@ -137,7 +137,7 @@ + + #define TSRMLS_FETCH() void ***tsrm_ls = (void ***) ts_resource_ex(0, NULL) + #define TSRMLS_FETCH_FROM_CTX(ctx) void ***tsrm_ls = (void ***) ctx +-#define TSRMLS_SET_CTX(ctx) (void ***) ctx = tsrm_ls ++#define TSRMLS_SET_CTX(ctx) ctx = (void ***) tsrm_ls + #define TSRMG(id, type, element) (((type) (*((void ***) tsrm_ls))[TSRM_UNSHUFFLE_RSRC_ID(id)])->element) + #define TSRMLS_D void ***tsrm_ls + #define TSRMLS_DC , TSRMLS_D diff --git a/dev-lang/php/files/5.1-any/CVS/Entries b/dev-lang/php/files/5.1-any/CVS/Entries new file mode 100644 index 0000000..cdcc20a --- /dev/null +++ b/dev-lang/php/files/5.1-any/CVS/Entries @@ -0,0 +1,8 @@ +D/apache-1.3//// +D/apache-2.0//// +/php5-fastbuild.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5-imap-symlink.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5-iodbc-config.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5-prefork.patch/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5-soap_persistence_session.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +/php5-with-iodbc.diff/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 diff --git a/dev-lang/php/files/5.1-any/CVS/Repository b/dev-lang/php/files/5.1-any/CVS/Repository new file mode 100644 index 0000000..b0b7dcc --- /dev/null +++ b/dev-lang/php/files/5.1-any/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.1-any diff --git a/dev-lang/php/files/5.1-any/CVS/Root b/dev-lang/php/files/5.1-any/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.1-any/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.1-any/CVS/Tag b/dev-lang/php/files/5.1-any/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.1-any/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.1-any/apache-1.3/70_mod_php5.conf b/dev-lang/php/files/5.1-any/apache-1.3/70_mod_php5.conf new file mode 100644 index 0000000..c6f1426 --- /dev/null +++ b/dev-lang/php/files/5.1-any/apache-1.3/70_mod_php5.conf @@ -0,0 +1,20 @@ +# vim: ft=apache sw=4 ts=4 +<IfDefine PHP5> + + # Load the module first + <IfModule !sapi_apache.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php .php5 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/5.1-any/apache-1.3/CVS/Entries b/dev-lang/php/files/5.1-any/apache-1.3/CVS/Entries new file mode 100644 index 0000000..7d7ba85 --- /dev/null +++ b/dev-lang/php/files/5.1-any/apache-1.3/CVS/Entries @@ -0,0 +1,2 @@ +/70_mod_php5.conf/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +D diff --git a/dev-lang/php/files/5.1-any/apache-1.3/CVS/Repository b/dev-lang/php/files/5.1-any/apache-1.3/CVS/Repository new file mode 100644 index 0000000..3f46865 --- /dev/null +++ b/dev-lang/php/files/5.1-any/apache-1.3/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.1-any/apache-1.3 diff --git a/dev-lang/php/files/5.1-any/apache-1.3/CVS/Root b/dev-lang/php/files/5.1-any/apache-1.3/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.1-any/apache-1.3/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.1-any/apache-1.3/CVS/Tag b/dev-lang/php/files/5.1-any/apache-1.3/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.1-any/apache-1.3/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.1-any/apache-2.0/70_mod_php5.conf b/dev-lang/php/files/5.1-any/apache-2.0/70_mod_php5.conf new file mode 100644 index 0000000..40dfa86 --- /dev/null +++ b/dev-lang/php/files/5.1-any/apache-2.0/70_mod_php5.conf @@ -0,0 +1,20 @@ +# vim: ft=apache sw=4 ts=4 +<IfDefine PHP5> + + # Load the module first + <IfModule !sapi_apache2.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php .php5 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/5.1-any/apache-2.0/CVS/Entries b/dev-lang/php/files/5.1-any/apache-2.0/CVS/Entries new file mode 100644 index 0000000..7d7ba85 --- /dev/null +++ b/dev-lang/php/files/5.1-any/apache-2.0/CVS/Entries @@ -0,0 +1,2 @@ +/70_mod_php5.conf/1.1/Mon Oct 31 14:10:39 2005/-ko/T1.1 +D diff --git a/dev-lang/php/files/5.1-any/apache-2.0/CVS/Repository b/dev-lang/php/files/5.1-any/apache-2.0/CVS/Repository new file mode 100644 index 0000000..677ae3e --- /dev/null +++ b/dev-lang/php/files/5.1-any/apache-2.0/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.1-any/apache-2.0 diff --git a/dev-lang/php/files/5.1-any/apache-2.0/CVS/Root b/dev-lang/php/files/5.1-any/apache-2.0/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.1-any/apache-2.0/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.1-any/apache-2.0/CVS/Tag b/dev-lang/php/files/5.1-any/apache-2.0/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.1-any/apache-2.0/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.1-any/php5-fastbuild.patch b/dev-lang/php/files/5.1-any/php5-fastbuild.patch new file mode 100644 index 0000000..5c3ea85 --- /dev/null +++ b/dev-lang/php/files/5.1-any/php5-fastbuild.patch @@ -0,0 +1,234 @@ +diff -u --recursive php-5.1.0RC1/acinclude.m4 php-5.1.0RC1-cgi/acinclude.m4 +--- php-5.1.0RC1/acinclude.m4 2005-09-14 22:40:54.000000000 +0200 ++++ php-5.1.0RC1/acinclude.m4 2005-09-14 22:41:14.000000000 +0200 +@@ -194,7 +194,7 @@ + dnl + dnl which array to append to? + AC_DEFUN([PHP_ADD_SOURCES],[ +- PHP_ADD_SOURCES_X($1, $2, $3, ifelse($4,cli,PHP_CLI_OBJS,ifelse($4,sapi,PHP_SAPI_OBJS,PHP_GLOBAL_OBJS))) ++ PHP_ADD_SOURCES_X($1, $2, $3, ifelse($4,cli,PHP_CLI_OBJS,ifelse($4,sapi,PHP_SAPI_OBJS,ifelse($4,cgi,PHP_CGI_OBJS,PHP_GLOBAL_OBJS)))) + ]) + + dnl +@@ -962,12 +962,8 @@ + + if test "$3" != "shared" && test "$3" != "yes" && test "$4" = "cli"; then + dnl ---------------------------------------------- CLI static module +- if test "$PHP_SAPI" = "cgi"; then +- PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,) +- EXT_STATIC="$EXT_STATIC $1" +- else +- PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,cli) +- fi ++ PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,cli) ++ PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,cgi) + EXT_CLI_STATIC="$EXT_CLI_STATIC $1" + fi + PHP_ADD_BUILD_DIR($ext_builddir) +diff -u --recursive php-5.1.0RC1/sapi/cgi/Makefile.frag php-5.1.0RC1-cgi/sapi/cgi/Makefile.frag +--- php-5.1.0RC1/sapi/cgi/Makefile.frag 2003-07-02 02:08:26.000000000 +0100 ++++ php-5.1.0RC1-cgi/sapi/cgi/Makefile.frag 2005-08-31 08:38:32.000000000 +0100 +@@ -1,2 +1,6 @@ +-$(SAPI_CGI_PATH): $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) ++$(SAPI_CGI_PATH): $(PHP_GLOBAL_OBJS) $(PHP_CGI_OBJS) + $(BUILD_CGI) ++ ++install-cgi: $(SAPI_CGI_PATH) ++ @echo "Installing CGI binary $(INSTALL_ROOT)$(bindir)/" ++ @$(INSTALL_CGI) +diff -u --recursive php-5.1.0RC1/sapi/cgi/config9.m4 php-5.1.0RC1-cgi/sapi/cgi/config9.m4 +--- php-5.1.0RC1/sapi/cgi/config9.m4 2005-07-07 06:54:43.000000000 +0100 ++++ php-5.1.0RC1-cgi/sapi/cgi/config9.m4 2005-08-31 08:54:01.000000000 +0100 +@@ -80,96 +80,109 @@ + ]) + + +-if test "$PHP_SAPI" = "default"; then +- AC_MSG_CHECKING(for CGI build) +- if test "$PHP_SAPI_CGI" != "no"; then +- AC_MSG_RESULT(yes) +- +- PHP_ADD_MAKEFILE_FRAGMENT($abs_srcdir/sapi/cgi/Makefile.frag) +- case $host_alias in +- *cygwin* ) +- SAPI_CGI_PATH=sapi/cgi/php.exe +- ;; +- * ) +- SAPI_CGI_PATH=sapi/cgi/php +- ;; +- esac +- PHP_SUBST(SAPI_CGI_PATH) +- +- PHP_TEST_WRITE_STDOUT +- +- AC_MSG_CHECKING(whether to force Apache CGI redirect) +- if test "$PHP_FORCE_CGI_REDIRECT" = "yes"; then +- REDIRECT=1 +- else +- REDIRECT=0 +- fi +- AC_DEFINE_UNQUOTED(FORCE_CGI_REDIRECT,$REDIRECT,[ ]) +- AC_MSG_RESULT($PHP_FORCE_CGI_REDIRECT) ++AC_MSG_CHECKING(for CGI build) ++if test "$PHP_SAPI_CGI" != "no"; then ++ AC_MSG_RESULT(yes) ++ ++ PHP_ADD_MAKEFILE_FRAGMENT($abs_srcdir/sapi/cgi/Makefile.frag) ++ case $host_alias in ++ *cygwin* ) ++ SAPI_CGI_PATH=sapi/cgi/php.exe ++ ;; ++ * ) ++ SAPI_CGI_PATH=sapi/cgi/php ++ ;; ++ esac ++ PHP_SUBST(SAPI_CGI_PATH) + ++ PHP_TEST_WRITE_STDOUT + +- AC_MSG_CHECKING(whether to discard path_info + path_translated) +- if test "$PHP_DISCARD_PATH" = "yes"; then +- DISCARD_PATH=1 +- else +- DISCARD_PATH=0 +- fi +- AC_DEFINE_UNQUOTED(DISCARD_PATH, $DISCARD_PATH, [ ]) +- AC_MSG_RESULT($PHP_DISCARD_PATH) ++ AC_MSG_CHECKING(whether to force Apache CGI redirect) ++ if test "$PHP_FORCE_CGI_REDIRECT" = "yes"; then ++ REDIRECT=1 ++ else ++ REDIRECT=0 ++ fi ++ AC_DEFINE_UNQUOTED(FORCE_CGI_REDIRECT,$REDIRECT,[ ]) ++ AC_MSG_RESULT($PHP_FORCE_CGI_REDIRECT) + +- AC_MSG_CHECKING(whether to enable path info checking) +- if test "$PHP_ENABLE_PATHINFO_CHECK" = "yes"; then +- ENABLE_PATHINFO_CHECK=1 +- else +- ENABLE_PATHINFO_CHECK=0 +- fi +- AC_DEFINE_UNQUOTED(ENABLE_PATHINFO_CHECK, $ENABLE_PATHINFO_CHECK, [ ]) +- AC_MSG_RESULT($PHP_ENABLE_PATHINFO_CHECK) + +- AC_MSG_CHECKING(whether to enable fastcgi support) +- PHP_LIBFCGI_DIR="$abs_srcdir/sapi/cgi/libfcgi" +- if test -z $PHP_LIBFCGI_DIR; then +- echo "$PHP_LIBFCGI_DIR does not exist" +- exit 1 +- fi +- if test "$PHP_ENABLE_FASTCGI" = "yes"; then +- PHP_ADD_BUILD_DIR($abs_builddir/sapi/cgi/libfcgi) +- PHP_FASTCGI=1 +- PHP_FCGI_FILES="libfcgi/fcgi_stdio.c libfcgi/fcgiapp.c libfcgi/os_unix.c" +- PHP_FCGI_INCLUDE="-I$PHP_LIBFCGI_DIR/include" +- PHP_FCGI_STATIC=1 +- else +- PHP_FASTCGI=0 +- PHP_FCGI_FILES="" +- PHP_FCGI_INCLUDE="" +- PHP_FCGI_STATIC=0 +- fi +- AC_DEFINE_UNQUOTED(PHP_FASTCGI, $PHP_FASTCGI, [ ]) +- AC_DEFINE_UNQUOTED(PHP_FCGI_STATIC, $PHP_FCGI_STATIC, [ ]) +- AC_MSG_RESULT($PHP_ENABLE_FASTCGI) +- +- INSTALL_IT="@echo \"Installing PHP CGI into: \$(INSTALL_ROOT)\$(bindir)/\"; \$(INSTALL) -m 0755 \$(SAPI_CGI_PATH) \$(INSTALL_ROOT)\$(bindir)/\$(program_prefix)php\$(program_suffix)\$(EXEEXT)" +- PHP_SELECT_SAPI(cgi, program, $PHP_FCGI_FILES cgi_main.c getopt.c, $PHP_FCGI_INCLUDE, '$(SAPI_CGI_PATH)') +- +- case $host_alias in +- *aix*) +- BUILD_CGI="echo '\#! .' > php.sym && echo >>php.sym && nm -BCpg \`echo \$(PHP_GLOBAL_OBJS) \$(PHP_SAPI_OBJS) | sed 's/\([A-Za-z0-9_]*\)\.lo/.libs\/\1.o/g'\` | \$(AWK) '{ if (((\$\$2 == \"T\") || (\$\$2 == \"D\") || (\$\$2 == \"B\")) && (substr(\$\$3,1,1) != \".\")) { print \$\$3 } }' | sort -u >> php.sym && \$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) -Wl,-brtl -Wl,-bE:php.sym \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_SAPI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" +- ;; +- *darwin*) +- BUILD_CGI="\$(CC) \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(NATIVE_RPATHS) \$(PHP_GLOBAL_OBJS:.lo=.o) \$(PHP_SAPI_OBJS:.lo=.o) \$(PHP_FRAMEWORKS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" ++ AC_MSG_CHECKING(whether to discard path_info + path_translated) ++ if test "$PHP_DISCARD_PATH" = "yes"; then ++ DISCARD_PATH=1 ++ else ++ DISCARD_PATH=0 ++ fi ++ AC_DEFINE_UNQUOTED(DISCARD_PATH, $DISCARD_PATH, [ ]) ++ AC_MSG_RESULT($PHP_DISCARD_PATH) ++ ++ AC_MSG_CHECKING(whether to enable path info checking) ++ if test "$PHP_ENABLE_PATHINFO_CHECK" = "yes"; then ++ ENABLE_PATHINFO_CHECK=1 ++ else ++ ENABLE_PATHINFO_CHECK=0 ++ fi ++ AC_DEFINE_UNQUOTED(ENABLE_PATHINFO_CHECK, $ENABLE_PATHINFO_CHECK, [ ]) ++ AC_MSG_RESULT($PHP_ENABLE_PATHINFO_CHECK) ++ ++ AC_MSG_CHECKING(whether to enable fastcgi support) ++ PHP_LIBFCGI_DIR="$abs_srcdir/sapi/cgi/libfcgi" ++ if test -z $PHP_LIBFCGI_DIR; then ++ echo "$PHP_LIBFCGI_DIR does not exist" ++ exit 1 ++ fi ++ if test "$PHP_ENABLE_FASTCGI" = "yes"; then ++ PHP_ADD_BUILD_DIR($abs_builddir/sapi/cgi/libfcgi) ++ PHP_FASTCGI=1 ++ PHP_FCGI_FILES="libfcgi/fcgi_stdio.c libfcgi/fcgiapp.c libfcgi/os_unix.c" ++ PHP_FCGI_INCLUDE="-I$PHP_LIBFCGI_DIR/include" ++ PHP_FCGI_STATIC=1 ++ else ++ PHP_FASTCGI=0 ++ PHP_FCGI_FILES="" ++ PHP_FCGI_INCLUDE="" ++ PHP_FCGI_STATIC=0 ++ fi ++ AC_DEFINE_UNQUOTED(PHP_FASTCGI, $PHP_FASTCGI, [ ]) ++ AC_DEFINE_UNQUOTED(PHP_FCGI_STATIC, $PHP_FCGI_STATIC, [ ]) ++ AC_MSG_RESULT($PHP_ENABLE_FASTCGI) ++ ++ INSTALL_CGI="@echo \"Installing PHP CGI into: \$(INSTALL_ROOT)\$(bindir)/\"; \$(INSTALL) -m 0755 \$(SAPI_CGI_PATH) \$(INSTALL_ROOT)\$(bindir)/\$(program_prefix)php\$(program_suffix)\$(EXEEXT)" ++ PHP_ADD_SOURCES(sapi/cgi, $PHP_FCGI_FILES cgi_main.c getopt.c, $PHP_FCGI_INCLUDE, cgi) ++ PHP_ADD_SOURCES(/main, internal_functions_cli.c,,cgi) ++ ++ case $host_alias in ++ *aix*) ++ BUILD_CGI="echo '\#! .' > php.sym && echo >>php.sym && nm -BCpg \`echo \$(PHP_GLOBAL_OBJS) \$(PHP_CGI_OBJS) | sed 's/\([A-Za-z0-9_]*\)\.lo/.libs\/\1.o/g'\` | \$(AWK) '{ if (((\$\$2 == \"T\") || (\$\$2 == \"D\") || (\$\$2 == \"B\")) && (substr(\$\$3,1,1) != \".\")) { print \$\$3 } }' | sort -u >> php.sym && \$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) -Wl,-brtl -Wl,-bE:php.sym \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_CGI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" ++ ;; ++ *darwin*) ++ BUILD_CGI="\$(CC) \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(NATIVE_RPATHS) \$(PHP_GLOBAL_OBJS:.lo=.o) \$(PHP_CGI_OBJS:.lo=.o) \$(PHP_FRAMEWORKS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" + ;; +- *) +- BUILD_CGI="\$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_SAPI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" ++ *) ++ BUILD_CGI="\$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_CGI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)" + ;; +- esac ++ esac + +- PHP_SUBST(BUILD_CGI) ++ PHP_CGI_TARGET="\$(SAPI_CGI_PATH)" ++ PHP_INSTALL_CGI_TARGET="install-cgi" + +- elif test "$PHP_SAPI_CLI" != "no"; then +- AC_MSG_RESULT(no) +- OVERALL_TARGET= +- PHP_SAPI=cli +- else +- AC_MSG_ERROR([No SAPIs selected.]) ++ PHP_SUBST(BUILD_CGI) ++ PHP_SUBST(INSTALL_CGI) ++ PHP_SUBST(PHP_CGI_OBJS) ++ PHP_SUBST(PHP_CGI_TARGET) ++ PHP_SUBST(PHP_INSTALL_CGI_TARGET) ++ ++ if test "$PHP_SAPI" = "default" ; then ++ PHP_BUILD_PROGRAM($SAP_CGI_PATH) ++ fi ++else ++ AC_MSG_RESULT(no) ++ if test "$PHP_SAPI" = "default" ; then ++ if test "$PHP_SAPI_CLI" != "no" ; then ++ OVERALL_TARGET= ++ PHP_SAPI=cli ++ else ++ AC_MSG_ERROR([No SAPIs selected.]) ++ fi + fi + fi diff --git a/dev-lang/php/files/5.1-any/php5-imap-symlink.diff b/dev-lang/php/files/5.1-any/php5-imap-symlink.diff new file mode 100644 index 0000000..13c2bdd --- /dev/null +++ b/dev-lang/php/files/5.1-any/php5-imap-symlink.diff @@ -0,0 +1,15 @@ +--- ext/imap/config.m4 2005-09-04 00:56:31.000000000 +0200 ++++ ext/imap/config.m4 2005-09-04 00:57:03.000000000 +0200 +@@ -146,12 +146,6 @@ + AC_MSG_ERROR(Cannot find rfc822.h. Please check your c-client installation.) + fi + +- if test -r "$IMAP_DIR/c-client/c-client.a"; then +- ln -s "$IMAP_DIR/c-client/c-client.a" "$IMAP_DIR/c-client/libc-client.a" >/dev/null 2>&1 +- elif test -r "$IMAP_DIR/$PHP_LIBDIR/c-client.a"; then +- ln -s "$IMAP_DIR/$PHP_LIBDIR/c-client.a" "$IMAP_DIR/$PHP_LIBDIR/libc-client.a" >/dev/null 2>&1 +- fi +- + for lib in c-client4 c-client imap; do + IMAP_LIB=$lib + IMAP_LIB_CHK($PHP_LIBDIR) diff --git a/dev-lang/php/files/5.1-any/php5-iodbc-config.diff b/dev-lang/php/files/5.1-any/php5-iodbc-config.diff new file mode 100644 index 0000000..b6d1b68 --- /dev/null +++ b/dev-lang/php/files/5.1-any/php5-iodbc-config.diff @@ -0,0 +1,14 @@ +--- ext/odbc/config.m4 2005-08-10 02:08:48.000000000 +0200 ++++ ext/odbc/config.m4 2005-08-10 02:09:14.000000000 +0200 +@@ -440,9 +440,9 @@ + fi + if test "$withval" != "no"; then + PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/lib) +- PHP_ADD_INCLUDE($withval/include, 1) ++ PHP_ADD_INCLUDE($withval/include/iodbc, 1) + ODBC_TYPE=iodbc +- ODBC_INCLUDE=-I$withval/include ++ ODBC_INCLUDE=-I$withval/include/iodbc + ODBC_LFLAGS=-L$withval/$PHP_LIBDIR + ODBC_LIBS=-liodbc + AC_DEFINE(HAVE_IODBC,1,[ ]) diff --git a/dev-lang/php/files/5.1-any/php5-prefork.patch b/dev-lang/php/files/5.1-any/php5-prefork.patch new file mode 100644 index 0000000..135579c --- /dev/null +++ b/dev-lang/php/files/5.1-any/php5-prefork.patch @@ -0,0 +1,26 @@ +diff -u --recursive php-5.0.4-orig/sapi/apache2filter/config.m4 php-5.0.4/sapi/apache2filter/config.m4 +--- php-5.0.4-orig/sapi/apache2filter/config.m4 2005-03-13 20:30:44.767051120 +0000 ++++ php-5.0.4/sapi/apache2filter/config.m4 2005-03-13 20:32:01.999310032 +0000 +@@ -115,9 +115,6 @@ + ;; + esac + +- if test "$APXS_MPM" != "prefork"; then +- PHP_BUILD_THREAD_SAFE +- fi + AC_MSG_RESULT(yes) + + PHP_SUBST(APXS) +diff -u --recursive php-5.0.4-orig/sapi/apache2handler/config.m4 php-5.0.4/sapi/apache2handler/config.m4 +--- php-5.0.4-orig/sapi/apache2handler/config.m4 2005-03-13 20:30:44.771050512 +0000 ++++ php-5.0.4/sapi/apache2handler/config.m4 2005-03-13 20:31:50.106118072 +0000 +@@ -114,9 +114,6 @@ + ;; + esac + +- if test "$APXS_MPM" != "prefork"; then +- PHP_BUILD_THREAD_SAFE +- fi + AC_MSG_RESULT(yes) + + PHP_SUBST(APXS) diff --git a/dev-lang/php/files/5.1-any/php5-soap_persistence_session.diff b/dev-lang/php/files/5.1-any/php5-soap_persistence_session.diff new file mode 100644 index 0000000..626ac67 --- /dev/null +++ b/dev-lang/php/files/5.1-any/php5-soap_persistence_session.diff @@ -0,0 +1,35 @@ +diff -ruN php-5.0.0RC3.orig/ext/soap/soap.c php-5.0.0RC3/ext/soap/soap.c +--- php-5.0.0RC3.orig/ext/soap/soap.c 2004-06-22 19:35:59.801348936 +0300 ++++ php-5.0.0RC3/ext/soap/soap.c 2004-06-29 13:39:00.506820928 +0300 +@@ -1341,16 +1341,21 @@ + soap_obj = NULL; + #if HAVE_PHP_SESSION + /* If persistent then set soap_obj from from the previous created session (if available) */ ++ char soapname[32+sizeof("_bogus_session_name")]; //Now we use max 32 chars from class name, must be overwriten with dynamic allocation with exact length!! + if (service->soap_class.persistance == SOAP_PERSISTENCE_SESSION) { + zval **tmp_soap; + ++ bzero(soapname,32+sizeof("_bogus_session_name")); ++ strncpy(soapname,service->soap_class.ce->name,32); ++ strcat(soapname,"_bogus_session_name"); ++ + if (PS(session_status) != php_session_active && + PS(session_status) != php_session_disabled) { + php_session_start(TSRMLS_C); + } + + /* Find the soap object and assign */ +- if (zend_hash_find(Z_ARRVAL_P(PS(http_session_vars)), "_bogus_session_name", sizeof("_bogus_session_name"), (void **) &tmp_soap) == SUCCESS && ++ if (zend_hash_find(Z_ARRVAL_P(PS(http_session_vars)), soapname, sizeof(soapname), (void **) &tmp_soap) == SUCCESS && + Z_TYPE_PP(tmp_soap) == IS_OBJECT && + Z_OBJCE_PP(tmp_soap) == service->soap_class.ce) { + soap_obj = *tmp_soap; +@@ -1432,7 +1437,7 @@ + /* If session then update session hash with new object */ + if (service->soap_class.persistance == SOAP_PERSISTENCE_SESSION) { + zval **tmp_soap_pp; +- if (zend_hash_update(Z_ARRVAL_P(PS(http_session_vars)), "_bogus_session_name", sizeof("_bogus_session_name"), &tmp_soap, sizeof(zval *), (void **)&tmp_soap_pp) == SUCCESS) { ++ if (zend_hash_update(Z_ARRVAL_P(PS(http_session_vars)), soapname, sizeof(soapname), &tmp_soap, sizeof(zval *), (void **)&tmp_soap_pp) == SUCCESS) { + soap_obj = *tmp_soap_pp; + } + } else { diff --git a/dev-lang/php/files/5.1-any/php5-with-iodbc.diff b/dev-lang/php/files/5.1-any/php5-with-iodbc.diff new file mode 100644 index 0000000..81afcc0 --- /dev/null +++ b/dev-lang/php/files/5.1-any/php5-with-iodbc.diff @@ -0,0 +1,13 @@ +--- ext/odbc/php_odbc_includes.h 2005-02-22 17:55:18.000000000 +0000 ++++ ext/odbc/php_odbc_includes.h 2005-02-22 17:55:26.000000000 +0000 +@@ -91,8 +91,8 @@ + #elif defined(HAVE_IODBC) /* iODBC library */ + + #define ODBC_TYPE "iODBC" +-#include <isql.h> +-#include <isqlext.h> ++#include <iodbc/isql.h> ++#include <iodbc/isqlext.h> + #define HAVE_SQL_EXTENDED_FETCH 1 + #define SQL_FD_FETCH_ABSOLUTE 0x00000010L + #define SQL_CURSOR_DYNAMIC 2UL diff --git a/dev-lang/php/files/5.1.0/CVS/Entries b/dev-lang/php/files/5.1.0/CVS/Entries new file mode 100644 index 0000000..ed09a85 --- /dev/null +++ b/dev-lang/php/files/5.1.0/CVS/Entries @@ -0,0 +1,7 @@ +D/apache-1.3//// +D/apache-2.0//// +/php5-imap-symlink.diff/1.1/Sun Sep 4 22:21:18 2005//T1.1 +/php5-iodbc-config.diff/1.1/Sun Sep 4 22:21:18 2005//T1.1 +/php5-prefork.patch/1.1/Sun Sep 4 22:21:18 2005//T1.1 +/php5-with-iodbc.diff/1.1/Sun Sep 4 22:21:18 2005//T1.1 +/php5_soap_persistence_session.diff/1.1/Sun Sep 4 22:21:18 2005//T1.1 diff --git a/dev-lang/php/files/5.1.0/CVS/Repository b/dev-lang/php/files/5.1.0/CVS/Repository new file mode 100644 index 0000000..530f59a --- /dev/null +++ b/dev-lang/php/files/5.1.0/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.1.0 diff --git a/dev-lang/php/files/5.1.0/CVS/Root b/dev-lang/php/files/5.1.0/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.1.0/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.1.0/CVS/Tag b/dev-lang/php/files/5.1.0/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.1.0/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.1.0/apache-1.3/70_mod_php5.conf b/dev-lang/php/files/5.1.0/apache-1.3/70_mod_php5.conf new file mode 100644 index 0000000..c6f1426 --- /dev/null +++ b/dev-lang/php/files/5.1.0/apache-1.3/70_mod_php5.conf @@ -0,0 +1,20 @@ +# vim: ft=apache sw=4 ts=4 +<IfDefine PHP5> + + # Load the module first + <IfModule !sapi_apache.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php .php5 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/5.1.0/apache-1.3/CVS/Entries b/dev-lang/php/files/5.1.0/apache-1.3/CVS/Entries new file mode 100644 index 0000000..3351de7 --- /dev/null +++ b/dev-lang/php/files/5.1.0/apache-1.3/CVS/Entries @@ -0,0 +1,2 @@ +/70_mod_php5.conf/1.1/Sun Sep 4 16:58:08 2005//T1.1 +D diff --git a/dev-lang/php/files/5.1.0/apache-1.3/CVS/Repository b/dev-lang/php/files/5.1.0/apache-1.3/CVS/Repository new file mode 100644 index 0000000..d340800 --- /dev/null +++ b/dev-lang/php/files/5.1.0/apache-1.3/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.1.0/apache-1.3 diff --git a/dev-lang/php/files/5.1.0/apache-1.3/CVS/Root b/dev-lang/php/files/5.1.0/apache-1.3/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.1.0/apache-1.3/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.1.0/apache-1.3/CVS/Tag b/dev-lang/php/files/5.1.0/apache-1.3/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.1.0/apache-1.3/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.1.0/apache-2.0/70_mod_php5.conf b/dev-lang/php/files/5.1.0/apache-2.0/70_mod_php5.conf new file mode 100644 index 0000000..40dfa86 --- /dev/null +++ b/dev-lang/php/files/5.1.0/apache-2.0/70_mod_php5.conf @@ -0,0 +1,20 @@ +# vim: ft=apache sw=4 ts=4 +<IfDefine PHP5> + + # Load the module first + <IfModule !sapi_apache2.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php .php5 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/5.1.0/apache-2.0/CVS/Entries b/dev-lang/php/files/5.1.0/apache-2.0/CVS/Entries new file mode 100644 index 0000000..3351de7 --- /dev/null +++ b/dev-lang/php/files/5.1.0/apache-2.0/CVS/Entries @@ -0,0 +1,2 @@ +/70_mod_php5.conf/1.1/Sun Sep 4 16:58:08 2005//T1.1 +D diff --git a/dev-lang/php/files/5.1.0/apache-2.0/CVS/Repository b/dev-lang/php/files/5.1.0/apache-2.0/CVS/Repository new file mode 100644 index 0000000..1039330 --- /dev/null +++ b/dev-lang/php/files/5.1.0/apache-2.0/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.1.0/apache-2.0 diff --git a/dev-lang/php/files/5.1.0/apache-2.0/CVS/Root b/dev-lang/php/files/5.1.0/apache-2.0/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.1.0/apache-2.0/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.1.0/apache-2.0/CVS/Tag b/dev-lang/php/files/5.1.0/apache-2.0/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.1.0/apache-2.0/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.1.0/php5-imap-symlink.diff b/dev-lang/php/files/5.1.0/php5-imap-symlink.diff new file mode 100644 index 0000000..13c2bdd --- /dev/null +++ b/dev-lang/php/files/5.1.0/php5-imap-symlink.diff @@ -0,0 +1,15 @@ +--- ext/imap/config.m4 2005-09-04 00:56:31.000000000 +0200 ++++ ext/imap/config.m4 2005-09-04 00:57:03.000000000 +0200 +@@ -146,12 +146,6 @@ + AC_MSG_ERROR(Cannot find rfc822.h. Please check your c-client installation.) + fi + +- if test -r "$IMAP_DIR/c-client/c-client.a"; then +- ln -s "$IMAP_DIR/c-client/c-client.a" "$IMAP_DIR/c-client/libc-client.a" >/dev/null 2>&1 +- elif test -r "$IMAP_DIR/$PHP_LIBDIR/c-client.a"; then +- ln -s "$IMAP_DIR/$PHP_LIBDIR/c-client.a" "$IMAP_DIR/$PHP_LIBDIR/libc-client.a" >/dev/null 2>&1 +- fi +- + for lib in c-client4 c-client imap; do + IMAP_LIB=$lib + IMAP_LIB_CHK($PHP_LIBDIR) diff --git a/dev-lang/php/files/5.1.0/php5-iodbc-config.diff b/dev-lang/php/files/5.1.0/php5-iodbc-config.diff new file mode 100644 index 0000000..b6d1b68 --- /dev/null +++ b/dev-lang/php/files/5.1.0/php5-iodbc-config.diff @@ -0,0 +1,14 @@ +--- ext/odbc/config.m4 2005-08-10 02:08:48.000000000 +0200 ++++ ext/odbc/config.m4 2005-08-10 02:09:14.000000000 +0200 +@@ -440,9 +440,9 @@ + fi + if test "$withval" != "no"; then + PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/lib) +- PHP_ADD_INCLUDE($withval/include, 1) ++ PHP_ADD_INCLUDE($withval/include/iodbc, 1) + ODBC_TYPE=iodbc +- ODBC_INCLUDE=-I$withval/include ++ ODBC_INCLUDE=-I$withval/include/iodbc + ODBC_LFLAGS=-L$withval/$PHP_LIBDIR + ODBC_LIBS=-liodbc + AC_DEFINE(HAVE_IODBC,1,[ ]) diff --git a/dev-lang/php/files/5.1.0/php5-prefork.patch b/dev-lang/php/files/5.1.0/php5-prefork.patch new file mode 100644 index 0000000..135579c --- /dev/null +++ b/dev-lang/php/files/5.1.0/php5-prefork.patch @@ -0,0 +1,26 @@ +diff -u --recursive php-5.0.4-orig/sapi/apache2filter/config.m4 php-5.0.4/sapi/apache2filter/config.m4 +--- php-5.0.4-orig/sapi/apache2filter/config.m4 2005-03-13 20:30:44.767051120 +0000 ++++ php-5.0.4/sapi/apache2filter/config.m4 2005-03-13 20:32:01.999310032 +0000 +@@ -115,9 +115,6 @@ + ;; + esac + +- if test "$APXS_MPM" != "prefork"; then +- PHP_BUILD_THREAD_SAFE +- fi + AC_MSG_RESULT(yes) + + PHP_SUBST(APXS) +diff -u --recursive php-5.0.4-orig/sapi/apache2handler/config.m4 php-5.0.4/sapi/apache2handler/config.m4 +--- php-5.0.4-orig/sapi/apache2handler/config.m4 2005-03-13 20:30:44.771050512 +0000 ++++ php-5.0.4/sapi/apache2handler/config.m4 2005-03-13 20:31:50.106118072 +0000 +@@ -114,9 +114,6 @@ + ;; + esac + +- if test "$APXS_MPM" != "prefork"; then +- PHP_BUILD_THREAD_SAFE +- fi + AC_MSG_RESULT(yes) + + PHP_SUBST(APXS) diff --git a/dev-lang/php/files/5.1.0/php5-with-iodbc.diff b/dev-lang/php/files/5.1.0/php5-with-iodbc.diff new file mode 100644 index 0000000..81afcc0 --- /dev/null +++ b/dev-lang/php/files/5.1.0/php5-with-iodbc.diff @@ -0,0 +1,13 @@ +--- ext/odbc/php_odbc_includes.h 2005-02-22 17:55:18.000000000 +0000 ++++ ext/odbc/php_odbc_includes.h 2005-02-22 17:55:26.000000000 +0000 +@@ -91,8 +91,8 @@ + #elif defined(HAVE_IODBC) /* iODBC library */ + + #define ODBC_TYPE "iODBC" +-#include <isql.h> +-#include <isqlext.h> ++#include <iodbc/isql.h> ++#include <iodbc/isqlext.h> + #define HAVE_SQL_EXTENDED_FETCH 1 + #define SQL_FD_FETCH_ABSOLUTE 0x00000010L + #define SQL_CURSOR_DYNAMIC 2UL diff --git a/dev-lang/php/files/5.1.0/php5_soap_persistence_session.diff b/dev-lang/php/files/5.1.0/php5_soap_persistence_session.diff new file mode 100644 index 0000000..626ac67 --- /dev/null +++ b/dev-lang/php/files/5.1.0/php5_soap_persistence_session.diff @@ -0,0 +1,35 @@ +diff -ruN php-5.0.0RC3.orig/ext/soap/soap.c php-5.0.0RC3/ext/soap/soap.c +--- php-5.0.0RC3.orig/ext/soap/soap.c 2004-06-22 19:35:59.801348936 +0300 ++++ php-5.0.0RC3/ext/soap/soap.c 2004-06-29 13:39:00.506820928 +0300 +@@ -1341,16 +1341,21 @@ + soap_obj = NULL; + #if HAVE_PHP_SESSION + /* If persistent then set soap_obj from from the previous created session (if available) */ ++ char soapname[32+sizeof("_bogus_session_name")]; //Now we use max 32 chars from class name, must be overwriten with dynamic allocation with exact length!! + if (service->soap_class.persistance == SOAP_PERSISTENCE_SESSION) { + zval **tmp_soap; + ++ bzero(soapname,32+sizeof("_bogus_session_name")); ++ strncpy(soapname,service->soap_class.ce->name,32); ++ strcat(soapname,"_bogus_session_name"); ++ + if (PS(session_status) != php_session_active && + PS(session_status) != php_session_disabled) { + php_session_start(TSRMLS_C); + } + + /* Find the soap object and assign */ +- if (zend_hash_find(Z_ARRVAL_P(PS(http_session_vars)), "_bogus_session_name", sizeof("_bogus_session_name"), (void **) &tmp_soap) == SUCCESS && ++ if (zend_hash_find(Z_ARRVAL_P(PS(http_session_vars)), soapname, sizeof(soapname), (void **) &tmp_soap) == SUCCESS && + Z_TYPE_PP(tmp_soap) == IS_OBJECT && + Z_OBJCE_PP(tmp_soap) == service->soap_class.ce) { + soap_obj = *tmp_soap; +@@ -1432,7 +1437,7 @@ + /* If session then update session hash with new object */ + if (service->soap_class.persistance == SOAP_PERSISTENCE_SESSION) { + zval **tmp_soap_pp; +- if (zend_hash_update(Z_ARRVAL_P(PS(http_session_vars)), "_bogus_session_name", sizeof("_bogus_session_name"), &tmp_soap, sizeof(zval *), (void **)&tmp_soap_pp) == SUCCESS) { ++ if (zend_hash_update(Z_ARRVAL_P(PS(http_session_vars)), soapname, sizeof(soapname), &tmp_soap, sizeof(zval *), (void **)&tmp_soap_pp) == SUCCESS) { + soap_obj = *tmp_soap_pp; + } + } else { diff --git a/dev-lang/php/files/5.1.1/CVS/Entries b/dev-lang/php/files/5.1.1/CVS/Entries new file mode 100644 index 0000000..6ac9f90 --- /dev/null +++ b/dev-lang/php/files/5.1.1/CVS/Entries @@ -0,0 +1,4 @@ +/php5.1.1-curl-gcry_threads.patch/1.1/Thu Jan 5 17:23:22 2006/-ko/T1.1 +/php5.1.1-ming-config.patch/1.1/Wed Jan 4 09:24:48 2006/-ko/T1.1 +/php5.1.1-multilib-search-path.patch/1.1/Wed Jan 4 09:24:48 2006/-ko/T1.1 +D diff --git a/dev-lang/php/files/5.1.1/CVS/Repository b/dev-lang/php/files/5.1.1/CVS/Repository new file mode 100644 index 0000000..f3e8b27 --- /dev/null +++ b/dev-lang/php/files/5.1.1/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/5.1.1 diff --git a/dev-lang/php/files/5.1.1/CVS/Root b/dev-lang/php/files/5.1.1/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/5.1.1/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/5.1.1/CVS/Tag b/dev-lang/php/files/5.1.1/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/5.1.1/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/5.1.1/php5.1.1-curl-gcry_threads.patch b/dev-lang/php/files/5.1.1/php5.1.1-curl-gcry_threads.patch new file mode 100644 index 0000000..486006a --- /dev/null +++ b/dev-lang/php/files/5.1.1/php5.1.1-curl-gcry_threads.patch @@ -0,0 +1,11 @@ +--- ext/curl/interface.c 2006-01-05 13:50:45.000000000 +0100 ++++ ext/curl/interface.c 2006-01-05 13:51:03.000000000 +0100 +@@ -1673,7 +1673,7 @@ + } + + static struct gcry_thread_cbs php_curl_gnutls_tsl = { +- GCRY_THREAD_OPTIONS_USER, ++ GCRY_THREAD_OPTION_USER, + NULL, + php_curl_ssl_mutex_create, + php_curl_ssl_mutex_destroy, diff --git a/dev-lang/php/files/5.1.1/php5.1.1-ming-config.patch b/dev-lang/php/files/5.1.1/php5.1.1-ming-config.patch new file mode 100644 index 0000000..735e146 --- /dev/null +++ b/dev-lang/php/files/5.1.1/php5.1.1-ming-config.patch @@ -0,0 +1,23 @@ +--- ext/ming/config.m4 2005/11/24 00:51:42 1.22.2.3 ++++ ext/ming/config.m4 2005/11/27 23:22:42 1.22.2.4 +@@ -72,13 +72,13 @@ yes + AC_DEFINE(HAVE_NEW_MING, 1, [ ]) + dnl FIXME: This is now unconditional..better check coming later. + AC_DEFINE(HAVE_MING_ZLIB, 1, [ ]) +- AC_TRY_COMPILE([ +-#include <ming.h> +-int main(int,void) { +- SWFMovie_output(NULL, NULL, NULL, 0)); +- return 0; +-} +- ], [ AC_DEFINE(HAVE_MING_MOVIE_LEVEL, 1, []) ]) ++ ++ AC_TRY_COMPILE([#include <ming.h>], ++ [ ++int main(int,void) { SWFMovie_output(NULL, NULL, NULL, 0); return 0; } ++ ], [ ++ AC_DEFINE(HAVE_MING_MOVIE_LEVEL, 1, [ ]) ++ ], []) + ]) + CPPFLAGS=$old_CPPFLAGS + diff --git a/dev-lang/php/files/5.1.1/php5.1.1-multilib-search-path.patch b/dev-lang/php/files/5.1.1/php5.1.1-multilib-search-path.patch new file mode 100644 index 0000000..0e21e06 --- /dev/null +++ b/dev-lang/php/files/5.1.1/php5.1.1-multilib-search-path.patch @@ -0,0 +1,265 @@ +diff -Nru php-5.1.1.orig/acinclude.m4 php-5.1.1/acinclude.m4 +--- php-5.1.1.orig/acinclude.m4 2005-11-22 00:08:01.000000000 +0100 ++++ php-5.1.1/acinclude.m4 2005-12-07 19:20:13.000000000 +0100 +@@ -441,7 +441,7 @@ + dnl Adds a path to linkpath/runpath (LDFLAGS) + dnl + AC_DEFUN([PHP_ADD_LIBPATH],[ +- if test "$1" != "/usr/$PHP_LIBDIR" && test "$1" != "/usr/lib"; then ++ if test "$1" != "/usr/$PHP_LIBDIR" && test "$1" != "/usr/lib" && test "$1" != "/usr/lib64"; then + PHP_EXPAND_PATH($1, ai_p) + ifelse([$2],,[ + _PHP_ADD_LIBPATH_GLOBAL([$ai_p]) +@@ -1932,7 +1932,7 @@ + dnl Search for the sendmail binary + dnl + AC_DEFUN([PHP_PROG_SENDMAIL], [ +- PHP_ALT_PATH=/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib ++ PHP_ALT_PATH=/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib:/usr/lib64 + AC_PATH_PROG(PROG_SENDMAIL, sendmail,[], $PATH:$PHP_ALT_PATH) + if test -n "$PROG_SENDMAIL"; then + AC_DEFINE(HAVE_SENDMAIL,1,[whether you have sendmail]) +diff -Nru php-5.1.1.orig/ext/interbase/config.m4 php-5.1.1/ext/interbase/config.m4 +--- php-5.1.1.orig/ext/interbase/config.m4 2004-05-12 16:29:42.000000000 +0200 ++++ php-5.1.1/ext/interbase/config.m4 2005-12-07 19:29:06.000000000 +0100 +@@ -9,10 +9,18 @@ + if test "$PHP_INTERBASE" != "no"; then + if test "$PHP_INTERBASE" = "yes"; then + IBASE_INCDIR=/usr/interbase/include +- IBASE_LIBDIR=/usr/interbase/lib ++ for j in lib64 lib; do ++ if test -d /usr/interbase/$j; then ++ IBASE_LIBDIR=/usr/interbase/$j ++ fi ++ done + else + IBASE_INCDIR=$PHP_INTERBASE/include +- IBASE_LIBDIR=$PHP_INTERBASE/lib ++ for j in lib64 lib; do ++ if test -d $PHP_INTERBASE/$j; then ++ IBASE_LIBDIR=$PHP_INTERBASE/$j ++ fi ++ done + fi + + PHP_CHECK_LIBRARY(fbclient, isc_detach_database, +diff -Nru php-5.1.1.orig/ext/mbstring/config.m4 php-5.1.1/ext/mbstring/config.m4 +--- php-5.1.1.orig/ext/mbstring/config.m4 2005-10-28 09:52:58.000000000 +0200 ++++ php-5.1.1/ext/mbstring/config.m4 2005-12-07 21:08:10.000000000 +0100 +@@ -261,7 +261,7 @@ + ],[ + AC_MSG_ERROR([Problem with libmbfl. Please check config.log for more information.]) + ], [ +- -LPHP_LIBMBFL/$PHP_LIBDIR ++ -L$PHP_LIBMBFL/$PHP_LIBDIR + ]) + fi + ]) +diff -Nru php-5.1.1.orig/ext/mcrypt/config.m4 php-5.1.1/ext/mcrypt/config.m4 +--- php-5.1.1.orig/ext/mcrypt/config.m4 2005-05-30 01:16:41.000000000 +0200 ++++ php-5.1.1/ext/mcrypt/config.m4 2005-12-07 20:36:01.000000000 +0100 +@@ -34,6 +34,12 @@ + + PHP_MCRYPT_CHECK_VERSION + ++ for j in lib64 lib; do ++ if test -d $MCRYPT_DIR/$j; then ++ MCRYPT_LIBDIR=MCRYPT_DIR/$j ++ fi ++ done ++ + PHP_CHECK_LIBRARY(mcrypt, mcrypt_module_open, + [ + PHP_ADD_LIBRARY(ltdl,, MCRYPT_SHARED_LIBADD) +@@ -45,13 +51,13 @@ + ],[ + AC_MSG_ERROR([Sorry, I was not able to diagnose which libmcrypt version you have installed.]) + ],[ +- -L$MCRYPT_DIR/lib ++ -L$MCRYPT_LIBDIR + ]) + ],[ +- -L$MCRYPT_DIR/lib -lltdl ++ -L$MCRYPT_LIBDIR -lltdl + ]) + +- PHP_ADD_LIBRARY_WITH_PATH(mcrypt, $MCRYPT_DIR/lib, MCRYPT_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mcrypt, $MCRYPT_LIBDIR, MCRYPT_SHARED_LIBADD) + PHP_ADD_INCLUDE($MCRYPT_DIR/include) + + PHP_SUBST(MCRYPT_SHARED_LIBADD) +diff -Nru php-5.1.1.orig/ext/mhash/config.m4 php-5.1.1/ext/mhash/config.m4 +--- php-5.1.1.orig/ext/mhash/config.m4 2005-05-30 01:16:41.000000000 +0200 ++++ php-5.1.1/ext/mhash/config.m4 2005-12-07 20:39:31.000000000 +0100 +@@ -14,8 +14,14 @@ + AC_MSG_ERROR(Please reinstall libmhash - I cannot find mhash.h) + fi + ++ for j in lib64 lib; do ++ if test -d $MHASH_DIR/$j; then ++ MHASH_LIBDIR=$MHASH_DIR/$j ++ fi ++ done ++ + PHP_ADD_INCLUDE($MHASH_DIR/include) +- PHP_ADD_LIBRARY_WITH_PATH(mhash, $MHASH_DIR/lib, MHASH_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(mhash, $MHASH_LIBDIR, MHASH_SHARED_LIBADD) + + PHP_NEW_EXTENSION(mhash, mhash.c, $ext_shared) + PHP_SUBST(MHASH_SHARED_LIBADD) +diff -Nru php-5.1.1.orig/ext/msession/config.m4 php-5.1.1/ext/msession/config.m4 +--- php-5.1.1.orig/ext/msession/config.m4 2003-02-12 19:34:20.000000000 +0100 ++++ php-5.1.1/ext/msession/config.m4 2005-12-07 20:44:41.000000000 +0100 +@@ -8,13 +8,17 @@ + if test "$PHP_MSESSION" != "no"; then + if test -r $PHP_MSESSION/lib/libphoenix.a; then + PHOENIX_DIR=$PHP_MSESSION ++ PHOENIX_LIBDIR=$PHP_MSESSION/lib + else + AC_MSG_CHECKING(for msession in default path) +- for i in /usr/local/phoenix /usr/local /usr; do +- if test -r $i/lib/libphoenix.a; then +- PHOENIX_DIR=$i +- AC_MSG_RESULT(found in $i) +- fi ++ for j in lib64 lib; do ++ for i in /usr/local/phoenix /usr/local /usr; do ++ if test -r $i/$j/libphoenix.a; then ++ PHOENIX_DIR=$i ++ PHOENIX_LIBDIR=$i/$j ++ AC_MSG_RESULT(found in $i) ++ fi ++ done + done + fi + +@@ -25,7 +29,7 @@ + + + AC_DEFINE(HAVE_MSESSION, 1, [ ]) +- PHP_ADD_LIBRARY_WITH_PATH(phoenix, "$PHOENIX_DIR/lib", PHOENIX_LIB) ++ PHP_ADD_LIBRARY_WITH_PATH(phoenix, "$PHOENIX_LIBDIR", PHOENIX_LIB) + PHOENIX_INCLUDE="-I$PHOENIX_DIR" + PHP_SUBST(PHOENIX_LIB) + +diff -Nru php-5.1.1.orig/ext/odbc/config.m4 php-5.1.1/ext/odbc/config.m4 +--- php-5.1.1.orig/ext/odbc/config.m4 2005-11-21 20:06:02.000000000 +0100 ++++ php-5.1.1/ext/odbc/config.m4 2005-12-07 21:03:38.000000000 +0100 +@@ -141,7 +141,7 @@ + fi + if test "$withval" != "no"; then + PHP_ADD_INCLUDE($withval/incl) +- PHP_ADD_LIBPATH($withval/lib) ++ PHP_ADD_LIBPATH($withval/$PHP_LIBDIR) + PHP_ADD_LIBRARY(sqlod) + ODBC_TYPE=sapdb + AC_DEFINE(HAVE_SAPDB,1,[ ]) +@@ -439,7 +439,7 @@ + withval=/usr/local + fi + if test "$withval" != "no"; then +- PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/lib) ++ PHP_ADD_LIBRARY_WITH_PATH(iodbc, $withval/$PHP_LIBDIR) + PHP_ADD_INCLUDE($withval/include, 1) + ODBC_TYPE=iodbc + ODBC_INCLUDE=-I$withval/include +diff -Nru php-5.1.1.orig/ext/pdo_firebird/config.m4 php-5.1.1/ext/pdo_firebird/config.m4 +--- php-5.1.1.orig/ext/pdo_firebird/config.m4 2005-06-14 02:00:52.000000000 +0200 ++++ php-5.1.1/ext/pdo_firebird/config.m4 2005-12-07 21:15:34.000000000 +0100 +@@ -14,7 +14,11 @@ + FIREBIRD_LIBDIR=/opt/firebird/lib + else + FIREBIRD_INCDIR=$PHP_PDO_FIREBIRD/include +- FIREBIRD_LIBDIR=$PHP_PDO_FIREBIRD/lib ++ for j in lib64 lib; do ++ if test -d $PHP_PDO_FIREBIRD/$j; then ++ FIREBIRD_LIBDIR=$PHP_PDO_FIREBIRD/$j ++ fi ++ done + fi + + PHP_CHECK_LIBRARY(fbclient, isc_detach_database, +diff -Nru php-5.1.1.orig/ext/pdo_mysql/config.m4 php-5.1.1/ext/pdo_mysql/config.m4 +--- php-5.1.1.orig/ext/pdo_mysql/config.m4 2005-11-25 18:07:49.000000000 +0100 ++++ php-5.1.1/ext/pdo_mysql/config.m4 2005-12-07 21:21:27.000000000 +0100 +@@ -65,7 +65,11 @@ + else + PDO_MYSQL_INC_DIR=$PDO_MYSQL_DIR/include + fi +- if test -r $PDO_MYSQL_DIR/lib/mysql; then ++ if test -r $PDO_MYSQL_DIR/lib64/mysql; then ++ PDO_MYSQL_LIB_DIR=$PDO_MYSQL_DIR/lib64/mysql ++ elif test -r $PDO_MYSQL_DIR/lib64; then ++ PDO_MYSQL_LIB_DIR=$PDO_MYSQL_DIR/lib64 ++ elif test -r $PDO_MYSQL_DIR/lib/mysql; then + PDO_MYSQL_LIB_DIR=$PDO_MYSQL_DIR/lib/mysql + else + PDO_MYSQL_LIB_DIR=$PDO_MYSQL_DIR/lib +diff -Nru php-5.1.1.orig/ext/pdo_odbc/config.m4 php-5.1.1/ext/pdo_odbc/config.m4 +--- php-5.1.1.orig/ext/pdo_odbc/config.m4 2005-07-27 05:22:02.000000000 +0200 ++++ php-5.1.1/ext/pdo_odbc/config.m4 2005-12-07 21:40:11.000000000 +0100 +@@ -99,7 +99,7 @@ + + if test -n "$pdo_odbc_dir"; then + PDO_ODBC_INCDIR="$pdo_odbc_dir/include" +- PDO_ODBC_LIBDIR="$pdo_odbc_dir/lib" ++ PDO_ODBC_LIBDIR="$pdo_odbc_dir/$PHP_LIBDIR" + else + PDO_ODBC_INCDIR="$pdo_odbc_def_incdir" + PDO_ODBC_LIBDIR="$pdo_odbc_def_libdir" +diff -Nru php-5.1.1.orig/ext/pdo_pgsql/config.m4 php-5.1.1/ext/pdo_pgsql/config.m4 +--- php-5.1.1.orig/ext/pdo_pgsql/config.m4 2005-07-27 04:51:01.000000000 +0200 ++++ php-5.1.1/ext/pdo_pgsql/config.m4 2005-12-07 21:52:03.000000000 +0100 +@@ -46,7 +46,7 @@ + fi + done + +- for j in lib lib/pgsql lib/postgres lib/postgresql ""; do ++ for j in lib64 lib $PHP_LIBDIR/pgsql $PHP_LIBDIR/postgres $PHP_LIBDIR/postgresql ""; do + if test -f "$i/$j/libpq.so" || test -f "$i/$j/libpq.a"; then + PGSQL_LIBDIR=$i/$j + fi +diff -Nru php-5.1.1.orig/ext/pdo_sqlite/config.m4 php-5.1.1/ext/pdo_sqlite/config.m4 +--- php-5.1.1.orig/ext/pdo_sqlite/config.m4 2005-11-01 04:13:32.000000000 +0100 ++++ php-5.1.1/ext/pdo_sqlite/config.m4 2005-12-07 21:49:57.000000000 +0100 +@@ -54,12 +54,12 @@ + + PHP_CHECK_LIBRARY($LIBNAME,$LIBSYMBOL, + [ +- PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $PDO_SQLITE_DIR/lib, PDO_SQLITE_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $PDO_SQLITE_DIR/$PHP_LIBDIR, PDO_SQLITE_SHARED_LIBADD) + AC_DEFINE(HAVE_PDO_SQLITELIB,1,[ ]) + ],[ + AC_MSG_ERROR([wrong sqlite lib version or lib not found]) + ],[ +- -L$PDO_SQLITE_DIR/lib -lm ++ -L$PDO_SQLITE_DIR/$PHP_LIBDIR -lm + ]) + PHP_CHECK_LIBRARY(sqlite3,sqlite3_key,[ + AC_DEFINE(HAVE_SQLITE3_KEY,1, [have commercial sqlite3 with crypto support]) +diff -Nru php-5.1.1.orig/ext/snmp/config.m4 php-5.1.1/ext/snmp/config.m4 +--- php-5.1.1.orig/ext/snmp/config.m4 2005-05-30 01:16:44.000000000 +0200 ++++ php-5.1.1/ext/snmp/config.m4 2005-12-07 21:53:42.000000000 +0100 +@@ -45,8 +45,8 @@ + test -f $i/snmp/snmp.h && SNMP_INCDIR=$i/snmp + test -f $i/snmp/include/ucd-snmp/snmp.h && SNMP_INCDIR=$i/snmp/include/ucd-snmp + done +- for i in /usr /usr/snmp /usr/local /usr/local/snmp; do +- test -f $i/lib/libsnmp.a -o -f $i/lib/libsnmp.$SHLIB_SUFFIX_NAME && SNMP_LIBDIR=$i/lib ++ for i in /usr/lib /usr/lib64 /usr/snmp/lib /usr/local/lib /usr/local/snmp/lib; do ++ test -f $i/libsnmp.a -o -f $i/libsnmp.$SHLIB_SUFFIX_NAME && SNMP_LIBDIR=$i + done + else + SNMP_INCDIR=$PHP_SNMP/include +diff -Nru php-5.1.1.orig/ext/tidy/config.m4 php-5.1.1/ext/tidy/config.m4 +--- php-5.1.1.orig/ext/tidy/config.m4 2005-05-30 01:16:45.000000000 +0200 ++++ php-5.1.1/ext/tidy/config.m4 2005-12-07 21:54:51.000000000 +0100 +@@ -27,7 +27,7 @@ + AC_MSG_ERROR(Cannot find libtidy) + fi + +- TIDY_LIBDIR=$TIDY_DIR/lib ++ TIDY_LIBDIR=$TIDY_DIR/$PHP_LIBDIR + + PHP_ADD_LIBRARY_WITH_PATH(tidy, $TIDY_LIBDIR, TIDY_SHARED_LIBADD) + PHP_ADD_INCLUDE($TIDY_INCDIR) diff --git a/dev-lang/php/files/70_mod_php.conf-apache1 b/dev-lang/php/files/70_mod_php.conf-apache1 new file mode 100644 index 0000000..60a1fe6 --- /dev/null +++ b/dev-lang/php/files/70_mod_php.conf-apache1 @@ -0,0 +1,18 @@ +<IfDefine PHP4> + + # Load the module first + <IfModule !sapi_apache.c> + LoadModule php4_module modules/libphp4.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/70_mod_php.conf-apache2 b/dev-lang/php/files/70_mod_php.conf-apache2 new file mode 100644 index 0000000..d3ca2ea --- /dev/null +++ b/dev-lang/php/files/70_mod_php.conf-apache2 @@ -0,0 +1,18 @@ +<IfDefine PHP4> + + # Load the module first + <IfModule !sapi_apache2.c> + LoadModule php4_module modules/libphp4.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/70_mod_php5.conf-apache1 b/dev-lang/php/files/70_mod_php5.conf-apache1 new file mode 100644 index 0000000..1aee813 --- /dev/null +++ b/dev-lang/php/files/70_mod_php5.conf-apache1 @@ -0,0 +1,19 @@ +<IfDefine PHP5> + + # Load the module first + <IfModule !sapi_apache.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php .php5 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/70_mod_php5.conf-apache2 b/dev-lang/php/files/70_mod_php5.conf-apache2 new file mode 100644 index 0000000..ecf1152 --- /dev/null +++ b/dev-lang/php/files/70_mod_php5.conf-apache2 @@ -0,0 +1,19 @@ +<IfDefine PHP5> + + # Load the module first + <IfModule !sapi_apache2.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php .php + AddType application/x-httpd-php .phtml + AddType application/x-httpd-php .php3 + AddType application/x-httpd-php .php4 + AddType application/x-httpd-php .php5 + AddType application/x-httpd-php-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/70_mod_php5.conf-apache2-r1 b/dev-lang/php/files/70_mod_php5.conf-apache2-r1 new file mode 100644 index 0000000..50911ad --- /dev/null +++ b/dev-lang/php/files/70_mod_php5.conf-apache2-r1 @@ -0,0 +1,17 @@ +<IfDefine PHP5> + # Load the module first + <IfModule !mod_php5.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <FilesMatch "\.ph(p5?|tml)$"> + SetHandler application/x-httpd-php + </FilesMatch> + + <FilesMatch "\.phps$"> + SetHandler application/x-httpd-php-source + </FilesMatch> + + DirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/70_mod_php5_concurr.conf-apache2 b/dev-lang/php/files/70_mod_php5_concurr.conf-apache2 new file mode 100644 index 0000000..f95db6f --- /dev/null +++ b/dev-lang/php/files/70_mod_php5_concurr.conf-apache2 @@ -0,0 +1,17 @@ +<IfDefine PHP5> + + # Load the module first + <IfModule !mod_php5.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php5 .php + AddType application/x-httpd-php5 .phtml + AddType application/x-httpd-php5 .php5 + AddType application/x-httpd-php5-source .phps + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/70_mod_php5_concurr.conf-apache2-r1 b/dev-lang/php/files/70_mod_php5_concurr.conf-apache2-r1 new file mode 100644 index 0000000..cd1c380 --- /dev/null +++ b/dev-lang/php/files/70_mod_php5_concurr.conf-apache2-r1 @@ -0,0 +1,17 @@ +<IfDefine PHP5> + # Load the module first + <IfModule !mod_php5.c> + LoadModule php5_module modules/libphp5.so + </IfModule> + + # Set it to handle the files + <FilesMatch "\.ph(p5?|tml)$"> + SetHandler application/x-httpd-php5 + </FilesMatch> + + <FilesMatch "\.phps$"> + SetHandler application/x-httpd-php5-source + </FilesMatch> + + DirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/70_mod_php_concurr.conf-apache2 b/dev-lang/php/files/70_mod_php_concurr.conf-apache2 new file mode 100644 index 0000000..64f5b91 --- /dev/null +++ b/dev-lang/php/files/70_mod_php_concurr.conf-apache2 @@ -0,0 +1,15 @@ +<IfDefine PHP4> + + # Load the module first + <IfModule !sapi_apache2.c> + LoadModule php4_module modules/libphp4.so + </IfModule> + + # Set it to handle the files + <IfModule mod_mime.c> + AddType application/x-httpd-php4 .php3 + AddType application/x-httpd-php4 .php4 + </IfModule> + + AddDirectoryIndex index.php index.phtml +</IfDefine> diff --git a/dev-lang/php/files/CVS/Entries b/dev-lang/php/files/CVS/Entries new file mode 100644 index 0000000..63c509d --- /dev/null +++ b/dev-lang/php/files/CVS/Entries @@ -0,0 +1,134 @@ +D/4-any//// +D/4.3.11//// +D/4.4.0//// +D/4.4.1//// +D/5.0-any//// +D/5.0.0//// +D/5.0.4//// +D/5.0.5//// +D/5.1-any//// +D/5.1.0//// +D/5.1.1//// +D/eblits//// +/.frozen/1.1/Thu Jul 3 02:11:34 2003//T1.1 +/20php4-envd/1.1/Mon Mar 5 02:14:44 2007//T1.1 +/20php5-envd/1.1/Mon Mar 5 02:14:44 2007//T1.1 +/70_mod_php.conf-apache1/1.1/Sun Mar 12 13:25:34 2006/-ko/T1.1 +/70_mod_php.conf-apache2/1.1/Sun Mar 12 13:25:34 2006/-ko/T1.1 +/70_mod_php5.conf-apache1/1.1/Sun Mar 12 13:25:34 2006/-ko/T1.1 +/70_mod_php5.conf-apache2/1.1/Sun Mar 12 13:25:34 2006/-ko/T1.1 +/70_mod_php5.conf-apache2-r1/1.1/Sun Jan 11 21:16:32 2009//T1.1 +/70_mod_php5_concurr.conf-apache2/1.1/Fri Jul 14 16:04:37 2006//T1.1 +/70_mod_php5_concurr.conf-apache2-r1/1.1/Sun Jan 11 21:16:32 2009//T1.1 +/70_mod_php_concurr.conf-apache2/1.1/Fri Jul 14 16:04:37 2006//T1.1 +/digest-php-4.0.4_p1/1.1/Sun Apr 29 18:56:12 2001//T1.1 +/digest-php-4.0.5/1.1/Sun May 6 18:06:22 2001//T1.1 +/digest-php-4.0.6/1.1/Sun Jul 1 21:03:17 2001//T1.1 +/digest-php-4.0.6-r1/1.1/Thu Jul 5 00:32:00 2001//T1.1 +/digest-php-4.0.6-r2/1.1/Sat Oct 6 14:36:55 2001//T1.1 +/digest-php-4.0.6-r3/1.1/Sun Nov 11 13:12:00 2001//T1.1 +/digest-php-4.0.6-r4/1.1/Tue Feb 12 17:44:44 2002//T1.1 +/digest-php-4.0.6-r5/1.1/Mon Feb 18 21:01:05 2002//T1.1 +/digest-php-4.0.6-r700/1.1/Fri Dec 7 19:18:16 2001//T1.1 +/digest-php-4.1.1/1.1/Thu Jan 3 15:50:25 2002//T1.1 +/digest-php-4.1.1-r1/1.1/Wed Feb 6 17:00:46 2002//T1.1 +/digest-php-4.1.1-r2/1.1/Tue Feb 12 17:44:44 2002//T1.1 +/digest-php-4.1.1-r3/1.1/Mon Feb 18 21:01:05 2002//T1.1 +/digest-php-4.1.1-r4/1.1/Sat Feb 23 20:35:19 2002//T1.1 +/digest-php-4.1.1-r5/1.1/Mon Feb 25 19:50:23 2002//T1.1 +/digest-php-4.1.2/1.1/Thu Feb 28 05:29:22 2002//T1.1 +/digest-php-4.1.2-r1/1.1/Thu Feb 28 07:07:57 2002//T1.1 +/digest-php-4.1.2-r2/1.1/Thu Mar 7 08:25:46 2002//T1.1 +/digest-php-4.1.2-r3/1.1/Wed Mar 13 20:49:20 2002//T1.1 +/digest-php-4.1.2-r4/1.1/Tue Apr 9 23:59:01 2002//T1.1 +/digest-php-4.1.2-r5/1.1/Thu Apr 11 04:34:21 2002//T1.1 +/digest-php-4.1.2-r6/1.1/Fri Apr 12 21:20:16 2002//T1.1 +/digest-php-4.1.2-r7/1.1/Mon Apr 15 20:12:42 2002//T1.1 +/digest-php-4.1.2-r8/1.1/Sat Apr 27 09:26:07 2002//T1.1 +/digest-php-4.1.2-r9/1.1/Sun May 5 23:45:44 2002//T1.1 +/digest-php-4.2.0/1.1/Wed May 8 07:01:25 2002//T1.1 +/digest-php-4.2.1/1.1/Sun May 19 23:04:16 2002//T1.1 +/digest-php-4.2.1-r1/1.1/Tue May 21 15:45:15 2002//T1.1 +/digest-php-4.2.1-r2/1.1/Mon Jul 8 15:24:41 2002//T1.1 +/digest-php-4.2.1-r3/1.1/Tue Jul 9 19:10:58 2002//T1.1 +/digest-php-4.3.11/1.1/Sun Sep 11 18:57:09 2005//T1.1 +/digest-php-4.3.11-r1/1.1/Sun Sep 18 13:21:54 2005//T1.1 +/digest-php-4.3.11-r2/1.1/Mon Oct 31 14:10:39 2005//T1.1 +/digest-php-4.3.11-r3/1.1/Thu Nov 3 14:09:24 2005//T1.1 +/digest-php-4.3.11-r4/1.1/Fri Nov 4 12:45:21 2005//T1.1 +/digest-php-4.3.11-r5/1.1/Wed Jan 4 09:24:47 2006//T1.1 +/digest-php-4.4.0/1.1/Sun Sep 4 16:58:08 2005//T1.1 +/digest-php-4.4.0-r1/1.1/Sun Sep 18 13:21:54 2005//T1.1 +/digest-php-4.4.0-r2/1.1/Mon Oct 31 14:10:39 2005//T1.1 +/digest-php-4.4.0-r3/1.1/Thu Nov 3 14:09:24 2005//T1.1 +/digest-php-4.4.0-r4/1.1/Fri Nov 4 12:45:21 2005//T1.1 +/digest-php-4.4.1/1.1/Thu Nov 3 14:09:24 2005//T1.1 +/digest-php-4.4.1-r1/1.1/Thu Nov 3 23:54:59 2005//T1.1 +/digest-php-4.4.1-r2/1.1/Fri Nov 4 12:45:21 2005//T1.1 +/digest-php-4.4.1-r3/1.1/Wed Jan 4 09:24:47 2006//T1.1 +/digest-php-4.4.2/1.1/Sun Mar 12 13:25:34 2006//T1.1 +/digest-php-4.4.2-r1/1.1/Thu Apr 13 20:28:58 2006//T1.1 +/digest-php-4.4.2-r2/1.1/Fri May 5 10:28:58 2006//T1.1 +/digest-php-4.4.2-r3/1.1/Mon May 29 22:07:20 2006//T1.1 +/digest-php-4.4.2-r5/1.1/Tue Jun 20 20:38:58 2006//T1.1 +/digest-php-4.4.2-r6/1.1/Fri Jul 14 16:04:37 2006//T1.1 +/digest-php-4.4.3-r1/1.1/Thu Aug 10 16:31:49 2006//T1.1 +/digest-php-4.4.4/1.1/Tue Aug 29 19:55:32 2006//T1.1 +/digest-php-4.4.4-r1/1.1/Tue Aug 29 23:05:20 2006//T1.1 +/digest-php-4.4.4-r2/1.1/Wed Aug 30 11:17:26 2006//T1.1 +/digest-php-4.4.4-r4/1.1/Sun Sep 10 12:48:50 2006//T1.1 +/digest-php-4.4.4-r6/1.1/Sat Oct 7 20:22:39 2006//T1.1 +/digest-php-4.4.4-r8/1.1/Fri Oct 27 12:17:35 2006//T1.1 +/digest-php-4.4.6/1.1/Mon Mar 5 02:14:44 2007//T1.1 +/digest-php-4.4.7/1.1/Mon May 7 21:56:24 2007//T1.1 +/digest-php-4.4.8/1.1/Tue Jan 8 17:28:27 2008//T1.1 +/digest-php-4.4.8_pre20070816/1.1/Sat Aug 18 13:11:23 2007//T1.1 +/digest-php-5.0.4/1.1/Sun Sep 4 16:58:08 2005//T1.1 +/digest-php-5.0.4-r1/1.1/Sun Sep 18 13:21:54 2005//T1.1 +/digest-php-5.0.4-r2/1.1/Mon Oct 31 14:10:39 2005//T1.1 +/digest-php-5.0.4-r3/1.1/Thu Nov 3 14:09:24 2005//T1.1 +/digest-php-5.0.4-r4/1.1/Fri Nov 4 12:45:21 2005//T1.1 +/digest-php-5.0.5/1.1/Tue Sep 6 14:54:15 2005//T1.1 +/digest-php-5.0.5-r1/1.1/Sun Sep 18 13:21:54 2005//T1.1 +/digest-php-5.0.5-r2/1.1/Mon Oct 31 14:10:39 2005//T1.1 +/digest-php-5.0.5-r3/1.1/Thu Nov 3 14:09:24 2005//T1.1 +/digest-php-5.0.5-r4/1.1/Fri Nov 4 12:45:21 2005//T1.1 +/digest-php-5.0.5-r5/1.1/Wed Jan 4 09:24:47 2006//T1.1 +/digest-php-5.1.1/1.1/Wed Jan 4 09:24:47 2006//T1.1 +/digest-php-5.1.2/1.1/Sun Mar 12 13:25:34 2006//T1.1 +/digest-php-5.1.2-r1/1.1/Thu Apr 13 20:28:58 2006//T1.1 +/digest-php-5.1.4/1.1/Fri May 5 10:28:58 2006//T1.1 +/digest-php-5.1.4-r1/1.1/Mon May 29 22:07:20 2006//T1.1 +/digest-php-5.1.4-r3/1.1/Tue Jun 20 20:38:58 2006//T1.1 +/digest-php-5.1.4-r4/1.1/Fri Jul 14 16:04:37 2006//T1.1 +/digest-php-5.1.4-r6/1.1/Thu Aug 10 16:31:49 2006//T1.1 +/digest-php-5.1.6/1.1/Tue Aug 29 19:55:32 2006//T1.1 +/digest-php-5.1.6-r1/1.1/Tue Aug 29 23:05:20 2006//T1.1 +/digest-php-5.1.6-r11/1.1/Mon Mar 5 02:14:44 2007//T1.1 +/digest-php-5.1.6-r2/1.1/Wed Aug 30 11:17:26 2006//T1.1 +/digest-php-5.1.6-r4/1.1/Sun Sep 10 12:48:50 2006//T1.1 +/digest-php-5.1.6-r6/1.1/Sat Oct 7 20:22:39 2006//T1.1 +/digest-php-5.1.6-r8/1.1/Fri Oct 27 12:17:35 2006//T1.1 +/digest-php-5.2.1-r3/1.1/Mon Mar 5 02:14:44 2007//T1.1 +/digest-php-5.2.2-r1/1.1/Mon May 7 21:56:24 2007//T1.1 +/digest-php-5.2.3-r3/1.1/Sun Jul 22 21:16:52 2007//T1.1 +/digest-php-5.2.4/1.1/Sat Sep 8 18:26:37 2007//T1.1 +/digest-php-5.2.4_p20070914/1.1/Fri Sep 14 15:33:29 2007//T1.1 +/digest-php-5.2.4_p20070914-r2/1.1/Wed Sep 19 20:06:05 2007//T1.1 +/digest-php-5.2.4_pre200708051230-r2/1.1/Thu Aug 9 20:01:48 2007//T1.1 +/digest-php-5.2.5/1.1/Fri Nov 9 22:44:31 2007//T1.1 +/digest-php-5.2.5-r1/1.1/Sat Dec 8 23:23:39 2007//T1.1 +/mod_php.conf/1.1/Thu Apr 11 04:34:21 2002//T1.1 +/php-5.2.10-pdo_dblib.patch/1.1/Thu Sep 24 23:36:55 2009//T1.1 +/php-5.2.12-libpng14.patch/1.1/Sat Mar 13 18:23:22 2010//T1.1 +/php-fpm-gentooified-5.3.4.patch/1.1/Sun Dec 19 22:45:22 2010//T1.1 +/php-fpm-gentooified.patch/1.1/Mon Jul 26 13:42:12 2010//T1.1 +/php-fpm-r0.conf/1.1/Sat Jul 23 10:14:46 2011//T1.1 +/php-fpm-r1.conf/1.1/Sat Jul 23 10:14:46 2011//T1.1 +/php-fpm-r1.init/1.1/Tue Oct 19 20:07:25 2010//T1.1 +/php-fpm-r3.init/1.1/Sun Dec 19 22:45:22 2010//T1.1 +/php-fpm-r4.init/1.1/Sat Jul 23 10:14:46 2011//T1.1 +/php-fpm.conf/1.1/Tue Dec 21 09:09:17 2010//T1.1 +/php-fpm.init/1.1/Mon Jul 26 13:42:12 2010//T1.1 +/php4-ldvs/1.1/Fri Jul 14 16:04:37 2006//T1.1 +/php5-ldvs/1.1/Fri Jul 14 16:04:37 2006//T1.1 diff --git a/dev-lang/php/files/CVS/Repository b/dev-lang/php/files/CVS/Repository new file mode 100644 index 0000000..71153e2 --- /dev/null +++ b/dev-lang/php/files/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files diff --git a/dev-lang/php/files/CVS/Root b/dev-lang/php/files/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/CVS/Tag b/dev-lang/php/files/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/digest-php-4.0.4_p1 b/dev-lang/php/files/digest-php-4.0.4_p1 new file mode 100644 index 0000000..a4a8e85 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.0.4_p1 @@ -0,0 +1,2 @@ +MD5 ae3ab0105154dddea1fa2ca18a902f85 php-4.0.4pl1.tar.gz +MD5 20c64ba8d79665e9bfab052fa5a85eab number4.tar.gz diff --git a/dev-lang/php/files/digest-php-4.0.5 b/dev-lang/php/files/digest-php-4.0.5 new file mode 100644 index 0000000..84b7f97 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.0.5 @@ -0,0 +1 @@ +MD5 763739f64eeac7099035fd86c1d39ad2 php-4.0.5.tar.gz diff --git a/dev-lang/php/files/digest-php-4.0.6 b/dev-lang/php/files/digest-php-4.0.6 new file mode 100644 index 0000000..b0cf774 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.0.6 @@ -0,0 +1 @@ +MD5 5f698521cf2b392cf9bfa87fc1a0fe90 php-4.0.6.tar.gz diff --git a/dev-lang/php/files/digest-php-4.0.6-r1 b/dev-lang/php/files/digest-php-4.0.6-r1 new file mode 100644 index 0000000..b0cf774 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.0.6-r1 @@ -0,0 +1 @@ +MD5 5f698521cf2b392cf9bfa87fc1a0fe90 php-4.0.6.tar.gz diff --git a/dev-lang/php/files/digest-php-4.0.6-r2 b/dev-lang/php/files/digest-php-4.0.6-r2 new file mode 100644 index 0000000..b0cf774 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.0.6-r2 @@ -0,0 +1 @@ +MD5 5f698521cf2b392cf9bfa87fc1a0fe90 php-4.0.6.tar.gz diff --git a/dev-lang/php/files/digest-php-4.0.6-r3 b/dev-lang/php/files/digest-php-4.0.6-r3 new file mode 100644 index 0000000..ba2eb04 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.0.6-r3 @@ -0,0 +1 @@ +MD5 5f698521cf2b392cf9bfa87fc1a0fe90 php-4.0.6.tar.gz 3158016 diff --git a/dev-lang/php/files/digest-php-4.0.6-r4 b/dev-lang/php/files/digest-php-4.0.6-r4 new file mode 100644 index 0000000..ba2eb04 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.0.6-r4 @@ -0,0 +1 @@ +MD5 5f698521cf2b392cf9bfa87fc1a0fe90 php-4.0.6.tar.gz 3158016 diff --git a/dev-lang/php/files/digest-php-4.0.6-r5 b/dev-lang/php/files/digest-php-4.0.6-r5 new file mode 100644 index 0000000..82f9b23 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.0.6-r5 @@ -0,0 +1 @@ +MD5 5f698521cf2b392cf9bfa87fc1a0fe90 php-4.0.6.tar.gz 3157346 diff --git a/dev-lang/php/files/digest-php-4.0.6-r700 b/dev-lang/php/files/digest-php-4.0.6-r700 new file mode 100644 index 0000000..ba2eb04 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.0.6-r700 @@ -0,0 +1 @@ +MD5 5f698521cf2b392cf9bfa87fc1a0fe90 php-4.0.6.tar.gz 3158016 diff --git a/dev-lang/php/files/digest-php-4.1.1 b/dev-lang/php/files/digest-php-4.1.1 new file mode 100644 index 0000000..9673f2e --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.1 @@ -0,0 +1 @@ +MD5 776362ff53bf6ea77b60496f6632b6b6 php-4.1.1.tar.gz 3362816 diff --git a/dev-lang/php/files/digest-php-4.1.1-r1 b/dev-lang/php/files/digest-php-4.1.1-r1 new file mode 100644 index 0000000..d7e8f2b --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.1-r1 @@ -0,0 +1 @@ +MD5 776362ff53bf6ea77b60496f6632b6b6 php-4.1.1.tar.gz 3356062 diff --git a/dev-lang/php/files/digest-php-4.1.1-r2 b/dev-lang/php/files/digest-php-4.1.1-r2 new file mode 100644 index 0000000..beeab6e --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.1-r2 @@ -0,0 +1 @@ +MD5 776362ff53bf6ea77b60496f6632b6b6 php-4.1.1.tar.gz 3358720 diff --git a/dev-lang/php/files/digest-php-4.1.1-r3 b/dev-lang/php/files/digest-php-4.1.1-r3 new file mode 100644 index 0000000..d7e8f2b --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.1-r3 @@ -0,0 +1 @@ +MD5 776362ff53bf6ea77b60496f6632b6b6 php-4.1.1.tar.gz 3356062 diff --git a/dev-lang/php/files/digest-php-4.1.1-r4 b/dev-lang/php/files/digest-php-4.1.1-r4 new file mode 100644 index 0000000..d7e8f2b --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.1-r4 @@ -0,0 +1 @@ +MD5 776362ff53bf6ea77b60496f6632b6b6 php-4.1.1.tar.gz 3356062 diff --git a/dev-lang/php/files/digest-php-4.1.1-r5 b/dev-lang/php/files/digest-php-4.1.1-r5 new file mode 100644 index 0000000..d7e8f2b --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.1-r5 @@ -0,0 +1 @@ +MD5 776362ff53bf6ea77b60496f6632b6b6 php-4.1.1.tar.gz 3356062 diff --git a/dev-lang/php/files/digest-php-4.1.2 b/dev-lang/php/files/digest-php-4.1.2 new file mode 100644 index 0000000..b7e2c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.2 @@ -0,0 +1 @@ +MD5 75a62553076c20e91d3be575ce158be2 php-4.1.2.tar.gz 3359964 diff --git a/dev-lang/php/files/digest-php-4.1.2-r1 b/dev-lang/php/files/digest-php-4.1.2-r1 new file mode 100644 index 0000000..b7e2c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.2-r1 @@ -0,0 +1 @@ +MD5 75a62553076c20e91d3be575ce158be2 php-4.1.2.tar.gz 3359964 diff --git a/dev-lang/php/files/digest-php-4.1.2-r2 b/dev-lang/php/files/digest-php-4.1.2-r2 new file mode 100644 index 0000000..b7e2c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.2-r2 @@ -0,0 +1 @@ +MD5 75a62553076c20e91d3be575ce158be2 php-4.1.2.tar.gz 3359964 diff --git a/dev-lang/php/files/digest-php-4.1.2-r3 b/dev-lang/php/files/digest-php-4.1.2-r3 new file mode 100644 index 0000000..b7e2c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.2-r3 @@ -0,0 +1 @@ +MD5 75a62553076c20e91d3be575ce158be2 php-4.1.2.tar.gz 3359964 diff --git a/dev-lang/php/files/digest-php-4.1.2-r4 b/dev-lang/php/files/digest-php-4.1.2-r4 new file mode 100644 index 0000000..b7e2c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.2-r4 @@ -0,0 +1 @@ +MD5 75a62553076c20e91d3be575ce158be2 php-4.1.2.tar.gz 3359964 diff --git a/dev-lang/php/files/digest-php-4.1.2-r5 b/dev-lang/php/files/digest-php-4.1.2-r5 new file mode 100644 index 0000000..b7e2c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.2-r5 @@ -0,0 +1 @@ +MD5 75a62553076c20e91d3be575ce158be2 php-4.1.2.tar.gz 3359964 diff --git a/dev-lang/php/files/digest-php-4.1.2-r6 b/dev-lang/php/files/digest-php-4.1.2-r6 new file mode 100644 index 0000000..b7e2c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.2-r6 @@ -0,0 +1 @@ +MD5 75a62553076c20e91d3be575ce158be2 php-4.1.2.tar.gz 3359964 diff --git a/dev-lang/php/files/digest-php-4.1.2-r7 b/dev-lang/php/files/digest-php-4.1.2-r7 new file mode 100644 index 0000000..b7e2c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.2-r7 @@ -0,0 +1 @@ +MD5 75a62553076c20e91d3be575ce158be2 php-4.1.2.tar.gz 3359964 diff --git a/dev-lang/php/files/digest-php-4.1.2-r8 b/dev-lang/php/files/digest-php-4.1.2-r8 new file mode 100644 index 0000000..b7e2c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.2-r8 @@ -0,0 +1 @@ +MD5 75a62553076c20e91d3be575ce158be2 php-4.1.2.tar.gz 3359964 diff --git a/dev-lang/php/files/digest-php-4.1.2-r9 b/dev-lang/php/files/digest-php-4.1.2-r9 new file mode 100644 index 0000000..b7e2c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.1.2-r9 @@ -0,0 +1 @@ +MD5 75a62553076c20e91d3be575ce158be2 php-4.1.2.tar.gz 3359964 diff --git a/dev-lang/php/files/digest-php-4.2.0 b/dev-lang/php/files/digest-php-4.2.0 new file mode 100644 index 0000000..592a4bd --- /dev/null +++ b/dev-lang/php/files/digest-php-4.2.0 @@ -0,0 +1 @@ +MD5 88d55481de32ab0168aa580f7b611022 php-4.2.0.tar.gz 3442616 diff --git a/dev-lang/php/files/digest-php-4.2.1 b/dev-lang/php/files/digest-php-4.2.1 new file mode 100644 index 0000000..ceaa1d2 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.2.1 @@ -0,0 +1 @@ +MD5 654983196a94ca91c272a00e877b2b40 php-4.2.1.tar.gz 3376494 diff --git a/dev-lang/php/files/digest-php-4.2.1-r1 b/dev-lang/php/files/digest-php-4.2.1-r1 new file mode 100644 index 0000000..ceaa1d2 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.2.1-r1 @@ -0,0 +1 @@ +MD5 654983196a94ca91c272a00e877b2b40 php-4.2.1.tar.gz 3376494 diff --git a/dev-lang/php/files/digest-php-4.2.1-r2 b/dev-lang/php/files/digest-php-4.2.1-r2 new file mode 100644 index 0000000..ceaa1d2 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.2.1-r2 @@ -0,0 +1 @@ +MD5 654983196a94ca91c272a00e877b2b40 php-4.2.1.tar.gz 3376494 diff --git a/dev-lang/php/files/digest-php-4.2.1-r3 b/dev-lang/php/files/digest-php-4.2.1-r3 new file mode 100644 index 0000000..ceaa1d2 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.2.1-r3 @@ -0,0 +1 @@ +MD5 654983196a94ca91c272a00e877b2b40 php-4.2.1.tar.gz 3376494 diff --git a/dev-lang/php/files/digest-php-4.3.11 b/dev-lang/php/files/digest-php-4.3.11 new file mode 100644 index 0000000..137f89a --- /dev/null +++ b/dev-lang/php/files/digest-php-4.3.11 @@ -0,0 +1,2 @@ +MD5 fbc67d240812136a9842bc1f2a217b7a php-4.3.11.tar.bz2 4012575 +MD5 bff79f1e088f09337e1a7df03a62ac2f hardening-patch-4.3.11-0.4.2.patch.gz 101840 diff --git a/dev-lang/php/files/digest-php-4.3.11-r1 b/dev-lang/php/files/digest-php-4.3.11-r1 new file mode 100644 index 0000000..8eda7cd --- /dev/null +++ b/dev-lang/php/files/digest-php-4.3.11-r1 @@ -0,0 +1,3 @@ +MD5 fbc67d240812136a9842bc1f2a217b7a php-4.3.11.tar.bz2 4012575 +MD5 00c2176c90b085ba76871524392f7d03 hardening-patch-4.3.11-0.4.3.patch.gz 105574 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-4.3.11-r2 b/dev-lang/php/files/digest-php-4.3.11-r2 new file mode 100644 index 0000000..6553106 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.3.11-r2 @@ -0,0 +1,3 @@ +MD5 00c2176c90b085ba76871524392f7d03 hardening-patch-4.3.11-0.4.3.patch.gz 105574 +MD5 fbc67d240812136a9842bc1f2a217b7a php-4.3.11.tar.bz2 4012575 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-4.3.11-r3 b/dev-lang/php/files/digest-php-4.3.11-r3 new file mode 100644 index 0000000..6553106 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.3.11-r3 @@ -0,0 +1,3 @@ +MD5 00c2176c90b085ba76871524392f7d03 hardening-patch-4.3.11-0.4.3.patch.gz 105574 +MD5 fbc67d240812136a9842bc1f2a217b7a php-4.3.11.tar.bz2 4012575 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-4.3.11-r4 b/dev-lang/php/files/digest-php-4.3.11-r4 new file mode 100644 index 0000000..6553106 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.3.11-r4 @@ -0,0 +1,3 @@ +MD5 00c2176c90b085ba76871524392f7d03 hardening-patch-4.3.11-0.4.3.patch.gz 105574 +MD5 fbc67d240812136a9842bc1f2a217b7a php-4.3.11.tar.bz2 4012575 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-4.3.11-r5 b/dev-lang/php/files/digest-php-4.3.11-r5 new file mode 100644 index 0000000..c19dd7e --- /dev/null +++ b/dev-lang/php/files/digest-php-4.3.11-r5 @@ -0,0 +1,3 @@ +MD5 9b0c4b722e6102aa95b475074caac5f7 hardening-patch-4.3.11-0.4.3-gentoo.patch.gz 85180 +MD5 fbc67d240812136a9842bc1f2a217b7a php-4.3.11.tar.bz2 4012575 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-4.4.0 b/dev-lang/php/files/digest-php-4.4.0 new file mode 100644 index 0000000..f073a5d --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.0 @@ -0,0 +1,2 @@ +MD5 e85b606fe48198bfcd785e5a5b1c9613 php-4.4.0.tar.bz2 4086074 +MD5 4d489ca6274366c1c1b1407d2ca8f440 hardening-patch-4.4.0-0.4.1.patch.gz 37189 diff --git a/dev-lang/php/files/digest-php-4.4.0-r1 b/dev-lang/php/files/digest-php-4.4.0-r1 new file mode 100644 index 0000000..dd3eed8 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.0-r1 @@ -0,0 +1,3 @@ +MD5 e85b606fe48198bfcd785e5a5b1c9613 php-4.4.0.tar.bz2 4086074 +MD5 6eac3c5c5a7473c68a043c7657298f48 hardening-patch-4.4.0-0.4.3.patch.gz 104840 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-4.4.0-r2 b/dev-lang/php/files/digest-php-4.4.0-r2 new file mode 100644 index 0000000..5cf0a8b --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.0-r2 @@ -0,0 +1,3 @@ +MD5 6eac3c5c5a7473c68a043c7657298f48 hardening-patch-4.4.0-0.4.3.patch.gz 104840 +MD5 e85b606fe48198bfcd785e5a5b1c9613 php-4.4.0.tar.bz2 4086074 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-4.4.0-r3 b/dev-lang/php/files/digest-php-4.4.0-r3 new file mode 100644 index 0000000..5cf0a8b --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.0-r3 @@ -0,0 +1,3 @@ +MD5 6eac3c5c5a7473c68a043c7657298f48 hardening-patch-4.4.0-0.4.3.patch.gz 104840 +MD5 e85b606fe48198bfcd785e5a5b1c9613 php-4.4.0.tar.bz2 4086074 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-4.4.0-r4 b/dev-lang/php/files/digest-php-4.4.0-r4 new file mode 100644 index 0000000..5cf0a8b --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.0-r4 @@ -0,0 +1,3 @@ +MD5 6eac3c5c5a7473c68a043c7657298f48 hardening-patch-4.4.0-0.4.3.patch.gz 104840 +MD5 e85b606fe48198bfcd785e5a5b1c9613 php-4.4.0.tar.bz2 4086074 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-4.4.1 b/dev-lang/php/files/digest-php-4.4.1 new file mode 100644 index 0000000..f88fc54 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.1 @@ -0,0 +1 @@ +MD5 6b5726471189f8a1f26dd7cc5e19b442 php-4.4.1.tar.bz2 4157749 diff --git a/dev-lang/php/files/digest-php-4.4.1-r1 b/dev-lang/php/files/digest-php-4.4.1-r1 new file mode 100644 index 0000000..859996a --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.1-r1 @@ -0,0 +1,2 @@ +MD5 3eef4e232d78ace49f348794072aaa71 hardening-patch-4.4.1-0.4.5.patch.gz 55044 +MD5 6b5726471189f8a1f26dd7cc5e19b442 php-4.4.1.tar.bz2 4157749 diff --git a/dev-lang/php/files/digest-php-4.4.1-r2 b/dev-lang/php/files/digest-php-4.4.1-r2 new file mode 100644 index 0000000..859996a --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.1-r2 @@ -0,0 +1,2 @@ +MD5 3eef4e232d78ace49f348794072aaa71 hardening-patch-4.4.1-0.4.5.patch.gz 55044 +MD5 6b5726471189f8a1f26dd7cc5e19b442 php-4.4.1.tar.bz2 4157749 diff --git a/dev-lang/php/files/digest-php-4.4.1-r3 b/dev-lang/php/files/digest-php-4.4.1-r3 new file mode 100644 index 0000000..3f1e132 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.1-r3 @@ -0,0 +1,2 @@ +MD5 615d27d7c39017e1e45f15bc8eed3c94 hardening-patch-4.4.1-0.4.8-gentoo.patch.gz 59878 +MD5 6b5726471189f8a1f26dd7cc5e19b442 php-4.4.1.tar.bz2 4157749 diff --git a/dev-lang/php/files/digest-php-4.4.2 b/dev-lang/php/files/digest-php-4.4.2 new file mode 100644 index 0000000..1fcfa10 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.2 @@ -0,0 +1,9 @@ +MD5 fa67e075f724b5cb4701ffdd0a05e03d hardening-patch-4.4.2-0.4.8-gentoo.patch.gz 59792 +RMD160 87c5234a6e70b3f24b20227e891e4f878b9e55a8 hardening-patch-4.4.2-0.4.8-gentoo.patch.gz 59792 +SHA256 31a8aec0f46cd34079179a32e1b8033891d9cb0e5cbd53ef9d56848b48c1f1f9 hardening-patch-4.4.2-0.4.8-gentoo.patch.gz 59792 +MD5 28051cd9ef43490dd9727a4d442011b5 php-4.4.2.tar.bz2 4371185 +RMD160 cbef0fa4e233529422bc0944dcfb79d866013f5e php-4.4.2.tar.bz2 4371185 +SHA256 a2024d665125a41611eb64451648d37a81e3579594c8810bb41ac8b2b63f81eb php-4.4.2.tar.bz2 4371185 +MD5 048bcc2e39d96cb5f8194c75291f3cf2 php-patchset-4.4.2-r1.tar.bz2 13774 +RMD160 95db8755a8d5d8972bc8bf5ecaf8740663f910d5 php-patchset-4.4.2-r1.tar.bz2 13774 +SHA256 8106995c3243c604434cb4b4fdafc04db0e3604eccb7ba487724f44b892252e4 php-patchset-4.4.2-r1.tar.bz2 13774 diff --git a/dev-lang/php/files/digest-php-4.4.2-r1 b/dev-lang/php/files/digest-php-4.4.2-r1 new file mode 100644 index 0000000..5a2b723 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.2-r1 @@ -0,0 +1,9 @@ +MD5 fa67e075f724b5cb4701ffdd0a05e03d hardening-patch-4.4.2-0.4.8-gentoo.patch.gz 59792 +RMD160 87c5234a6e70b3f24b20227e891e4f878b9e55a8 hardening-patch-4.4.2-0.4.8-gentoo.patch.gz 59792 +SHA256 31a8aec0f46cd34079179a32e1b8033891d9cb0e5cbd53ef9d56848b48c1f1f9 hardening-patch-4.4.2-0.4.8-gentoo.patch.gz 59792 +MD5 28051cd9ef43490dd9727a4d442011b5 php-4.4.2.tar.bz2 4371185 +RMD160 cbef0fa4e233529422bc0944dcfb79d866013f5e php-4.4.2.tar.bz2 4371185 +SHA256 a2024d665125a41611eb64451648d37a81e3579594c8810bb41ac8b2b63f81eb php-4.4.2.tar.bz2 4371185 +MD5 4aebd7939e86bc60e447b2f9bb2d4bc2 php-patchset-4.4.2-r2.tar.bz2 14555 +RMD160 491fcc0c993530f9ac4429d44a37415c2a9a0b37 php-patchset-4.4.2-r2.tar.bz2 14555 +SHA256 9c7e9ed0044d0222745b5e30584e489e9574330aeb7964a40d1d1de757fb4bf3 php-patchset-4.4.2-r2.tar.bz2 14555 diff --git a/dev-lang/php/files/digest-php-4.4.2-r2 b/dev-lang/php/files/digest-php-4.4.2-r2 new file mode 100644 index 0000000..97bbe13 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.2-r2 @@ -0,0 +1,9 @@ +MD5 3a841a96d8d57d9bfa39344750f54f0a hardening-patch-4.4.2-0.4.9-gentoo.patch.gz 59219 +RMD160 6802aa02189489cf1e713dfde02039f888992507 hardening-patch-4.4.2-0.4.9-gentoo.patch.gz 59219 +SHA256 1a1affd04f234567cf049265fe62e9a2c3bde99193e6e17d5f8c010b04075760 hardening-patch-4.4.2-0.4.9-gentoo.patch.gz 59219 +MD5 28051cd9ef43490dd9727a4d442011b5 php-4.4.2.tar.bz2 4371185 +RMD160 cbef0fa4e233529422bc0944dcfb79d866013f5e php-4.4.2.tar.bz2 4371185 +SHA256 a2024d665125a41611eb64451648d37a81e3579594c8810bb41ac8b2b63f81eb php-4.4.2.tar.bz2 4371185 +MD5 52331faef17753dae2932966c6abcae1 php-patchset-4.4.2-r3.tar.bz2 18050 +RMD160 8c4309da5bd260536bce7523c30bbca7d9283ee6 php-patchset-4.4.2-r3.tar.bz2 18050 +SHA256 c755311adff209e488b4ebce14ed900c9c9f0d518ada7280953df4ddbb301e0e php-patchset-4.4.2-r3.tar.bz2 18050 diff --git a/dev-lang/php/files/digest-php-4.4.2-r3 b/dev-lang/php/files/digest-php-4.4.2-r3 new file mode 100644 index 0000000..a274420 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.2-r3 @@ -0,0 +1,9 @@ +MD5 e9c07b67ddd1f068aa1bbe8021f2a83d hardening-patch-4.4.2-0.4.11-gentoo.patch.gz 59715 +RMD160 bc1131fbb8d9e53fe8ced94ff32aa3f7399bcfd0 hardening-patch-4.4.2-0.4.11-gentoo.patch.gz 59715 +SHA256 c3b440478724e2798e18c4082d95c0b2b48203c7ebe2fd483cf2f24f9317d1b7 hardening-patch-4.4.2-0.4.11-gentoo.patch.gz 59715 +MD5 28051cd9ef43490dd9727a4d442011b5 php-4.4.2.tar.bz2 4371185 +RMD160 cbef0fa4e233529422bc0944dcfb79d866013f5e php-4.4.2.tar.bz2 4371185 +SHA256 a2024d665125a41611eb64451648d37a81e3579594c8810bb41ac8b2b63f81eb php-4.4.2.tar.bz2 4371185 +MD5 3af9e7b9411db3e18bc295265f565ef8 php-patchset-4.4.2-r4.tar.bz2 19584 +RMD160 0c79c747acd8c7318158aba6ef7c6c9438ac1005 php-patchset-4.4.2-r4.tar.bz2 19584 +SHA256 159801594f98960942d2aec2a5a38aaa1566bca4590e16f52f51f147fa391ae0 php-patchset-4.4.2-r4.tar.bz2 19584 diff --git a/dev-lang/php/files/digest-php-4.4.2-r5 b/dev-lang/php/files/digest-php-4.4.2-r5 new file mode 100644 index 0000000..6911486 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.2-r5 @@ -0,0 +1,9 @@ +MD5 e9c07b67ddd1f068aa1bbe8021f2a83d hardening-patch-4.4.2-0.4.11-gentoo.patch.gz 59715 +RMD160 bc1131fbb8d9e53fe8ced94ff32aa3f7399bcfd0 hardening-patch-4.4.2-0.4.11-gentoo.patch.gz 59715 +SHA256 c3b440478724e2798e18c4082d95c0b2b48203c7ebe2fd483cf2f24f9317d1b7 hardening-patch-4.4.2-0.4.11-gentoo.patch.gz 59715 +MD5 28051cd9ef43490dd9727a4d442011b5 php-4.4.2.tar.bz2 4371185 +RMD160 cbef0fa4e233529422bc0944dcfb79d866013f5e php-4.4.2.tar.bz2 4371185 +SHA256 a2024d665125a41611eb64451648d37a81e3579594c8810bb41ac8b2b63f81eb php-4.4.2.tar.bz2 4371185 +MD5 a0919ddd76f6d7e7b05639755125af82 php-patchset-4.4.2-r6.tar.bz2 20884 +RMD160 c8376d9736edb3a59a525022eee9c0a7a5f2a359 php-patchset-4.4.2-r6.tar.bz2 20884 +SHA256 4a422da2b609819a8d95b11e2245e9bfa1440d25e481d4808bfc7d270382480e php-patchset-4.4.2-r6.tar.bz2 20884 diff --git a/dev-lang/php/files/digest-php-4.4.2-r6 b/dev-lang/php/files/digest-php-4.4.2-r6 new file mode 100644 index 0000000..8b915b8 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.2-r6 @@ -0,0 +1,9 @@ +MD5 d53ac42b51ed80f8f23751a1d7113cfa hardening-patch-4.4.2-0.4.11-gentoo-r1.patch.gz 59709 +RMD160 6bd005bda596ff2690f5ee2563b2708671948c7c hardening-patch-4.4.2-0.4.11-gentoo-r1.patch.gz 59709 +SHA256 3e938f8f62322b061acbcc6f900c249b0dee0a8672557c7cbce3513c44f4dc04 hardening-patch-4.4.2-0.4.11-gentoo-r1.patch.gz 59709 +MD5 28051cd9ef43490dd9727a4d442011b5 php-4.4.2.tar.bz2 4371185 +RMD160 cbef0fa4e233529422bc0944dcfb79d866013f5e php-4.4.2.tar.bz2 4371185 +SHA256 a2024d665125a41611eb64451648d37a81e3579594c8810bb41ac8b2b63f81eb php-4.4.2.tar.bz2 4371185 +MD5 fad43ccccab8d21d962efcb03b03b236 php-patchset-4.4.2-r7.tar.bz2 24079 +RMD160 9bd72618cb3ac7584bcbf5f41c7c7926590bc85b php-patchset-4.4.2-r7.tar.bz2 24079 +SHA256 44c976ee3df7b99ed014a1579264cdd069e9bd57efa2757ee4e06112d073fc5b php-patchset-4.4.2-r7.tar.bz2 24079 diff --git a/dev-lang/php/files/digest-php-4.4.3-r1 b/dev-lang/php/files/digest-php-4.4.3-r1 new file mode 100644 index 0000000..f08155e --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.3-r1 @@ -0,0 +1,9 @@ +MD5 c79138eeed379765dabb269397ac3e09 hardening-patch-4.4.3-0.4.13-gentoo.patch.gz 60572 +RMD160 bef0106227dd0e23a67e59d9d0a5735478c2dec2 hardening-patch-4.4.3-0.4.13-gentoo.patch.gz 60572 +SHA256 4e09cd6cbd00e3a2199e6a68ab58875b133fea685500f2a35a2f7d348eaab44b hardening-patch-4.4.3-0.4.13-gentoo.patch.gz 60572 +MD5 9542117551c0e79f5bf21f46493094e7 php-4.4.3.tar.bz2 4461353 +RMD160 36c91930af44e8a1ed59eb159e6131ae8f0c77f0 php-4.4.3.tar.bz2 4461353 +SHA256 0f57da4b9d94f7febd37c0bc8e608e5aafafe744d094466723e04afb283407f7 php-4.4.3.tar.bz2 4461353 +MD5 f53d57eca61739837334f56df400f199 php-patchset-4.4.3-r1.tar.bz2 22814 +RMD160 389617d7e3ed41f67ea284a907cf9a347c5bf471 php-patchset-4.4.3-r1.tar.bz2 22814 +SHA256 16a7748f98cf8dbfeacebecdf57faed28e1176371ad89c62ce88c260811a0c41 php-patchset-4.4.3-r1.tar.bz2 22814 diff --git a/dev-lang/php/files/digest-php-4.4.4 b/dev-lang/php/files/digest-php-4.4.4 new file mode 100644 index 0000000..6ab9203 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.4 @@ -0,0 +1,9 @@ +MD5 603410dabb06b7252c2bcc1143dad813 hardening-patch-4.4.4-0.4.14-gentoo.patch.gz 60772 +RMD160 9f55babe9a2847f68574f94d9d49bb6eef1960b0 hardening-patch-4.4.4-0.4.14-gentoo.patch.gz 60772 +SHA256 454b23922ce1cdcb7ac61d02b198a21db08f2069cd9f7b2fb5f46291f0e24989 hardening-patch-4.4.4-0.4.14-gentoo.patch.gz 60772 +MD5 bc6fa8908e2ac36e93bab9f7d42cda3a php-4.4.4.tar.bz2 4478698 +RMD160 02fd7d5135a9e5ce11d905a4a474a5d42b8441f3 php-4.4.4.tar.bz2 4478698 +SHA256 9f0742fce014a255f8453c1264afee5de289a9e9dcd57c448c77b46978f6a76b php-4.4.4.tar.bz2 4478698 +MD5 677975c1e10ebd9ee17112b4ca0f21af php-patchset-4.4.4-r1.tar.bz2 19969 +RMD160 e420d6b849c115ea987791875e019420292be9fd php-patchset-4.4.4-r1.tar.bz2 19969 +SHA256 5d739336ef5dfabe5dd884f06e2261e1014ae7e0126369aef547b61fc6d8ee92 php-patchset-4.4.4-r1.tar.bz2 19969 diff --git a/dev-lang/php/files/digest-php-4.4.4-r1 b/dev-lang/php/files/digest-php-4.4.4-r1 new file mode 100644 index 0000000..6ab9203 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.4-r1 @@ -0,0 +1,9 @@ +MD5 603410dabb06b7252c2bcc1143dad813 hardening-patch-4.4.4-0.4.14-gentoo.patch.gz 60772 +RMD160 9f55babe9a2847f68574f94d9d49bb6eef1960b0 hardening-patch-4.4.4-0.4.14-gentoo.patch.gz 60772 +SHA256 454b23922ce1cdcb7ac61d02b198a21db08f2069cd9f7b2fb5f46291f0e24989 hardening-patch-4.4.4-0.4.14-gentoo.patch.gz 60772 +MD5 bc6fa8908e2ac36e93bab9f7d42cda3a php-4.4.4.tar.bz2 4478698 +RMD160 02fd7d5135a9e5ce11d905a4a474a5d42b8441f3 php-4.4.4.tar.bz2 4478698 +SHA256 9f0742fce014a255f8453c1264afee5de289a9e9dcd57c448c77b46978f6a76b php-4.4.4.tar.bz2 4478698 +MD5 677975c1e10ebd9ee17112b4ca0f21af php-patchset-4.4.4-r1.tar.bz2 19969 +RMD160 e420d6b849c115ea987791875e019420292be9fd php-patchset-4.4.4-r1.tar.bz2 19969 +SHA256 5d739336ef5dfabe5dd884f06e2261e1014ae7e0126369aef547b61fc6d8ee92 php-patchset-4.4.4-r1.tar.bz2 19969 diff --git a/dev-lang/php/files/digest-php-4.4.4-r2 b/dev-lang/php/files/digest-php-4.4.4-r2 new file mode 100644 index 0000000..6ab9203 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.4-r2 @@ -0,0 +1,9 @@ +MD5 603410dabb06b7252c2bcc1143dad813 hardening-patch-4.4.4-0.4.14-gentoo.patch.gz 60772 +RMD160 9f55babe9a2847f68574f94d9d49bb6eef1960b0 hardening-patch-4.4.4-0.4.14-gentoo.patch.gz 60772 +SHA256 454b23922ce1cdcb7ac61d02b198a21db08f2069cd9f7b2fb5f46291f0e24989 hardening-patch-4.4.4-0.4.14-gentoo.patch.gz 60772 +MD5 bc6fa8908e2ac36e93bab9f7d42cda3a php-4.4.4.tar.bz2 4478698 +RMD160 02fd7d5135a9e5ce11d905a4a474a5d42b8441f3 php-4.4.4.tar.bz2 4478698 +SHA256 9f0742fce014a255f8453c1264afee5de289a9e9dcd57c448c77b46978f6a76b php-4.4.4.tar.bz2 4478698 +MD5 677975c1e10ebd9ee17112b4ca0f21af php-patchset-4.4.4-r1.tar.bz2 19969 +RMD160 e420d6b849c115ea987791875e019420292be9fd php-patchset-4.4.4-r1.tar.bz2 19969 +SHA256 5d739336ef5dfabe5dd884f06e2261e1014ae7e0126369aef547b61fc6d8ee92 php-patchset-4.4.4-r1.tar.bz2 19969 diff --git a/dev-lang/php/files/digest-php-4.4.4-r4 b/dev-lang/php/files/digest-php-4.4.4-r4 new file mode 100644 index 0000000..39d0cab --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.4-r4 @@ -0,0 +1,9 @@ +MD5 55220bd02880e8981455fe83bafa0c8d hardening-patch-4.4.4-0.4.15-gentoo.patch.gz 61351 +RMD160 4c7b02b6a86005136ed6eb751ba549fe1ea275b0 hardening-patch-4.4.4-0.4.15-gentoo.patch.gz 61351 +SHA256 3885d9dba28e8a689d26d1d1889ecd1b8c8289bb25c337d472084c809daba291 hardening-patch-4.4.4-0.4.15-gentoo.patch.gz 61351 +MD5 bc6fa8908e2ac36e93bab9f7d42cda3a php-4.4.4.tar.bz2 4478698 +RMD160 02fd7d5135a9e5ce11d905a4a474a5d42b8441f3 php-4.4.4.tar.bz2 4478698 +SHA256 9f0742fce014a255f8453c1264afee5de289a9e9dcd57c448c77b46978f6a76b php-4.4.4.tar.bz2 4478698 +MD5 7ee22d363546ed55b111f41e5becfdbf php-patchset-4.4.4-r2.tar.bz2 20349 +RMD160 3449835b81db81a99d2046d6933ae6ac51c3eb47 php-patchset-4.4.4-r2.tar.bz2 20349 +SHA256 360fd167822644e9a84baeea04b34f92ea5a96f678c5616d4889541503eecc5d php-patchset-4.4.4-r2.tar.bz2 20349 diff --git a/dev-lang/php/files/digest-php-4.4.4-r6 b/dev-lang/php/files/digest-php-4.4.4-r6 new file mode 100644 index 0000000..c2bc37f --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.4-r6 @@ -0,0 +1,9 @@ +MD5 55220bd02880e8981455fe83bafa0c8d hardening-patch-4.4.4-0.4.15-gentoo.patch.gz 61351 +RMD160 4c7b02b6a86005136ed6eb751ba549fe1ea275b0 hardening-patch-4.4.4-0.4.15-gentoo.patch.gz 61351 +SHA256 3885d9dba28e8a689d26d1d1889ecd1b8c8289bb25c337d472084c809daba291 hardening-patch-4.4.4-0.4.15-gentoo.patch.gz 61351 +MD5 bc6fa8908e2ac36e93bab9f7d42cda3a php-4.4.4.tar.bz2 4478698 +RMD160 02fd7d5135a9e5ce11d905a4a474a5d42b8441f3 php-4.4.4.tar.bz2 4478698 +SHA256 9f0742fce014a255f8453c1264afee5de289a9e9dcd57c448c77b46978f6a76b php-4.4.4.tar.bz2 4478698 +MD5 f0410bd550fc273b56c5af2c2518a93d php-patchset-4.4.4-r3.tar.bz2 21530 +RMD160 79afbba7947b9e6e94f8dcbcda19997b3ff7d462 php-patchset-4.4.4-r3.tar.bz2 21530 +SHA256 c49244a01e67c60f8c984efc9fdcca0154c9a80124788a16ef63e645dca97cb2 php-patchset-4.4.4-r3.tar.bz2 21530 diff --git a/dev-lang/php/files/digest-php-4.4.4-r8 b/dev-lang/php/files/digest-php-4.4.4-r8 new file mode 100644 index 0000000..68f8fb3 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.4-r8 @@ -0,0 +1,9 @@ +MD5 55220bd02880e8981455fe83bafa0c8d hardening-patch-4.4.4-0.4.15-gentoo.patch.gz 61351 +RMD160 4c7b02b6a86005136ed6eb751ba549fe1ea275b0 hardening-patch-4.4.4-0.4.15-gentoo.patch.gz 61351 +SHA256 3885d9dba28e8a689d26d1d1889ecd1b8c8289bb25c337d472084c809daba291 hardening-patch-4.4.4-0.4.15-gentoo.patch.gz 61351 +MD5 bc6fa8908e2ac36e93bab9f7d42cda3a php-4.4.4.tar.bz2 4478698 +RMD160 02fd7d5135a9e5ce11d905a4a474a5d42b8441f3 php-4.4.4.tar.bz2 4478698 +SHA256 9f0742fce014a255f8453c1264afee5de289a9e9dcd57c448c77b46978f6a76b php-4.4.4.tar.bz2 4478698 +MD5 81ed636101b3b3dabd513633db8654f5 php-patchset-4.4.4-r4.tar.bz2 21579 +RMD160 6a46f412185b9775dc2b1a1bb0801248b3702ea1 php-patchset-4.4.4-r4.tar.bz2 21579 +SHA256 62c63d3d04d5cfd856ee8c74e6617089235b1abe4df4baf450c5888945acfa20 php-patchset-4.4.4-r4.tar.bz2 21579 diff --git a/dev-lang/php/files/digest-php-4.4.6 b/dev-lang/php/files/digest-php-4.4.6 new file mode 100644 index 0000000..492d2c4 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.6 @@ -0,0 +1,9 @@ +MD5 5db283824310c87efb18c76b4735c4bd php-4.4.6.tar.bz2 4559282 +RMD160 16a81ee94d1f8f56adf3e76dde32c62597130674 php-4.4.6.tar.bz2 4559282 +SHA256 c468c70e9536b5cbaf8a2615ab9e13c065da19944314633eef675be4d4e40065 php-4.4.6.tar.bz2 4559282 +MD5 7ba532e3132773050c3be7d71e8c9379 php-patchset-4.4.6-r1.tar.bz2 19282 +RMD160 e2576d82f1ca6e1336834ed87767fac9471623c0 php-patchset-4.4.6-r1.tar.bz2 19282 +SHA256 2fb21dfe058fabc57e63e01cc9990c6d8d5d9d74ebd9cc42c13d58cc64f71016 php-patchset-4.4.6-r1.tar.bz2 19282 +MD5 4b3800d1c182f5cf48d60ccb2f7c8acd suhosin-patch-4.4.6-0.9.6-gentoo.patch.gz 21530 +RMD160 cdf02a0ed5d66203c0082063c87b66a6e4109088 suhosin-patch-4.4.6-0.9.6-gentoo.patch.gz 21530 +SHA256 8a52e6c9b1f1c980734daf2fa0d5e68364cd64b20a7c82d68c7fdd135cb788f8 suhosin-patch-4.4.6-0.9.6-gentoo.patch.gz 21530 diff --git a/dev-lang/php/files/digest-php-4.4.7 b/dev-lang/php/files/digest-php-4.4.7 new file mode 100644 index 0000000..6948850 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.7 @@ -0,0 +1,9 @@ +MD5 3f21b44d37a57ca3876d3aea713c700d php-4.4.7.tar.bz2 4543531 +RMD160 5eb44c4b7711111dcbc9117e21ad644e9e6562f3 php-4.4.7.tar.bz2 4543531 +SHA256 d9044635eccd17aeb4ff4ce8580439f4b0c83e6ae3d1e2544fd07a992ab5448e php-4.4.7.tar.bz2 4543531 +MD5 53f0f90547d95d19d8b5349837f5e16c php-patchset-4.4.7-r1.tar.bz2 19025 +RMD160 d55f8590d6187e4b65f3bfa6af921e4ef8c15304 php-patchset-4.4.7-r1.tar.bz2 19025 +SHA256 81b3d3ef6934634e9892e74ea81e48f73156dedd71d53dc5bc07b6ef99b226c5 php-patchset-4.4.7-r1.tar.bz2 19025 +MD5 51ca84cf433c7df444e05c79a03019cc suhosin-patch-4.4.7-0.9.6-gentoo.patch.gz 21555 +RMD160 a4184998c0cbbc4b493c0c6874fca6ee923c7a83 suhosin-patch-4.4.7-0.9.6-gentoo.patch.gz 21555 +SHA256 93d4b422d6e3e4f8fff6cdeb6de619f70d527db44784d5bdcc6d83c0337ec784 suhosin-patch-4.4.7-0.9.6-gentoo.patch.gz 21555 diff --git a/dev-lang/php/files/digest-php-4.4.8 b/dev-lang/php/files/digest-php-4.4.8 new file mode 100644 index 0000000..ca5c4ca --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.8 @@ -0,0 +1,9 @@ +MD5 ed31e77414e0331e787487b53732dbca php-4.4.8.tar.bz2 4546525 +RMD160 dedf4a1a853b19bd3fb91a6028a256facb2d3224 php-4.4.8.tar.bz2 4546525 +SHA256 30d8e281cf1b785301f0ce2ba6a803bda72fb229942d415ae601ef176b46d5c1 php-4.4.8.tar.bz2 4546525 +MD5 c0d4bdacde26844cddd22d82658d2d4f php-patchset-4.4.8-r0.tar.bz2 18948 +RMD160 c2f3cd05b161e144a65e9bde12f66eb44869b0f2 php-patchset-4.4.8-r0.tar.bz2 18948 +SHA256 7fafaefd29b73f76ff8a2a90b827d213043be30b4e3ca4afd18b843cdcf16ab3 php-patchset-4.4.8-r0.tar.bz2 18948 +MD5 094162a3cc48bec95b29e02df4930a43 suhosin-patch-4.4.8-0.9.6.patch.gz 22246 +RMD160 01b59d520b987de1995bce7ab74f5d92ece2a89f suhosin-patch-4.4.8-0.9.6.patch.gz 22246 +SHA256 eff5b6ed79dd76c59bd63ac591f778266c2d518cfab2cede716637cf8fc99630 suhosin-patch-4.4.8-0.9.6.patch.gz 22246 diff --git a/dev-lang/php/files/digest-php-4.4.8_pre20070816 b/dev-lang/php/files/digest-php-4.4.8_pre20070816 new file mode 100644 index 0000000..c83f292 --- /dev/null +++ b/dev-lang/php/files/digest-php-4.4.8_pre20070816 @@ -0,0 +1,9 @@ +MD5 3755d38722835aba5910fcf4d6fc08f5 php-4.4.8_pre20070816.tar.bz2 4597067 +RMD160 f9ea4d071212c28be7e87a5f37b66c75b37c28ee php-4.4.8_pre20070816.tar.bz2 4597067 +SHA256 e9437ee6ad2b014143977cfb7ec70ad21ceef3e9c9d64a946abdad5a124e16fa php-4.4.8_pre20070816.tar.bz2 4597067 +MD5 f43f49033f73a7fee661e9f124835373 php-patchset-4.4.8_pre20070816-r0.tar.bz2 18987 +RMD160 d6239c033400d3267e149f87eb73897637c178e1 php-patchset-4.4.8_pre20070816-r0.tar.bz2 18987 +SHA256 7ec05e1648de766e297a6675a41d405adcbcfba71714e8b0962298085754b28b php-patchset-4.4.8_pre20070816-r0.tar.bz2 18987 +MD5 51ca84cf433c7df444e05c79a03019cc suhosin-patch-4.4.7-0.9.6-gentoo.patch.gz 21555 +RMD160 a4184998c0cbbc4b493c0c6874fca6ee923c7a83 suhosin-patch-4.4.7-0.9.6-gentoo.patch.gz 21555 +SHA256 93d4b422d6e3e4f8fff6cdeb6de619f70d527db44784d5bdcc6d83c0337ec784 suhosin-patch-4.4.7-0.9.6-gentoo.patch.gz 21555 diff --git a/dev-lang/php/files/digest-php-5.0.4 b/dev-lang/php/files/digest-php-5.0.4 new file mode 100644 index 0000000..7f7e849 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.4 @@ -0,0 +1,2 @@ +MD5 fb1aac107870f897d26563a9cc5053c0 php-5.0.4.tar.bz2 4731383 +MD5 361cc41c54174e098169d38ce6510c36 hardening-patch-5.0.4-0.4.1.patch.gz 81342 diff --git a/dev-lang/php/files/digest-php-5.0.4-r1 b/dev-lang/php/files/digest-php-5.0.4-r1 new file mode 100644 index 0000000..a2bcd3e --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.4-r1 @@ -0,0 +1,3 @@ +MD5 fb1aac107870f897d26563a9cc5053c0 php-5.0.4.tar.bz2 4731383 +MD5 361cc41c54174e098169d38ce6510c36 hardening-patch-5.0.4-0.4.1.patch.gz 81342 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-5.0.4-r2 b/dev-lang/php/files/digest-php-5.0.4-r2 new file mode 100644 index 0000000..6b6d1ce --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.4-r2 @@ -0,0 +1,3 @@ +MD5 361cc41c54174e098169d38ce6510c36 hardening-patch-5.0.4-0.4.1.patch.gz 81342 +MD5 fb1aac107870f897d26563a9cc5053c0 php-5.0.4.tar.bz2 4731383 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-5.0.4-r3 b/dev-lang/php/files/digest-php-5.0.4-r3 new file mode 100644 index 0000000..6b6d1ce --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.4-r3 @@ -0,0 +1,3 @@ +MD5 361cc41c54174e098169d38ce6510c36 hardening-patch-5.0.4-0.4.1.patch.gz 81342 +MD5 fb1aac107870f897d26563a9cc5053c0 php-5.0.4.tar.bz2 4731383 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-5.0.4-r4 b/dev-lang/php/files/digest-php-5.0.4-r4 new file mode 100644 index 0000000..6b6d1ce --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.4-r4 @@ -0,0 +1,3 @@ +MD5 361cc41c54174e098169d38ce6510c36 hardening-patch-5.0.4-0.4.1.patch.gz 81342 +MD5 fb1aac107870f897d26563a9cc5053c0 php-5.0.4.tar.bz2 4731383 +MD5 33be24619f3a10953f9e1e32beeee97a php-pcrelib-new-secpatch.tar.bz2 357619 diff --git a/dev-lang/php/files/digest-php-5.0.5 b/dev-lang/php/files/digest-php-5.0.5 new file mode 100644 index 0000000..efd648b --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.5 @@ -0,0 +1 @@ +MD5 b5d4ca75bbb11ee5b830fa67213d9f7f php-5.0.5.tar.bz2 4895556 diff --git a/dev-lang/php/files/digest-php-5.0.5-r1 b/dev-lang/php/files/digest-php-5.0.5-r1 new file mode 100644 index 0000000..c7aa92f --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.5-r1 @@ -0,0 +1,2 @@ +MD5 b5d4ca75bbb11ee5b830fa67213d9f7f php-5.0.5.tar.bz2 4895556 +MD5 6af27b59251bb9ce4741b17e2e5358f7 hardening-patch-5.0.5-0.4.3.patch.gz 51173 diff --git a/dev-lang/php/files/digest-php-5.0.5-r2 b/dev-lang/php/files/digest-php-5.0.5-r2 new file mode 100644 index 0000000..9a62d89 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.5-r2 @@ -0,0 +1,2 @@ +MD5 6af27b59251bb9ce4741b17e2e5358f7 hardening-patch-5.0.5-0.4.3.patch.gz 51173 +MD5 b5d4ca75bbb11ee5b830fa67213d9f7f php-5.0.5.tar.bz2 4895556 diff --git a/dev-lang/php/files/digest-php-5.0.5-r3 b/dev-lang/php/files/digest-php-5.0.5-r3 new file mode 100644 index 0000000..9a62d89 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.5-r3 @@ -0,0 +1,2 @@ +MD5 6af27b59251bb9ce4741b17e2e5358f7 hardening-patch-5.0.5-0.4.3.patch.gz 51173 +MD5 b5d4ca75bbb11ee5b830fa67213d9f7f php-5.0.5.tar.bz2 4895556 diff --git a/dev-lang/php/files/digest-php-5.0.5-r4 b/dev-lang/php/files/digest-php-5.0.5-r4 new file mode 100644 index 0000000..9a62d89 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.5-r4 @@ -0,0 +1,2 @@ +MD5 6af27b59251bb9ce4741b17e2e5358f7 hardening-patch-5.0.5-0.4.3.patch.gz 51173 +MD5 b5d4ca75bbb11ee5b830fa67213d9f7f php-5.0.5.tar.bz2 4895556 diff --git a/dev-lang/php/files/digest-php-5.0.5-r5 b/dev-lang/php/files/digest-php-5.0.5-r5 new file mode 100644 index 0000000..1ebee2f --- /dev/null +++ b/dev-lang/php/files/digest-php-5.0.5-r5 @@ -0,0 +1,2 @@ +MD5 dd3aaa1c68bfd1626901721686474700 hardening-patch-5.0.5-0.4.8-gentoo.patch.gz 57864 +MD5 b5d4ca75bbb11ee5b830fa67213d9f7f php-5.0.5.tar.bz2 4895556 diff --git a/dev-lang/php/files/digest-php-5.1.1 b/dev-lang/php/files/digest-php-5.1.1 new file mode 100644 index 0000000..ca64fef --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.1 @@ -0,0 +1,2 @@ +MD5 79725da7da569045a6ad2e790b08fbb8 hardening-patch-5.1.1-0.4.8-gentoo.patch.gz 57546 +MD5 70a7c90de182d1a1901c390b844153c7 php-5.1.1.tar.bz2 6149470 diff --git a/dev-lang/php/files/digest-php-5.1.2 b/dev-lang/php/files/digest-php-5.1.2 new file mode 100644 index 0000000..5925d4a --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.2 @@ -0,0 +1,9 @@ +MD5 61d534c04399b5fa1f167ec2d86351a3 hardening-patch-5.1.2-0.4.8-gentoo.patch.gz 57663 +RMD160 2b79a7a367b834fefd1c82268424bee35dd27474 hardening-patch-5.1.2-0.4.8-gentoo.patch.gz 57663 +SHA256 7e6453a9b45daf9af9d861b3907349d1d385eed7341f1c5427ab7b2a5f4794f7 hardening-patch-5.1.2-0.4.8-gentoo.patch.gz 57663 +MD5 79cee17e9db85be878000a2a4198378e php-5.1.2.tar.bz2 6319905 +RMD160 1e21b5ba280b7efc8197802c673bb5d4e9dc9f8e php-5.1.2.tar.bz2 6319905 +SHA256 a18399360e1c5dcbdfed4f7215ae8fd2a5e057c24b86392392e832216aa63202 php-5.1.2.tar.bz2 6319905 +MD5 2a99a8cd646da25e92d10b3ce91cceb4 php-patchset-5.1.2-r1.tar.bz2 6782 +RMD160 a0dcf11a29b8a0654ca158532f6865819cb2ef6f php-patchset-5.1.2-r1.tar.bz2 6782 +SHA256 e171ed1b1dac3571b1c72c3fb48e7d79029a99562c83e1e1242c2589aeff685e php-patchset-5.1.2-r1.tar.bz2 6782 diff --git a/dev-lang/php/files/digest-php-5.1.2-r1 b/dev-lang/php/files/digest-php-5.1.2-r1 new file mode 100644 index 0000000..c798681 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.2-r1 @@ -0,0 +1,9 @@ +MD5 61d534c04399b5fa1f167ec2d86351a3 hardening-patch-5.1.2-0.4.8-gentoo.patch.gz 57663 +RMD160 2b79a7a367b834fefd1c82268424bee35dd27474 hardening-patch-5.1.2-0.4.8-gentoo.patch.gz 57663 +SHA256 7e6453a9b45daf9af9d861b3907349d1d385eed7341f1c5427ab7b2a5f4794f7 hardening-patch-5.1.2-0.4.8-gentoo.patch.gz 57663 +MD5 79cee17e9db85be878000a2a4198378e php-5.1.2.tar.bz2 6319905 +RMD160 1e21b5ba280b7efc8197802c673bb5d4e9dc9f8e php-5.1.2.tar.bz2 6319905 +SHA256 a18399360e1c5dcbdfed4f7215ae8fd2a5e057c24b86392392e832216aa63202 php-5.1.2.tar.bz2 6319905 +MD5 2ba96733f6786016f367d152922d5dfb php-patchset-5.1.2-r2.tar.bz2 8278 +RMD160 320dbe43eea1025c0ec007f5eb4f1de2422cff98 php-patchset-5.1.2-r2.tar.bz2 8278 +SHA256 059b45665051b6b5434f061ec8e04ba0cc4dc15892b8572218c0cbd8c15397ab php-patchset-5.1.2-r2.tar.bz2 8278 diff --git a/dev-lang/php/files/digest-php-5.1.4 b/dev-lang/php/files/digest-php-5.1.4 new file mode 100644 index 0000000..92be8cd --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.4 @@ -0,0 +1,9 @@ +MD5 6d0b7d563e5c18bc9cdd612737fc6982 hardening-patch-5.1.4-0.4.9-gentoo.patch.gz 57671 +RMD160 c9e16019388d55a17d1c198f24492d7d07d68847 hardening-patch-5.1.4-0.4.9-gentoo.patch.gz 57671 +SHA256 f877989c03d13bb3b51e9af4e9a67d535da35784ceabd19dcd85be64ff6b9efa hardening-patch-5.1.4-0.4.9-gentoo.patch.gz 57671 +MD5 b55e633bdc80ab30da7c92f760fc4b58 php-5.1.4.tar.bz2 5992825 +RMD160 5468a7d544285438c78a8f68f1169dc22e4e8a2b php-5.1.4.tar.bz2 5992825 +SHA256 43d323b1730e2bc77ec16ee374effb38ec5be0f22e906c55c2e30dfaf22bb865 php-5.1.4.tar.bz2 5992825 +MD5 5e1e40f3f7fecf45d30f599cd3c17529 php-patchset-5.1.4-r1.tar.bz2 7330 +RMD160 ed33ee236286539a0614709d944ac636b84bca45 php-patchset-5.1.4-r1.tar.bz2 7330 +SHA256 5a780b331343fa1fb6c3c4a76bf87e24e586ca2f41c5cd3824291f1b0037e961 php-patchset-5.1.4-r1.tar.bz2 7330 diff --git a/dev-lang/php/files/digest-php-5.1.4-r1 b/dev-lang/php/files/digest-php-5.1.4-r1 new file mode 100644 index 0000000..54d9928 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.4-r1 @@ -0,0 +1,9 @@ +MD5 aad3814b698d1e2ade853fe5c68db7e5 hardening-patch-5.1.4-0.4.11-gentoo.patch.gz 58174 +RMD160 afabbf21c5d82a9ead56b1718b4e7e6eda5eb6b6 hardening-patch-5.1.4-0.4.11-gentoo.patch.gz 58174 +SHA256 4f0bdc6de6b00333c7678b4bebeb1a9de7f6987413707956b6a7e099ebe1089e hardening-patch-5.1.4-0.4.11-gentoo.patch.gz 58174 +MD5 66a806161d4a2d3b5153ebe4cd0f2e1c php-5.1.4.tar.bz2 6356171 +RMD160 d4ab11884a3a899f21eef777767a553cf81584ce php-5.1.4.tar.bz2 6356171 +SHA256 b55253e9557eceb901d83217ec192da22c28c7b2fdf714d3f151f1db663b5a32 php-5.1.4.tar.bz2 6356171 +MD5 03737a21e078200f4657303bd42c0244 php-patchset-5.1.4-r2.tar.bz2 12109 +RMD160 9ff211b307f9b790d2e5e2d8ef2795b3869fdfde php-patchset-5.1.4-r2.tar.bz2 12109 +SHA256 346615ebd20a07ac1f60275a54eeb7b34f26557960802c5319e19640632b3ae1 php-patchset-5.1.4-r2.tar.bz2 12109 diff --git a/dev-lang/php/files/digest-php-5.1.4-r3 b/dev-lang/php/files/digest-php-5.1.4-r3 new file mode 100644 index 0000000..ed82c02 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.4-r3 @@ -0,0 +1,9 @@ +MD5 aad3814b698d1e2ade853fe5c68db7e5 hardening-patch-5.1.4-0.4.11-gentoo.patch.gz 58174 +RMD160 afabbf21c5d82a9ead56b1718b4e7e6eda5eb6b6 hardening-patch-5.1.4-0.4.11-gentoo.patch.gz 58174 +SHA256 4f0bdc6de6b00333c7678b4bebeb1a9de7f6987413707956b6a7e099ebe1089e hardening-patch-5.1.4-0.4.11-gentoo.patch.gz 58174 +MD5 66a806161d4a2d3b5153ebe4cd0f2e1c php-5.1.4.tar.bz2 6356171 +RMD160 d4ab11884a3a899f21eef777767a553cf81584ce php-5.1.4.tar.bz2 6356171 +SHA256 b55253e9557eceb901d83217ec192da22c28c7b2fdf714d3f151f1db663b5a32 php-5.1.4.tar.bz2 6356171 +MD5 2c4239724b3875f7629d54650e775aac php-patchset-5.1.4-r4.tar.bz2 13600 +RMD160 2e47fb1a0d587c3b70f30d44f00ca122a58e1bb9 php-patchset-5.1.4-r4.tar.bz2 13600 +SHA256 4aa7df8cec6067a42a595600f3cef5b82e2bc1c7ab5999f9bca65d37ea1934a9 php-patchset-5.1.4-r4.tar.bz2 13600 diff --git a/dev-lang/php/files/digest-php-5.1.4-r4 b/dev-lang/php/files/digest-php-5.1.4-r4 new file mode 100644 index 0000000..0ec44b2 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.4-r4 @@ -0,0 +1,9 @@ +MD5 5c05d2abcc496454c17deb1889c6131c hardening-patch-5.1.4-0.4.11-gentoo-r1.patch.gz 58168 +RMD160 8fe4085261c939944567a796e4be8d0af9fc4a66 hardening-patch-5.1.4-0.4.11-gentoo-r1.patch.gz 58168 +SHA256 fd07ac145966e931f961c392ca087a2a7e93ba9c6bcc0ff382ca80d5019480d6 hardening-patch-5.1.4-0.4.11-gentoo-r1.patch.gz 58168 +MD5 66a806161d4a2d3b5153ebe4cd0f2e1c php-5.1.4.tar.bz2 6356171 +RMD160 d4ab11884a3a899f21eef777767a553cf81584ce php-5.1.4.tar.bz2 6356171 +SHA256 b55253e9557eceb901d83217ec192da22c28c7b2fdf714d3f151f1db663b5a32 php-5.1.4.tar.bz2 6356171 +MD5 1563ba29dae55380ef1b88be07fe39c6 php-patchset-5.1.4-r5.tar.bz2 21025 +RMD160 ebe867eff66440c1714ac2cb87c11ee17f15d8ea php-patchset-5.1.4-r5.tar.bz2 21025 +SHA256 8d682d0b26dcbd5ee420bc2c2e1483a68a34ede6eecf7ae83f1ea9ca36a6c57f php-patchset-5.1.4-r5.tar.bz2 21025 diff --git a/dev-lang/php/files/digest-php-5.1.4-r6 b/dev-lang/php/files/digest-php-5.1.4-r6 new file mode 100644 index 0000000..48b8be4 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.4-r6 @@ -0,0 +1,9 @@ +MD5 845cb6dc64a97c324a07b9004320508e hardening-patch-5.1.4-0.4.13-gentoo.patch.gz 59457 +RMD160 301592ee7fd7290e1c61d5e90f9a88a683ab8b3b hardening-patch-5.1.4-0.4.13-gentoo.patch.gz 59457 +SHA256 ab3da7f799eaecda3fecf5971ed821ba60a3a8e0f4a931114122791542d95ddc hardening-patch-5.1.4-0.4.13-gentoo.patch.gz 59457 +MD5 66a806161d4a2d3b5153ebe4cd0f2e1c php-5.1.4.tar.bz2 6356171 +RMD160 d4ab11884a3a899f21eef777767a553cf81584ce php-5.1.4.tar.bz2 6356171 +SHA256 b55253e9557eceb901d83217ec192da22c28c7b2fdf714d3f151f1db663b5a32 php-5.1.4.tar.bz2 6356171 +MD5 66d47faba2b9e98566101ce5f87421a9 php-patchset-5.1.4-r6.tar.bz2 29925 +RMD160 06e4cc0d2937786ac64446db9954897af2bd15c6 php-patchset-5.1.4-r6.tar.bz2 29925 +SHA256 9a29de8dba649f91057d7c2f1b853dc81228936c78d0fb787287531eaf316b39 php-patchset-5.1.4-r6.tar.bz2 29925 diff --git a/dev-lang/php/files/digest-php-5.1.6 b/dev-lang/php/files/digest-php-5.1.6 new file mode 100644 index 0000000..acd7883 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.6 @@ -0,0 +1,9 @@ +MD5 48c310f69eff54f6f851a7bf1d1b2359 hardening-patch-5.1.6-0.4.14-gentoo.patch.gz 60949 +RMD160 4636e215cf13d50bcbdd75da45ef624d1c19ed5d hardening-patch-5.1.6-0.4.14-gentoo.patch.gz 60949 +SHA256 515687900f7976872cb14f5b052890b22c4b1cbea1dcfbab852b79dab13831bf hardening-patch-5.1.6-0.4.14-gentoo.patch.gz 60949 +MD5 08e423aa314369d4392a36b3f7246afc php-5.1.6.tar.bz2 6454408 +RMD160 7ac52f4674532397c982f6ced594b70dd17522af php-5.1.6.tar.bz2 6454408 +SHA256 3e9510ce715f28b7e6b803fcdadb73b37c83792c0b5e1e9bcb066ab972649996 php-5.1.6.tar.bz2 6454408 +MD5 290a83a8f87414830d705ac720b84336 php-patchset-5.1.6-r1.tar.bz2 22390 +RMD160 9bb28e7b2c247e890e386e89a820dc89a5ae3f05 php-patchset-5.1.6-r1.tar.bz2 22390 +SHA256 a3d1fb8926c8fd4a545559c859a2787ba08d94f60fd352512d8c5b2a3d98c14c php-patchset-5.1.6-r1.tar.bz2 22390 diff --git a/dev-lang/php/files/digest-php-5.1.6-r1 b/dev-lang/php/files/digest-php-5.1.6-r1 new file mode 100644 index 0000000..acd7883 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.6-r1 @@ -0,0 +1,9 @@ +MD5 48c310f69eff54f6f851a7bf1d1b2359 hardening-patch-5.1.6-0.4.14-gentoo.patch.gz 60949 +RMD160 4636e215cf13d50bcbdd75da45ef624d1c19ed5d hardening-patch-5.1.6-0.4.14-gentoo.patch.gz 60949 +SHA256 515687900f7976872cb14f5b052890b22c4b1cbea1dcfbab852b79dab13831bf hardening-patch-5.1.6-0.4.14-gentoo.patch.gz 60949 +MD5 08e423aa314369d4392a36b3f7246afc php-5.1.6.tar.bz2 6454408 +RMD160 7ac52f4674532397c982f6ced594b70dd17522af php-5.1.6.tar.bz2 6454408 +SHA256 3e9510ce715f28b7e6b803fcdadb73b37c83792c0b5e1e9bcb066ab972649996 php-5.1.6.tar.bz2 6454408 +MD5 290a83a8f87414830d705ac720b84336 php-patchset-5.1.6-r1.tar.bz2 22390 +RMD160 9bb28e7b2c247e890e386e89a820dc89a5ae3f05 php-patchset-5.1.6-r1.tar.bz2 22390 +SHA256 a3d1fb8926c8fd4a545559c859a2787ba08d94f60fd352512d8c5b2a3d98c14c php-patchset-5.1.6-r1.tar.bz2 22390 diff --git a/dev-lang/php/files/digest-php-5.1.6-r11 b/dev-lang/php/files/digest-php-5.1.6-r11 new file mode 100644 index 0000000..54c00c6 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.6-r11 @@ -0,0 +1,9 @@ +MD5 08e423aa314369d4392a36b3f7246afc php-5.1.6.tar.bz2 6454408 +RMD160 7ac52f4674532397c982f6ced594b70dd17522af php-5.1.6.tar.bz2 6454408 +SHA256 3e9510ce715f28b7e6b803fcdadb73b37c83792c0b5e1e9bcb066ab972649996 php-5.1.6.tar.bz2 6454408 +MD5 e2f377cf0e043348f655fd35a170138a php-patchset-5.1.6-r8.tar.bz2 30004 +RMD160 5f93cda0783ba541cdc392d8f82344d340a6cc47 php-patchset-5.1.6-r8.tar.bz2 30004 +SHA256 f9e5f9b9ccf0fd4be00822a4d75832eb09f989db7229e275b666f00e6dad93d7 php-patchset-5.1.6-r8.tar.bz2 30004 +MD5 2e36ccba7e34191685308fb78def2c60 suhosin-patch-5.1.6-0.9.6-gentoo.patch.gz 23153 +RMD160 8ae3b22638f927041f769e8052fba3841f891bbf suhosin-patch-5.1.6-0.9.6-gentoo.patch.gz 23153 +SHA256 07c89856820e2dbbefdb5141412fa1a52dd6f9f38fa987573fdccf5fa6a68361 suhosin-patch-5.1.6-0.9.6-gentoo.patch.gz 23153 diff --git a/dev-lang/php/files/digest-php-5.1.6-r2 b/dev-lang/php/files/digest-php-5.1.6-r2 new file mode 100644 index 0000000..acd7883 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.6-r2 @@ -0,0 +1,9 @@ +MD5 48c310f69eff54f6f851a7bf1d1b2359 hardening-patch-5.1.6-0.4.14-gentoo.patch.gz 60949 +RMD160 4636e215cf13d50bcbdd75da45ef624d1c19ed5d hardening-patch-5.1.6-0.4.14-gentoo.patch.gz 60949 +SHA256 515687900f7976872cb14f5b052890b22c4b1cbea1dcfbab852b79dab13831bf hardening-patch-5.1.6-0.4.14-gentoo.patch.gz 60949 +MD5 08e423aa314369d4392a36b3f7246afc php-5.1.6.tar.bz2 6454408 +RMD160 7ac52f4674532397c982f6ced594b70dd17522af php-5.1.6.tar.bz2 6454408 +SHA256 3e9510ce715f28b7e6b803fcdadb73b37c83792c0b5e1e9bcb066ab972649996 php-5.1.6.tar.bz2 6454408 +MD5 290a83a8f87414830d705ac720b84336 php-patchset-5.1.6-r1.tar.bz2 22390 +RMD160 9bb28e7b2c247e890e386e89a820dc89a5ae3f05 php-patchset-5.1.6-r1.tar.bz2 22390 +SHA256 a3d1fb8926c8fd4a545559c859a2787ba08d94f60fd352512d8c5b2a3d98c14c php-patchset-5.1.6-r1.tar.bz2 22390 diff --git a/dev-lang/php/files/digest-php-5.1.6-r4 b/dev-lang/php/files/digest-php-5.1.6-r4 new file mode 100644 index 0000000..6ad1ff5 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.6-r4 @@ -0,0 +1,9 @@ +MD5 ca028a70eec1af684a31b01d982679fd hardening-patch-5.1.6-0.4.15-gentoo.patch.gz 61484 +RMD160 e4a49784b075ffaee56798b9ef086df06e3ea320 hardening-patch-5.1.6-0.4.15-gentoo.patch.gz 61484 +SHA256 f4fb1944828193e723932ffbebb44ba3ae013171df6d3eb44644c9a4a8610db0 hardening-patch-5.1.6-0.4.15-gentoo.patch.gz 61484 +MD5 08e423aa314369d4392a36b3f7246afc php-5.1.6.tar.bz2 6454408 +RMD160 7ac52f4674532397c982f6ced594b70dd17522af php-5.1.6.tar.bz2 6454408 +SHA256 3e9510ce715f28b7e6b803fcdadb73b37c83792c0b5e1e9bcb066ab972649996 php-5.1.6.tar.bz2 6454408 +MD5 450381b70ea199d78a39564ca5b6813d php-patchset-5.1.6-r2.tar.bz2 22693 +RMD160 aebcfb0cd1685512dd86e1a92d77ff91ca5b83f7 php-patchset-5.1.6-r2.tar.bz2 22693 +SHA256 06e6526388464c1f2e1b953e49b0463c6dfdda461fed889cb632aef855cd49cb php-patchset-5.1.6-r2.tar.bz2 22693 diff --git a/dev-lang/php/files/digest-php-5.1.6-r6 b/dev-lang/php/files/digest-php-5.1.6-r6 new file mode 100644 index 0000000..9cf6dd4 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.6-r6 @@ -0,0 +1,9 @@ +MD5 ba5d540574209a683dd8cf8d564e3b61 hardening-patch-5.1.6-0.4.15-gentoo-r1.patch.gz 61476 +RMD160 5185bf7b2282b3bed2f6a06a8314cfab7b5b8cbc hardening-patch-5.1.6-0.4.15-gentoo-r1.patch.gz 61476 +SHA256 836416114d4408377d04ee5b704dde0bd74511c0f114fe02602dab12e9e4902c hardening-patch-5.1.6-0.4.15-gentoo-r1.patch.gz 61476 +MD5 08e423aa314369d4392a36b3f7246afc php-5.1.6.tar.bz2 6454408 +RMD160 7ac52f4674532397c982f6ced594b70dd17522af php-5.1.6.tar.bz2 6454408 +SHA256 3e9510ce715f28b7e6b803fcdadb73b37c83792c0b5e1e9bcb066ab972649996 php-5.1.6.tar.bz2 6454408 +MD5 ac23e1e0fc0b76a9533a5ba2730f4383 php-patchset-5.1.6-r3.tar.bz2 25666 +RMD160 77bcca9e95e828bc73320c978d323eeda87a54f0 php-patchset-5.1.6-r3.tar.bz2 25666 +SHA256 afacb3ba0cac6b796c828106082da105cb7c34ef7c5f094cd139a1b3c31f1989 php-patchset-5.1.6-r3.tar.bz2 25666 diff --git a/dev-lang/php/files/digest-php-5.1.6-r8 b/dev-lang/php/files/digest-php-5.1.6-r8 new file mode 100644 index 0000000..675b8ce --- /dev/null +++ b/dev-lang/php/files/digest-php-5.1.6-r8 @@ -0,0 +1,9 @@ +MD5 ba5d540574209a683dd8cf8d564e3b61 hardening-patch-5.1.6-0.4.15-gentoo-r1.patch.gz 61476 +RMD160 5185bf7b2282b3bed2f6a06a8314cfab7b5b8cbc hardening-patch-5.1.6-0.4.15-gentoo-r1.patch.gz 61476 +SHA256 836416114d4408377d04ee5b704dde0bd74511c0f114fe02602dab12e9e4902c hardening-patch-5.1.6-0.4.15-gentoo-r1.patch.gz 61476 +MD5 08e423aa314369d4392a36b3f7246afc php-5.1.6.tar.bz2 6454408 +RMD160 7ac52f4674532397c982f6ced594b70dd17522af php-5.1.6.tar.bz2 6454408 +SHA256 3e9510ce715f28b7e6b803fcdadb73b37c83792c0b5e1e9bcb066ab972649996 php-5.1.6.tar.bz2 6454408 +MD5 af5dc2be4f0d265a73e4fdc1be1b5b0f php-patchset-5.1.6-r4.tar.bz2 26474 +RMD160 fa1ac197d9f9a97e053f20b64babdfeec371dbb3 php-patchset-5.1.6-r4.tar.bz2 26474 +SHA256 c90c724072b3f826e474c646eb907202c0166df472b64538863263b7bf9c028d php-patchset-5.1.6-r4.tar.bz2 26474 diff --git a/dev-lang/php/files/digest-php-5.2.1-r3 b/dev-lang/php/files/digest-php-5.2.1-r3 new file mode 100644 index 0000000..54bf655 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.2.1-r3 @@ -0,0 +1,9 @@ +MD5 261218e3569a777dbd87c16a15f05c8d php-5.2.1.tar.bz2 7163383 +RMD160 f75078e0e43cb9c64e6d0a8d51a2ebd23cc9131d php-5.2.1.tar.bz2 7163383 +SHA256 4b60fa70969644d193d58dd7cb9f2765e304c6368e98b1551e92e8d4e14d35ed php-5.2.1.tar.bz2 7163383 +MD5 7ea0587e479d92196831b95e260d2039 php-patchset-5.2.1-r4.tar.bz2 23599 +RMD160 271aee07634277b37c450824d2f188203beef154 php-patchset-5.2.1-r4.tar.bz2 23599 +SHA256 fc4627d63cd387981b3c3f04e2d5c83a227e446929aefbbc44316981c3565138 php-patchset-5.2.1-r4.tar.bz2 23599 +MD5 93c12d351c3ddb811b12f2d897c4f1d5 suhosin-patch-5.2.1-0.9.6.2-gentoo.patch.gz 22686 +RMD160 93d0ba56d9caa5264e60e812e18d100180d610bc suhosin-patch-5.2.1-0.9.6.2-gentoo.patch.gz 22686 +SHA256 f6072cfd46f9d308b43653844c3f5062e6ce0bfe91c02da0a10c96905f0d0829 suhosin-patch-5.2.1-0.9.6.2-gentoo.patch.gz 22686 diff --git a/dev-lang/php/files/digest-php-5.2.2-r1 b/dev-lang/php/files/digest-php-5.2.2-r1 new file mode 100644 index 0000000..dffdc71 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.2.2-r1 @@ -0,0 +1,9 @@ +MD5 d084337867d70b50a10322577be0e44e php-5.2.2.tar.bz2 7310926 +RMD160 15e844530bced2960e35fd291fb71a416562aec0 php-5.2.2.tar.bz2 7310926 +SHA256 cd69e73c46e1d171ac0cf27b7ee492c3bf8f6b45a763a77fd0cb79d5afa9f407 php-5.2.2.tar.bz2 7310926 +MD5 8561b1341061d54c5d5a0c6cb1c2c948 php-patchset-5.2.2-r2.tar.bz2 11486 +RMD160 46ed4fc1e30f35dbd8e8d0db4ed47109a19de6c7 php-patchset-5.2.2-r2.tar.bz2 11486 +SHA256 553c654ef7df90dc5cf64eb339884ed1730c4270bb2005fccb7da23da2c3aa74 php-patchset-5.2.2-r2.tar.bz2 11486 +MD5 2af1381b994851b0d361f26ef8373f19 suhosin-patch-5.2.2-0.9.6.2-gentoo.patch.gz 22854 +RMD160 808c187e650861fecb647474bd328d4940f0f1a6 suhosin-patch-5.2.2-0.9.6.2-gentoo.patch.gz 22854 +SHA256 867b6e45541e060d97d0567d81688a044734f0af6789ec2a1c70d2dea2f9fabb suhosin-patch-5.2.2-0.9.6.2-gentoo.patch.gz 22854 diff --git a/dev-lang/php/files/digest-php-5.2.3-r3 b/dev-lang/php/files/digest-php-5.2.3-r3 new file mode 100644 index 0000000..b2fd03d --- /dev/null +++ b/dev-lang/php/files/digest-php-5.2.3-r3 @@ -0,0 +1,9 @@ +MD5 eb50b751c8e1ced05bd012d5a0e4dec3 php-5.2.3.tar.bz2 7417635 +RMD160 3c895cf7e513e5a3d7d9f742a9d56102cbb3a79b php-5.2.3.tar.bz2 7417635 +SHA256 eedffda5069caa801a7fec217c77619657416a5fcaefb79ba4620432f0befe29 php-5.2.3.tar.bz2 7417635 +MD5 45fe9a704e4efadcfe51a226ecc9ba03 php-patchset-5.2.3-r4.tar.bz2 17870 +RMD160 26334a7bcdc0ee40a730544fc9068be0f5ee47c5 php-patchset-5.2.3-r4.tar.bz2 17870 +SHA256 37d76fa3b3f72956daba943e67b12717b3b6298bfe2d7cc752040dd775b7877a php-patchset-5.2.3-r4.tar.bz2 17870 +MD5 f217d04f9513222e48cea6588ac65b89 suhosin-patch-5.2.3-0.9.6.2-gentoo.patch.gz 22789 +RMD160 3adfe1038b8436dac56cb05c63a2b1305a6a0266 suhosin-patch-5.2.3-0.9.6.2-gentoo.patch.gz 22789 +SHA256 214c43e4808483f0700f36ffa57aba909a669cb335c179d46c1e8f765d70bd1f suhosin-patch-5.2.3-0.9.6.2-gentoo.patch.gz 22789 diff --git a/dev-lang/php/files/digest-php-5.2.4 b/dev-lang/php/files/digest-php-5.2.4 new file mode 100644 index 0000000..7e15568 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.2.4 @@ -0,0 +1,9 @@ +MD5 55c97a671fdabf462cc7a82971a656d2 php-5.2.4.tar.bz2 7608429 +RMD160 22728d27ec3ba3287943ea878fefbba0b4ffdc00 php-5.2.4.tar.bz2 7608429 +SHA256 502f5259e4619ba3549cd9f9bdeb4152c7effa66672348f3b108fccc8e1ca1c0 php-5.2.4.tar.bz2 7608429 +MD5 d909a241292a8fc5f58f84aa18e82e7e php-patchset-5.2.4-r0.tar.bz2 10305 +RMD160 84ff2dffe6e6099d9dc8ad98fc5b99e10ac3218c php-patchset-5.2.4-r0.tar.bz2 10305 +SHA256 4ee25d74e81e44ad2fc6a0c4cf41942ef92073d61efb4b640aa63a58edb6c5fa php-patchset-5.2.4-r0.tar.bz2 10305 +MD5 becfae15ba8ec7cdbc1f084b7938063e suhosin-patch-5.2.4-0.9.6.2-gentoo.patch.gz 22292 +RMD160 185bdd92dee54d83674b3de7262d57a6ac3ef14b suhosin-patch-5.2.4-0.9.6.2-gentoo.patch.gz 22292 +SHA256 3a0cecf36a74d6cb8e0042363fcbadc4afd0046eb3baff6d4dec415f6464a96a suhosin-patch-5.2.4-0.9.6.2-gentoo.patch.gz 22292 diff --git a/dev-lang/php/files/digest-php-5.2.4_p20070914 b/dev-lang/php/files/digest-php-5.2.4_p20070914 new file mode 100644 index 0000000..8d4224c --- /dev/null +++ b/dev-lang/php/files/digest-php-5.2.4_p20070914 @@ -0,0 +1,9 @@ +MD5 ec68c579100b88d4b8bf0976fb271025 php-5.2.4_p20070914.tar.bz2 7275434 +RMD160 87c012d03cd89951260b1f97cd3c16c935615867 php-5.2.4_p20070914.tar.bz2 7275434 +SHA256 00b561f85e31db500a959b028572031ae61d6971b4487be2fd301bae2f936009 php-5.2.4_p20070914.tar.bz2 7275434 +MD5 fd5048a6eaca5781d92426b1233217d1 php-patchset-5.2.4_p20070914-r0.tar.bz2 8480 +RMD160 7681bbca3420d02baf5297f5fd08712b3f3adb5d php-patchset-5.2.4_p20070914-r0.tar.bz2 8480 +SHA256 110751227f00302d72e5923750b45991c51c16331e5cb161f49359ab496f4b86 php-patchset-5.2.4_p20070914-r0.tar.bz2 8480 +MD5 883387a5a32f66bf37d1671ade836aff suhosin-patch-5.2.4_p20070914-0.9.6.2-gentoo.patch.gz 22381 +RMD160 e2594b48a9fd407b4418e09c61fed09232ab53d5 suhosin-patch-5.2.4_p20070914-0.9.6.2-gentoo.patch.gz 22381 +SHA256 cc022a3d2e37f7e1211d90bb320922bd4d3a8c65c5888a5bea0040723e78259b suhosin-patch-5.2.4_p20070914-0.9.6.2-gentoo.patch.gz 22381 diff --git a/dev-lang/php/files/digest-php-5.2.4_p20070914-r2 b/dev-lang/php/files/digest-php-5.2.4_p20070914-r2 new file mode 100644 index 0000000..389ed50 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.2.4_p20070914-r2 @@ -0,0 +1,9 @@ +MD5 ec68c579100b88d4b8bf0976fb271025 php-5.2.4_p20070914.tar.bz2 7275434 +RMD160 87c012d03cd89951260b1f97cd3c16c935615867 php-5.2.4_p20070914.tar.bz2 7275434 +SHA256 00b561f85e31db500a959b028572031ae61d6971b4487be2fd301bae2f936009 php-5.2.4_p20070914.tar.bz2 7275434 +MD5 cbd683a18a4d97acdbc022d8deab72b1 php-patchset-5.2.4_p20070914-r2.tar.bz2 12457 +RMD160 2fa6b3c480bede06287418af3f0cb4c69cb9d628 php-patchset-5.2.4_p20070914-r2.tar.bz2 12457 +SHA256 68974c9beda11ccf4e10c63609003e7664c29b45801cbf7e55e410c1dd453403 php-patchset-5.2.4_p20070914-r2.tar.bz2 12457 +MD5 16e1730b91944579764e5dc02736f903 suhosin-patch-5.2.4_p20070914-0.9.6.2-gentoo-r1.patch.gz 22407 +RMD160 0cd0d6e9f14acb968cced10164f27389d0fa8bf9 suhosin-patch-5.2.4_p20070914-0.9.6.2-gentoo-r1.patch.gz 22407 +SHA256 96ac1facb558b4dd4afe098cc776efc93602adc2683ba3157db39b7772183d1f suhosin-patch-5.2.4_p20070914-0.9.6.2-gentoo-r1.patch.gz 22407 diff --git a/dev-lang/php/files/digest-php-5.2.4_pre200708051230-r2 b/dev-lang/php/files/digest-php-5.2.4_pre200708051230-r2 new file mode 100644 index 0000000..28916c7 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.2.4_pre200708051230-r2 @@ -0,0 +1,9 @@ +MD5 db34d89917692d44808a9c5f52d0be94 php-5.2.4_pre200708051230.tar.bz2 7115061 +RMD160 ec286dc0102989c108c5382330fc36108512c7f5 php-5.2.4_pre200708051230.tar.bz2 7115061 +SHA256 c40197d6efd514d6a1402ce769382ecc0e047db59c2501dd4f9b761c7e50b8b6 php-5.2.4_pre200708051230.tar.bz2 7115061 +MD5 a59d5c52b9372ee7cf3e29821b656416 php-patchset-5.2.4_pre200708051230-r2.tar.bz2 10339 +RMD160 2e0837b813ff16d83a8bb88cc3e8ff7789abd8f8 php-patchset-5.2.4_pre200708051230-r2.tar.bz2 10339 +SHA256 036cfa2a4dba009d2317c36527b9cd4763c2b3a7dffb7b6b3dcbb09fec0b5dde php-patchset-5.2.4_pre200708051230-r2.tar.bz2 10339 +MD5 97bc107b57f89f6abce22358598bf4aa suhosin-patch-5.2.4_pre200708051230-0.9.6.2-gentoo.patch.gz 22349 +RMD160 d9121893407346fb0ba64fdc4ba5585ed4a118ea suhosin-patch-5.2.4_pre200708051230-0.9.6.2-gentoo.patch.gz 22349 +SHA256 0074b4fa4869f1ba7b8e85cfd69076cd674a9599c6e04c9a92f7fe07b9a6a292 suhosin-patch-5.2.4_pre200708051230-0.9.6.2-gentoo.patch.gz 22349 diff --git a/dev-lang/php/files/digest-php-5.2.5 b/dev-lang/php/files/digest-php-5.2.5 new file mode 100644 index 0000000..52d06ea --- /dev/null +++ b/dev-lang/php/files/digest-php-5.2.5 @@ -0,0 +1,9 @@ +MD5 1fe14ca892460b09f06729941a1bb605 php-5.2.5.tar.bz2 7773024 +RMD160 2d5755f2ae8884e80f0a5c70e8fdfdb6deed46bc php-5.2.5.tar.bz2 7773024 +SHA256 5cac1e70df5019ebdfdab2e0b8b216f7fdf56b9895c9f68c993313918249bba3 php-5.2.5.tar.bz2 7773024 +MD5 c0158ee0ccf195a200935f2b0004a042 php-patchset-5.2.5-r0.tar.bz2 8743 +RMD160 e6b22a83a10abadd05660c682fd015f65d440245 php-patchset-5.2.5-r0.tar.bz2 8743 +SHA256 1c69588d71027376a8476117952db40a2da821fc98bbe3ba69bf9ce1632feec3 php-patchset-5.2.5-r0.tar.bz2 8743 +MD5 16e1730b91944579764e5dc02736f903 suhosin-patch-5.2.4_p20070914-0.9.6.2-gentoo-r1.patch.gz 22407 +RMD160 0cd0d6e9f14acb968cced10164f27389d0fa8bf9 suhosin-patch-5.2.4_p20070914-0.9.6.2-gentoo-r1.patch.gz 22407 +SHA256 96ac1facb558b4dd4afe098cc776efc93602adc2683ba3157db39b7772183d1f suhosin-patch-5.2.4_p20070914-0.9.6.2-gentoo-r1.patch.gz 22407 diff --git a/dev-lang/php/files/digest-php-5.2.5-r1 b/dev-lang/php/files/digest-php-5.2.5-r1 new file mode 100644 index 0000000..408a191 --- /dev/null +++ b/dev-lang/php/files/digest-php-5.2.5-r1 @@ -0,0 +1,9 @@ +MD5 1fe14ca892460b09f06729941a1bb605 php-5.2.5.tar.bz2 7773024 +RMD160 2d5755f2ae8884e80f0a5c70e8fdfdb6deed46bc php-5.2.5.tar.bz2 7773024 +SHA256 5cac1e70df5019ebdfdab2e0b8b216f7fdf56b9895c9f68c993313918249bba3 php-5.2.5.tar.bz2 7773024 +MD5 6247e2dbd9c1a3495e3815c2e0a7691f php-patchset-5.2.5-r1.tar.bz2 15350 +RMD160 777f77e351ed024952f2adf323261db28f98c428 php-patchset-5.2.5-r1.tar.bz2 15350 +SHA256 50860764cf068465af09acc5ed32ad89f2e8ee0e03b02b2dd70fa19bd1176f10 php-patchset-5.2.5-r1.tar.bz2 15350 +MD5 a43f1a0ee9e7c41c4cb6890174f1f9d8 suhosin-patch-5.2.5-0.9.6.2.patch.gz 23157 +RMD160 25863ad76bea4a8e5bf50bd916835b5d9324452c suhosin-patch-5.2.5-0.9.6.2.patch.gz 23157 +SHA256 fd77ccdeb90c83af7492876dda17518de95dd74a5b6feecc5a1bd2c8e322ab53 suhosin-patch-5.2.5-0.9.6.2.patch.gz 23157 diff --git a/dev-lang/php/files/eblits/CVS/Entries b/dev-lang/php/files/eblits/CVS/Entries new file mode 100644 index 0000000..6c60506 --- /dev/null +++ b/dev-lang/php/files/eblits/CVS/Entries @@ -0,0 +1,27 @@ +/common-v1.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +/common-v2.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +/pkg_postinst-v1.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +/pkg_postinst-v2.eblit/1.1/Fri Oct 8 18:25:10 2010//T1.1 +/pkg_setup-v1.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +/pkg_setup-v2.eblit/1.1/Fri Oct 8 18:25:10 2010//T1.1 +/pkg_setup-v3.eblit/1.1/Sat Jul 2 15:14:41 2011//T1.1 +/src_compile-v1.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +/src_compile-v2.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +/src_configure-snapshots.eblit/1.1/Sun May 15 19:17:23 2011//T1.1 +/src_configure-v1.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +/src_configure-v2.eblit/1.1/Fri Oct 8 18:25:10 2010//T1.1 +/src_configure-v3.eblit/1.1/Wed Jun 29 06:38:38 2011//T1.1 +/src_configure-v52.eblit/1.1/Mon Aug 2 16:56:42 2010//T1.1 +/src_configure-v521.eblit/1.1/Fri Oct 8 18:25:10 2010//T1.1 +/src_configure-v53.eblit/1.1/Fri Dec 16 09:02:43 2011//T1.1 +/src_configure-v54.eblit/1.1/Sun Dec 18 09:00:26 2011//T1.1 +/src_install-v1.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +/src_install-v2.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +/src_install-v3.eblit/1.1/Thu Jun 30 07:30:11 2011//T1.1 +/src_prepare-snapshots.eblit/1.1/Sun May 1 20:15:52 2011//T1.1 +/src_prepare-v1.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +/src_prepare-v2.eblit/1.1/Fri Oct 8 18:25:10 2010//T1.1 +/src_prepare-v3.eblit/1.1/Sun Mar 13 09:48:06 2011//T1.1 +/src_prepare-v4.eblit/1.1/Wed Jun 29 06:38:38 2011//T1.1 +/src_test-v1.eblit/1.1/Thu May 27 23:05:04 2010//T1.1 +D diff --git a/dev-lang/php/files/eblits/CVS/Repository b/dev-lang/php/files/eblits/CVS/Repository new file mode 100644 index 0000000..e9faaee --- /dev/null +++ b/dev-lang/php/files/eblits/CVS/Repository @@ -0,0 +1 @@ +gentoo-x86/dev-lang/php/files/eblits diff --git a/dev-lang/php/files/eblits/CVS/Root b/dev-lang/php/files/eblits/CVS/Root new file mode 100644 index 0000000..854a2c8 --- /dev/null +++ b/dev-lang/php/files/eblits/CVS/Root @@ -0,0 +1 @@ +:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot diff --git a/dev-lang/php/files/eblits/CVS/Tag b/dev-lang/php/files/eblits/CVS/Tag new file mode 100644 index 0000000..5062263 --- /dev/null +++ b/dev-lang/php/files/eblits/CVS/Tag @@ -0,0 +1 @@ +N1.1 diff --git a/dev-lang/php/files/eblits/common-v1.eblit b/dev-lang/php/files/eblits/common-v1.eblit new file mode 100644 index 0000000..9c07f9d --- /dev/null +++ b/dev-lang/php/files/eblits/common-v1.eblit @@ -0,0 +1,9 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/common-v1.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ + +php_set_ini_dir() { + PHP_INI_DIR="/etc/php/${1}-php${PHP_MV}" + PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext" + PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active" +} diff --git a/dev-lang/php/files/eblits/common-v2.eblit b/dev-lang/php/files/eblits/common-v2.eblit index 394dacb..519a7c9 100644 --- a/dev-lang/php/files/eblits/common-v2.eblit +++ b/dev-lang/php/files/eblits/common-v2.eblit @@ -1,9 +1,10 @@ # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/common-v2.eblit,v 1.3 2010/10/08 18:25:10 olemarkus Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/common-v2.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ php_set_ini_dir() { - PHP_INI_DIR="/etc/php/${1}-php${SLOT}" + PHP_INI_DIR="/etc/php/${1}-php${PHP_MV}" PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext" PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active" } + diff --git a/dev-lang/php/files/eblits/pkg_postinst-v1.eblit b/dev-lang/php/files/eblits/pkg_postinst-v1.eblit new file mode 100644 index 0000000..438083b --- /dev/null +++ b/dev-lang/php/files/eblits/pkg_postinst-v1.eblit @@ -0,0 +1,72 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/pkg_postinst-v1.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ + +eblit-php-pkg_postinst() { + # Output some general info to the user + if use apache2 ; then + APACHE2_MOD_DEFINE="PHP${PHP_MV}" + if use concurrentmodphp ; then + APACHE2_MOD_CONF="70_mod_php${PHP_MV}_concurr" + else + APACHE2_MOD_CONF="70_mod_php${PHP_MV}" + fi + apache-module_pkg_postinst + fi + + # Update Apache2 to use mod_php + if use apache2 ; then + "${ROOT}/usr/sbin/php-select" -t apache2 php${PHP_MV} > /dev/null 2>&1 + exitStatus=$? + if [[ ${exitStatus} == 2 ]] ; then + php-select apache2 php${PHP_MV} + elif [[ ${exitStatus} == 4 ]] ; then + ewarn "To make Apache2 use php-${PHP_MV}, use" + ewarn " php-select apache2 php${PHP_MV}" + ewarn + fi + fi + + # Create the symlinks for php-cli + if use cli ; then + "${ROOT}/usr/sbin/php-select" -t php php${PHP_MV} > /dev/null 2>&1 + exitStatus=$? + if [[ ${exitStatus} == 5 ]] ; then + php-select php php${PHP_MV} + elif [[ ${exitStatus} == 4 ]] ; then + ewarn "To make usr/bin/php point to php-${PHP_MV}, use" + ewarn " php-select php php${PHP_MV}" + ewarn + fi + fi + + # Create the symlinks for php-cgi + if use cgi ; then + "${ROOT}/usr/sbin/php-select" -t php-cgi php${PHP_MV} > /dev/null 2>&1 + exitStatus=$? + if [[ ${exitStatus} == 5 ]] ; then + php-select php-cgi php${PHP_MV} + elif [[ ${exitStatus} == 4 ]] ; then + ewarn "To make usr/bin/php-cgi point to php-${PHP_MV}, use" + ewarn " php-select php-cgi php${PHP_MV}" + ewarn + fi + fi + + # Create the symlinks for php-devel + "${ROOT}/usr/sbin/php-select" -t php-devel php${PHP_MV} > /dev/null 2>&1 + exitStatus=$? + if [[ $exitStatus == 5 ]] ; then + php-select php-devel php${PHP_MV} + elif [[ $exitStatus == 4 ]] ; then + ewarn "To make usr/bin/php-config and usr/bin/phpize point to php-${PHP_MV}, use" + ewarn " php-select php-devel php${PHP_MV}" + ewarn + fi + + ewarn "You may have to recompile third-party extensions now" + ewarn "(includes every dev-php5/pecl-* package and probably others in that category)" + ewarn +} + + diff --git a/dev-lang/php/files/eblits/pkg_postinst-v2.eblit b/dev-lang/php/files/eblits/pkg_postinst-v2.eblit new file mode 100644 index 0000000..fb629c7 --- /dev/null +++ b/dev-lang/php/files/eblits/pkg_postinst-v2.eblit @@ -0,0 +1,37 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/pkg_postinst-v2.eblit,v 1.1 2010/10/08 18:25:10 olemarkus Exp $ + +eblit-php-pkg_postinst() { + # Output some general info to the user + if use apache2 ; then + APACHE2_MOD_DEFINE="PHP5" + APACHE2_MOD_CONF="70_mod_php5" + apache-module_pkg_postinst + fi + + + # Create the symlinks for php + local m modules="cli apache2" + for m in modules; do + if use $m ; then + local ci=$(eselect php show $m) + if [[ -z $ci ]]; then + eselect php set $m php${SLOT} + elif [[ $ci != "php{$SLOT}" ]] ; then + ewarn "To switch $m to use php-${SLOT}, run" + ewarn " eselect php set $m php${SLOT}" + ewarn + fi + fi + done + + ewarn "You may have to recompile third-party extensions now" + ewarn "(includes every dev-php5/pecl-* package and probably others in that category)" + if ! use readline && use cli ; then + ewarn "Note that in order to use php interactivly, you need to enable" + ewarn "the readline USE flag or php -a will hang" + fi + ewarn +} + diff --git a/dev-lang/php/files/eblits/pkg_setup-v1.eblit b/dev-lang/php/files/eblits/pkg_setup-v1.eblit new file mode 100644 index 0000000..577f420 --- /dev/null +++ b/dev-lang/php/files/eblits/pkg_setup-v1.eblit @@ -0,0 +1,23 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/pkg_setup-v1.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ + +eblit-php-pkg_setup() { + if use concurrentmodphp || use kolab ; then + ewarn "concurrentmodphp and kolab are Gentoo-specific experimental" + ewarn "patches. Before reporting any bugs to bugs.php.net, make sure to" + ewarn "rebuild PHP with those USE flags disabled" + ewarn + fi + + # Mail support + php_check_mta + + # Oracle support + php_check_oracle_8 + + phpconfutils_warn_about_external_deps + depend.apache_pkg_setup +} + + diff --git a/dev-lang/php/files/eblits/pkg_setup-v2.eblit b/dev-lang/php/files/eblits/pkg_setup-v2.eblit index a5218b3..4c12887 100644 --- a/dev-lang/php/files/eblits/pkg_setup-v2.eblit +++ b/dev-lang/php/files/eblits/pkg_setup-v2.eblit @@ -1,11 +1,16 @@ -# Copyright 1999-2011 Gentoo Foundation +# Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/pkg_setup-v2.eblit,v 1.2 2011/03/17 16:34:47 olemarkus Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/pkg_setup-v2.eblit,v 1.1 2010/10/08 18:25:10 olemarkus Exp $ eblit-php-pkg_setup() { # Mail support php_check_mta + # imap support + # if virtuals/imap-c-client goes to new style virtual, we can exchange this + # for proper use-deps + php_check_imap + # Oracle support php_check_oracle_8 diff --git a/dev-lang/php/files/eblits/src_compile-v1.eblit b/dev-lang/php/files/eblits/src_compile-v1.eblit index cb0d56c..dbbba43 100644 --- a/dev-lang/php/files/eblits/src_compile-v1.eblit +++ b/dev-lang/php/files/eblits/src_compile-v1.eblit @@ -1,60 +1,64 @@ # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_compile-v1.eblit,v 1.6 2010/08/14 19:37:31 mabi Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_compile-v1.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ eblit-php-src_compile() { - # snmp seems to run during src_compile, too (bug #324739) - addpredict /usr/share/snmp/mibs/.index + SAPIS="${WORKDIR}/sapis" - SAPI_DIR="${WORKDIR}/sapis" + if use cli ; then + php_sapi_build cli + cp sapi/cli/php "${SAPIS}/cli/" \ + || die "Unable to copy cli SAPI" + fi - for sapi in ${SAPIS} ; do - use "${sapi}" || continue + if use cgi ; then + php_sapi_build cgi + cp sapi/cgi/php-cgi "${SAPIS}/cgi/" \ + || die "Unable to copy cgi SAPI" + fi - php_sapi_build "${sapi}" - php_sapi_copy "${sapi}" - done + if use embed ; then + php_sapi_build embed + cp libs/libphp${PHP_MV}.so "${SAPIS}"/embed \ + || die "Unable to copy embed SAPI" + fi + + if use apache2 ; then + php_sapi_build apache2 + # apache2 is a special case; the necessary files (yes, multiple) + # are copied by make install, not by the ebuild; that's the reason, + # why apache2 has to be the last sapi + fi } php_sapi_build() { - mkdir -p "${SAPI_DIR}/$1" + local sapi="$1" + php_set_ini_dir ${sapi} - cd "${WORKDIR}/sapis-build/$1" - emake || die "emake failed" -} + mkdir -p "${SAPIS}/${sapi}" -php_sapi_copy() { - local sapi="$1" - local source="" - - case "$sapi" in - cli) - source="sapi/cli/php" - ;; - cgi) - source="sapi/cgi/php-cgi" - ;; - fpm) - source="sapi/fpm/php-fpm" - ;; - embed) - source="libs/libphp${PHP_MV}.so" - ;; - - apache2) - # apache2 is a special case; the necessary files - # (yes, multiple) are copied by make install, not - # by the ebuild; that's the reason, why apache2 has - # to be the last sapi - emake INSTALL_ROOT="${SAPI_DIR}/${sapi}/" install-sapi - ;; - - *) - die "unhandled sapi in php_sapi_copy" - ;; - esac - - if [[ "${source}" ]] ; then - cp "$source" "${SAPI_DIR}/$sapi" || die "Unable to copy ${sapi} SAPI" + sapi_conf="${my_conf} --with-config-file-path=${PHP_INI_DIR} + --with-config-file-scan-dir=${PHP_EXT_INI_DIR_ACTIVE}" + + for available_sapi in cli cgi embed ; do + if [[ $sapi == $available_sapi ]] ; then + sapi_conf="${sapi_conf} --enable-${available_sapi}" + else + sapi_conf="${sapi_conf} --disable-${available_sapi}" + fi + done + + if [[ $sapi == "apache2" ]] ; then + sapi_conf="${sapi_conf} --with-apxs2=/usr/sbin/apxs" + else + sapi_conf="${sapi_conf} --without-apxs2" fi + + econf ${sapi_conf} + emake || die "emake failed" + + rm -f main/main.o main/main.lo main/php_ini.o \ + main/php_ini.lo 2>/dev/null } + + diff --git a/dev-lang/php/files/eblits/src_compile-v2.eblit b/dev-lang/php/files/eblits/src_compile-v2.eblit index 6e3d277..40423e1 100644 --- a/dev-lang/php/files/eblits/src_compile-v2.eblit +++ b/dev-lang/php/files/eblits/src_compile-v2.eblit @@ -1,17 +1,87 @@ -# Copyright 1999-2011 Gentoo Foundation +# Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_compile-v2.eblit,v 1.3 2011/10/31 16:18:04 mabi Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_compile-v2.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ eblit-php-src_compile() { - # snmp seems to run during src_compile, too (bug #324739) - addpredict /usr/share/snmp/mibs/.index + SAPI_DIR="${WORKDIR}/sapis" + local is_first_sapi=1 for sapi in ${SAPIS} ; do - use "${sapi}" && php_sapi_build "${sapi}" + use "${sapi}" || continue + if [[ ${is_first_sapi} == 1 ]]; then + is_first_sapi=0 + else + emake clean + fi + + php_sapi_build "${sapi}" + php_sapi_copy "${sapi}" done } php_sapi_build() { - cd "${WORKDIR}/sapis-build/$1" + local sapi="$1" + php_set_ini_dir "${sapi}" + + mkdir -p "${SAPI_DIR}/${sapi}" + + sapi_conf="${my_conf} --with-config-file-path=${PHP_INI_DIR} + --with-config-file-scan-dir=${PHP_EXT_INI_DIR_ACTIVE}" + + for one_sapi in $SAPIS ; do + case "$one_sapi" in + cli|cgi|embed) + if [[ "${one_sapi}" == "${sapi}" ]] ; then + sapi_conf="${sapi_conf} --enable-${available_sapi}" + else + sapi_conf="${sapi_conf} --disable-${available_sapi}" + fi + ;; + + apache2) + if [[ "${one_sapi}" == "${sapi}" ]] ; then + sapi_conf="${sapi_conf} --with-apxs2=/usr/sbin/apxs" + else + sapi_conf="${sapi_conf} --without-apxs2" + fi + ;; + + esac + done + + econf ${sapi_conf} emake || die "emake failed" } + +php_sapi_copy() { + local sapi="$1" + local source="" + + case "$sapi" in + cli) + source="sapi/cli/php" + ;; + cgi) + source="sapi/cgi/php-cgi" + ;; + embed) + source="libs/libphp${PHP_MV}.so" + ;; + + apache2) + # apache2 is a special case; the necessary files + # (yes, multiple) are copied by make install, not + # by the ebuild; that's the reason, why apache2 has + # to be the last sapi + emake INSTALL_ROOT="${SAPI_DIR}/${sapi}/" install-sapi + ;; + + *) + die "unhandled sapi in php_sapi_copy" + ;; + esac + + if [[ "${source}" ]] ; then + cp "$source" "${SAPI_DIR}/$sapi" || die "Unable to copy ${sapi} SAPI" + fi +} diff --git a/dev-lang/php/files/eblits/src_configure-snapshots.eblit b/dev-lang/php/files/eblits/src_configure-snapshots.eblit new file mode 100644 index 0000000..d8dfeba --- /dev/null +++ b/dev-lang/php/files/eblits/src_configure-snapshots.eblit @@ -0,0 +1,268 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/src_configure-snapshots.eblit,v 1.1 2011/05/15 19:17:23 olemarkus Exp $ + +eblit-php-src_configure() { + PHP_DESTDIR="/usr/$(get_libdir)/php${SLOT}" + + # This is a global variable and should be in caps. It isn't because the + # phpconfutils eclass relies on exactly this name... + # for --with-libdir see bug #327025 + my_conf=" + --prefix="${PHP_DESTDIR}" + --mandir="${PHP_DESTDIR}"/man + --infodir="${PHP_DESTDIR}"/info + --libdir="${PHP_DESTDIR}"/lib + --with-libdir=$(get_libdir) + --without-pear + $(use_enable threads maintainer-zts)" + + phpconfutils_init + + # extension USE flag shared + phpconfutils_extension_enable "bcmath" "bcmath" 1 + phpconfutils_extension_with "bz2" "bzip2" 1 + phpconfutils_extension_enable "calendar" "calendar" 1 + phpconfutils_extension_disable "ctype" "ctype" 0 + phpconfutils_extension_with "curl" "curl" 1 + phpconfutils_extension_with "curlwrappers" "curlwrappers" 0 + phpconfutils_extension_disable "dom" "xml" 0 + phpconfutils_extension_with "enchant" "enchant" 1 "/usr" + phpconfutils_extension_enable "exif" "exif" 1 + phpconfutils_extension_disable "fileinfo" "fileinfo" 1 + phpconfutils_extension_disable "filter" "filter" 0 + phpconfutils_extension_enable "ftp" "ftp" 1 + phpconfutils_extension_with "gettext" "nls" 1 + phpconfutils_extension_with "gmp" "gmp" 1 + phpconfutils_extension_disable "hash" "hash" 0 + phpconfutils_extension_with "mhash" "mhash" 0 + phpconfutils_extension_without "iconv" "iconv" 0 + phpconfutils_extension_enable "intl" "intl" 1 + phpconfutils_extension_disable "ipv6" "ipv6" 0 + phpconfutils_extension_disable "json" "json" 0 + phpconfutils_extension_with "kerberos" "kerberos" 0 "/usr" + phpconfutils_extension_disable "libxml" "xml" 0 + phpconfutils_extension_enable "mbstring" "unicode" 1 + phpconfutils_extension_with "mcrypt" "crypt" 1 + phpconfutils_extension_with "mssql" "mssql" 1 + phpconfutils_extension_with "onig" "unicode" 0 "/usr" + phpconfutils_extension_with "openssl" "ssl" 0 + phpconfutils_extension_with "openssl-dir" "ssl" 0 "/usr" + phpconfutils_extension_enable "pcntl" "pcntl" 1 + phpconfutils_extension_disable "phar" "phar" 1 + phpconfutils_extension_disable "pdo" "pdo" 0 + phpconfutils_extension_with "pgsql" "postgres" 1 + phpconfutils_extension_disable "posix" "posix" 0 + phpconfutils_extension_with "pspell" "spell" 1 + phpconfutils_extension_with "recode" "recode" 1 + phpconfutils_extension_disable "simplexml" "simplexml" 0 + phpconfutils_extension_enable "shmop" "sharedmem" 0 + phpconfutils_extension_with "snmp" "snmp" 1 + phpconfutils_extension_enable "soap" "soap" 1 + phpconfutils_extension_enable "sockets" "sockets" 1 + phpconfutils_extension_without "sqlite3" "sqlite" 1 "/usr" + phpconfutils_extension_with "sybase-ct" "sybase-ct" 1 "/usr" + phpconfutils_extension_enable "sysvmsg" "sysvipc" 1 + phpconfutils_extension_enable "sysvsem" "sysvipc" 1 + phpconfutils_extension_enable "sysvshm" "sysvipc" 1 + phpconfutils_extension_with "tidy" "tidy" 1 + phpconfutils_extension_disable "tokenizer" "tokenizer" 0 + phpconfutils_extension_enable "wddx" "wddx" 1 + phpconfutils_extension_disable "xml" "xml" 0 + phpconfutils_extension_disable "xmlreader" "xmlreader" 0 + phpconfutils_extension_disable "xmlwriter" "xmlwriter" 0 + phpconfutils_extension_with "xmlrpc" "xmlrpc" 1 + phpconfutils_extension_with "xsl" "xsl" 1 + phpconfutils_extension_enable "zip" "zip" 1 + phpconfutils_extension_with "zlib" "zlib" 1 + phpconfutils_extension_enable "debug" "debug" 0 + + # DBA support + if use cdb || use berkdb || use flatfile || use gdbm || use inifile \ + || use qdbm ; then + my_conf="${my_conf} --enable-dba${shared}" + fi + + # DBA drivers support + phpconfutils_extension_with "cdb" "cdb" 0 + phpconfutils_extension_with "db4" "berkdb" 0 + phpconfutils_extension_enable "flatfile" "flatfile" 0 + phpconfutils_extension_with "gdbm" "gdbm" 0 + phpconfutils_extension_enable "inifile" "inifile" 0 + phpconfutils_extension_with "qdbm" "qdbm" 0 + + # Support for the GD graphics library + if use gd-external ; then + phpconfutils_extension_with "freetype-dir" "truetype" 0 "/usr" + phpconfutils_extension_with "t1lib" "truetype" 0 "/usr" + phpconfutils_extension_enable "gd-jis-conv" "cjk" 0 + phpconfutils_extension_with "gd" "gd-external" 1 "/usr" + else + phpconfutils_extension_with "freetype-dir" "truetype" 0 "/usr" + phpconfutils_extension_with "t1lib" "truetype" 0 "/usr" + phpconfutils_extension_enable "gd-jis-conv" "cjk" 0 + phpconfutils_extension_with "jpeg-dir" "gd" 0 "/usr" + phpconfutils_extension_with "png-dir" "gd" 0 "/usr" + phpconfutils_extension_with "xpm-dir" "xpm" 0 "/usr" + # enable gd last, so configure can pick up the previous settings + phpconfutils_extension_with "gd" "gd" 0 + fi + + # IMAP support + if use imap ; then + phpconfutils_extension_with "imap" "imap" 1 + phpconfutils_extension_with "imap-ssl" "ssl" 0 + fi + + # Interbase/firebird support + if use interbase ; then + phpconfutils_extension_with "interbase" "interbase" 0 "/opt" + fi + + if use firebird ; then + phpconfutils_extension_with "interbase" "firebird" 0 "/usr" + fi + + # LDAP support + if use ldap ; then + if use oci8 ; then + phpconfutils_extension_with "ldap" "ldap" 1 "${ORACLE_HOME}" + else + phpconfutils_extension_with "ldap" "ldap" 1 + phpconfutils_extension_with "ldap-sasl" "ldap-sasl" 0 + fi + fi + + # MySQL support + if use mysql ; then + if use mysqlnd ; then + phpconfutils_extension_with "mysql" "mysql" 1 "mysqlnd" + else + phpconfutils_extension_with "mysql" "mysql" 1 "/usr" + fi + phpconfutils_extension_with "mysql-sock" "mysql" 0 "/var/run/mysqld/mysqld.sock" + fi + + # MySQLi support + if use mysqlnd ; then + phpconfutils_extension_with "mysqli" "mysqli" 1 "mysqlnd" + else + phpconfutils_extension_with "mysqli" "mysqli" 1 "/usr/bin/mysql_config" + fi + + # ODBC support + if use odbc ; then + phpconfutils_extension_with "unixODBC" "odbc" 1 "/usr" + phpconfutils_extension_with "adabas" "adabas" 1 + phpconfutils_extension_with "birdstep" "birdstep" 1 + phpconfutils_extension_with "dbmaker" "dbmaker" 1 + phpconfutils_extension_with "empress" "empress" 1 + if use empress ; then + phpconfutils_extension_with "empress-bcs" "empress-bcs" 0 + fi + phpconfutils_extension_with "esoob" "esoob" 1 + # Needed to run conftest for IBM DB2 + [[ -n ${DB2_HOME} ]] && export LD_LIBRARY_PATH="${DB2_HOME}/`get_libdir`" + phpconfutils_extension_with "ibm-db2" "db2" 1 "${DB2_HOME}" + phpconfutils_extension_with "sapdb" "sapdb" 1 + phpconfutils_extension_with "solid" "solid" 1 + fi + + if use iodbc ; then + phpconfutils_extension_with "iodbc" "iodbc" 1 "/usr" + fi + + # Oracle support + phpconfutils_extension_with "oci8" "oci8" 1 + if use oci8-instant-client ; then + OCI8IC_PKG="$(best_version dev-db/oracle-instantclient-basic | \ + sed -e 's|dev-db/oracle-instantclient-basic-||g' | \ + sed -e 's|-r.*||g')" + + phpconfutils_extension_with "oci8" "oci8-instant-client" 1 \ + "instantclient,/usr/lib/oracle/${OCI8IC_PKG}/client/lib" + fi + + # PDO support + if use pdo ; then + phpconfutils_extension_with "pdo-dblib" "mssql" 1 + if use mysqlnd ; then + phpconfutils_extension_with "pdo-mysql" "mysql" 1 "mysqlnd" + else + phpconfutils_extension_with "pdo-mysql" "mysql" 1 "/usr" + fi + phpconfutils_extension_with "pdo-pgsql" "postgres" 1 + phpconfutils_extension_with "pdo-sqlite" "sqlite" 1 "/usr" + phpconfutils_extension_with "pdo-odbc" "odbc" 1 "unixODBC,/usr" + if use oci8 ; then + phpconfutils_extension_with "pdo-oci" "oci8" 1 + fi + if use oci8-instant-client ; then + phpconfutils_extension_with "pdo-oci" "oci8-instant-client" 1 \ + "instantclient,/usr,${OCI8IC_PKG}" + fi + fi + + # readline/libedit support + phpconfutils_extension_with "readline" "readline" 0 + phpconfutils_extension_with "libedit" "libedit" 0 + + # Session support + if use session ; then + phpconfutils_extension_with "mm" "sharedmem" 0 + else + phpconfutils_extension_disable "session" "session" 0 + fi + + if use pic ; then + my_conf="${my_conf} --with-pic" + fi + + # we use the system copy of pcre + # --with-pcre-regex affects ext/pcre + # --with-pcre-dir affects ext/filter and ext/zip + my_conf="${my_conf} --with-pcre-regex=/usr --with-pcre-dir=/usr" + + # Catch CFLAGS problems + php_check_cflags + + # Support user-passed configuration parameters + my_conf="${my_conf} ${EXTRA_ECONF:-}" + + # Support the Apache2 extras, they must be set globally for all + # SAPIs to work correctly, especially for external PHP extensions + + mkdir -p "${WORKDIR}/sapis-build" + for one_sapi in $SAPIS ; do + use "${one_sapi}" || continue + php_set_ini_dir "${one_sapi}" + + cp -r "${S}" "${WORKDIR}/sapis-build/${one_sapi}" + cd "${WORKDIR}/sapis-build/${one_sapi}" + + sapi_conf="${my_conf} --with-config-file-path=${PHP_INI_DIR} + --with-config-file-scan-dir=${PHP_EXT_INI_DIR_ACTIVE}" + + for sapi in $SAPIS ; do + case "$sapi" in + cli|cgi|embed|fpm) + if [[ "${one_sapi}" == "${sapi}" ]] ; then + sapi_conf="${sapi_conf} --enable-${sapi}" + else + sapi_conf="${sapi_conf} --disable-${sapi}" + fi + ;; + + apache2) + if [[ "${one_sapi}" == "${sapi}" ]] ; then + sapi_conf="${sapi_conf} --with-apxs2=/usr/sbin/apxs" + else + sapi_conf="${sapi_conf} --without-apxs2" + fi + ;; + esac + done + + econf ${sapi_conf} + done +} diff --git a/dev-lang/php/files/eblits/src_configure-v1.eblit b/dev-lang/php/files/eblits/src_configure-v1.eblit new file mode 100644 index 0000000..0df1433 --- /dev/null +++ b/dev-lang/php/files/eblits/src_configure-v1.eblit @@ -0,0 +1,236 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/src_configure-v1.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ + +eblit-php-src_configure() { + PHP_DESTDIR="/usr/$(get_libdir)/php${PHP_MV}" + + # This is a global variable and should be in caps. It isn't because the + # phpconfutils eclass relies on exactly this name... + my_conf=" + --prefix="${PHP_DESTDIR}" + --mandir="${PHP_DESTDIR}"/man + --infodir="${PHP_DESTDIR}"/info + --libdir="${PHP_DESTDIR}"/lib + --without-pear + $(use_enable threads maintainer-zts)" + + phpconfutils_init + + # extension USE flag shared + phpconfutils_extension_enable "bcmath" "bcmath" 1 + phpconfutils_extension_with "bz2" "bzip2" 1 + phpconfutils_extension_enable "calendar" "calendar" 1 + phpconfutils_extension_disable "ctype" "ctype" 0 + phpconfutils_extension_with "curl" "curl" 1 + phpconfutils_extension_with "curlwrappers" "curlwrappers" 0 + phpconfutils_extension_disable "dom" "xml" 0 + phpconfutils_extension_with "enchant" "enchant" 1 "/usr" + phpconfutils_extension_enable "exif" "exif" 1 + phpconfutils_extension_disable "fileinfo" "fileinfo" 1 + phpconfutils_extension_disable "filter" "filter" 0 + phpconfutils_extension_enable "ftp" "ftp" 1 + phpconfutils_extension_with "gettext" "nls" 1 + phpconfutils_extension_with "gmp" "gmp" 1 + phpconfutils_extension_disable "hash" "hash" 0 + phpconfutils_extension_without "iconv" "iconv" 0 + phpconfutils_extension_enable "intl" "intl" 1 + phpconfutils_extension_disable "ipv6" "ipv6" 0 + phpconfutils_extension_disable "json" "json" 0 + phpconfutils_extension_with "kerberos" "kerberos" 0 "/usr" + phpconfutils_extension_disable "libxml" "xml" 0 + phpconfutils_extension_enable "mbstring" "unicode" 1 + phpconfutils_extension_with "mcrypt" "crypt" 1 + phpconfutils_extension_with "mssql" "mssql" 1 + phpconfutils_extension_with "onig" "unicode" 0 "/usr" + phpconfutils_extension_with "openssl" "ssl" 0 + phpconfutils_extension_with "openssl-dir" "ssl" 0 "/usr" + phpconfutils_extension_enable "pcntl" "pcntl" 1 + phpconfutils_extension_disable "phar" "phar" 1 + phpconfutils_extension_disable "pdo" "pdo" 0 + phpconfutils_extension_with "pgsql" "postgres" 1 + phpconfutils_extension_disable "posix" "posix" 0 + phpconfutils_extension_with "pspell" "spell" 1 + phpconfutils_extension_with "recode" "recode" 1 + phpconfutils_extension_disable "simplexml" "simplexml" 0 + phpconfutils_extension_enable "shmop" "sharedmem" 0 + phpconfutils_extension_with "snmp" "snmp" 1 + phpconfutils_extension_enable "soap" "soap" 1 + phpconfutils_extension_enable "sockets" "sockets" 1 + phpconfutils_extension_without "sqlite3" "sqlite3" 1 "/usr" + phpconfutils_extension_with "sybase-ct" "sybase-ct" 1 + phpconfutils_extension_enable "sysvmsg" "sysvipc" 1 + phpconfutils_extension_enable "sysvsem" "sysvipc" 1 + phpconfutils_extension_enable "sysvshm" "sysvipc" 1 + phpconfutils_extension_with "tidy" "tidy" 1 + phpconfutils_extension_disable "tokenizer" "tokenizer" 0 + phpconfutils_extension_enable "wddx" "wddx" 1 + phpconfutils_extension_disable "xml" "xml" 0 + phpconfutils_extension_disable "xmlreader" "xmlreader" 0 + phpconfutils_extension_disable "xmlwriter" "xmlwriter" 0 + phpconfutils_extension_with "xmlrpc" "xmlrpc" 1 + phpconfutils_extension_with "xsl" "xsl" 1 + phpconfutils_extension_enable "zip" "zip" 1 + phpconfutils_extension_with "zlib" "zlib" 1 + phpconfutils_extension_enable "debug" "debug" 0 + + # DBA support + if use cdb || use berkdb || use flatfile || use gdbm || use inifile \ + || use qdbm ; then + my_conf="${my_conf} --enable-dba${shared}" + fi + + # DBA drivers support + phpconfutils_extension_with "cdb" "cdb" 0 + phpconfutils_extension_with "db4" "berkdb" 0 + phpconfutils_extension_enable "flatfile" "flatfile" 0 + phpconfutils_extension_with "gdbm" "gdbm" 0 + phpconfutils_extension_enable "inifile" "inifile" 0 + phpconfutils_extension_with "qdbm" "qdbm" 0 + + # Support for the GD graphics library + if use gd-external ; then + phpconfutils_extension_with "freetype-dir" "truetype" 0 "/usr" + phpconfutils_extension_with "t1lib" "truetype" 0 "/usr" + phpconfutils_extension_enable "gd-jis-conv" "cjk" 0 + phpconfutils_extension_with "gd" "gd-external" 1 "/usr" + else + phpconfutils_extension_with "freetype-dir" "truetype" 0 "/usr" + phpconfutils_extension_with "t1lib" "truetype" 0 "/usr" + phpconfutils_extension_enable "gd-jis-conv" "cjk" 0 + phpconfutils_extension_with "jpeg-dir" "gd" 0 "/usr" + phpconfutils_extension_with "png-dir" "gd" 0 "/usr" + phpconfutils_extension_with "xpm-dir" "xpm" 0 "/usr" + # enable gd last, so configure can pick up the previous settings + phpconfutils_extension_with "gd" "gd" 0 + fi + + # IMAP support + if use imap ; then + phpconfutils_extension_with "imap" "imap" 1 + phpconfutils_extension_with "imap-ssl" "ssl" 0 + fi + + phpconfutils_extension_with "interbase" "interbase" 0 "/opt" + phpconfutils_extension_with "interbase" "firebird" 0 "/usr" + + # LDAP support + if use ldap ; then + if use oci8 ; then + phpconfutils_extension_with "ldap" "ldap" 1 "${ORACLE_HOME}" + else + phpconfutils_extension_with "ldap" "ldap" 1 + phpconfutils_extension_with "ldap-sasl" "ldap-sasl" 0 + fi + fi + + # MySQL support + if use mysql ; then + if use mysqlnd ; then + phpconfutils_extension_with "mysql" "mysql" 1 "mysqlnd" + else + phpconfutils_extension_with "mysql" "mysql" 1 "/usr" + fi + phpconfutils_extension_with "mysql-sock" "mysql" 0 "/var/run/mysqld/mysqld.sock" + fi + + # MySQLi support + if use mysqlnd ; then + phpconfutils_extension_with "mysqli" "mysqli" 1 "mysqlnd" + else + phpconfutils_extension_with "mysqli" "mysqli" 1 "/usr/bin/mysql_config" + fi + + # ODBC support + if use odbc ; then + phpconfutils_extension_with "unixODBC" "odbc" 1 "/usr" + phpconfutils_extension_with "adabas" "adabas" 1 + phpconfutils_extension_with "birdstep" "birdstep" 1 + phpconfutils_extension_with "dbmaker" "dbmaker" 1 + phpconfutils_extension_with "empress" "empress" 1 + if use empress ; then + phpconfutils_extension_with "empress-bcs" "empress-bcs" 0 + fi + phpconfutils_extension_with "esoob" "esoob" 1 + phpconfutils_extension_with "ibm-db2" "db2" 1 + phpconfutils_extension_with "iodbc" "iodbc" 1 "/usr" + phpconfutils_extension_with "sapdb" "sapdb" 1 + phpconfutils_extension_with "solid" "solid" 1 + fi + + # Oracle support + phpconfutils_extension_with "oci8" "oci8" 1 + if use oci8-instant-client ; then + OCI8IC_PKG="$(best_version dev-db/oracle-instantclient-basic | \ + sed -e 's|dev-db/oracle-instantclient-basic-||g' | \ + sed -e 's|-r.*||g')" + + phpconfutils_extension_with "oci8" "oci8-instant-client" 1 \ + "instantclient,/usr/lib/oracle/${OCI8IC_PKG}/client/lib" + fi + + # PDO support + if use pdo ; then + phpconfutils_extension_with "pdo-dblib" "mssql" 1 + if use mysqlnd ; then + phpconfutils_extension_with "pdo-mysql" "mysql" 1 "mysqlnd" + else + phpconfutils_extension_with "pdo-mysql" "mysql" 1 "/usr" + fi + phpconfutils_extension_with "pdo-pgsql" "postgres" 1 + phpconfutils_extension_with "pdo-sqlite" "sqlite" 1 "/usr" + phpconfutils_extension_with "pdo-odbc" "odbc" 1 "unixODBC,/usr" + if use oci8 ; then + phpconfutils_extension_with "pdo-oci" "oci8" 1 + fi + if use oci8-instant-client ; then + phpconfutils_extension_with "pdo-oci" "oci8-instant-client" 1 \ + "instantclient,/usr,${OCI8IC_PKG}" + fi + fi + + # readline/libedit support + phpconfutils_extension_with "readline" "readline" 0 + phpconfutils_extension_with "libedit" "libedit" 0 + + # Session support + if use session ; then + phpconfutils_extension_with "mm" "sharedmem" 0 + else + phpconfutils_extension_disable "session" "session" 0 + fi + + # SQLite support + if use sqlite ; then + phpconfutils_extension_with "sqlite" "sqlite" 0 "/usr" + phpconfutils_extension_enable "sqlite-utf8" "unicode" 0 + else + phpconfutils_extension_without "sqlite" "sqlite" 0 + fi + + if use pic ; then + my_conf="${my_conf} --with-pic" + fi + + # we use the system copy of pcre + # --with-pcre-regex affects ext/pcre + # --with-pcre-dir affects ext/filter and ext/zip + my_conf="${my_conf} --with-pcre-regex=/usr --with-pcre-dir=/usr" + + # Catch CFLAGS problems + php_check_cflags + + # Support user-passed configuration parameters + my_conf="${my_conf} ${EXTRA_ECONF:-}" + + # Support the Apache2 extras, they must be set globally for all + # SAPIs to work correctly, especially for external PHP extensions + if use apache2 ; then + # Concurrent PHP Apache2 modules support + if use concurrentmodphp ; then + append-ldflags "-Wl,--version-script=${FILESDIR}/php${PHP_MV}-ldvs" + fi + fi +} + + diff --git a/dev-lang/php/files/eblits/src_configure-v2.eblit b/dev-lang/php/files/eblits/src_configure-v2.eblit index ab09832..085715f 100644 --- a/dev-lang/php/files/eblits/src_configure-v2.eblit +++ b/dev-lang/php/files/eblits/src_configure-v2.eblit @@ -1,6 +1,6 @@ -# Copyright 1999-2011 Gentoo Foundation +# Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_configure-v2.eblit,v 1.5 2011/01/05 11:23:16 mabi Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_configure-v2.eblit,v 1.1 2010/10/08 18:25:10 olemarkus Exp $ eblit-php-src_configure() { PHP_DESTDIR="/usr/$(get_libdir)/php${SLOT}" @@ -35,7 +35,6 @@ eblit-php-src_configure() { phpconfutils_extension_with "gettext" "nls" 1 phpconfutils_extension_with "gmp" "gmp" 1 phpconfutils_extension_disable "hash" "hash" 0 - phpconfutils_extension_with "mhash" "mhash" 0 phpconfutils_extension_without "iconv" "iconv" 0 phpconfutils_extension_enable "intl" "intl" 1 phpconfutils_extension_disable "ipv6" "ipv6" 0 @@ -61,7 +60,7 @@ eblit-php-src_configure() { phpconfutils_extension_enable "soap" "soap" 1 phpconfutils_extension_enable "sockets" "sockets" 1 phpconfutils_extension_without "sqlite3" "sqlite3" 1 "/usr" - phpconfutils_extension_with "sybase-ct" "sybase-ct" 1 "/usr" + phpconfutils_extension_with "sybase-ct" "sybase-ct" 1 phpconfutils_extension_enable "sysvmsg" "sysvipc" 1 phpconfutils_extension_enable "sysvsem" "sysvipc" 1 phpconfutils_extension_enable "sysvshm" "sysvipc" 1 @@ -114,14 +113,8 @@ eblit-php-src_configure() { phpconfutils_extension_with "imap-ssl" "ssl" 0 fi - # Interbase/firebird support - if use interbase ; then - phpconfutils_extension_with "interbase" "interbase" 0 "/opt" - fi - - if use firebird ; then - phpconfutils_extension_with "interbase" "firebird" 0 "/usr" - fi + phpconfutils_extension_with "interbase" "interbase" 0 "/opt" + phpconfutils_extension_with "interbase" "firebird" 0 "/usr" # LDAP support if use ldap ; then @@ -192,7 +185,7 @@ eblit-php-src_configure() { phpconfutils_extension_with "pdo-mysql" "mysql" 1 "/usr" fi phpconfutils_extension_with "pdo-pgsql" "postgres" 1 - phpconfutils_extension_with "pdo-sqlite" "sqlite3" 1 "/usr" + phpconfutils_extension_with "pdo-sqlite" "sqlite" 1 "/usr" phpconfutils_extension_with "pdo-odbc" "odbc" 1 "unixODBC,/usr" if use oci8 ; then phpconfutils_extension_with "pdo-oci" "oci8" 1 @@ -226,6 +219,11 @@ eblit-php-src_configure() { my_conf="${my_conf} --with-pic" fi + if has fpm ${IUSE//+} && use fpm ; then + my_conf="${my_conf} --with-libevent-dir=/usr/`get_libdir`" + fi + + # we use the system copy of pcre # --with-pcre-regex affects ext/pcre # --with-pcre-dir affects ext/filter and ext/zip diff --git a/dev-lang/php/files/eblits/src_configure-v3.eblit b/dev-lang/php/files/eblits/src_configure-v3.eblit new file mode 100644 index 0000000..b2b9f35 --- /dev/null +++ b/dev-lang/php/files/eblits/src_configure-v3.eblit @@ -0,0 +1,245 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/src_configure-v3.eblit,v 1.1 2011/06/29 06:38:38 olemarkus Exp $ + +eblit-php-src_configure() { + PHP_DESTDIR="/usr/$(get_libdir)/php${SLOT}" + + # This is a global variable and should be in caps. It isn't because the + # phpconfutils eclass relies on exactly this name... + # for --with-libdir see bug #327025 + my_conf=" + --prefix="${PHP_DESTDIR}" + --mandir="${PHP_DESTDIR}"/man + --infodir="${PHP_DESTDIR}"/info + --libdir="${PHP_DESTDIR}"/lib + --with-libdir=$(get_libdir) + --without-pear + $(use_enable threads maintainer-zts)" + + phpconfutils_init + + # extension USE flag shared + phpconfutils_extension_enable "bcmath" "bcmath" 1 + phpconfutils_extension_with "bz2" "bzip2" 1 + phpconfutils_extension_enable "calendar" "calendar" 1 + phpconfutils_extension_disable "ctype" "ctype" 0 + phpconfutils_extension_with "curl" "curl" 1 + phpconfutils_extension_with "curlwrappers" "curlwrappers" 0 + phpconfutils_extension_disable "dom" "xml" 0 + phpconfutils_extension_with "enchant" "enchant" 1 "/usr" + phpconfutils_extension_enable "exif" "exif" 1 + phpconfutils_extension_disable "fileinfo" "fileinfo" 1 + phpconfutils_extension_disable "filter" "filter" 0 + phpconfutils_extension_enable "ftp" "ftp" 1 + phpconfutils_extension_with "gettext" "nls" 1 + phpconfutils_extension_with "gmp" "gmp" 1 + phpconfutils_extension_disable "hash" "hash" 0 + phpconfutils_extension_with "mhash" "mhash" 0 + phpconfutils_extension_without "iconv" "iconv" 0 + phpconfutils_extension_enable "intl" "intl" 1 + phpconfutils_extension_disable "ipv6" "ipv6" 0 + phpconfutils_extension_disable "json" "json" 0 + phpconfutils_extension_with "kerberos" "kerberos" 0 "/usr" + phpconfutils_extension_disable "libxml" "xml" 0 + phpconfutils_extension_enable "mbstring" "unicode" 1 + phpconfutils_extension_with "mcrypt" "crypt" 1 + phpconfutils_extension_with "mssql" "mssql" 1 + phpconfutils_extension_with "onig" "unicode" 0 "/usr" + phpconfutils_extension_with "openssl" "ssl" 0 + phpconfutils_extension_with "openssl-dir" "ssl" 0 "/usr" + phpconfutils_extension_enable "pcntl" "pcntl" 1 + phpconfutils_extension_disable "phar" "phar" 1 + phpconfutils_extension_disable "pdo" "pdo" 0 + phpconfutils_extension_with "pgsql" "postgres" 1 + phpconfutils_extension_disable "posix" "posix" 0 + phpconfutils_extension_with "pspell" "spell" 1 + phpconfutils_extension_with "recode" "recode" 1 + phpconfutils_extension_disable "simplexml" "simplexml" 0 + phpconfutils_extension_enable "shmop" "sharedmem" 0 + phpconfutils_extension_with "snmp" "snmp" 1 + phpconfutils_extension_enable "soap" "soap" 1 + phpconfutils_extension_enable "sockets" "sockets" 1 + phpconfutils_extension_without "sqlite3" "sqlite3" 1 "/usr" + phpconfutils_extension_with "sybase-ct" "sybase-ct" 1 "/usr" + phpconfutils_extension_enable "sysvmsg" "sysvipc" 1 + phpconfutils_extension_enable "sysvsem" "sysvipc" 1 + phpconfutils_extension_enable "sysvshm" "sysvipc" 1 + phpconfutils_extension_with "tidy" "tidy" 1 + phpconfutils_extension_disable "tokenizer" "tokenizer" 0 + phpconfutils_extension_enable "wddx" "wddx" 1 + phpconfutils_extension_disable "xml" "xml" 0 + phpconfutils_extension_disable "xmlreader" "xmlreader" 0 + phpconfutils_extension_disable "xmlwriter" "xmlwriter" 0 + phpconfutils_extension_with "xmlrpc" "xmlrpc" 1 + phpconfutils_extension_with "xsl" "xsl" 1 + phpconfutils_extension_enable "zip" "zip" 1 + phpconfutils_extension_with "zlib" "zlib" 1 + phpconfutils_extension_enable "debug" "debug" 0 + + # DBA support + if use cdb || use berkdb || use flatfile || use gdbm || use inifile \ + || use qdbm ; then + my_conf="${my_conf} --enable-dba${shared}" + fi + + # DBA drivers support + phpconfutils_extension_with "cdb" "cdb" 0 + phpconfutils_extension_with "db4" "berkdb" 0 + phpconfutils_extension_enable "flatfile" "flatfile" 0 + phpconfutils_extension_with "gdbm" "gdbm" 0 + phpconfutils_extension_enable "inifile" "inifile" 0 + phpconfutils_extension_with "qdbm" "qdbm" 0 + + # Support for the GD graphics library + phpconfutils_extension_with "freetype-dir" "truetype" 0 "/usr" + phpconfutils_extension_with "t1lib" "truetype" 0 "/usr" + phpconfutils_extension_enable "gd-jis-conv" "cjk" 0 + phpconfutils_extension_with "jpeg-dir" "gd" 0 "/usr" + phpconfutils_extension_with "png-dir" "gd" 0 "/usr" + phpconfutils_extension_with "xpm-dir" "xpm" 0 "/usr" + # enable gd last, so configure can pick up the previous settings + phpconfutils_extension_with "gd" "gd" 0 + + # IMAP support + if use imap ; then + phpconfutils_extension_with "imap" "imap" 1 + phpconfutils_extension_with "imap-ssl" "ssl" 0 + fi + + # Interbase/firebird support + + if use firebird ; then + phpconfutils_extension_with "interbase" "firebird" 0 "/usr" + fi + + # LDAP support + if use ldap ; then + phpconfutils_extension_with "ldap" "ldap" 1 + phpconfutils_extension_with "ldap-sasl" "ldap-sasl" 0 + fi + + # MySQL support + if use mysql ; then + if use mysqlnd ; then + phpconfutils_extension_with "mysql" "mysql" 1 "mysqlnd" + else + phpconfutils_extension_with "mysql" "mysql" 1 "/usr" + fi + phpconfutils_extension_with "mysql-sock" "mysql" 0 "/var/run/mysqld/mysqld.sock" + fi + + # MySQLi support + if use mysqlnd ; then + phpconfutils_extension_with "mysqli" "mysqli" 1 "mysqlnd" + else + phpconfutils_extension_with "mysqli" "mysqli" 1 "/usr/bin/mysql_config" + fi + + # ODBC support + if use odbc ; then + phpconfutils_extension_with "unixODBC" "odbc" 1 "/usr" + fi + + if use iodbc ; then + phpconfutils_extension_with "iodbc" "iodbc" 1 "/usr" + fi + + # Oracle support + if use oci8-instant-client ; then + OCI8IC_PKG="$(best_version dev-db/oracle-instantclient-basic | \ + sed -e 's|dev-db/oracle-instantclient-basic-||g' | \ + sed -e 's|-r.*||g')" + + phpconfutils_extension_with "oci8" "oci8-instant-client" 1 \ + "instantclient,/usr/lib/oracle/${OCI8IC_PKG}/client/lib" + fi + + # PDO support + if use pdo ; then + phpconfutils_extension_with "pdo-dblib" "mssql" 1 + if use mysqlnd ; then + phpconfutils_extension_with "pdo-mysql" "mysql" 1 "mysqlnd" + else + phpconfutils_extension_with "pdo-mysql" "mysql" 1 "/usr" + fi + phpconfutils_extension_with "pdo-pgsql" "postgres" 1 + phpconfutils_extension_with "pdo-sqlite" "sqlite3" 1 "/usr" + phpconfutils_extension_with "pdo-odbc" "odbc" 1 "unixODBC,/usr" + if use oci8-instant-client ; then + phpconfutils_extension_with "pdo-oci" "oci8-instant-client" 1 \ + "instantclient,/usr,${OCI8IC_PKG}" + fi + fi + + # readline/libedit support + phpconfutils_extension_with "readline" "readline" 0 + phpconfutils_extension_with "libedit" "libedit" 0 + + # Session support + if use session ; then + phpconfutils_extension_with "mm" "sharedmem" 0 + else + phpconfutils_extension_disable "session" "session" 0 + fi + + # SQLite support + if use sqlite ; then + phpconfutils_extension_with "sqlite" "sqlite" 0 "/usr" + phpconfutils_extension_enable "sqlite-utf8" "unicode" 0 + else + phpconfutils_extension_without "sqlite" "sqlite" 0 + fi + + if use pic ; then + my_conf="${my_conf} --with-pic" + fi + + # we use the system copy of pcre + # --with-pcre-regex affects ext/pcre + # --with-pcre-dir affects ext/filter and ext/zip + my_conf="${my_conf} --with-pcre-regex=/usr --with-pcre-dir=/usr" + + # Catch CFLAGS problems + php_check_cflags + + # Support user-passed configuration parameters + my_conf="${my_conf} ${EXTRA_ECONF:-}" + + # Support the Apache2 extras, they must be set globally for all + # SAPIs to work correctly, especially for external PHP extensions + + mkdir -p "${WORKDIR}/sapis-build" + for one_sapi in $SAPIS ; do + use "${one_sapi}" || continue + php_set_ini_dir "${one_sapi}" + + cp -r "${S}" "${WORKDIR}/sapis-build/${one_sapi}" + cd "${WORKDIR}/sapis-build/${one_sapi}" + + sapi_conf="${my_conf} --with-config-file-path=${PHP_INI_DIR} + --with-config-file-scan-dir=${PHP_EXT_INI_DIR_ACTIVE}" + + for sapi in $SAPIS ; do + case "$sapi" in + cli|cgi|embed|fpm) + if [[ "${one_sapi}" == "${sapi}" ]] ; then + sapi_conf="${sapi_conf} --enable-${sapi}" + else + sapi_conf="${sapi_conf} --disable-${sapi}" + fi + ;; + + apache2) + if [[ "${one_sapi}" == "${sapi}" ]] ; then + sapi_conf="${sapi_conf} --with-apxs2=/usr/sbin/apxs" + else + sapi_conf="${sapi_conf} --without-apxs2" + fi + ;; + esac + done + + econf ${sapi_conf} + done +} diff --git a/dev-lang/php/files/eblits/src_configure-v52.eblit b/dev-lang/php/files/eblits/src_configure-v52.eblit new file mode 100644 index 0000000..679e5a3 --- /dev/null +++ b/dev-lang/php/files/eblits/src_configure-v52.eblit @@ -0,0 +1,233 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/src_configure-v52.eblit,v 1.1 2010/08/02 16:56:42 mabi Exp $ + +eblit-php-src_configure() { + PHP_DESTDIR="/usr/$(get_libdir)/php${SLOT}" + + # This is a global variable and should be in caps. It isn't because the + # phpconfutils eclass relies on exactly this name... + my_conf=" + --prefix="${PHP_DESTDIR}" + --mandir="${PHP_DESTDIR}"/man + --infodir="${PHP_DESTDIR}"/info + --libdir="${PHP_DESTDIR}"/lib + --with-libdir=$(get_libdir) + --without-pear + $(use_enable threads maintainer-zts)" + + phpconfutils_init + + # extension USE flag shared + phpconfutils_extension_enable "bcmath" "bcmath" 1 + phpconfutils_extension_with "bz2" "bzip2" 1 + phpconfutils_extension_enable "calendar" "calendar" 1 + phpconfutils_extension_disable "ctype" "ctype" 0 + phpconfutils_extension_with "curl" "curl" 1 + phpconfutils_extension_with "curlwrappers" "curlwrappers" 0 + phpconfutils_extension_enable "dbase" "dbase" 1 + phpconfutils_extension_disable "dom" "xml" 0 + phpconfutils_extension_enable "exif" "exif" 1 + phpconfutils_extension_with "fbsql" "frontbase" 1 + phpconfutils_extension_with "fdftk" "fdftk" 1 "/opt/fdftk-6.0" + phpconfutils_extension_disable "filter" "filter" 0 + phpconfutils_extension_enable "ftp" "ftp" 1 + phpconfutils_extension_with "gettext" "nls" 1 + phpconfutils_extension_with "gmp" "gmp" 1 + phpconfutils_extension_disable "hash" "hash" 0 + phpconfutils_extension_without "iconv" "iconv" 0 + phpconfutils_extension_disable "ipv6" "ipv6" 0 + phpconfutils_extension_disable "json" "json" 0 + phpconfutils_extension_with "kerberos" "kerberos" 0 "/usr" + phpconfutils_extension_disable "libxml" "xml" 0 + phpconfutils_extension_enable "mbstring" "unicode" 1 + phpconfutils_extension_with "mcrypt" "crypt" 1 + phpconfutils_extension_with "mhash" "mhash" 1 + phpconfutils_extension_with "msql" "msql" 1 + phpconfutils_extension_with "mssql" "mssql" 1 + phpconfutils_extension_with "ncurses" "ncurses" 1 + phpconfutils_extension_with "openssl" "ssl" 0 + phpconfutils_extension_with "openssl-dir" "ssl" 0 "/usr" + phpconfutils_extension_enable "pcntl" "pcntl" 1 + phpconfutils_extension_without "pcre-regex" "pcre" 0 + phpconfutils_extension_disable "pdo" "pdo" 0 + phpconfutils_extension_with "pgsql" "postgres" 1 + phpconfutils_extension_disable "posix" "posix" 0 + phpconfutils_extension_with "pspell" "spell" 1 + phpconfutils_extension_with "recode" "recode" 1 + phpconfutils_extension_disable "reflection" "reflection" 0 + phpconfutils_extension_disable "simplexml" "simplexml" 0 + phpconfutils_extension_enable "shmop" "sharedmem" 0 + phpconfutils_extension_with "snmp" "snmp" 1 + phpconfutils_extension_enable "soap" "soap" 1 + phpconfutils_extension_enable "sockets" "sockets" 1 + phpconfutils_extension_disable "spl" "spl" 0 + phpconfutils_extension_with "sybase-ct" "sybase-ct" 1 + phpconfutils_extension_enable "sysvmsg" "sysvipc" 1 + phpconfutils_extension_enable "sysvsem" "sysvipc" 1 + phpconfutils_extension_enable "sysvshm" "sysvipc" 1 + phpconfutils_extension_with "tidy" "tidy" 1 + phpconfutils_extension_disable "tokenizer" "tokenizer" 0 + phpconfutils_extension_enable "wddx" "wddx" 1 + phpconfutils_extension_disable "xml" "xml" 0 + phpconfutils_extension_disable "xmlreader" "xmlreader" 0 + phpconfutils_extension_disable "xmlwriter" "xmlwriter" 0 + phpconfutils_extension_with "xmlrpc" "xmlrpc" 1 + phpconfutils_extension_with "xsl" "xsl" 1 + phpconfutils_extension_enable "zip" "zip" 1 + phpconfutils_extension_with "zlib" "zlib" 1 + phpconfutils_extension_enable "debug" "debug" 0 + + # DBA support + if use cdb || use berkdb || use flatfile || use gdbm || use inifile \ + || use qdbm ; then + my_conf="${my_conf} --enable-dba${shared}" + fi + + # DBA drivers support + phpconfutils_extension_with "cdb" "cdb" 0 + phpconfutils_extension_with "db4" "berkdb" 0 + phpconfutils_extension_enable "flatfile" "flatfile" 0 + phpconfutils_extension_with "gdbm" "gdbm" 0 + phpconfutils_extension_enable "inifile" "inifile" 0 + phpconfutils_extension_with "qdbm" "qdbm" 0 + + # Support for the GD graphics library + if use gd-external ; then + phpconfutils_extension_with "freetype-dir" "truetype" 0 "/usr" + phpconfutils_extension_with "t1lib" "truetype" 0 "/usr" + phpconfutils_extension_enable "gd-jis-conv" "cjk" 0 + phpconfutils_extension_with "gd" "gd-external" 1 "/usr" + else + phpconfutils_extension_with "freetype-dir" "truetype" 0 "/usr" + phpconfutils_extension_with "t1lib" "truetype" 0 "/usr" + phpconfutils_extension_enable "gd-jis-conv" "cjk" 0 + phpconfutils_extension_with "jpeg-dir" "gd" 0 "/usr" + phpconfutils_extension_with "png-dir" "gd" 0 "/usr" + phpconfutils_extension_with "xpm-dir" "xpm" 0 "/usr" + # enable gd last, so configure can pick up the previous settings + phpconfutils_extension_with "gd" "gd" 0 + fi + + # IMAP support + if use imap ; then + phpconfutils_extension_with "imap" "imap" 1 + phpconfutils_extension_with "imap-ssl" "ssl" 0 + fi + + phpconfutils_extension_with "interbase" "interbase" 0 "/opt" + phpconfutils_extension_with "interbase" "firebird" 0 "/usr" + + # LDAP support + if use ldap ; then + if use oci8 ; then + phpconfutils_extension_with "ldap" "ldap" 1 "${ORACLE_HOME}" + else + phpconfutils_extension_with "ldap" "ldap" 1 + phpconfutils_extension_with "ldap-sasl" "ldap-sasl" 0 + fi + fi + + # MySQL support + if use mysql ; then + phpconfutils_extension_with "mysql" "mysql" 1 "/usr" + phpconfutils_extension_with "mysql-sock" "mysql" 0 "/var/run/mysqld/mysqld.sock" + fi + + # MySQLi support + phpconfutils_extension_with "mysqli" "mysqli" 1 "/usr/bin/mysql_config" + + # ODBC support + if use odbc ; then + phpconfutils_extension_with "unixODBC" "odbc" 1 "/usr" + phpconfutils_extension_with "adabas" "adabas" 1 + phpconfutils_extension_with "birdstep" "birdstep" 1 + phpconfutils_extension_with "dbmaker" "dbmaker" 1 + phpconfutils_extension_with "empress" "empress" 1 + if use empress ; then + phpconfutils_extension_with "empress-bcs" "empress-bcs" 0 + fi + phpconfutils_extension_with "esoob" "esoob" 1 + phpconfutils_extension_with "ibm-db2" "db2" 1 + phpconfutils_extension_with "sapdb" "sapdb" 1 + phpconfutils_extension_with "solid" "solid" 1 + fi + + if use iodbc ; then + phpconfutils_extension_with "iodbc" "iodbc" 1 "/usr" + fi + + # Oracle support + phpconfutils_extension_with "oci8" "oci8" 1 + if use oci8-instant-client ; then + OCI8IC_PKG="$(best_version dev-db/oracle-instantclient-basic | \ + sed -e 's|dev-db/oracle-instantclient-basic-||g' | \ + sed -e 's|-r.*||g')" + + phpconfutils_extension_with "oci8" "oci8-instant-client" 1 \ + "instantclient,/usr/lib/oracle/${OCI8IC_PKG}/client/lib" + fi + + # PDO support + if use pdo ; then + phpconfutils_extension_with "pdo-dblib" "mssql" 1 + phpconfutils_extension_with "pdo-mysql" "mysql" 1 "/usr" + phpconfutils_extension_with "pdo-pgsql" "postgres" 1 + phpconfutils_extension_with "pdo-sqlite" "sqlite" 1 "/usr" + phpconfutils_extension_with "pdo-odbc" "odbc" 1 "unixODBC,/usr" + if use oci8 ; then + phpconfutils_extension_with "pdo-oci" "oci8" 1 + fi + if use oci8-instant-client ; then + phpconfutils_extension_with "pdo-oci" "oci8-instant-client" 1 \ + "instantclient,/usr,${OCI8IC_PKG}" + fi + fi + + # readline/libedit support + phpconfutils_extension_with "readline" "readline" 0 + phpconfutils_extension_with "libedit" "libedit" 0 + + # Session support + if use session ; then + phpconfutils_extension_with "mm" "sharedmem" 0 + else + phpconfutils_extension_disable "session" "session" 0 + fi + + # SQLite support + if use sqlite ; then + phpconfutils_extension_with "sqlite" "sqlite" 0 "/usr" + phpconfutils_extension_enable "sqlite-utf8" "unicode" 0 + else + phpconfutils_extension_without "sqlite" "sqlite" 0 + fi + + if use pic ; then + my_conf="${my_conf} --with-pic" + fi + + + # we use the system copy of pcre + # --with-pcre-regex affects ext/pcre + # --with-pcre-dir affects ext/filter and ext/zip + if use pcre ; then + my_conf="${my_conf} --with-pcre-regex=/usr --with-pcre-dir=/usr" + fi + + # Catch CFLAGS problems + php_check_cflags + + # Support user-passed configuration parameters + my_conf="${my_conf} ${EXTRA_ECONF:-}" + + # Support the Apache2 extras, they must be set globally for all + # SAPIs to work correctly, especially for external PHP extensions + if use apache2 ; then + # Concurrent PHP Apache2 modules support + if use concurrentmodphp ; then + append-ldflags "-Wl,--version-script=${FILESDIR}/php${PHP_MV}-ldvs" + fi + fi +} + diff --git a/dev-lang/php/files/eblits/src_configure-v53.eblit b/dev-lang/php/files/eblits/src_configure-v53.eblit index 04bc455..537b3dd 100644 --- a/dev-lang/php/files/eblits/src_configure-v53.eblit +++ b/dev-lang/php/files/eblits/src_configure-v53.eblit @@ -1,6 +1,6 @@ -# Copyright 1999-2012 Gentoo Foundation +# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_configure-v53.eblit,v 1.4 2012/02/28 10:59:13 mabi Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_configure-v53.eblit,v 1.1 2011/12/16 09:02:43 olemarkus Exp $ eblit-php-src_configure() { addpredict /usr/share/snmp/mibs/.index @@ -10,10 +10,11 @@ eblit-php-src_configure() { # This is a global variable and should be in caps. It isn't because the # phpconfutils eclass relies on exactly this name... # for --with-libdir see bug #327025 - my_conf="--prefix=${PHP_DESTDIR} - --mandir=${PHP_DESTDIR}/man - --infodir=${PHP_DESTDIR}/info - --libdir=${PHP_DESTDIR}/lib + my_conf=" + --prefix="${PHP_DESTDIR}" + --mandir="${PHP_DESTDIR}"/man + --infodir="${PHP_DESTDIR}"/info + --libdir="${PHP_DESTDIR}"/lib --with-libdir=$(get_libdir) --without-pear $(use_enable threads maintainer-zts)" @@ -62,7 +63,7 @@ eblit-php-src_configure() { $(use_enable sockets sockets ) $(use_with sqlite sqlite /usr)" use sqlite && my_conf+=" $(use_enable unicode sqlite-utf8)" - my_conf+=" + $my_conf=" $(use_with sqlite3 sqlite3 /usr) $(use_with sybase-ct sybase-ct /usr) $(use_enable sysvipc sysvmsg ) @@ -163,8 +164,12 @@ eblit-php-src_configure() { # Oracle support if use oci8-instant-client ; then + OCI8IC_PKG="$(best_version dev-db/oracle-instantclient-basic | \ + sed -e 's|dev-db/oracle-instantclient-basic-||g' | \ + sed -e 's|-r.*||g')" + my_conf+=" - $(use_with oci8-instant-client oci8)" + $(use_with oci8-instant-client oci8 "instantclient,/usr/lib/oracle/${OCI8IC_PKG}/client/lib")" fi # PDO support @@ -184,7 +189,7 @@ eblit-php-src_configure() { $(use_with odbc pdo-odbc unixODBC,/usr)" if use oci8-instant-client ; then my_conf+=" - $(use_with oci8-instant-client pdo-oci)" + $(use_with oci8-instant-client pdo-oci "instantclient,/usr,${OCI8IC_PKG}" )" fi fi diff --git a/dev-lang/php/files/eblits/src_configure-v54.eblit b/dev-lang/php/files/eblits/src_configure-v54.eblit index bc17877..9e6b295 100644 --- a/dev-lang/php/files/eblits/src_configure-v54.eblit +++ b/dev-lang/php/files/eblits/src_configure-v54.eblit @@ -1,6 +1,6 @@ -# Copyright 1999-2012 Gentoo Foundation +# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_configure-v54.eblit,v 1.3 2012/02/28 11:02:54 olemarkus Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_configure-v54.eblit,v 1.1 2011/12/18 09:00:26 olemarkus Exp $ eblit-php-src_configure() { addpredict /usr/share/snmp/mibs/.index @@ -161,8 +161,12 @@ eblit-php-src_configure() { # Oracle support if use oci8-instant-client ; then + OCI8IC_PKG="$(best_version dev-db/oracle-instantclient-basic | \ + sed -e 's|dev-db/oracle-instantclient-basic-||g' | \ + sed -e 's|-r.*||g')" + my_conf+=" - $(use_with oci8-instant-client oci8)" + $(use_with oci8-instant-client oci8 "instantclient,/usr/lib/oracle/${OCI8IC_PKG}/client/lib")" fi # PDO support @@ -182,7 +186,7 @@ eblit-php-src_configure() { $(use_with odbc pdo-odbc unixODBC,/usr)" if use oci8-instant-client ; then my_conf+=" - $(use_with oci8-instant-client pdo-oci)" + $(use_with oci8-instant-client pdo-oci "instantclient,/usr,${OCI8IC_PKG}" )" fi fi diff --git a/dev-lang/php/files/eblits/src_install-v1.eblit b/dev-lang/php/files/eblits/src_install-v1.eblit new file mode 100644 index 0000000..9cef456 --- /dev/null +++ b/dev-lang/php/files/eblits/src_install-v1.eblit @@ -0,0 +1,121 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/src_install-v1.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ + +eblit-php-src_install() { + # Makefile forgets to create this before trying to write to it... + dodir "${PHP_DESTDIR}/bin" + + # Install php environment (without any sapis) + emake INSTALL_ROOT="${D}" \ + install-build install-headers install-programs \ + || die "emake install failed" + + local extension_dir="$("${D}/${PHP_DESTDIR}/bin/php-config" --extension-dir)" + + # And install the modules to it + if use sharedext ; then + insinto "${extension_dir}" + doins "${S}/modules/"*.so + fi + + # Generate the USE file for PHP + phpconfutils_generate_usefile + + # Create the directory where we'll put version-specific php scripts + keepdir /usr/share/php${PHP_MV} + + if use cli ; then + einfo "Installing SAPI: cli" + into "${PHP_DESTDIR}" + dobin "${SAPIS}"/cli/php \ + || die "Unable to install cli sapi" + php_install_ini cli + fi + + if use cgi ; then + einfo "Installing SAPI: cgi" + into "${PHP_DESTDIR}" # needed each time, php_install_ini would reset it + dobin "${SAPIS}"/cgi/php-cgi \ + || die "Unable to install cgi sapi" + php_install_ini cgi + fi + + if use embed ; then + einfo "Installing SAPI: embed" + into "${PHP_DESTDIR}" + dolib.so "${SAPIS}"/embed/libphp5.so \ + || die "Unable to install embed sapi" + php_install_ini embed + fi + + if use apache2 ; then + einfo "Installing SAPI: apache2" + emake INSTALL_ROOT="${D}" install-sapi || \ + die "Unable to install apache2 SAPI" + + if use concurrentmodphp ; then + einfo "Installing Apache2 config file 70_mod_php${PHP_MV}_concurr.conf" + insinto "${APACHE_MODULES_CONFDIR}" + newins "${FILESDIR}/70_mod_php${PHP_MV}_concurr.conf-apache2" \ + "70_mod_php${PHP_MV}_concurr.conf" + + # Put the ld version script in the right place so it's alwayas + # accessible + insinto "/var/lib/php-pkg/${CATEGORY}/${PN}-${PVR}/" + doins "${FILESDIR}/php${PHP_MV}-ldvs" + else + einfo "Installing Apache2 config 70_mod_php${PHP_MV}.conf)" + insinto ${APACHE_MODULES_CONFDIR} + newins "${FILESDIR}/70_mod_php${PHP_MV}.conf-apache2" \ + "70_mod_php${PHP_MV}.conf" + fi + php_install_ini apache2 + fi + + # Install env.d files + newenvd "${FILESDIR}/20php${PHP_MV}-envd" \ + "20php${PHP_MV}" + sed -e "s|/lib/|/$(get_libdir)/|g" -i \ + "${D}/etc/env.d/20php${PHP_MV}" +} + +php_install_ini() { + local phpsapi="${1}" + + # work out where we are installing the ini file + php_set_ini_dir "${phpsapi}" + + local phpinisrc="${PHP_INI_UPSTREAM}-${phpsapi}" + cp "${PHP_INI_UPSTREAM}" "${phpinisrc}" + + # default to expose_php=Off, bug 300695 + sed -e 's|^expose_php .*|expose_php = Off|g' -i "${phpinisrc}" + + # Set the extension dir + sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" -i "${phpinisrc}" + + # Set the include path to point to where we want to find PEAR packages + sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:/usr/share/php'${PHP_MV}':/usr/share/php"|' -i "${phpinisrc}" + + dodir ${PHP_INI_DIR} + insinto ${PHP_INI_DIR} + newins "${phpinisrc}" ${PHP_INI_FILE} + + dodir ${PHP_EXT_INI_DIR} + dodir ${PHP_EXT_INI_DIR_ACTIVE} + + # Install any extensions built as shared objects + if use sharedext ; then + insinto "${PHP_EXT_INI_DIR}" + for extension in "${D}/${extension_dir}/"*.so ; do + extension="${extension##*/}" + inifilename="${extension/.so/.ini}" + echo "extension=${extension}" > "${S}/modules/$inifilename" + doins "${S}/modules/$inifilename" + dosym "${PHP_EXT_INI_DIR}/${inifilename}" "${PHP_EXT_INI_DIR_ACTIVE}/${inifilename}" + done + fi +} + + diff --git a/dev-lang/php/files/eblits/src_install-v2.eblit b/dev-lang/php/files/eblits/src_install-v2.eblit index b0dd1ae..e592109 100644 --- a/dev-lang/php/files/eblits/src_install-v2.eblit +++ b/dev-lang/php/files/eblits/src_install-v2.eblit @@ -1,25 +1,12 @@ -# Copyright 1999-2011 Gentoo Foundation +# Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_install-v2.eblit,v 1.14 2011/12/16 09:02:43 olemarkus Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_install-v2.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ eblit-php-src_install() { - # see bug #324739 for what happens when we don't have that - addpredict /usr/share/snmp/mibs/.index - - # grab the first SAPI that got built and install common files from there - local first_sapi="" - for sapi in $SAPIS ; do - if use $sapi ; then - first_sapi=$sapi - break - fi - done - # Makefile forgets to create this before trying to write to it... dodir "${PHP_DESTDIR}/bin" # Install php environment (without any sapis) - cd "${WORKDIR}/sapis-build/$first_sapi" emake INSTALL_ROOT="${D}" \ install-build install-headers install-programs \ || die "emake install failed" @@ -29,28 +16,28 @@ eblit-php-src_install() { # And install the modules to it if use sharedext ; then insinto "${extension_dir}" - doins "${WORKDIR}/sapis-build/${first_sapi}/modules/"*.so + doins "${S}/modules/"*.so fi + # Generate the USE file for PHP + phpconfutils_generate_usefile + # Create the directory where we'll put version-specific php scripts keepdir /usr/share/php${PHP_MV} local sapi="", file="" - local sapi_list="" for sapi in ${SAPIS}; do if use "${sapi}" ; then einfo "Installing SAPI: ${sapi}" - cd "${WORKDIR}/sapis-build/${sapi}" # needed each time, php_install_ini would reset it into "${PHP_DESTDIR}" file=$(find "${SAPI_DIR}/${sapi}/" -type f | head -n 1) if [[ "${file: -3}" == ".so" ]]; then if [[ "${sapi}" == "apache2" ]]; then - insinto "${PHP_DESTDIR}/apache2/" + insinto "${PHP_DESTDIR}/../apache2/modules/" newins "${file}" "${file/*\/}" - keepdir "/usr/$(get_libdir)/apache2/modules" else dolib.so "${file}" || die "Unable to install ${sapi} sapi" fi @@ -59,28 +46,14 @@ eblit-php-src_install() { fi php_install_ini "${sapi}" - - # construct correct SAPI string for php-config - # thanks to ferringb for the bash voodoo - if [[ "${sapi}" == "apache2" ]]; then - sapi_list="${sapi_list:+${sapi_list} }apache2handler" - else - sapi_list="${sapi_list:+${sapi_list} }${sapi}" - fi fi done # Install env.d files - newenvd "${FILESDIR}/20php5-envd" \ - "20php${SLOT}" + newenvd "${FILESDIR}/20php${PHP_MV}-envd" \ + "20php${PHP_MV}" sed -e "s|/lib/|/$(get_libdir)/|g" -i \ - "${D}/etc/env.d/20php${SLOT}" - sed -e "s|php5|php${SLOT}|g" -i \ - "${D}/etc/env.d/20php${SLOT}" - - # set php-config variable correctly (bug #278439) - sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \ - "${D}/usr/$(get_libdir)/php${SLOT}/bin/php-config" + "${D}/etc/env.d/20php${PHP_MV}" } php_install_ini() { @@ -92,15 +65,9 @@ php_install_ini() { local phpinisrc="${PHP_INI_UPSTREAM}-${phpsapi}" cp "${PHP_INI_UPSTREAM}" "${phpinisrc}" - # default to allow_url_open=Off, bug 332763 - sed -e 's|^allow_url_fopen .*|allow_url_fopen = Off|g' -i "${phpinisrc}" - # default to expose_php=Off, bug 300695 sed -e 's|^expose_php .*|expose_php = Off|g' -i "${phpinisrc}" - # default to /tmp for save_path, bug #282768 - sed -e 's|^;session.save_path .*$|session.save_path = "/tmp"|g' -i "${phpinisrc}" - # Set the extension dir sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" -i "${phpinisrc}" @@ -111,9 +78,6 @@ php_install_ini() { insinto "${PHP_INI_DIR}" newins "${phpinisrc}" "${PHP_INI_FILE}" - elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR}" - elog - dodir "${PHP_EXT_INI_DIR}" dodir "${PHP_EXT_INI_DIR_ACTIVE}" @@ -123,43 +87,29 @@ php_install_ini() { for extension in "${D}/${extension_dir}/"*.so ; do extension="${extension##*/}" inifilename="${extension/.so/.ini}" - echo "extension=${extension}" > "${WORKDIR}/sapis-build/${phpsapi}/modules/$inifilename" - doins "${WORKDIR}/sapis-build/${phpsapi}/modules/$inifilename" + echo "extension=${extension}" > "${S}/modules/$inifilename" + doins "${S}/modules/$inifilename" dosym "${PHP_EXT_INI_DIR}/${inifilename}" "${PHP_EXT_INI_DIR_ACTIVE}/${inifilename}" done fi # SAPI-specific handling if [[ "${sapi}" == "apache2" ]] ; then + if use concurrentmodphp ; then + einfo "Installing Apache2 config file 70_mod_php${PHP_MV}_concurr.conf" insinto "${APACHE_MODULES_CONFDIR}" + newins "${FILESDIR}/70_mod_php${PHP_MV}_concurr.conf-apache2" \ + "70_mod_php${PHP_MV}_concurr.conf" + + # Put the ld version script in the right place so + # it's always accessible + insinto "/var/lib/php-pkg/${CATEGORY}/${PN}-${PVR}/" + doins "${FILESDIR}/php${PHP_MV}-ldvs" + else + einfo "Installing Apache2 config 70_mod_php${PHP_MV}.conf)" + insinto ${APACHE_MODULES_CONFDIR} newins "${FILESDIR}/70_mod_php${PHP_MV}.conf-apache2" \ "70_mod_php${PHP_MV}.conf" + fi fi - - if [[ "${sapi}" == "fpm" ]] ; then - [[ -z ${PHP_FPM_INIT_VER} ]] && PHP_FPM_INIT_VER=3 - [[ -z ${PHP_FPM_CONF_VER} ]] && PHP_FPM_CONF_VER=0 - einfo "Installing FPM CGI config file php-fpm.conf" - insinto ${PHP_INI_DIR} - newins "${FILESDIR}/php-fpm-r${PHP_FPM_CONF_VER}.conf" php-fpm.conf - dodir "/etc/init.d" - insinto "/etc/init.d" - newinitd "${FILESDIR}/php-fpm-r${PHP_FPM_INIT_VER}.init" "php-fpm" - #dosym "${PHP_DESTDIR}/bin/php-fpm" "/usr/bin/php-fpm" - - # Remove bogus /etc/php-fpm.conf.default (bug 359906) - [[ -f "${D}/etc/php-fpm.conf.default" ]] && rm "${D}/etc/php-fpm.conf.default" - fi - - # Install PHP ini files into /usr/share/php - if [[ ${SLOT} == '5.2' ]]; then - newdoc php.ini-dist php.ini-development - newdoc php.ini-recommended php.ini-production - fi - - if [[ ${SLOT} == '5.3' ]]; then - dodoc php.ini-development - dodoc php.ini-production - fi - } diff --git a/dev-lang/php/files/eblits/src_install-v3.eblit b/dev-lang/php/files/eblits/src_install-v3.eblit index 4c3ba24..6ac274f 100644 --- a/dev-lang/php/files/eblits/src_install-v3.eblit +++ b/dev-lang/php/files/eblits/src_install-v3.eblit @@ -1,6 +1,6 @@ # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_install-v3.eblit,v 1.5 2011/11/08 18:14:08 olemarkus Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_install-v3.eblit,v 1.1 2011/06/30 07:30:11 olemarkus Exp $ eblit-php-src_install() { # see bug #324739 for what happens when we don't have that @@ -26,6 +26,9 @@ eblit-php-src_install() { local extension_dir="$("${D}/${PHP_DESTDIR}/bin/php-config" --extension-dir)" + # Generate the USE file for PHP + phpconfutils_generate_usefile + # Create the directory where we'll put version-specific php scripts keepdir /usr/share/php${PHP_MV} @@ -36,39 +39,20 @@ eblit-php-src_install() { if use "${sapi}" ; then einfo "Installing SAPI: ${sapi}" cd "${WORKDIR}/sapis-build/${sapi}" - - if [[ "${sapi}" == "apache2" ]] ; then - # We're specifically not using emake install-sapi as libtool - # may cause unnecessary relink failures (see bug #351266) - insinto "${PHP_DESTDIR}/apache2/" - newins ".libs/libphp5.so" "libphp${PHP_MV}.so" - keepdir "/usr/$(get_libdir)/apache2/modules" - else - # needed each time, php_install_ini would reset it - into "${PHP_DESTDIR}" - case "$sapi" in - cli) - source="sapi/cli/php" - ;; - cgi) - source="sapi/cgi/php-cgi" - ;; - fpm) - source="sapi/fpm/php-fpm" - ;; - embed) - source="libs/libphp${PHP_MV}.so" - ;; - *) - die "unhandled sapi in src_install" - ;; - esac - - if [[ "${source: -3}" == ".so" ]]; then - dolib.so "${source}" || die "Unable to install ${sapi} sapi" + # needed each time, php_install_ini would reset it + into "${PHP_DESTDIR}" + file=$(find "${SAPI_DIR}/${sapi}/" -type f | head -n 1) + + if [[ "${file: -3}" == ".so" ]]; then + if [[ "${sapi}" == "apache2" ]]; then + insinto "${PHP_DESTDIR}/apache2/" + newins "${file}" "${file/*\/}" + keepdir "/usr/$(get_libdir)/apache2/modules" else - dobin "${source}" || die "Unable to install ${sapi} sapi" + dolib.so "${file}" || die "Unable to install ${sapi} sapi" fi + else + dobin "${file}" || die "Unable to install ${sapi} sapi" fi php_install_ini "${sapi}" @@ -76,7 +60,7 @@ eblit-php-src_install() { # construct correct SAPI string for php-config # thanks to ferringb for the bash voodoo if [[ "${sapi}" == "apache2" ]]; then - sapi_list="${sapi_list:+${sapi_list} }apache2handler" + sapi_list="${sapi_list:+${sapi_list} }apache2handler" else sapi_list="${sapi_list:+${sapi_list} }${sapi}" fi @@ -105,6 +89,12 @@ php_install_ini() { local phpinisrc="${PHP_INI_UPSTREAM}-${phpsapi}" cp "${PHP_INI_UPSTREAM}" "${phpinisrc}" + # default to allow_url_open=Off, bug 332763 + sed -e 's|^allow_url_fopen .*|allow_url_fopen = Off|g' -i "${phpinisrc}" + + # default to expose_php=Off, bug 300695 + sed -e 's|^expose_php .*|expose_php = Off|g' -i "${phpinisrc}" + # default to /tmp for save_path, bug #282768 sed -e 's|^;session.save_path .*$|session.save_path = "/tmp"|g' -i "${phpinisrc}" @@ -132,14 +122,12 @@ php_install_ini() { fi if [[ "${sapi}" == "fpm" ]] ; then - [[ -z ${PHP_FPM_INIT_VER} ]] && PHP_FPM_INIT_VER=3 - [[ -z ${PHP_FPM_CONF_VER} ]] && PHP_FPM_CONF_VER=0 einfo "Installing FPM CGI config file php-fpm.conf" insinto ${PHP_INI_DIR} - newins "${FILESDIR}/php-fpm-r${PHP_FPM_CONF_VER}.conf" php-fpm.conf + doins "${FILESDIR}/php-fpm.conf" dodir "/etc/init.d" insinto "/etc/init.d" - newinitd "${FILESDIR}/php-fpm-r${PHP_FPM_INIT_VER}.init" "php-fpm" + newinitd "${FILESDIR}/php-fpm-r3.init" "php-fpm" #dosym "${PHP_DESTDIR}/bin/php-fpm" "/usr/bin/php-fpm" # Remove bogus /etc/php-fpm.conf.default (bug 359906) diff --git a/dev-lang/php/files/eblits/src_prepare-snapshots.eblit b/dev-lang/php/files/eblits/src_prepare-snapshots.eblit new file mode 100644 index 0000000..5d274da --- /dev/null +++ b/dev-lang/php/files/eblits/src_prepare-snapshots.eblit @@ -0,0 +1,73 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/src_prepare-snapshots.eblit,v 1.1 2011/05/01 20:15:52 olemarkus Exp $ + +eblit-php-src_prepare() { + # USE=sharedmem (session/mod_mm to be exact) tries to mmap() this path + # ([empty session.save_path]/session_mm_[sapi][gid].sem) + # there is no easy way to circumvent that, all php calls during + # install use -n, so no php.ini file will be used. + # As such, this is the easiest way to get around + addpredict /session_mm_cli250.sem + addpredict /session_mm_cli0.sem + + # kolab support (support for imap annotations) + use kolab && epatch "${WORKDIR}/${PV}/opt/imap-kolab-annotations.patch" + + # Change PHP branding + sed -re "s|^(PHP_EXTRA_VERSION=\").*(\")|\1${PHP_EXTRA_BRANDING}-pl${PR/r/}-gentoo\2|g" \ + -i configure.in || die "Unable to change PHP branding" + + # Apply generic PHP patches + EPATCH_SOURCE="${WORKDIR}/patches/generic" EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + EPATCH_MULTI_MSG="Applying generic patches and fixes from upstream..." epatch + + # Patch PHP to show Gentoo as the server platform + sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \ + -i configure.in || die "Failed to fix server platform name" + + # Prevent PHP from activating the Apache config, + # as we will do that ourselves + sed -i \ + -e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \ + -e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \ + configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4 + + # Patch PHP to support heimdal instead of mit-krb5 + if has_version "app-crypt/heimdal" ; then + sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \ + || die "Failed to fix heimdal libname" + sed -e 's|PHP_ADD_LIBRARY(k5crypto, 1, $1)||g' -i acinclude.m4 \ + || die "Failed to fix heimdal crypt library reference" + fi + + # Suhosin support + if [[ -n $SUHOSIN_VERSION ]] ; then + if use suhosin ; then + epatch "${WORKDIR}/${SUHOSIN_PATCH}" + fi + else + ewarn "Please note that this version of PHP does not yet come with a suhosin patch" + fi + + #Add user patches #357637 + epatch_user + + # rebuild the whole autotools stuff as we are heavily patching it + # (suhosin, fastbuild, ...) + + # eaclocal doesn't accept --force, so we try to force re-generation + # this way + rm aclocal.m4 + + # work around divert() issues with newer autoconf, bug #281697 + if has_version '>=sys-devel/autoconf-2.64' ; then + sed -i -r \ + -e 's:^((m4_)?divert)[(]([0-9]*)[)]:\1(600\3):' \ + $(grep -l divert $(find . -name '*.m4') configure.in) || die + fi + eautoreconf --force -W no-cross +} + + diff --git a/dev-lang/php/files/eblits/src_prepare-v1.eblit b/dev-lang/php/files/eblits/src_prepare-v1.eblit new file mode 100644 index 0000000..0b89dab --- /dev/null +++ b/dev-lang/php/files/eblits/src_prepare-v1.eblit @@ -0,0 +1,73 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/Attic/src_prepare-v1.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ + +eblit-php-src_prepare() { + # USE=sharedmem (session/mod_mm to be exact) tries to mmap() this path + # ([empty session.save_path]/session_mm_[sapi][gid].sem) + # there is no easy way to circumvent that, all php calls during + # install use -n, so no php.ini file will be used. + # As such, this is the easiest way to get around + addpredict /session_mm_cli250.sem + addpredict /session_mm_cli0.sem + + # Concurrent PHP Apache2 modules support + use apache2 && use concurrentmodphp && \ + epatch "${WORKDIR}/${PV}/opt/concurrent_apache_modules.patch" + + # kolab support (support for imap annotations) + use kolab && epatch "${WORKDIR}/${PV}/opt/imap-kolab-annotations.patch" + + # Change PHP branding + sed -re "s|^(PHP_EXTRA_VERSION=\").*(\")|\1${PHP_EXTRA_BRANDING}-pl${PR/r/}-gentoo\2|g" \ + -i configure.in || die "Unable to change PHP branding" + + # Apply generic PHP patches + EPATCH_SOURCE="${WORKDIR}/${PV}/generic" EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + EPATCH_MULTI_MSG="Applying generic patches and fixes from upstream..." epatch + + # Patch PHP to show Gentoo as the server platform + sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \ + -i configure.in || die "Failed to fix server platform name" + + # Disable interactive make test + sed -e 's/'`echo "\!getenv('NO_INTERACTION')"`'/false/g' -i run-tests.php + + # Prevent PHP from activating the Apache config, + # as we will do that ourselves + sed -i \ + -e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \ + -e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \ + configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4 + + # Patch PHP to support heimdal instead of mit-krb5 + if has_version "app-crypt/heimdal" ; then + sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \ + || die "Failed to fix heimdal libname" + sed -e 's|PHP_ADD_LIBRARY(k5crypto, 1, $1)||g' -i acinclude.m4 \ + || die "Failed to fix heimdal crypt library reference" + fi + + # Suhosin support + if use suhosin ; then + epatch "${WORKDIR}/${SUHOSIN_PATCH}" + fi + + # rebuild the whole autotools stuff as we are heavily patching it + # (suhosin, fastbuild, ...) + + # eaclocal doesn't accept --force, so we try to force re-generation + # this way + rm aclocal.m4 + + # work around divert() issues with newer autoconf, bug #281697 + if has_version '>=sys-devel/autoconf-2.64' ; then + sed -i -r \ + -e 's:^((m4_)?divert)[(]([0-9]*)[)]:\1(600\3):' \ + $(grep -l divert $(find -name '*.m4') configure.in) || die + fi + eautoreconf --force -W no-cross +} + + diff --git a/dev-lang/php/files/eblits/src_prepare-v2.eblit b/dev-lang/php/files/eblits/src_prepare-v2.eblit index b6bd72e..78b4769 100644 --- a/dev-lang/php/files/eblits/src_prepare-v2.eblit +++ b/dev-lang/php/files/eblits/src_prepare-v2.eblit @@ -1,6 +1,6 @@ -# Copyright 1999-2011 Gentoo Foundation +# Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_prepare-v2.eblit,v 1.3 2011/01/05 11:23:16 mabi Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_prepare-v2.eblit,v 1.1 2010/10/08 18:25:10 olemarkus Exp $ eblit-php-src_prepare() { # USE=sharedmem (session/mod_mm to be exact) tries to mmap() this path @@ -43,15 +43,10 @@ eblit-php-src_prepare() { fi # Suhosin support - if [[ -n $SUHOSIN_VERSION ]] ; then - if use suhosin ; then - epatch "${WORKDIR}/${SUHOSIN_PATCH}" - fi - else - ewarn "Please note that this version of PHP does not yet come with a suhosin patch" + if use suhosin ; then + epatch "${WORKDIR}/${SUHOSIN_PATCH}" fi - # rebuild the whole autotools stuff as we are heavily patching it # (suhosin, fastbuild, ...) diff --git a/dev-lang/php/files/eblits/src_test-v1.eblit b/dev-lang/php/files/eblits/src_test-v1.eblit index 07f8d6f..5196c87 100644 --- a/dev-lang/php/files/eblits/src_test-v1.eblit +++ b/dev-lang/php/files/eblits/src_test-v1.eblit @@ -1,24 +1,24 @@ -# Copyright 1999-2012 Gentoo Foundation +# Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_test-v1.eblit,v 1.3 2012/02/06 13:53:17 olemarkus Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_test-v1.eblit,v 1.1 2010/05/27 23:05:04 mabi Exp $ eblit-php-src_test() { vecho ">>> Test phase [test]: ${CATEGORY}/${PF}" - PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php" - if [[ ! -x "${PHP_BIN}" ]] ; then + + if [[ ! -x "${S}/sapi/cli/php" ]] ; then ewarn "Test phase requires USE=cli, skipping" return else - export TEST_PHP_EXECUTABLE="${PHP_BIN}" + export TEST_PHP_EXECUTABLE="${S}/sapi/cli/php" fi - if [[ -x "${WORKDIR}/sapis/cgi/php-cgi" ]] ; then - export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis/cgi/php-cgi" + if [[ -x "${S}/sapi/cgi/php-cgi" ]] ; then + export TEST_PHP_CGI_EXECUTABLE="${S}/sapi/cgi/php-cgi" fi REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d "session.save_path=${T}" \ - "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d "session.save_path=${T}" + "${S}/run-tests.php" -n -q -d "session.save_path=${T}" for name in ${EXPECTED_TEST_FAILURES}; do mv "${name}.out" "${name}.out.orig" 2>/dev/null diff --git a/dev-lang/php/files/mod_php.conf b/dev-lang/php/files/mod_php.conf new file mode 100644 index 0000000..6f1f474 --- /dev/null +++ b/dev-lang/php/files/mod_php.conf @@ -0,0 +1,6 @@ +<IfModule mod_php4.c> + +AddType application/x-httpd-php .php .php4 .php3 .phtml +AddType application/x-httpd-php-source .phps + +</IfModule> diff --git a/dev-lang/php/files/php-5.2.10-pdo_dblib.patch b/dev-lang/php/files/php-5.2.10-pdo_dblib.patch new file mode 100644 index 0000000..e161a82 --- /dev/null +++ b/dev-lang/php/files/php-5.2.10-pdo_dblib.patch @@ -0,0 +1,16 @@ +diff -Naur php-5.2.10.old/ext/pdo_dblib/dblib_driver.c php-5.2.10/ext/pdo_dblib/dblib_driver.c +--- php-5.2.10.old/ext/pdo_dblib/dblib_driver.c 2009-03-20 23:14:17.000000000 +0100 ++++ php-5.2.10/ext/pdo_dblib/dblib_driver.c 2009-09-25 00:19:31.000000000 +0200 +@@ -230,9 +230,9 @@ + goto cleanup; + } + +- if (DBSETOPT(H->link, DBTEXTLIMIT, "2147483647") == FAIL) { +- goto cleanup; +- } ++// if (DBSETOPT(H->link, DBTEXTLIMIT, "2147483647") == FAIL) { ++// goto cleanup; ++// } + + if (vars[3].optval && FAIL == dbuse(H->link, vars[3].optval)) { + goto cleanup; diff --git a/dev-lang/php/files/php-5.2.12-libpng14.patch b/dev-lang/php/files/php-5.2.12-libpng14.patch new file mode 100644 index 0000000..90f015f --- /dev/null +++ b/dev-lang/php/files/php-5.2.12-libpng14.patch @@ -0,0 +1,11 @@ +--- ext/gd/libgd/gd_png.c ++++ ext/gd/libgd/gd_png.c +@@ -139,7 +139,7 @@ + return NULL; + } + +- if (!png_check_sig (sig, 8)) { /* bad signature */ ++ if (png_sig_cmp (sig, 0, 8)) { /* bad signature */ + return NULL; + } + diff --git a/dev-lang/php/files/php-fpm-gentooified-5.3.4.patch b/dev-lang/php/files/php-fpm-gentooified-5.3.4.patch new file mode 100644 index 0000000..1f401b3 --- /dev/null +++ b/dev-lang/php/files/php-fpm-gentooified-5.3.4.patch @@ -0,0 +1,41 @@ +--- sapi/fpm/php-fpm.conf 2010-12-13 21:48:51.000000000 +0100 ++++ sapi/fpm/php-fpm.conf.new 2010-12-13 22:36:39.000000000 +0100 +@@ -12,7 +12,7 @@ + ; Relative path can also be used. They will be prefixed by: + ; - the global prefix if it's been set (-p arguement) + ; - /usr/lib64/php5.3 otherwise +-;include=etc/fpm.d/*.conf ++;include=/etc/fpm-php5.3/fpm.d/*.conf + + ;;;;;;;;;;;;;;;;;; + ; Global Options ; +@@ -22,12 +22,12 @@ + ; Pid file + ; Note: the default prefix is /var/lib + ; Default Value: none +-;pid = run/php-fpm.pid ++pid = /var/run/php-fpm.pid + + ; Error log file + ; Note: the default prefix is /var/lib + ; Default Value: log/php-fpm.log +-;error_log = log/php-fpm.log ++error_log = /var/log/php-fpm.log + + ; Log level + ; Possible Values: alert, error, warning, notice, debug +@@ -159,12 +159,12 @@ + ; The desired minimum number of idle server processes. + ; Note: Used only when pm is set to 'dynamic' + ; Note: Mandatory when pm is set to 'dynamic' +-;pm.min_spare_servers = 5 ++pm.min_spare_servers = 5 + + ; The desired maximum number of idle server processes. + ; Note: Used only when pm is set to 'dynamic' + ; Note: Mandatory when pm is set to 'dynamic' +-;pm.max_spare_servers = 35 ++pm.max_spare_servers = 35 + + ; The number of requests each child process should execute before respawning. + ; This can be useful to work around memory leaks in 3rd party libraries. For diff --git a/dev-lang/php/files/php-fpm-gentooified.patch b/dev-lang/php/files/php-fpm-gentooified.patch new file mode 100644 index 0000000..3d7b9fe --- /dev/null +++ b/dev-lang/php/files/php-fpm-gentooified.patch @@ -0,0 +1,55 @@ +--- sapi/fpm/php-fpm.conf.orig 2010-06-03 21:04:30.000000000 +0200 ++++ sapi/fpm/php-fpm.conf 2010-06-03 22:40:41.000000000 +0200 +@@ -8,7 +8,7 @@ + ; Include one or more files. If glob(3) exists, it is used to include a bunch of + ; files from a glob(3) pattern. This directive can be used everywhere in the + ; file. +-;include=/etc/fpm.d/*.conf ++;include=/etc/php/fpm-php5/fpm.d/*.conf + + ;;;;;;;;;;;;;;;;;; + ; Global Options ; +@@ -17,11 +17,11 @@ + [global] + ; Pid file + ; Default Value: none +-;pid = /var/lib/run/php-fpm.pid ++;pid = /var/run/php-fpm.pid + + ; Error log file + ; Default Value: /var/lib/log/php-fpm.log +-;error_log = /var/lib/log/php-fpm.log ++error_log = /var/log/php-fpm.log + + ; Log level + ; Possible Values: alert, error, warning, notice, debug +@@ -133,17 +133,17 @@ + ; The number of child processes created on startup. + ; Note: Used only when pm is set to 'dynamic' + ; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 +-;pm.start_servers = 20 ++pm.start_servers = 20 + + ; The desired minimum number of idle server processes. + ; Note: Used only when pm is set to 'dynamic' + ; Note: Mandatory when pm is set to 'dynamic' +-;pm.min_spare_servers = 5 ++pm.min_spare_servers = 5 + + ; The desired maximum number of idle server processes. + ; Note: Used only when pm is set to 'dynamic' + ; Note: Mandatory when pm is set to 'dynamic' +-;pm.max_spare_servers = 35 ++pm.max_spare_servers = 35 + + ; The number of requests each child process should execute before respawning. + ; This can be useful to work around memory leaks in 3rd party libraries. For +@@ -213,7 +213,7 @@ + + ; The log file for slow requests + ; Default Value: /var/lib/log/php-fpm.log.slow +-;slowlog = /var/lib/log/php-fpm.log.slow ++;slowlog = /var/log/php-fpm.log.slow + + ; Set open file descriptor rlimit. + ; Default Value: system defined value diff --git a/dev-lang/php/files/php-fpm-r0.conf b/dev-lang/php/files/php-fpm-r0.conf new file mode 100644 index 0000000..ddef717 --- /dev/null +++ b/dev-lang/php/files/php-fpm-r0.conf @@ -0,0 +1,310 @@ +;;;;;;;;;;;;;;;;;;;;; +; FPM Configuration ; +;;;;;;;;;;;;;;;;;;;;; + +; All relative paths in this configuration file are relative to PHP's install +; prefix (/usr/lib/php5.3). This prefix can be dynamicaly changed by using the +; '-p' argument from the command line. + +; Include one or more files. If glob(3) exists, it is used to include a bunch of +; files from a glob(3) pattern. This directive can be used everywhere in the +; file. +; Relative path can also be used. They will be prefixed by: +; - the global prefix if it's been set (-p arguement) +; - /usr/lib/php5.3 otherwise +;include=/etc/php/fpm-php5.3/fpm.d/*.conf + +;;;;;;;;;;;;;;;;;; +; Global Options ; +;;;;;;;;;;;;;;;;;; + +[global] +; Pid file +; Note: the default prefix is /var/lib +; Default Value: none +; Note: The Gentoo init script expects the pid path +; to be set to /var/run/php-fpm.pid +pid = /var/run/php-fpm.pid + +; Error log file +; Note: the default prefix is /var/lib +; Default Value: log/php-fpm.log +error_log = /var/log/php-fpm.log + +; Log level +; Possible Values: alert, error, warning, notice, debug +; Default Value: notice +;log_level = notice + +; If this number of child processes exit with SIGSEGV or SIGBUS within the time +; interval set by emergency_restart_interval then FPM will restart. A value +; of '0' means 'Off'. +; Default Value: 0 +;emergency_restart_threshold = 0 + +; Interval of time used by emergency_restart_interval to determine when +; a graceful restart will be initiated. This can be useful to work around +; accidental corruptions in an accelerator's shared memory. +; Available Units: s(econds), m(inutes), h(ours), or d(ays) +; Default Unit: seconds +; Default Value: 0 +;emergency_restart_interval = 0 + +; Time limit for child processes to wait for a reaction on signals from master. +; Available units: s(econds), m(inutes), h(ours), or d(ays) +; Default Unit: seconds +; Default Value: 0 +;process_control_timeout = 0 + +; Send FPM to background. Set to 'no' to keep FPM in foreground for debugging. +; Default Value: yes +;daemonize = yes + +;;;;;;;;;;;;;;;;;;;; +; Pool Definitions ; +;;;;;;;;;;;;;;;;;;;; + +; Multiple pools of child processes may be started with different listening +; ports and different management options. The name of the pool will be +; used in logs and stats. There is no limitation on the number of pools which +; FPM can handle. Your system will tell you anyway :) + +; Start a new pool named 'www'. +; the variable $pool can we used in any directive and will be replaced by the +; pool name ('www' here) +[www] + +; Per pool prefix +; It only applies on the following directives: +; - 'slowlog' +; - 'listen' (unixsocket) +; - 'chroot' +; - 'chdir' +; - 'php_values' +; - 'php_admin_values' +; When not set, the global prefix (or /usr/lib/php5.3) applies instead. +; Note: This directive can also be relative to the global prefix. +; Default Value: none +;prefix = /path/to/pools/$pool + +; The address on which to accept FastCGI requests. +; Valid syntaxes are: +; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific address on +; a specific port; +; 'port' - to listen on a TCP socket to all addresses on a +; specific port; +; '/path/to/unix/socket' - to listen on a unix socket. +; Note: This value is mandatory. +listen = 127.0.0.1:9000 + +; Set listen(2) backlog. A value of '-1' means unlimited. +; Default Value: 128 (-1 on FreeBSD and OpenBSD) +;listen.backlog = -1 + +; List of ipv4 addresses of FastCGI clients which are allowed to connect. +; Equivalent to the FCGI_WEB_SERVER_ADDRS environment variable in the original +; PHP FCGI (5.2.2+). Makes sense only with a tcp listening socket. Each address +; must be separated by a comma. If this value is left blank, connections will be +; accepted from any ip address. +; Default Value: any +;listen.allowed_clients = 127.0.0.1 + +; Set permissions for unix socket, if one is used. In Linux, read/write +; permissions must be set in order to allow connections from a web server. Many +; BSD-derived systems allow connections regardless of permissions. +; Default Values: user and group are set as the running user +; mode is set to 0666 +;listen.owner = nobody +;listen.group = nobody +;listen.mode = 0666 + +; Unix user/group of processes +; Note: The user is mandatory. If the group is not set, the default user's group +; will be used. +user = nobody +group = nobody + +; Choose how the process manager will control the number of child processes. +; Possible Values: +; static - a fixed number (pm.max_children) of child processes; +; dynamic - the number of child processes are set dynamically based on the +; following directives: +; pm.max_children - the maximum number of children that can +; be alive at the same time. +; pm.start_servers - the number of children created on startup. +; pm.min_spare_servers - the minimum number of children in 'idle' +; state (waiting to process). If the number +; of 'idle' processes is less than this +; number then some children will be created. +; pm.max_spare_servers - the maximum number of children in 'idle' +; state (waiting to process). If the number +; of 'idle' processes is greater than this +; number then some children will be killed. +; Note: This value is mandatory. +pm = dynamic + +; The number of child processes to be created when pm is set to 'static' and the +; maximum number of child processes to be created when pm is set to 'dynamic'. +; This value sets the limit on the number of simultaneous requests that will be +; served. Equivalent to the ApacheMaxClients directive with mpm_prefork. +; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP +; CGI. +; Note: Used when pm is set to either 'static' or 'dynamic' +; Note: This value is mandatory. +pm.max_children = 50 + +; The number of child processes created on startup. +; Note: Used only when pm is set to 'dynamic' +; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 +;pm.start_servers = 20 + +; The desired minimum number of idle server processes. +; Note: Used only when pm is set to 'dynamic' +; Note: Mandatory when pm is set to 'dynamic' +pm.min_spare_servers = 5 + +; The desired maximum number of idle server processes. +; Note: Used only when pm is set to 'dynamic' +; Note: Mandatory when pm is set to 'dynamic' +pm.max_spare_servers = 35 + +; The number of requests each child process should execute before respawning. +; This can be useful to work around memory leaks in 3rd party libraries. For +; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. +; Default Value: 0 +;pm.max_requests = 500 + +; The URI to view the FPM status page. If this value is not set, no URI will be +; recognized as a status page. By default, the status page shows the following +; information: +; accepted conn - the number of request accepted by the pool; +; pool - the name of the pool; +; process manager - static or dynamic; +; idle processes - the number of idle processes; +; active processes - the number of active processes; +; total processes - the number of idle + active processes. +; max children reached - number of times, the process limit has been reached, +; when pm tries to start more children (works only for +; pm 'dynamic') +; The values of 'idle processes', 'active processes' and 'total processes' are +; updated each second. The value of 'accepted conn' is updated in real time. +; Example output: +; accepted conn: 12073 +; pool: www +; process manager: static +; idle processes: 35 +; active processes: 65 +; total processes: 100 +; max children reached: 1 +; By default the status page output is formatted as text/plain. Passing either +; 'html' or 'json' as a query string will return the corresponding output +; syntax. Example: +; http://www.foo.bar/status +; http://www.foo.bar/status?json +; http://www.foo.bar/status?html +; Note: The value must start with a leading slash (/). The value can be +; anything, but it may not be a good idea to use the .php extension or it +; may conflict with a real PHP file. +; Default Value: not set +;pm.status_path = /status + +; The ping URI to call the monitoring page of FPM. If this value is not set, no +; URI will be recognized as a ping page. This could be used to test from outside +; that FPM is alive and responding, or to +; - create a graph of FPM availability (rrd or such); +; - remove a server from a group if it is not responding (load balancing); +; - trigger alerts for the operating team (24/7). +; Note: The value must start with a leading slash (/). The value can be +; anything, but it may not be a good idea to use the .php extension or it +; may conflict with a real PHP file. +; Default Value: not set +;ping.path = /ping + +; This directive may be used to customize the response of a ping request. The +; response is formatted as text/plain with a 200 response code. +; Default Value: pong +;ping.response = pong + +; The timeout for serving a single request after which the worker process will +; be killed. This option should be used when the 'max_execution_time' ini option +; does not stop script execution for some reason. A value of '0' means 'off'. +; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) +; Default Value: 0 +;request_terminate_timeout = 0 + +; The timeout for serving a single request after which a PHP backtrace will be +; dumped to the 'slowlog' file. A value of '0s' means 'off'. +; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) +; Default Value: 0 +;request_slowlog_timeout = 0 + +; The log file for slow requests +; Default Value: not set +; Note: slowlog is mandatory if request_slowlog_timeout is set +;slowlog = /var/log/php-fpm-$pool.log.slow + +; Set open file descriptor rlimit. +; Default Value: system defined value +;rlimit_files = 1024 + +; Set max core size rlimit. +; Possible Values: 'unlimited' or an integer greater or equal to 0 +; Default Value: system defined value +;rlimit_core = 0 + +; Chroot to this directory at the start. This value must be defined as an +; absolute path. When this value is not set, chroot is not used. +; Note: you can prefix with '$prefix' to chroot to the pool prefix or one +; of its subdirectories. If the pool prefix is not set, the global prefix +; will be used instead. +; Note: chrooting is a great security feature and should be used whenever +; possible. However, all PHP paths will be relative to the chroot +; (error_log, sessions.save_path, ...). +; Default Value: not set +;chroot = + +; Chdir to this directory at the start. +; Note: relative path can be used. +; Default Value: current directory or / when chroot +;chdir = /var/www + +; Redirect worker stdout and stderr into main error log. If not set, stdout and +; stderr will be redirected to /dev/null according to FastCGI specs. +; Note: on highloaded environement, this can cause some delay in the page +; process time (several ms). +; Default Value: no +;catch_workers_output = yes + +; Pass environment variables like LD_LIBRARY_PATH. All $VARIABLEs are taken from +; the current environment. +; Default Value: clean env +;env[HOSTNAME] = $HOSTNAME +;env[PATH] = /usr/local/bin:/usr/bin:/bin +;env[TMP] = /tmp +;env[TMPDIR] = /tmp +;env[TEMP] = /tmp + +; Additional php.ini defines, specific to this pool of workers. These settings +; overwrite the values previously defined in the php.ini. The directives are the +; same as the PHP SAPI: +; php_value/php_flag - you can set classic ini defines which can +; be overwritten from PHP call 'ini_set'. +; php_admin_value/php_admin_flag - these directives won't be overwritten by +; PHP call 'ini_set' +; For php_*flag, valid values are on, off, 1, 0, true, false, yes or no. + +; Defining 'extension' will load the corresponding shared extension from +; extension_dir. Defining 'disable_functions' or 'disable_classes' will not +; overwrite previously defined php.ini values, but will append the new value +; instead. + +; Note: path INI options can be relative and will be expanded with the prefix +; (pool, global or /usr/lib/php5.3) + +; Default Value: nothing is defined by default except the values in php.ini and +; specified at startup with the -d argument +;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com +;php_flag[display_errors] = off +;php_admin_value[error_log] = /var/log/fpm-php.www.log +;php_admin_flag[log_errors] = on +;php_admin_value[memory_limit] = 32M diff --git a/dev-lang/php/files/php-fpm-r1.conf b/dev-lang/php/files/php-fpm-r1.conf new file mode 100644 index 0000000..0b0a7f8 --- /dev/null +++ b/dev-lang/php/files/php-fpm-r1.conf @@ -0,0 +1,311 @@ +;;;;;;;;;;;;;;;;;;;;; +; FPM Configuration ; +;;;;;;;;;;;;;;;;;;;;; + +; All relative paths in this configuration file are relative to PHP's install +; prefix (/usr/lib/php5.3). This prefix can be dynamicaly changed by using the +; '-p' argument from the command line. + +; Include one or more files. If glob(3) exists, it is used to include a bunch of +; files from a glob(3) pattern. This directive can be used everywhere in the +; file. +; Relative path can also be used. They will be prefixed by: +; - the global prefix if it's been set (-p arguement) +; - /usr/lib/php5.3 otherwise +;include=/etc/php/fpm-php5.3/fpm.d/*.conf + +;;;;;;;;;;;;;;;;;; +; Global Options ; +;;;;;;;;;;;;;;;;;; + +[global] +; Pid file +; Note: the default prefix is /var/lib +; Default Value: none +; Warning: pid file is overriden by the Gentoo init script. +; FPM will refuse to start if you uncomment this settingi and make use of the +; init script. +; pid = /var/run/php-fpm.pid + +; Error log file +; Note: the default prefix is /var/lib +; Default Value: log/php-fpm.log +error_log = /var/log/php-fpm.log + +; Log level +; Possible Values: alert, error, warning, notice, debug +; Default Value: notice +;log_level = notice + +; If this number of child processes exit with SIGSEGV or SIGBUS within the time +; interval set by emergency_restart_interval then FPM will restart. A value +; of '0' means 'Off'. +; Default Value: 0 +;emergency_restart_threshold = 0 + +; Interval of time used by emergency_restart_interval to determine when +; a graceful restart will be initiated. This can be useful to work around +; accidental corruptions in an accelerator's shared memory. +; Available Units: s(econds), m(inutes), h(ours), or d(ays) +; Default Unit: seconds +; Default Value: 0 +;emergency_restart_interval = 0 + +; Time limit for child processes to wait for a reaction on signals from master. +; Available units: s(econds), m(inutes), h(ours), or d(ays) +; Default Unit: seconds +; Default Value: 0 +;process_control_timeout = 0 + +; Send FPM to background. Set to 'no' to keep FPM in foreground for debugging. +; Default Value: yes +;daemonize = yes + +;;;;;;;;;;;;;;;;;;;; +; Pool Definitions ; +;;;;;;;;;;;;;;;;;;;; + +; Multiple pools of child processes may be started with different listening +; ports and different management options. The name of the pool will be +; used in logs and stats. There is no limitation on the number of pools which +; FPM can handle. Your system will tell you anyway :) + +; Start a new pool named 'www'. +; the variable $pool can we used in any directive and will be replaced by the +; pool name ('www' here) +[www] + +; Per pool prefix +; It only applies on the following directives: +; - 'slowlog' +; - 'listen' (unixsocket) +; - 'chroot' +; - 'chdir' +; - 'php_values' +; - 'php_admin_values' +; When not set, the global prefix (or /usr/lib/php5.3) applies instead. +; Note: This directive can also be relative to the global prefix. +; Default Value: none +;prefix = /path/to/pools/$pool + +; The address on which to accept FastCGI requests. +; Valid syntaxes are: +; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific address on +; a specific port; +; 'port' - to listen on a TCP socket to all addresses on a +; specific port; +; '/path/to/unix/socket' - to listen on a unix socket. +; Note: This value is mandatory. +listen = 127.0.0.1:9000 + +; Set listen(2) backlog. A value of '-1' means unlimited. +; Default Value: 128 (-1 on FreeBSD and OpenBSD) +;listen.backlog = -1 + +; List of ipv4 addresses of FastCGI clients which are allowed to connect. +; Equivalent to the FCGI_WEB_SERVER_ADDRS environment variable in the original +; PHP FCGI (5.2.2+). Makes sense only with a tcp listening socket. Each address +; must be separated by a comma. If this value is left blank, connections will be +; accepted from any ip address. +; Default Value: any +;listen.allowed_clients = 127.0.0.1 + +; Set permissions for unix socket, if one is used. In Linux, read/write +; permissions must be set in order to allow connections from a web server. Many +; BSD-derived systems allow connections regardless of permissions. +; Default Values: user and group are set as the running user +; mode is set to 0666 +;listen.owner = nobody +;listen.group = nobody +;listen.mode = 0666 + +; Unix user/group of processes +; Note: The user is mandatory. If the group is not set, the default user's group +; will be used. +user = nobody +group = nobody + +; Choose how the process manager will control the number of child processes. +; Possible Values: +; static - a fixed number (pm.max_children) of child processes; +; dynamic - the number of child processes are set dynamically based on the +; following directives: +; pm.max_children - the maximum number of children that can +; be alive at the same time. +; pm.start_servers - the number of children created on startup. +; pm.min_spare_servers - the minimum number of children in 'idle' +; state (waiting to process). If the number +; of 'idle' processes is less than this +; number then some children will be created. +; pm.max_spare_servers - the maximum number of children in 'idle' +; state (waiting to process). If the number +; of 'idle' processes is greater than this +; number then some children will be killed. +; Note: This value is mandatory. +pm = dynamic + +; The number of child processes to be created when pm is set to 'static' and the +; maximum number of child processes to be created when pm is set to 'dynamic'. +; This value sets the limit on the number of simultaneous requests that will be +; served. Equivalent to the ApacheMaxClients directive with mpm_prefork. +; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP +; CGI. +; Note: Used when pm is set to either 'static' or 'dynamic' +; Note: This value is mandatory. +pm.max_children = 50 + +; The number of child processes created on startup. +; Note: Used only when pm is set to 'dynamic' +; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 +;pm.start_servers = 20 + +; The desired minimum number of idle server processes. +; Note: Used only when pm is set to 'dynamic' +; Note: Mandatory when pm is set to 'dynamic' +pm.min_spare_servers = 5 + +; The desired maximum number of idle server processes. +; Note: Used only when pm is set to 'dynamic' +; Note: Mandatory when pm is set to 'dynamic' +pm.max_spare_servers = 35 + +; The number of requests each child process should execute before respawning. +; This can be useful to work around memory leaks in 3rd party libraries. For +; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. +; Default Value: 0 +;pm.max_requests = 500 + +; The URI to view the FPM status page. If this value is not set, no URI will be +; recognized as a status page. By default, the status page shows the following +; information: +; accepted conn - the number of request accepted by the pool; +; pool - the name of the pool; +; process manager - static or dynamic; +; idle processes - the number of idle processes; +; active processes - the number of active processes; +; total processes - the number of idle + active processes. +; max children reached - number of times, the process limit has been reached, +; when pm tries to start more children (works only for +; pm 'dynamic') +; The values of 'idle processes', 'active processes' and 'total processes' are +; updated each second. The value of 'accepted conn' is updated in real time. +; Example output: +; accepted conn: 12073 +; pool: www +; process manager: static +; idle processes: 35 +; active processes: 65 +; total processes: 100 +; max children reached: 1 +; By default the status page output is formatted as text/plain. Passing either +; 'html' or 'json' as a query string will return the corresponding output +; syntax. Example: +; http://www.foo.bar/status +; http://www.foo.bar/status?json +; http://www.foo.bar/status?html +; Note: The value must start with a leading slash (/). The value can be +; anything, but it may not be a good idea to use the .php extension or it +; may conflict with a real PHP file. +; Default Value: not set +;pm.status_path = /status + +; The ping URI to call the monitoring page of FPM. If this value is not set, no +; URI will be recognized as a ping page. This could be used to test from outside +; that FPM is alive and responding, or to +; - create a graph of FPM availability (rrd or such); +; - remove a server from a group if it is not responding (load balancing); +; - trigger alerts for the operating team (24/7). +; Note: The value must start with a leading slash (/). The value can be +; anything, but it may not be a good idea to use the .php extension or it +; may conflict with a real PHP file. +; Default Value: not set +;ping.path = /ping + +; This directive may be used to customize the response of a ping request. The +; response is formatted as text/plain with a 200 response code. +; Default Value: pong +;ping.response = pong + +; The timeout for serving a single request after which the worker process will +; be killed. This option should be used when the 'max_execution_time' ini option +; does not stop script execution for some reason. A value of '0' means 'off'. +; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) +; Default Value: 0 +;request_terminate_timeout = 0 + +; The timeout for serving a single request after which a PHP backtrace will be +; dumped to the 'slowlog' file. A value of '0s' means 'off'. +; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) +; Default Value: 0 +;request_slowlog_timeout = 0 + +; The log file for slow requests +; Default Value: not set +; Note: slowlog is mandatory if request_slowlog_timeout is set +;slowlog = /var/log/php-fpm-$pool.log.slow + +; Set open file descriptor rlimit. +; Default Value: system defined value +;rlimit_files = 1024 + +; Set max core size rlimit. +; Possible Values: 'unlimited' or an integer greater or equal to 0 +; Default Value: system defined value +;rlimit_core = 0 + +; Chroot to this directory at the start. This value must be defined as an +; absolute path. When this value is not set, chroot is not used. +; Note: you can prefix with '$prefix' to chroot to the pool prefix or one +; of its subdirectories. If the pool prefix is not set, the global prefix +; will be used instead. +; Note: chrooting is a great security feature and should be used whenever +; possible. However, all PHP paths will be relative to the chroot +; (error_log, sessions.save_path, ...). +; Default Value: not set +;chroot = + +; Chdir to this directory at the start. +; Note: relative path can be used. +; Default Value: current directory or / when chroot +;chdir = /var/www + +; Redirect worker stdout and stderr into main error log. If not set, stdout and +; stderr will be redirected to /dev/null according to FastCGI specs. +; Note: on highloaded environement, this can cause some delay in the page +; process time (several ms). +; Default Value: no +;catch_workers_output = yes + +; Pass environment variables like LD_LIBRARY_PATH. All $VARIABLEs are taken from +; the current environment. +; Default Value: clean env +;env[HOSTNAME] = $HOSTNAME +;env[PATH] = /usr/local/bin:/usr/bin:/bin +;env[TMP] = /tmp +;env[TMPDIR] = /tmp +;env[TEMP] = /tmp + +; Additional php.ini defines, specific to this pool of workers. These settings +; overwrite the values previously defined in the php.ini. The directives are the +; same as the PHP SAPI: +; php_value/php_flag - you can set classic ini defines which can +; be overwritten from PHP call 'ini_set'. +; php_admin_value/php_admin_flag - these directives won't be overwritten by +; PHP call 'ini_set' +; For php_*flag, valid values are on, off, 1, 0, true, false, yes or no. + +; Defining 'extension' will load the corresponding shared extension from +; extension_dir. Defining 'disable_functions' or 'disable_classes' will not +; overwrite previously defined php.ini values, but will append the new value +; instead. + +; Note: path INI options can be relative and will be expanded with the prefix +; (pool, global or /usr/lib/php5.3) + +; Default Value: nothing is defined by default except the values in php.ini and +; specified at startup with the -d argument +;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com +;php_flag[display_errors] = off +;php_admin_value[error_log] = /var/log/fpm-php.www.log +;php_admin_flag[log_errors] = on +;php_admin_value[memory_limit] = 32M diff --git a/dev-lang/php/files/php-fpm-r1.init b/dev-lang/php/files/php-fpm-r1.init new file mode 100755 index 0000000..508fbe0 --- /dev/null +++ b/dev-lang/php/files/php-fpm-r1.init @@ -0,0 +1,33 @@ +#!/sbin/runscript + +PHPSLOT=${SVCNAME#php-fpm-} + +if [[ $PHPSLOT == "php-fpm" ]]; then + PHPSLOT=$(eselect php show fpm) +else + PHPSLOT=php${PHPSLOT} +fi + + +PHP_FPM_CONF="/etc/php/fpm-${PHPSLOT}/php-fpm.conf" + + +opts="depend start stop reload" + +depend() { + need net + use apache2 lighttpd nginx +} + +start() { + ebegin "Starting PHP FastCGI server" + start-stop-daemon --start --exec /usr/lib/${PHPSLOT}/bin/php-fpm -- -y "${PHP_FPM_CONF}" + eend $? +} + +stop() { + ebegin "Stopping PHP FastCGI server" + start-stop-daemon --stop --exec /usr/lib/${PHPSLOT}/bin/php-fpm + eend $? +} + diff --git a/dev-lang/php/files/php-fpm-r3.init b/dev-lang/php/files/php-fpm-r3.init new file mode 100755 index 0000000..a417d50 --- /dev/null +++ b/dev-lang/php/files/php-fpm-r3.init @@ -0,0 +1,47 @@ +#!/sbin/runscript + +PHPSLOT=${SVCNAME#php-fpm-} + +if [[ $PHPSLOT == "php-fpm" ]]; then + PHPSLOT=$(eselect php show fpm) +else + PHPSLOT=php${PHPSLOT} +fi + + +PHP_FPM_CONF="/etc/php/fpm-${PHPSLOT}/php-fpm.conf" + +PHP_FPM_PID="/var/run/php-fpm.pid" + +opts="depend start stop reload" + +depend() { + need net + use apache2 lighttpd nginx +} + +start() { + ebegin "Starting PHP FastCGI Process Manager" + start-stop-daemon --start --pidfile ${PHP_FPM_PID} --exec /usr/lib/${PHPSLOT}/bin/php-fpm -- -y "${PHP_FPM_CONF}" + local i=0 + local timeout=5 + while [[ ! -f ${PHP_FPM_PID} ]] && [[ $i -le $timeout ]]; do + sleep 1 + i=$(($i + 1)) + done + + [[ $timeout -gt $i ]] + eend $? +} + +stop() { + ebegin "Stopping PHP FastCGI Process Manager" + start-stop-daemon --signal QUIT --stop --exec /usr/lib/${PHPSLOT}/bin/php-fpm --pidfile ${PHP_FPM_PID} + eend $? +} + +reload() { + ebegin "Reloading PHP FastCGI Process Manager" + [[ -f ${PHP_FPM_PID} ]] && kill -USR2 $(cat ${PHP_FPM_PID}) + eend $? +} diff --git a/dev-lang/php/files/php-fpm-r4.init b/dev-lang/php/files/php-fpm-r4.init new file mode 100755 index 0000000..249df0f --- /dev/null +++ b/dev-lang/php/files/php-fpm-r4.init @@ -0,0 +1,41 @@ +#!/sbin/runscript + +PHPSLOT="php5.3" + +PHP_FPM_CONF="/etc/php/fpm-${PHPSLOT}/php-fpm.conf" + +PHP_FPM_PID="/var/run/php-fpm.pid" + +opts="depend start stop reload" + +depend() { + need net + use apache2 lighttpd nginx +} + +start() { + ebegin "Starting PHP FastCGI Process Manager" + start-stop-daemon --start --pidfile ${PHP_FPM_PID} --exec \ + /usr/bin/php-fpm -- -y "${PHP_FPM_CONF}" -g "${PHP_FPM_PID}" + local i=0 + local timeout=5 + while [ ! -f ${PHP_FPM_PID} ] && [ $i -le $timeout ]; do + sleep 1 + i=$(($i + 1)) + done + + [ $timeout -gt $i ] + eend $? +} + +stop() { + ebegin "Stopping PHP FastCGI Process Manager" + start-stop-daemon --signal QUIT --stop --exec /usr/bin/php-fpm --pidfile ${PHP_FPM_PID} + eend $? +} + +reload() { + ebegin "Reloading PHP FastCGI Process Manager" + [ -f ${PHP_FPM_PID} ] && kill -USR2 $(cat ${PHP_FPM_PID}) + eend $? +} diff --git a/dev-lang/php/files/php-fpm.conf b/dev-lang/php/files/php-fpm.conf new file mode 100644 index 0000000..ddef717 --- /dev/null +++ b/dev-lang/php/files/php-fpm.conf @@ -0,0 +1,310 @@ +;;;;;;;;;;;;;;;;;;;;; +; FPM Configuration ; +;;;;;;;;;;;;;;;;;;;;; + +; All relative paths in this configuration file are relative to PHP's install +; prefix (/usr/lib/php5.3). This prefix can be dynamicaly changed by using the +; '-p' argument from the command line. + +; Include one or more files. If glob(3) exists, it is used to include a bunch of +; files from a glob(3) pattern. This directive can be used everywhere in the +; file. +; Relative path can also be used. They will be prefixed by: +; - the global prefix if it's been set (-p arguement) +; - /usr/lib/php5.3 otherwise +;include=/etc/php/fpm-php5.3/fpm.d/*.conf + +;;;;;;;;;;;;;;;;;; +; Global Options ; +;;;;;;;;;;;;;;;;;; + +[global] +; Pid file +; Note: the default prefix is /var/lib +; Default Value: none +; Note: The Gentoo init script expects the pid path +; to be set to /var/run/php-fpm.pid +pid = /var/run/php-fpm.pid + +; Error log file +; Note: the default prefix is /var/lib +; Default Value: log/php-fpm.log +error_log = /var/log/php-fpm.log + +; Log level +; Possible Values: alert, error, warning, notice, debug +; Default Value: notice +;log_level = notice + +; If this number of child processes exit with SIGSEGV or SIGBUS within the time +; interval set by emergency_restart_interval then FPM will restart. A value +; of '0' means 'Off'. +; Default Value: 0 +;emergency_restart_threshold = 0 + +; Interval of time used by emergency_restart_interval to determine when +; a graceful restart will be initiated. This can be useful to work around +; accidental corruptions in an accelerator's shared memory. +; Available Units: s(econds), m(inutes), h(ours), or d(ays) +; Default Unit: seconds +; Default Value: 0 +;emergency_restart_interval = 0 + +; Time limit for child processes to wait for a reaction on signals from master. +; Available units: s(econds), m(inutes), h(ours), or d(ays) +; Default Unit: seconds +; Default Value: 0 +;process_control_timeout = 0 + +; Send FPM to background. Set to 'no' to keep FPM in foreground for debugging. +; Default Value: yes +;daemonize = yes + +;;;;;;;;;;;;;;;;;;;; +; Pool Definitions ; +;;;;;;;;;;;;;;;;;;;; + +; Multiple pools of child processes may be started with different listening +; ports and different management options. The name of the pool will be +; used in logs and stats. There is no limitation on the number of pools which +; FPM can handle. Your system will tell you anyway :) + +; Start a new pool named 'www'. +; the variable $pool can we used in any directive and will be replaced by the +; pool name ('www' here) +[www] + +; Per pool prefix +; It only applies on the following directives: +; - 'slowlog' +; - 'listen' (unixsocket) +; - 'chroot' +; - 'chdir' +; - 'php_values' +; - 'php_admin_values' +; When not set, the global prefix (or /usr/lib/php5.3) applies instead. +; Note: This directive can also be relative to the global prefix. +; Default Value: none +;prefix = /path/to/pools/$pool + +; The address on which to accept FastCGI requests. +; Valid syntaxes are: +; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific address on +; a specific port; +; 'port' - to listen on a TCP socket to all addresses on a +; specific port; +; '/path/to/unix/socket' - to listen on a unix socket. +; Note: This value is mandatory. +listen = 127.0.0.1:9000 + +; Set listen(2) backlog. A value of '-1' means unlimited. +; Default Value: 128 (-1 on FreeBSD and OpenBSD) +;listen.backlog = -1 + +; List of ipv4 addresses of FastCGI clients which are allowed to connect. +; Equivalent to the FCGI_WEB_SERVER_ADDRS environment variable in the original +; PHP FCGI (5.2.2+). Makes sense only with a tcp listening socket. Each address +; must be separated by a comma. If this value is left blank, connections will be +; accepted from any ip address. +; Default Value: any +;listen.allowed_clients = 127.0.0.1 + +; Set permissions for unix socket, if one is used. In Linux, read/write +; permissions must be set in order to allow connections from a web server. Many +; BSD-derived systems allow connections regardless of permissions. +; Default Values: user and group are set as the running user +; mode is set to 0666 +;listen.owner = nobody +;listen.group = nobody +;listen.mode = 0666 + +; Unix user/group of processes +; Note: The user is mandatory. If the group is not set, the default user's group +; will be used. +user = nobody +group = nobody + +; Choose how the process manager will control the number of child processes. +; Possible Values: +; static - a fixed number (pm.max_children) of child processes; +; dynamic - the number of child processes are set dynamically based on the +; following directives: +; pm.max_children - the maximum number of children that can +; be alive at the same time. +; pm.start_servers - the number of children created on startup. +; pm.min_spare_servers - the minimum number of children in 'idle' +; state (waiting to process). If the number +; of 'idle' processes is less than this +; number then some children will be created. +; pm.max_spare_servers - the maximum number of children in 'idle' +; state (waiting to process). If the number +; of 'idle' processes is greater than this +; number then some children will be killed. +; Note: This value is mandatory. +pm = dynamic + +; The number of child processes to be created when pm is set to 'static' and the +; maximum number of child processes to be created when pm is set to 'dynamic'. +; This value sets the limit on the number of simultaneous requests that will be +; served. Equivalent to the ApacheMaxClients directive with mpm_prefork. +; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP +; CGI. +; Note: Used when pm is set to either 'static' or 'dynamic' +; Note: This value is mandatory. +pm.max_children = 50 + +; The number of child processes created on startup. +; Note: Used only when pm is set to 'dynamic' +; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 +;pm.start_servers = 20 + +; The desired minimum number of idle server processes. +; Note: Used only when pm is set to 'dynamic' +; Note: Mandatory when pm is set to 'dynamic' +pm.min_spare_servers = 5 + +; The desired maximum number of idle server processes. +; Note: Used only when pm is set to 'dynamic' +; Note: Mandatory when pm is set to 'dynamic' +pm.max_spare_servers = 35 + +; The number of requests each child process should execute before respawning. +; This can be useful to work around memory leaks in 3rd party libraries. For +; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. +; Default Value: 0 +;pm.max_requests = 500 + +; The URI to view the FPM status page. If this value is not set, no URI will be +; recognized as a status page. By default, the status page shows the following +; information: +; accepted conn - the number of request accepted by the pool; +; pool - the name of the pool; +; process manager - static or dynamic; +; idle processes - the number of idle processes; +; active processes - the number of active processes; +; total processes - the number of idle + active processes. +; max children reached - number of times, the process limit has been reached, +; when pm tries to start more children (works only for +; pm 'dynamic') +; The values of 'idle processes', 'active processes' and 'total processes' are +; updated each second. The value of 'accepted conn' is updated in real time. +; Example output: +; accepted conn: 12073 +; pool: www +; process manager: static +; idle processes: 35 +; active processes: 65 +; total processes: 100 +; max children reached: 1 +; By default the status page output is formatted as text/plain. Passing either +; 'html' or 'json' as a query string will return the corresponding output +; syntax. Example: +; http://www.foo.bar/status +; http://www.foo.bar/status?json +; http://www.foo.bar/status?html +; Note: The value must start with a leading slash (/). The value can be +; anything, but it may not be a good idea to use the .php extension or it +; may conflict with a real PHP file. +; Default Value: not set +;pm.status_path = /status + +; The ping URI to call the monitoring page of FPM. If this value is not set, no +; URI will be recognized as a ping page. This could be used to test from outside +; that FPM is alive and responding, or to +; - create a graph of FPM availability (rrd or such); +; - remove a server from a group if it is not responding (load balancing); +; - trigger alerts for the operating team (24/7). +; Note: The value must start with a leading slash (/). The value can be +; anything, but it may not be a good idea to use the .php extension or it +; may conflict with a real PHP file. +; Default Value: not set +;ping.path = /ping + +; This directive may be used to customize the response of a ping request. The +; response is formatted as text/plain with a 200 response code. +; Default Value: pong +;ping.response = pong + +; The timeout for serving a single request after which the worker process will +; be killed. This option should be used when the 'max_execution_time' ini option +; does not stop script execution for some reason. A value of '0' means 'off'. +; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) +; Default Value: 0 +;request_terminate_timeout = 0 + +; The timeout for serving a single request after which a PHP backtrace will be +; dumped to the 'slowlog' file. A value of '0s' means 'off'. +; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) +; Default Value: 0 +;request_slowlog_timeout = 0 + +; The log file for slow requests +; Default Value: not set +; Note: slowlog is mandatory if request_slowlog_timeout is set +;slowlog = /var/log/php-fpm-$pool.log.slow + +; Set open file descriptor rlimit. +; Default Value: system defined value +;rlimit_files = 1024 + +; Set max core size rlimit. +; Possible Values: 'unlimited' or an integer greater or equal to 0 +; Default Value: system defined value +;rlimit_core = 0 + +; Chroot to this directory at the start. This value must be defined as an +; absolute path. When this value is not set, chroot is not used. +; Note: you can prefix with '$prefix' to chroot to the pool prefix or one +; of its subdirectories. If the pool prefix is not set, the global prefix +; will be used instead. +; Note: chrooting is a great security feature and should be used whenever +; possible. However, all PHP paths will be relative to the chroot +; (error_log, sessions.save_path, ...). +; Default Value: not set +;chroot = + +; Chdir to this directory at the start. +; Note: relative path can be used. +; Default Value: current directory or / when chroot +;chdir = /var/www + +; Redirect worker stdout and stderr into main error log. If not set, stdout and +; stderr will be redirected to /dev/null according to FastCGI specs. +; Note: on highloaded environement, this can cause some delay in the page +; process time (several ms). +; Default Value: no +;catch_workers_output = yes + +; Pass environment variables like LD_LIBRARY_PATH. All $VARIABLEs are taken from +; the current environment. +; Default Value: clean env +;env[HOSTNAME] = $HOSTNAME +;env[PATH] = /usr/local/bin:/usr/bin:/bin +;env[TMP] = /tmp +;env[TMPDIR] = /tmp +;env[TEMP] = /tmp + +; Additional php.ini defines, specific to this pool of workers. These settings +; overwrite the values previously defined in the php.ini. The directives are the +; same as the PHP SAPI: +; php_value/php_flag - you can set classic ini defines which can +; be overwritten from PHP call 'ini_set'. +; php_admin_value/php_admin_flag - these directives won't be overwritten by +; PHP call 'ini_set' +; For php_*flag, valid values are on, off, 1, 0, true, false, yes or no. + +; Defining 'extension' will load the corresponding shared extension from +; extension_dir. Defining 'disable_functions' or 'disable_classes' will not +; overwrite previously defined php.ini values, but will append the new value +; instead. + +; Note: path INI options can be relative and will be expanded with the prefix +; (pool, global or /usr/lib/php5.3) + +; Default Value: nothing is defined by default except the values in php.ini and +; specified at startup with the -d argument +;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com +;php_flag[display_errors] = off +;php_admin_value[error_log] = /var/log/fpm-php.www.log +;php_admin_flag[log_errors] = on +;php_admin_value[memory_limit] = 32M diff --git a/dev-lang/php/files/php-fpm.init b/dev-lang/php/files/php-fpm.init new file mode 100755 index 0000000..adcfd32 --- /dev/null +++ b/dev-lang/php/files/php-fpm.init @@ -0,0 +1,22 @@ +#!/sbin/runscript + +PHP_FPM_CONF="/etc/php/fpm-php5/php-fpm.conf" + +opts="depend start stop reload" + +depend() { + need net + use apache2 lighttpd nginx +} + +start() { + ebegin "Starting PHP FastCGI server" + start-stop-daemon --start --exec /usr/bin/php-fpm -- -y "${PHP_FPM_CONF}" + eend $? +} + +stop() { + ebegin "Stopping PHP FastCGI server" + start-stop-daemon --stop --name php-fpm + eend $? +} diff --git a/dev-lang/php/files/php4-ldvs b/dev-lang/php/files/php4-ldvs new file mode 100644 index 0000000..01b4eeb --- /dev/null +++ b/dev-lang/php/files/php4-ldvs @@ -0,0 +1 @@ +PHP_4 { global: *; }; diff --git a/dev-lang/php/files/php5-ldvs b/dev-lang/php/files/php5-ldvs new file mode 100644 index 0000000..783b0f6 --- /dev/null +++ b/dev-lang/php/files/php5-ldvs @@ -0,0 +1 @@ +PHP_5 { global: *; }; |