Commit Graph

581 Commits

Author SHA1 Message Date
David Hedbor
bb1d16c122 More config.m4 fixes. 2000-12-01 23:10:49 +00:00
David Hedbor
8d48566c6f Updated config test to also work with debian pike 7 cvs etc. 2000-12-01 22:23:37 +00:00
Hartmut Holzgraefe
929197cf83 merged ext/apache/CREDITS and sapi/apache/CREDITS 2000-11-22 23:04:33 +00:00
Sascha Schumann
6c1af20310 Set the exit status from the return value of php_execute_script() 2000-11-22 04:24:04 +00:00
Hartmut Holzgraefe
1f6878e912 2nd step towards auto-credits 2000-11-20 10:33:33 +00:00
David Hedbor
49014ed560 Patch to find module dir 2000-11-19 09:10:16 +00:00
Zeev Suraski
030b707296 Update SAPI modules to interface with the new TSRM.
Enable thread-safety memory debugging in ISAPI when in debug mode
2000-11-18 02:44:04 +00:00
Sascha Schumann
4bb564ad2b Clear idle_read_timer 2000-11-15 23:37:50 +00:00
Zeev Suraski
0f7f5c2c0e - Import Jade Nicoletti's transparent gzip encoding support as an output
handler.  Works quite nicely!
- Fix buglets in output buffering
- Add output_handler INI directive
2000-11-13 18:54:37 +00:00
Sascha Schumann
39f8c9807e Update patch and add persistent connection handling 2000-11-13 13:33:12 +00:00
Sascha Schumann
3fbfbf1f45 Add thttpd-dependent interface for maintaining persistent connections on
an iterative web-server. This will be used by the IRCG extension.
2000-11-13 13:23:56 +00:00
Sascha Schumann
04f180b08a More verbose error message for non-working apxs case 2000-11-13 12:43:44 +00:00
Sascha Schumann
8658cace16 Add note about serialized requests and their impact 2000-11-13 12:39:15 +00:00
Sascha Schumann
6a149caaed Fix aborted connection handling and stop modifying thttpd data 2000-11-12 21:10:09 +00:00
Sascha Schumann
86b8e890dc strdup private AOLserver data before inserting it into SAPI's request_info. 2000-11-11 18:35:15 +00:00
Sascha Schumann
802d716c0d Update README
Make Apache-related functions build

Add get_all_headers()

Fix segfault when SAPI outputs strings of length 0

