Compare commits

...
1 Commits
6 changed files with 36 additions and 310 deletions

No files matched your search

+1 -1
View File
@@ -1,7 +1,7 @@
PHP 4.0 NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? 2000, Version 4.0.1
25 Jun 2000, Version 4.0.1
- Fixed problems with POST requests under the NSAPI module (Roberto Biancardi)
- Added spliti() function. (Thies)
- Fixed serializer behaviour with regards to serializing objects which class
-103
View File
@@ -1,103 +0,0 @@
#ifndef _INCLUDED_IMAP_H
#define _INCLUDED_IMAP_H
#if COMPILE_DL
#undef HAVE_IMAP
#define HAVE_IMAP 1
#endif
#if HAVE_IMAP
#ifndef PHP_WIN32
#include "build-defs.h"
#endif
/* Functions accessable to PHP */
extern zend_module_entry imap_module_entry;
#define imap_module_ptr &imap_module_entry
extern PHP_MINIT_FUNCTION(imap);
extern PHP_RINIT_FUNCTION(imap);
extern PHP_RSHUTDOWN_FUNCTION(imap);
PHP_MINFO_FUNCTION(imap);
PHP_FUNCTION(imap_open);
PHP_FUNCTION(imap_popen);
PHP_FUNCTION(imap_reopen);
PHP_FUNCTION(imap_num_msg);
PHP_FUNCTION(imap_num_recent);
PHP_FUNCTION(imap_headers);
PHP_FUNCTION(imap_headerinfo);
PHP_FUNCTION(imap_rfc822_parse_headers);
PHP_FUNCTION(imap_body);
PHP_FUNCTION(imap_fetchstructure);
PHP_FUNCTION(imap_fetchbody);
PHP_FUNCTION(imap_expunge);
PHP_FUNCTION(imap_delete);
PHP_FUNCTION(imap_undelete);
PHP_FUNCTION(imap_check);
PHP_FUNCTION(imap_close);
PHP_FUNCTION(imap_mail_copy);
PHP_FUNCTION(imap_mail_move);
PHP_FUNCTION(imap_createmailbox);
PHP_FUNCTION(imap_renamemailbox);
PHP_FUNCTION(imap_deletemailbox);
PHP_FUNCTION(imap_listmailbox);
PHP_FUNCTION(imap_scanmailbox);
PHP_FUNCTION(imap_subscribe);
PHP_FUNCTION(imap_unsubscribe);
PHP_FUNCTION(imap_append);
PHP_FUNCTION(imap_ping);
PHP_FUNCTION(imap_base64);
PHP_FUNCTION(imap_qprint);
PHP_FUNCTION(imap_8bit);
PHP_FUNCTION(imap_binary);
PHP_FUNCTION(imap_mailboxmsginfo);
PHP_FUNCTION(imap_rfc822_write_address);
PHP_FUNCTION(imap_rfc822_parse_adrlist);
PHP_FUNCTION(imap_setflag_full);
PHP_FUNCTION(imap_clearflag_full);
PHP_FUNCTION(imap_sort);
PHP_FUNCTION(imap_fetchheader);
PHP_FUNCTION(imap_fetchtext);
PHP_FUNCTION(imap_uid);
PHP_FUNCTION(imap_msgno);
PHP_FUNCTION(imap_list);
PHP_FUNCTION(imap_list_full);
PHP_FUNCTION(imap_listscan);
PHP_FUNCTION(imap_lsub);
PHP_FUNCTION(imap_lsub_full);
PHP_FUNCTION(imap_create);
PHP_FUNCTION(imap_rename);
PHP_FUNCTION(imap_status);
PHP_FUNCTION(imap_bodystruct);
PHP_FUNCTION(imap_fetch_overview);
PHP_FUNCTION(imap_mail_compose);
PHP_FUNCTION(imap_alerts);
PHP_FUNCTION(imap_errors);
PHP_FUNCTION(imap_last_error);
PHP_FUNCTION(imap_mail);
PHP_FUNCTION(imap_search);
PHP_FUNCTION(imap_utf8);
PHP_FUNCTION(imap_utf7_decode);
PHP_FUNCTION(imap_utf7_encode);
PHP_FUNCTION(imap_mime_header_decode);
#else
#define imap_module_ptr NULL
#endif /* HAVE_IMAP */
#endif
#define phpext_imap_ptr imap_module_ptr
-61
View File
@@ -1,61 +0,0 @@
dnl $Id$
dnl config.m4 for extension pcre
dnl By default we'll compile and link against the bundled PCRE library
dnl if DIR is supplied, we'll use that for linking
PHP_ARG_WITH(pcre-regex,whether to include PCRE support,
[ --without-pcre-regex Do not include Perl Compatible Regular Expressions
support. Use --with-pcre-regex=DIR to specify DIR
where PCRE's include and library files are located,
if not using bundled library.],yes)
if test "$PHP_PCRE_REGEX" != "no"; then
PHP_EXTENSION(pcre, $ext_shared)
if test "$PHP_PCRE_REGEX" = "yes"; then
PCRE_LIBADD=pcrelib/libpcre.la
PCRE_SHARED_LIBADD=pcrelib/libpcre.la
PCRE_SUBDIRS=pcrelib
PHP_SUBST(PCRE_LIBADD)
PHP_SUBST(PCRE_SUBDIRS)
AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ])
PHP_FAST_OUTPUT($ext_builddir/pcrelib/Makefile)
LIB_BUILD($ext_builddir/pcrelib,$ext_shared,yes)
else
test -f $PHP_PCRE_REGEX/pcre.h && PCRE_INCDIR=$PHP_PCRE_REGEX
test -f $PHP_PCRE_REGEX/include/pcre.h && PCRE_INCDIR=$PHP_PCRE_REGEX/include
if test -z "$PCRE_INCDIR"; then
AC_MSG_RESULT(Could not find pcre.h in $PHP_PCRE_REGEX)
fi
changequote({,})
pcre_major=`grep PCRE_MAJOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
pcre_minor=`grep PCRE_MINOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
changequote([,])
pcre_minor_length=`echo "$pcre_minor" | wc -c | sed -e 's/[^0-9]//g'`
if test "$pcre_minor_length" -eq 2 ; then
pcre_minor="$pcre_minor"0
fi
pcre_version=$pcre_major$pcre_minor
if test "$pcre_version" -lt 208; then
AC_MSG_ERROR(The PCRE extension requires PCRE library version >= 2.08)
fi
test -f $PHP_PCRE_REGEX/libpcre.a && PCRE_LIBDIR="$PHP_PCRE_REGEX"
test -f $PHP_PCRE_REGEX/lib/libpcre.a && PCRE_LIBDIR="$PHP_PCRE_REGEX/lib"
if test -z "$PCRE_LIBDIR" ; then
AC_MSG_ERROR(Could not find libpcre.a in $PHP_PCRE_REGEX)
fi
AC_ADD_LIBRARY_WITH_PATH(pcre, $PCRE_LIBDIR, PCRE_SHARED_LIBADD)
AC_ADD_INCLUDE($PCRE_INCDIR)
AC_DEFINE(HAVE_PCRE, 1, [ ])
fi
fi
PHP_SUBST(PCRE_SHARED_LIBADD)
AC_CHECK_FUNC(memmove, [], [AC_DEFINE(USE_BCOPY, 1, [ ])])
+8 -8
View File
@@ -27,14 +27,14 @@
# $Id$
#
old_IFS="$IFS"
IFS=.
eval set `bison -V|sed "s/GNU Bison version //"`
if test "$1" = "1" && test "28" -gt "$2"; then
echo "Please use Bison 1.28 or higher"
exit 10
fi
IFS="$old_IFS"
#old_IFS="$IFS"
#IFS=.
#eval set `bison -V|sed "s/GNU Bison version //"`
#if test "$1" = "1" && test "28" -gt "$2"; then
# echo "Please use Bison 1.28 or higher"
# exit 10
#fi
#IFS="$old_IFS"
PHPROOT=:pserver:cvsread@cvs.php.net:/repository
ZENDROOT=:pserver:cvsread@cvs.zend.com:/repository
-113
View File
@@ -1,113 +0,0 @@
#include "php.h"
#ifndef HAVE_STRTOK_R
/*
* Copyright (c) 1998 Softweyr LLC. All rights reserved.
*
* strtok_r, from Berkeley strtok
* Oct 13, 1998 by Wes Peters <wes@softweyr.com>
*
* Copyright (c) 1988, 1993
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notices, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notices, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
*
* This product includes software developed by Softweyr LLC, the
* University of California, Berkeley, and its contributors.
*
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY SOFTWEYR LLC, THE REGENTS AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SOFTWEYR LLC, THE
* REGENTS, OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include <stddef.h>
#include <string.h>
char *
strtok_r(char *s, const char *delim, char **last)
{
char *spanp;
int c, sc;
char *tok;
if (s == NULL && (s = *last) == NULL)
{
return NULL;
}
/*
* Skip (span) leading delimiters (s += strspn(s, delim), sort of).
*/
cont:
c = *s++;
for (spanp = (char *)delim; (sc = *spanp++) != 0; )
{
if (c == sc)
{
goto cont;
}
}
if (c == 0) /* no non-delimiter characters */
{
*last = NULL;
return NULL;
}
tok = s - 1;
/*
* Scan token (scan for delimiters: s += strcspn(s, delim), sort of).
* Note that delim must have one NUL; we stop if we see that, too.
*/
for (;;)
{
c = *s++;
spanp = (char *)delim;
do
{
if ((sc = *spanp++) == c)
{
if (c == 0)
{
s = NULL;
}
else
{
char *w = s - 1;
*w = '\0';
}
*last = s;
return tok;
}
}
while (sc != 0);
}
/* NOTREACHED */
}
#endif
+27 -24
View File
@@ -6,25 +6,27 @@ Note
----
PHP 4.0 for Windows comes in two flavours - a CGI executable (php.exe), and an
ISAPI module (php4ts.dll). The latter is new to PHP 4.0, and provides significantly
improved performance and some new functionality. However, please note that the
ISAPI module is *NOT* yet considered to be in production quality. The reason for
this is that the PHP ISAPI module uses the thread-safe version of the PHP code, which
is completely new to PHP 4.0, and has not yet been tested and pounded enough to be
considered completely stable, and there are actually a few known bugs. On the other
hand, some people have reported very good results with the ISAPI module, even though
we're not aware of anyone actually running it on a production site. In short - your
mileage may vary; If you need absolute stability, trade the performance of the ISAPI
module with the stability of the CGI executable.
ISAPI module (php4isapi.dll). The latter is new to PHP 4.0, and provides
significantly improved performance and some new functionality. However, please
note that the ISAPI module is *NOT* yet considered to be production quality.
The reason for this is that the PHP ISAPI module uses the thread-safe version of
the PHP code, which is completely new to PHP 4.0, and has not yet been tested
and pounded enough to be considered completely stable, and there are actually a
few known bugs. On the other hand, some people have reported very good results
with the ISAPI module, even though we're not aware of anyone actually running it
on a production site. In short - your mileage may vary; If you need absolute
stability, trade the performance of the ISAPI module with the stability of the
CGI executable.
Requirements
------------
- Windows 95 or later, Windows NT 4.0 or later
- ISAPI 4.0 compliant Web server required for ISAPI module (tested on IIS 4.0, PWS 4.0
IIS 5.0). IIS 3.0 is *NOT* supported; You should download and install the Windows
NT 4.0 Option Pack with IIS 4.0 if you want native PHP support.
- ISAPI 4.0 compliant Web server required for ISAPI module (tested on IIS 4.0,
PWS 4.0 IIS 5.0). IIS 3.0 is *NOT* supported; You should download and
install the Windows NT 4.0 Option Pack with IIS 4.0 if you want native PHP
support.
- Windows 95 requires the DCOM update, freely available from:
http://download.microsoft.com/msdownload/dcom/95/x86/en/dcom95.exe
@@ -37,10 +39,10 @@ PHP in its CGI mode, php.exe is no longer a standalone executable, and relies
on external DLLs for execution. For this reason, if you install php.exe as
a handler for your web server, you must make sure that the DLLs in the
distribution exist in a directory that is in the Windows PATH. The easiest way
to do it is to copy these DLLs to your SYSTEM (Windows 9x) or SYSTEM32 (Windows NT)
directory, which is under your Windows directory.
The DLLs that need to be copied are MSVCRT.DLL (it may already exist in there) and
PHP4TS.DLL.
to do it is to copy these DLLs to your SYSTEM (Windows 9x) or SYSTEM32
(Windows NT) directory, which is under your Windows directory.
The DLLs that need to be copied are MSVCRT.DLL (it may already exist in there)
and PHP4TS.DLL.
Installation Notes for IIS 4.0 and 5.0
--------------------------------------
@@ -57,13 +59,14 @@ Installation Notes for IIS 4.0 and 5.0
- Under 'ISAPI Filters', add a new ISAPI filter. Use 'PHP' as the filter name,
and supply a path to the php4isapi.dll that is included in the distribution.
- Under 'Home Directory', click on the 'Configuration' button. Add a new entry
to the Application Mappings; Use the path the php4isapi.dll as the Executable,
supply .php as the extension, leave 'Method exclusions', blank, and check
the Script engine checkbox.
to the Application Mappings; Use the path the php4isapi.dll as the
Executable, supply .php as the extension, leave 'Method exclusions', blank,
and check the Script engine checkbox.
- Stop IIS completely (you would have to stop the IIS Administration service for
that - stopping it through the Management Console isn't good enough; You can
do it by typing 'net stop iisadmin' on a command prompt).
- Start IIS again (you can do it by typing 'net start w3svc' on a command prompt).
- Start IIS again (you can do it by typing 'net start w3svc' on a command
prompt).
- Put a .php file under your Web server's document root and check if it works!
@@ -78,8 +81,8 @@ Installation Notes for Microsoft PWS 4.0
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w3svc\parameters\Script Map]
".php"="C:\\Program Files\\PHP\\php4isapi.dll"
- In the PWS Manager, right click on a given directory you want to add PHP support
to, and select Properties. Check the 'Execute' checkbox, and confirm.
- In the PWS Manager, right click on a given directory you want to add PHP
support to, and select Properties. Check the 'Execute' checkbox, and confirm.
At this point, PWS should have built-in PHP support.
@@ -96,4 +99,4 @@ functions and protocols.
Good luck,
Zeev <zeev@zend.com>, Andi <andi@zend.com> [June 25, 2000]
Zeev <zeev@zend.com>, Andi <andi@zend.com> [June 25, 2000]