Commit Graph

154 Commits

Author SHA1 Message Date
Sascha Schumann
4762285e40 Disable global lock for now. We will have to find a way to test subsystems
for thread-safety, and lock them appropiately, if they aren't thread-safe.
1999-12-12 10:49:03 +00:00
Sam Ruby
8abf724678 Provide basis for shared libraries/dlls to contain internal extensions 1999-12-07 20:49:01 +00:00
Sascha Schumann
4a60eed469 Fix some warnings 1999-12-05 16:25:32 +00:00
Rasmus Lerdorf
dfd0f8824c More maintainer-mode cleanups 1999-12-05 14:16:37 +00:00
Sascha Schumann
5b983c944f Clean up php3.*\.h files. The files itself are renamed, and references in all
.*\.[ch] files were changed. There is a slight chance that my script missed
a few changes, please correct them manually.
1999-12-04 19:19:57 +00:00
Sascha Schumann
8713ce5d38 Remove code references to serverapi 1999-12-04 18:06:15 +00:00
Andrei Zmievski
20190c966d Session variables now obey track_vars and gpc_globals settings.
If track_vars is on then decoded variables appear in $HTTP_STATE_VARS
array. If gpc_globals is on, then session vars are decoded into global
variables. If both are on, then globals and $HTTP_STATE_VARS contents
are references to each other.

The /decoder functions now just need to call php_set_session_var()
this behavior.

@ -Session vars are now decoded into $HTTP_STATE_VARS[] array and the
@ globals, depending on track_vars and gpc_globals settings (Andrei)