Move request ctor/dtor into their own functions
2000-11-11 18:24:27 +00:00
Zeev Suraski
9e40204f00 @- In CGI mode, $HTTP_SERVER_VARS now includes all of the environment variables
@  as well (Zeev)
2000-11-07 18:25:29 +00:00
David Hedbor
6f0014982d Noted that setting of multiple headers with the same name is fixed. 2000-11-06 22:12:11 +00:00
David Hedbor
61f2088846 (php_caudium_set_header): Allow for multiple headers with the same name. 2000-11-06 22:11:10 +00:00
Zeev Suraski
efd8117fd4 Fixed a bug in $argv and $argc not being properly defined in command-line mode
@- Fixed a bug that prevented $argv and $argc from being defined in the command
@  line version of PHP (Stas)
2000-11-06 09:55:53 +00:00
Stanislav Malyshev
24035faa29 I guess SG(request_info).argv0 and not !SG(request_info).argv0 was an intent, otherwise it doesn't make much sense. 2000-11-06 09:31:48 +00:00
Sascha Schumann
e7a632e950 Add apache_sub_req() 2000-11-06 01:46:28 +00:00
Rasmus Lerdorf
5a58b723ec Remove apache2 sapi module in favour of Sascha's apach2filter 2000-11-05 17:41:03 +00:00
Rasmus Lerdorf
1f3273481e We need a space after 'dnl' to comment stuff out. Why not just delete
this stuff now?
2000-11-05 17:31:17 +00:00
Rasmus Lerdorf
ed218bb6b4 dnldnl won't work 2000-11-05 17:29:04 +00:00
Sascha Schumann
a6a792ecdd Outcomment everything. Since this is an exact duplicate of apache/config.m4,
it might cause conflicts.
2000-11-05 15:59:58 +00:00
foobar
3e8ac5d7f8 Fix build.
# next time: CHECK that things WORK before committing..
2000-11-03 16:30:55 +00:00
Daniel Beulshausen
5e48df787a use argv[1] if it's given, thanks to Bob Denny <rdenny@dc3.com> 2000-11-03 09:55:54 +00:00
David Hedbor
1497e148f4 Use V_CHDIR_FILE instead of doing the job of that function myself and
added a define to disable the use of threads for debugging purposes.
@Support for the Caudium webserver (http://caudium.net/) added. It's based
@on the Roxen SAPI module. Many bugs have been identified and fixed. (David)
2000-11-03 00:29:05 +00:00
Sascha Schumann
51ec089429 Setting no_cache causes Expires: to be send, which is not what we want.
Also disable ETag. It does not serve any purpose for dynamic pages.

Finally, disable keep-alive connections again, since we don't know
the content-length for sure.
2000-11-03 00:11:42 +00:00
David Hedbor
2986b89e1d Now correctly detects Pike 7.0 and use the alternative code. It also sends the
number of written bytes to the done callback function.
2000-11-02 20:05:24 +00:00
David Hedbor
a878709db3 Changed contact information. 2000-11-02 18:56:42 +00:00
David Hedbor
838264de75 Added notice about Caudium websites. 2000-11-02 18:54:21 +00:00
David Hedbor
8aa6f6d55c Initial caudium support. 2000-11-02 18:53:47 +00:00
Sascha Schumann
a44361a769 Update. Someone should really write better docs. =) 2000-11-02 16:15:03 +00:00
Sascha Schumann
43ff395b65 Const'ify part of sapi_request_info.
query_string, post_data, path_translated, request_uri, auth_user,
auth_password and argv0 are modified, so they cannot become const.
2000-11-02 15:47:02 +00:00
Sascha Schumann
3ac8e25812 Namespace protect dir_cmds and kill some warnings 2000-11-02 15:19:54 +00:00
Sascha Schumann
1f53d0203c Restrict php_admin_value to *.conf files. 2000-11-02 15:01:25 +00:00
Zeev Suraski
a023f9280a - Fix Windows build
- Changed the Apache .dsp to expect the Apache source code files under php_build
2000-11-02 14:53:10 +00:00
Zeev Suraski
8c4852c2cb Fix a nasty bug in the shutdown sequence of PHP under Apache. 2000-11-02 12:05:54 +00:00
Sascha Schumann
d9ba87c84c Our context's lifetime differs from the lifetime of a filter's context,
so don't set the filter's context in the INIT_CTX macro.
2000-11-01 19:26:57 +00:00
Sascha Schumann
87e88d5a33 Use Input filters for handling POST data 2000-11-01 19:19:46 +00:00
Andi Gutmans
0330643ea2 - Revert patch which seems to have caused the STOP mechanism not to work.
- I'm not quite sure why this should have caused harm even if not completey
- the right way of doing it.
2000-11-01 11:23:52 +00:00
Zeev Suraski
0ee12a6488 Fix Apache build 2000-10-31 18:28:04 +00:00
Stanislav Malyshev
3bc3677439 Fix -d functionality 2000-10-31 16:16:57 +00:00
Sascha Schumann
4d0992bb22 Remove --with-aolserver-src directive.
AOLserver 3.1 and up install the include directory as per suggestion.
2000-10-30 11:44:18 +00:00
Sascha Schumann
d39c2cf0f1 POSTs work fine 2000-10-29 17:48:13 +00:00
Sascha Schumann
b07276c3e2 Add standard license 2000-10-29 17:43:23 +00:00
Sascha Schumann
af87dfe204 Unify handling of aborted connections 2000-10-29 16:14:27 +00:00
Sascha Schumann
bed7034f92 Unify aborted connection handling 2000-10-29 16:02:40 +00:00
Sascha Schumann
27a8480028 Add/unify aborted connection handling 2000-10-29 16:01:02 +00:00
Sascha Schumann
c38005a4f1 New directive AddRequestBodyFilters
Currently it requires this patch:

