Commit Graph

38 Commits

Author SHA1 Message Date
Zeev Suraski
972631be71 - Added flush() support to SAPI
- Got rid of the old flush() implemenetation in favour of the new one
- Added implicit_flush() support to the output buffering layer.
@- Added implicit_flush() to control whether flush() should be called
@  implicitly after any output (Zeev)
2000-01-13 17:37:25 +00:00
Sascha Schumann
304d60c8f3 Move reentrancy initialisation/destruction into SAPI.
These calls only do something, if reentrancy emulation is required.
2000-01-05 19:25:19 +00:00
Sascha Schumann
43ae2bffbb Happy Y2K patch! Happy new year (or the new millennium, depending on whether
you start counting at 0 or 1).
2000-01-01 01:32:05 +00:00
Sascha Schumann
f2f8d38efa Integration of -ng changes. Changes:
- added support for externally built modules,
- improved support for in-tree shared modules,
- fixed diversion bugs,
- configure displays some informative messages,
- faster static build
  (libtool isn't used anymore for compiling non-PIC objects),
- dependencies comparable to automake's without requiring GNU make or GCC,
- working make clean for non-GNU makes.
1999-12-30 02:59:53 +00:00
Sascha Schumann
289dc0b6ed Get rid of some config.h.stubs. Comments are placed into AC_DEFINE() 1999-12-29 21:24:43 +00:00
Sascha Schumann
a2276107ab Some cleanup 1999-12-21 22:58:04 +00:00
Sascha Schumann
ed0a307ccd Use sapi_module_struct to contain SAPI module name 1999-12-20 23:09:54 +00:00
Sascha Schumann
d787ea5346 (php_ns_request_handler) set SG(server_context) to non-NULL 1999-12-16 17:07:19 +00:00
Sascha Schumann
9ac3e94dcc Reapply configuration for each request 1999-12-13 16:45:54 +00:00
Sascha Schumann
08d762cb0c (php_ns_config) use 3.0's Ns_ConfigGetPath instead of Ns_ConfigPath 1999-12-13 16:23:57 +00:00
Sascha Schumann
969c727b1e Output information about HTTP headers 1999-12-10 13:00:09 +00:00
Zeev Suraski
da5464b145 - zend_file_handles must now flag whether their .filename property should be
free by Zend or not (uses e*() functions)
1999-12-04 13:25:41 +00:00
Sascha Schumann
964bf9f288 (php_ns_sapi_header_handler): use sapi_free_header() 1999-12-03 11:46:04 +00:00
Sascha Schumann
80cb563d0a Revert last patch (leak in libzend is fixed now) 1999-11-29 07:28:12 +00:00
Sascha Schumann
6d97609a31 Avoid fd leak which appears when using ZEND_HANDLE_FILENAME 1999-11-26 19:01:26 +00:00
Sascha Schumann
35b30a8d0c Add reentrant versions of ctime, localtime, gmtime, asctime.
These cannot be implemented platform-independent, so we fall back to the native
non-reentrant versions, but lock during each access (only if ZTS is used).

To initialize/destroy the used data structures, you need to call
reentrancy_startup() before sapi_startup(), and reentrancy_shutdown() after
sapi_shutdown().
1999-11-26 17:07:41 +00:00
Sascha Schumann
3b2a88d4d4 some cosmetical changes 1999-11-24 17:36:23 +00:00
Sascha Schumann
a4c75707fb - add PHP_BUILD_THREAD_SAFE
- move #undef HAVE_AOLSERVER into its own config.h.stub
1999-11-24 03:27:53 +00:00
Sascha Schumann
fc95f04b10 (php_ns_hash_environment) Ns_ConnHost() may return NULL, check for it 1999-11-22 01:30:28 +00:00
Sascha Schumann
63a3e9ac45 (PHP getallheaders) added function for AOLserver
(php_ns_hash_environment) added REMOTE_PORT, SERVER_PORT, SERVER_NAME,
PATH_TRANSLATED, GATEWAY_INTERFACE variables
1999-11-22 00:42:06 +00:00
Sascha Schumann
51c83e9f4b --enable-versioning can now be used with CGI/AOLserver as well. Note that
we do not use versioning per se anymore, but export only the required
symbols.
1999-11-20 19:00:17 +00:00
Sascha Schumann
3dc7757a99 Remove the extra INCLUDES line from most automake Mafiles. This is not
necessary, because we can change the value of INCLUDES globally in one
place (configure.in).

Also add two defines in thread-safe mode
(_REENTRANT and POSIX_PTHREAD_SEMANTICS)
1999-11-13 12:41:09 +00:00
Sascha Schumann
e5983e9ef5 (php_ns_request_ctor) enable HTTP Access Authentication
(php_ns_hash_environment) supply PATH_TRANSLATED to scripts
1999-11-07 13:16:14 +00:00
Sascha Schumann
d5bde1d658 (php_ns_hash_environment): provide more CGI/1.1 variables to scripts.
Added REQUEST_METHOD, QUERY_STRING, REMOTE_ADDR
1999-10-20 19:30:37 +00:00
Sascha Schumann
90087382e4 (php_info_aolserver): add more information from the server context 1999-10-20 15:53:23 +00:00
Sascha Schumann
b31ef32c1d (php_ns_hash_environment) add SERVER_SOFTWARE, SERVER_BOOTTIME, SERVER_BUILDDATE, SERVER_PROTOCOL 1999-10-20 13:49:19 +00:00
Sascha Schumann
3909ab4195 (php_info_aolserver): Show information about the SAPI module
(php_ns_module_main): Return early, if request startup failed
1999-10-08 13:06:28 +00:00
Sascha Schumann
5a6fe43d58 Apparently, we did too much cleanup. The server survives now much longer. 1999-10-07 21:47:39 +00:00
Sascha Schumann
02553b5e7c POST works now and does not block anymore. 1999-10-07 21:23:55 +00:00
Sascha Schumann
3f1c010615 Remove SAPI_TARGET and use PHP_SAPI completely.
The target filename is now available as SAPI_PROGRAM, SAPI_SHARED, and
SAPI_STATIC.
1999-10-07 21:04:26 +00:00
Sascha Schumann
93b12f5fbd (ns_globals_struct): remove content_type member
(php_ns_request_dtor): remove content_type destructor, re-add path_translated destructor
1999-10-07 20:21:55 +00:00
Sascha Schumann
483a4642f0 Add comments to the source code and fix POST-read-data bug. 1999-10-07 20:15:26 +00:00
Sascha Schumann
2a6d170dc0 nsapi => aolserver changes 1999-10-07 18:46:40 +00:00
Sascha Schumann
d480d23e97 (php_ns_request_handler): call ts_free_thread() to clean up 1999-10-07 12:00:32 +00:00
Sascha Schumann
232afa4816 * archive-based convenience libraries completely replaced
with libtool components

        * SAPI targets can enable thread-safe mode and define
          shared/static/program build target

        * all configure scripts use the same config.cache

        * phplibdir is $(top_builddir)/modules to avoid
          permission problems

        * sapi/*/Makefile.inc are gone

        * runpath handling cleaned up

        * top-level Makefile.in obsoleted through Makefile.am

        * --enable-versioning uses libtool's cleaner and more
          portable -export-symbols feature
1999-10-04 15:18:26 +00:00
Sascha Schumann
3e202d75ff Polish this. 1999-10-04 14:29:18 +00:00
Sascha Schumann
e846baa14b * include from $(srcdir)
* use proper target for nsapi
1999-09-27 16:49:23 +00:00
Stig Bakken
2a854ca8b9 Generalized server-API build process on UNIX. Each SAPI
implementation now has its own directory under sapi/, just like
extensions have theirs under ext/.  To make the final targets appear
in the main dir, the top-level Makefile includes sapi/NN/Makefile.inc
from the selected sapi backend.  This is a plan Makefile stub without
any autoconf substitutions.  Each SAPI backend also has its own
config.m4 like extensions (read at the end of diversion 2) and
config.h.stub files.

Each SAPI backend has to contain:

config.m4: just like for extensions, this file contains
autoconf/automake directives that end up in the configure script.  The
only difference is that the sapi config.m4 files are read in diversion
(output block) 2 instead of 3.  The sapi config.m4 files should set
two variables: PHP_SAPI (which sapi backend to choose) and SAPI_TARGET
(the name of the resulting library or program, previously BINNAME).
If they are not specified, they will default to "cgi" and "php",
respectively.

Makefile.inc: has to exist, has to define "INSTALL_IT" to the command
used to install the final target (or ":" for no operation).  It also
has to define a plain Makefile rule (without autoconf substitutions)
to build $(SAPI_TARGET)

Makefile.am: just what you think.  Make sure your target is called
"libphpsapi_NNN.a", where NNN is the value of PHP_SAPI.

Some testing and fixing probably remains.  To make everything hang
together, I've done some ugly tricks that I can imagine causing some
problems.  I've built and run the CGI version and built the Apache
DSO.
1999-09-27 16:34:28 +00:00