# Encoding source is currently only globals. We may want to change this
# in the future.
1999-12-04 17:02:04 +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
39a99dd695 2<<30 (== 1<<31) overflows 32-bit signed int, reverting to 1<<30 1999-12-03 15:16:32 +00:00
Sascha Schumann
639c491da4 Add X-Powered-By header in all configurations to ease PHP usage metering 1999-12-03 12:21:57 +00:00
Rasmus Lerdorf
162adb778e @ PHP 4 scripts will now obey the max_execution_time setting and actually
@ time out (Rasmus)
# Note that Apache clears all signal handler including SIGPROF before
# calling the content handler, so even though we set our itimer before
# this in the PHP_INI stuff, Apache kicks sand in our face and we need
# to set the timer again just before we start parsing
1999-12-03 05:03:16 +00:00
Rasmus Lerdorf
c92db34492 # just some symbol cleanup while I am browsing through looking for this
# timeout problem
1999-12-02 20:00:16 +00:00
Sascha Schumann
94c36e8846 Make fsock module thread-safe 1999-12-01 17:07:25 +00:00
Andi Gutmans
2337d110f9 - Added opened_path to php_fopen_wrapper() and the URL fopen wrapper (it's not
always properly set, it's a TODO for all of us).  This enables us to implement
  true 'use' support.
@- Added support for the 'use' keyword - behaves like 'require', but will not
@  use the same file more than once (Andi & Zeev, Zend library)
1999-11-30 20:18:11 +00:00
Sascha Schumann
fe48f6ed6a Use thread-safe versions of asctime and localtime 1999-11-26 16:32:02 +00:00
Zeev Suraski
442f8b3c3c *** empty log message *** 1999-11-25 15:24:49 +00:00
Sascha Schumann
d462115341 Killing some unused variable warnings 1999-11-24 17:56:31 +00:00
Sam Ruby
5385610450 errors during startup trap server 1999-11-23 03:10:46 +00:00
Zeev Suraski
9820dd0927 Fixed a leak when using automatic output buffering
@ Fixed a leak when using automatic output buffering (Zeev)
1999-11-22 20:58:56 +00:00
Sascha Schumann
4bb5e353d5 Add post request startup handlers. These are called at the end of the
request startup function, and can use the initialized structures like
the symbol table.
1999-11-17 23:01:27 +00:00
Sam Ruby
d5233c482b configuration failures trap server 1999-11-05 17:52:00 +00:00
Andrei Zmievski
26c019eaa1 Revert my patches to error functions. 1999-10-19 19:11:02 +00:00
Andrei Zmievski
e906d4548a Small tweak in the error format. 1999-10-15 20:32:47 +00:00
Andrei Zmievski
b625bbd14a (php3_log_err): Don't output error message to stderr when
running as CGI binary.
1999-10-15 20:27:38 +00:00
Andrei Zmievski
3ee9dbea0c (php_error): finally get rid of those annoying html tags
when running as CGI binary
1999-10-15 19:55:18 +00:00
Sascha Schumann
965c9c2187 Use correct data type for mutex. 1999-10-08 16:29:33 +00:00
Sascha Schumann
9c995e93d7 Implement temporary workaround for thread-safety issues. This
serializes all request accesses. To disable, define NO_GLOBAL_LOCK
1999-10-08 16:24:31 +00:00
Thies C. Arntzen
b357d0eaf8 i swear, i compiled (at least) before i committed! 1999-10-04 10:39:32 +00:00
Thies C. Arntzen
0dbabb9871 "cc -32" on IRIX 6.4 does not like (PHP_TRACK_VARS?"1":"0") - at least not if PHP_TRACK_VARS is 0. 1999-10-04 09:56:52 +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
Sascha Schumann
61f288ced3 0' flag ignored with precision specifier and X' format 1999-09-17 01:16:54 +00:00
Zeev Suraski
98d95dd88e - Added support for unknown POST content types (Zeev)
- Introduce the convert_to_*_ex() API in strlen()
1999-09-16 23:18:15 +00:00
Zeev Suraski
9e3315799c That's important enough to be cached 1999-09-12 20:36:48 +00:00
Zeev Suraski
a1784083e9 Time to do that - rename the output layer prefix 1999-09-12 03:25:02 +00:00
Andrey Hristov
99caa5d43b Use OnUpdateBool for Boolean entries. 1999-09-11 20:36:47 +00:00
Zeev Suraski
7afbcb4fef Rename allow_builtin_links to expose_php 1999-09-11 16:32:08 +00:00
Zeev Suraski
27afe4e49b More cleanup 1999-09-11 16:16:16 +00:00
Zeev Suraski
15fee4d3a6 - Seriously optimize and clean php_parse_gpc_data()
- Added gpc_globals directive to turn global definitions of GPC variables on/off
(untested)
1999-09-11 15:04:45 +00:00
Zeev Suraski
1b6ccfe86c Cleanups & optimizations 1999-09-11 14:09:29 +00:00
Zeev Suraski
959ad0e9ea A couple of BoundsChecker fixes 1999-09-06 22:40:27 +00:00
Sascha Schumann
8aa0c92bc6 fix warning 1999-09-05 19:59:28 +00:00
Andi Gutmans
7ebbe20fb0 - Should fix short_tags and co. problem. 1999-09-05 19:49:54 +00:00
Andi Gutmans
04b0bc4c70 - php_error(E_ERROR,...) won't ever return so change the connection_status
before it is called.
1999-09-05 05:15:42 +00:00
Rasmus Lerdorf
d3439023d3 Catch a timeout and add user-level interface for connection handling 1999-09-04 21:10:39 +00:00
Rasmus Lerdorf
82d975d671 Might as well bail as soon as we know we should since this is now
possible.  We still need to set our connection status bit field so a
shutdown function can figure out if a script was terminated due to an
abort, timeout or finished normally.
1999-09-04 20:37:24 +00:00
Rasmus Lerdorf
0bede914ab First part of the connection_status work. No user-callable functions
yet.  That is coming next.  Have also only done Apache and CGI so far.
Will have to crack open my ISAPI book to do that one.

Also changed the SAPI output functions to return an int.  We'll check
the connection status inside each one, but we might need the return
code at some other level and I don't see a good reason for just tossing
these return codes.
1999-09-04 20:12:47 +00:00
Sascha Schumann
5b293ecd4d - add global startup/shutdown handlers
- improve genif.sh to also consider all header files for inclusion
  (checks for phpext_)
- use vsnprintf in main.c to avoid buffer overflows
- improve sessions's mm module to cope better with OOM situations
  within the shared memory segment
- fix typo wrt session.auto_start
1999-09-03 17:46:39 +00:00
Zeev Suraski
276c876171 - Fixed several problems with output buffering and HEAD requests (Zeev)
- Fixed HTTP Status code issue with ISAPI module (Zeev)
1999-09-03 02:39:36 +00:00
Andi Gutmans
b6789ae332 - Add sessions module to standard win32 build. 1999-09-01 19:28:07 +00:00
Stig Bakken
788b25ccf8 fix for bug #2165 1999-08-31 15:39:13 +00:00