http://schumann.cx/request-body-filters
2000-10-29 15:13:23 +00:00
Sascha Schumann
f01e3fbe56 Handle user aborts 2000-10-29 15:10:49 +00:00
Sascha Schumann
86b2d4fefe Add Request Body filters. This is a much nicer concept than
ap_get_req_body, since it is much more flexible and does not
need to buffer everything in memory (PHP still does..).
2000-10-29 14:52:15 +00:00
Zeev Suraski
1fd09132c2 Initial steps to move the INI mechanism to the Zend engine 2000-10-29 11:38:26 +00:00
Thies C. Arntzen
825457ae64 update my email. 2000-10-29 09:14:55 +00:00
Sascha Schumann
d943274af7 POST handler for my ubercool new Apache 2.0 function ap_get_req_body. 2000-10-27 23:02:20 +00:00
Sascha Schumann
ea7534a848 use puts instead of fprintf in log handler. no need for a format string. 2000-10-27 15:40:16 +00:00
Sascha Schumann
56ccd8701d Some information about this handler 2000-10-27 15:03:53 +00:00
Sascha Schumann
b522397298 Looks like transient buckets are limited to 4096 bytes, so split up writes. 2000-10-27 13:30:41 +00:00
Sascha Schumann
93683d052b Add log message sapi handler.
Reenable pipelining requests. Looks like the problems are caused by the
cache, not pipelining.
2000-10-27 13:19:23 +00:00
Sascha Schumann
50500e680b Apache 2.0 does some funky internal caching which works for static
content, but fails miserably in our context.
2000-10-27 12:52:38 +00:00
Sascha Schumann
4f97ff0096 speling 2000-10-27 12:37:05 +00:00
Sascha Schumann
703a0c1159 Add some comments 2000-10-27 10:41:24 +00:00
Sascha Schumann
6ff371d9f7 Leave initializing of auth_(user|password) to php_handle_auth_data(). 2000-10-27 10:31:10 +00:00
Sascha Schumann
b725c6eef3 The CGI RFC allows servers to pass Authorization data to the script,
if the server did not use the information contained therein.

See 6.1.5 and 11.2 of the proposed spec.
2000-10-27 10:26:57 +00:00
Sascha Schumann
055efb70c3 Handle cookies and make use of php_handle_auth_data. 2000-10-27 10:19:40 +00:00
Sascha Schumann
e6dd64e96e Use php_handle_auth_data 2000-10-27 10:19:06 +00:00
Andi Gutmans
2946f87f00 - Fix new -m on Windows 2000-10-26 23:50:17 +00:00
Mathieu Kooiman
717e934a88 Added -m (Shows list of modules) to commandline.. 2000-10-26 22:31:06 +00:00
Sascha Schumann
3a263dcd99 Handle special queries.
Apache's default handler does not seem to handle flushes correctly yet.
One more project..
2000-10-26 21:23:20 +00:00
Sascha Schumann
d504de0f78 An Apache 2.0 Filter for PHP, completely from scratch.
TODO:

	POST, cookies, "flushing", finalizing config framework (it works),
	http auth, PHP Hooks (apache_sub_req is there).

Note that this code depends on some other commits which are pending.
2000-10-26 17:55:05 +00:00
Rasmus Lerdorf
bccdaff6d1 Move server_filter to an extension-specific global 2000-10-23 00:52:11 +00:00
Rasmus Lerdorf
3c92f6bb50 Output function now passes the data onto the next filter in the chain
Clean up some variables - bb = bucket brigade, b = bucket
2000-10-22 16:56:08 +00:00
Rasmus Lerdorf
8f494c2ad0 Code to flatten Apache 2.0 bucket brigades 2000-10-22 16:03:53 +00:00
Rasmus Lerdorf
69d704622d Woops, get rid of some crap 2000-10-22 14:05:29 +00:00
Rasmus Lerdorf
02f599ead5 The start of an Apache 2.0 module 2000-10-22 14:01:18 +00:00
Daniel Beulshausen
7883ddaf51 i'll place the reg file in the win32 folder
cause it doesn't really fit in this folder
2000-10-22 13:48:43 +00:00
Frank M. Kromann
878e348ff9 Adding type cast to remove compiler warning 2000-10-20 19:08:59 +00:00
Rasmus Lerdorf
c3026223f7 This appears to be the correct fix to me.
@ Fix memory leak in x-httpd-source mode (Jason Greene)
2000-10-14 05:06:16 +00:00
Daniel Beulshausen
c6e0cef254 trivial output change
# someone urged me too
2000-10-13 19:08:05 +00:00
Zeev Suraski
ce51b94461 Fix php_value issue 2000-10-13 17:07:09 +00:00
Sascha Schumann
0fd6a7ed18 Provide basic auth info to scripts.
Protect shutdown handler from being called multiple times.
2000-10-11 19:40:56 +00:00
Andi Gutmans
f3232e99c3 - Commit Kristian's PHP 3 patch to PHP 4. Kristian I hope it's also the
same here.
2000-10-11 17:48:44 +00:00
Zeev Suraski
1abd99a443 Fixed a problem that allowed users to override admin_value's and admin_flag's 2000-10-11 16:24:35 +00:00
Andi Gutmans
38423a895b - Fix request_uri to take it's value from SCRIPT_NAME if PATH_INFO is not
defined
2000-10-03 13:02:30 +00:00
Andi Gutmans
2622eba31d - Cleanup some output functions 2000-09-30 16:13:48 +00:00
Sascha Schumann
3be464e4ec UnixWare defines shutdown to _shutdown, which causes problems later
on when using a structure member named shutdown. Since this source
file does not use the system call shutdown, it is safe to #undef it.

PR: #6008, #6362
2000-09-29 19:08:17 +00:00
Daniel Beulshausen
abbfbf18bc added tsrm dir to include path, and release_ts_inline to lib path 2000-09-26 11:23:56 +00:00
Sascha Schumann
cd151feb19 #include "SAPI.h" once 2000-09-26 10:58:56 +00:00
Sascha Schumann
8ef52cabcf Cleanup 2000-09-26 10:58:42 +00:00
Ben Mansell
fd81040420 (Zeus-specific) Don't GetServerVariable() for vars which Zeus doesn't use 2000-09-19 17:43:11 +00:00
Ben Mansell
4208c264d7 Fixed bug which could truncate PHP_SELF 2000-09-19 17:34:53 +00:00
foobar
9559b88894 Fixed bug #6356. 2000-09-11 13:01:07 +00:00
Jon Parise
9a4c654606 Fix build after last commit. 2000-09-08 15:39:42 +00:00
Zeev Suraski
91c808ecc4 Restore the headers_only test to the centralized SAPI startup. If necessary, it can
be overriden in the activate() callback.
2000-09-08 14:43:57 +00:00
Andi Gutmans
9b1aed8323 - Add another ..\ to the TSRM search path 2000-09-08 08:17:17 +00:00
Andi Gutmans
ed8c8539df - Add TSRM to the apache workspace include path 2000-09-08 08:15:25 +00:00
Sascha Schumann
89a2e1dbdb Add TSRM include dirs 2000-09-06 15:41:40 +00:00
Zeev Suraski
4396093666 Fix ISAPI compilation 2000-09-04 20:46:46 +00:00
Andi Gutmans
570e7e9a13 - Defining TSRM_WIN32 in each and every dsp sucked. Revert this change 2000-09-02 16:28:25 +00:00
Andi Gutmans
5bc9f72e85 - More Windows build fixes 2000-09-02 16:02:53 +00:00
Sascha Schumann
e97c8ff013 Set SG(request_info).path_translated to the path of the main script. 2000-08-29 15:09:44 +00:00
Sam Ruby
4a915571f5 Add reflect.java to the list of java classes to be compiled 2000-08-29 01:42:58 +00:00
Andi Gutmans
69e2d48738 - Change spaces to tab 2000-08-28 19:31:56 +00:00
Rasmus Lerdorf
8a36eb220e Missed a couple of center attributes 2000-08-28 09:01:54 +00:00
Sascha Schumann
0b719aa462 Compute absolute path to script 2000-08-27 20:53:10 +00:00
Stig Bakken
315f4f5658 @PHP 3 regression testing framework re-born (Stig)
Took the old PHP 3 regression testing framework and rewrote it in PHP.
Should work on both Windows and UNIX, however I have not tested it on
Windows.  See tests/README for how to write tests.  Added the PHP 3
tests and converted most of them.
2000-08-27 19:46:06 +00:00
Sascha Schumann
c66bc46bb1 Remove obsolete note about Makefile.am 2000-08-27 10:05:23 +00:00
Sascha Schumann
c6cd319cd4 Use request_uri as PHP_SELF. decodedurl also includes the query string. 2000-08-25 10:00:48 +00:00
Sascha Schumann
5905971122 Use SAPI' register_server_variables hook.
Defines PHP_SELF now.
2000-08-25 09:59:38 +00:00
Sascha Schumann
ad04898e05 php_register_variables(.. ELS_CC ..) 2000-08-25 09:15:00 +00:00
Sascha Schumann
8a1db559b6 Make proper use of SAPI's register_environment functionality. 2000-08-25 08:46:32 +00:00
Daniel Beulshausen
c8eb56cc59 changed the output directorys from the windowsbuilds 2000-08-23 15:43:36 +00:00
Daniel Beulshausen
000773e7b9 little fixes 2000-08-22 15:03:38 +00:00
Sascha Schumann
bac08af4cb Disable php_value and add note about reliability 2000-08-22 07:33:27 +00:00
Sascha Schumann
2011db174b AOLserver CVS uses PREFIX. 2000-08-22 06:11:01 +00:00
Sascha Schumann
479a96ed89 Set file_handle.opened_path to NULL 2000-08-22 05:43:31 +00:00
Daniel Beulshausen
7632bca956 updated project to work with readdir.h rev.1.5 from apache cvs 2000-08-21 21:21:18 +00:00
Daniel Beulshausen
0b686eaa2a added the vs6 projectfile for the aolserver 2000-08-21 20:55:10 +00:00
Sascha Schumann
e4b2f8351e thttpd/PHP verified to run IMP 2.2.0 without any hitches. 2000-08-21 20:23:02 +00:00
Sam Ruby
b43df683ee Keep servlet working... 2000-08-21 17:01:51 +00:00
Sascha Schumann
251b83076e Move thttpd_php_init() call to httpd_initialize().
Otherwise, some init stuff was done twice (like resetting the
known_post_content_types hash table which caused post requests
to fail).
2000-08-21 03:04:35 +00:00
Zeev Suraski
30ccec36b9 Fix build 2000-08-20 22:18:19 +00:00
Sascha Schumann
1d68a02df3 The status quo in PHP is that the current directory is initialized
to the directory where the executing script is located.

Since this needs to be implemented for all SAPI modules anyway, this
change moves the functionality to php_execute_script() and gets rid
of the per-module code.
2000-08-20 14:29:00 +00:00
Sascha Schumann
320105bcd8 Use size_t as parameter type in the getenv member of struct sapi_module 2000-08-20 14:20:21 +00:00
Sascha Schumann
67daa655f6 Execute PHP scripts everywhere (not only in the top-level directory) 2000-08-20 09:37:15 +00:00
Ben Mansell
ea98567404 REQUEST_URI is a handy server variable, lets pass it onto ISAPI/PHP 2000-08-18 14:18:57 +00:00
Sam Ruby
3aad950735 Reorder call to ELS_FETCH to be after declarations 2000-08-17 19:19:54 +00:00
Ben Mansell
8751bcb8eb (send_headers) Removed code freeing http_status_line, this is performed
in sapi_send_headers()
# Looks like a similar problem in sapi/pi3web/pi3web_sapi.c as well.
# I can't test this though, so I'm being paranoid and not changing that code.
# Could someone please check this?
2000-08-17 13:40:40 +00:00
Sam Ruby
d93732179b Better error reporting when dll/shared library is not able to be loaded.
Submitted by: Bård Farstad <bf@ez.no>
2000-08-17 10:14:50 +00:00
Stanislav Malyshev
6f8f6c521c Fix opened_path init
# forgot to commit
2000-08-13 18:08:01 +00:00
Stanislav Malyshev
5090b1e8d5 Fix zend_fiel_handle handling. Should fix URL include
and various opened_path inconsistencies.
2000-08-13 18:00:50 +00:00
Sam Ruby
5c8fca1757 Correct bug in headers only logic. 2000-08-10 06:09:05 +00:00
Zeev Suraski
4d692049b2 Fix a couple of bugs in the ISAPI module:
- I think NTLM should work now
- Fix the DOCUMENT_ROOT code
2000-08-09 16:45:40 +00:00
Sascha Schumann
5c62b32823 Remove some crud from diff output (Only in..). 2000-08-07 13:56:52 +00:00
Sascha Schumann
4b8823d427 Fix building thttpd SAPI module.
This works now with thttpd 2.19.

Thanks to Andrzej Borsuk <andrzej.borsuk@alfaelektro.com.pl> for
pointing me into the right direction.
2000-08-07 13:54:35 +00:00
Zeev Suraski
83341c39da Add DOCUMENT_ROOT 2000-08-07 11:51:21 +00:00
Stanislav Malyshev
db0872123b Fix crash on broken setups (#5979) 2000-08-05 11:28:32 +00:00
Rasmus Lerdorf
9021105c89 Fix typo 2000-08-04 16:48:42 +00:00
Rasmus Lerdorf
76a2d2538c Heads up! I have moved the headers_only and response_code checks out of
SAPI and down into the individual SAPI modules.  I have made the
appropriate changes in all the SAPI modules, but please verify these.
The reason for this change is that Apache sometimes will feed PHP
a request_method of GET but have r->header_only set to true.  This happens
in an ErrorDocument redirect.  In this same scenario we want to preserve
the status code as well instead of just overwriting it with a 200 and
losing this information.  For now the other sapi modules act exactly as
before since they probably do not make this distinction, and they may
not even have a valid response code this early in the request.
@ Fix HEAD request bug on an Apache ErrorDocument redirect and preserve
@ the status code across the redirect as well.  (Rasmus)
2000-08-02 22:48:45 +00:00
Rasmus Lerdorf
89107a221b Missed a symbol 2000-07-31 15:07:58 +00:00
Sam Ruby
4ca1c611b3 Refactor in support of subclassing 2000-07-30 04:50:31 +00:00
Zeev Suraski
52ff887db5 Made ob_start() and friends reentrant. It's now possible to implement this
long-requested functionality, now that output buffering is re-entrant:

function eval_ret($code)
{
	ob_start();
	eval($code);
	$retval = ob_get_contents();
	ob_end_clean();
	return $retval;
}
2000-07-29 14:46:09 +00:00
Hartmut Holzgraefe
1a7f851985 added '-l' option to command line / CGI version for 'syntax check only'
plus a little cleanup and rearranging in command line option parsing

@ CGI aka. command line version has now an option '-l' for syntax check
@   without execution (Hartmut)
2000-07-28 15:21:20 +00:00
Rasmus Lerdorf
b480b8dace Fix symbol clash which caused a DSO problem on OpenBSD
@ Fix symbol clash which caused a DSO problem on OpenBSD (Rob Black and
@ anil@recoil.org)
2000-07-26 20:39:59 +00:00
David Croft
0836e10a15 various version 2.0 and 2.01 licenses -> 2.02 2000-07-24 05:41:02 +00:00
Sam Ruby
54790b5e63 Correct the value of request_uri 2000-07-24 05:29:20 +00:00
Stanislav Malyshev
4c6ffdb1c2 make -c in stand-alone mode work again.
Setting ini_path after php_module_startup doesn't do much good -
since php_module_startup reads .ini.
# This fix is very ugly. Everyone is welcome to make better fix
# that won't report errors twice and won't scan argument 3 times
2000-07-13 09:17:39 +00:00
Sascha Schumann
e8101d4f7b Unify use of my email address 2000-07-10 10:09:15 +00:00