Commit Graph

354 Commits

Author SHA1 Message Date
Dmitry Stogov
9fa7b87ff0 Removed unnecessary getenv/putenv calls 2006-11-15 13:34:05 +00:00
Dmitry Stogov
ad2b3e69f0 Fixed wrong ext/filter behavior. It might not to register FastCGI environment variables and make memory leaks. 2006-11-15 11:14:27 +00:00
Dmitry Stogov
dc5124d2bb cgi.* and fastcgi.* directives are moved to INI subsystem. The new directive cgi.check_shebang_line can be used to ommiting checnk for "#! /usr/bin/php" line. 2006-11-14 10:32:11 +00:00
Ilia Alshanetsky
cca8f2ded2 Fixed build 2006-10-25 14:04:48 +00:00
Ilia Alshanetsky
3642ebdcdd Added filter support for $_SERVER in cgi/apache2 sapis
Make sure PHP_SELF if filtered in Apache 1 sapi
2006-10-23 19:17:51 +00:00
Antony Dovgal
b6e0aa9856 fix CGI build 2006-09-23 12:27:35 +00:00
Ilia Alshanetsky
12b0b6368a MFB: Restore support for unquoted -d options 2006-09-22 17:42:08 +00:00
Dmitry Stogov
b94fb5e09c FastCGI environment variables must not be overriden by system environment variables 2006-08-31 13:12:18 +00:00
Antony Dovgal
5c06523d75 fix #37920 (compilation problems on z/OS) 2006-06-27 08:26:54 +00:00
Hannes Magnusson
9f96f0340b Argument info 2006-06-25 19:17:20 +00:00
Antony Dovgal
d6669ef575 plug leak in CGI SAPI when running scripts with query string in console 2006-06-19 17:49:20 +00:00
Antony Dovgal
cb68193690 add missing ifdef and avoid "unused variable" warning 2006-06-19 11:38:51 +00:00
Nuno Lopes
f1d78f433d MFB 2006-06-17 11:14:21 +00:00
Dmitry Stogov
e901a7a870 Removed warnings 2006-06-13 14:22:27 +00:00
Johannes Schlüter
9c5fdd1b7f - Removed useless -g command line option from CGI and CLI
- Fixed conflicting behaviour if -B and -a are set with CLI
- Fixed handling of auto_prepend and exceptions in readline-a-mode
2006-06-03 22:00:30 +00:00
Michael Wallner
4ce0141713 - new output control code
# scan README.NEW-OUTPUT-API to get a grasp
# tree has been tagged with BEFORE_NEW_OUTPUT_API
#
# TODO:
#  - improve existing output handlers
#  - move zlib.output_compression cruft from SAPI.c to zlib.c
#  - output_encoding handling was ambigious, resp. is undefined yet
#  - more tests
2006-06-02 19:51:43 +00:00
Dmitry Stogov
94004da0ed Fixed bug #37256 (php-fastcgi dosen't handle connection abort) 2006-05-24 09:41:55 +00:00
Dmitry Stogov
0f9c8e550e Fixed bug #37341 ($_SERVER in included file is shortened to two entries, if $_ENV gets used). 2006-05-24 07:52:58 +00:00
Dmitry Stogov
c0c388832c - Removed source compatibility with libfcgi
- Optimized access to FastCGI environment using HashTable instead of linear sear
ch
- Allowed PHP_FCGI_MAX_REQUESTS=0 to disable PHP die
- Allowed PHP_FCGI_CHILDREN=0 to disable PHP spawn workers
2006-05-15 14:30:50 +00:00
Antony Dovgal
8ab0e121d4 plug leak 2006-05-03 19:40:49 +00:00
Dmitry Stogov
83657db8ff Fixed memory leaks 2006-04-18 06:58:54 +00:00
Dmitry Stogov
f3c00034b6 CGI anf FastCGI assume $_SERVER and $_ENV have the same values,
so we don't need construct the same arrays twich and may just copy it
2006-04-07 13:45:51 +00:00
Dmitry Stogov
3ada78d408 Removed unnecessary copying 2006-04-07 12:39:28 +00:00
Dmitry Stogov
4b09d37f66 MTH: Allowed '-b' with UNIX sockets 2006-03-23 10:20:14 +00:00
Dmitry Stogov
34c493ea07 Unicode support for dl() patch. 2006-03-17 13:45:43 +00:00
Dmitry Stogov
f584e957ac Optimized FastCGI SAPI check. Check for ini options only once. 2006-03-17 09:32:47 +00:00
Dmitry Stogov
86780519d4 Disabled dl(). Now it is enabled only when a SAPI layer registers it explicitly. Only CLI, CGI and EMBED do this. 2006-03-16 16:53:10 +00:00
Pierre Joye
bb1ec86f9d - remove magic_quotes_gpc, magic_quotes_runtime, magic_quotes_sybase
(calling ini_set('magic_....') returns 0|false
- get_magic_quotes_gpc, get_magic_quotes_runtime are kept but always return false
- set_magic_quotes_runtime raises an E_CORE_ERROR
2006-03-08 00:43:32 +00:00
Alex Waugh
b7d6d705f1 Fix for RISC OS 2006-03-07 22:37:18 +00:00
Dmitry Stogov
09ca61c125 Made server wide switch for unicode on/off (according to PDM). 2006-02-13 10:23:59 +00:00
Dmitry Stogov
47e607a93a Fixed bug #36158 (SIGTERM is not handled correctly when running as a FastCGI server) 2006-02-03 16:30:27 +00:00
foobar
251c5173fd bump year and license version 2006-01-01 13:10:10 +00:00
Zeev Suraski
91a735502c Reimplement FastCGI interface
Due to licensing restrictions that actually don't allow anybody to use
the libfcgi code without prior approval from Open Market, which is
impossible to obtain - we decided to reimplement this interface from
scratch.  The result is actually slightly faster, and more importantly,
clear of any copyright issues.

Implementation by Dmitry
2005-12-25 12:45:01 +00:00
Dmitry Stogov
34bc5d7d41 Bug #34429 (Output buffering cannot be turned off with FastCGI) 2005-12-09 16:58:02 +00:00
foobar
0586ac73f1 - fix possible compile error 2005-12-03 01:27:37 +00:00
Dmitry Stogov
ef47ee6e13 Cleaned CGI code. Now FastCGI can not be disabled. See into sapi/cgi/CHANGES for more details. 2005-11-23 18:08:51 +00:00
Michael Wallner
ab95f1981c - sapi_header_op(SAPI_HEADER_(REPLACE|ADD), {NULL, 0, 0}) caused HTTP response splitting
- sapi_send_headers() already takes care of default_content_type (left over of fix for bug #29983)
2005-11-02 14:27:02 +00:00
Johannes Schlüter
7e85bac9ec - Fix #34557 php -m exits with "error" 1 2005-10-06 20:29:13 +00:00
foobar
20241fe16a - 2004 -> 2005 2005-08-03 11:12:19 +00:00
Wez Furlong
43aa6922d3 Don't crash here if there are errors (such as failing to load extensions via
php.ini) during startup.
2005-06-16 14:54:51 +00:00
foobar
51eebc6096 cs + ws 2005-06-03 23:11:51 +00:00
foobar
8c2cda1251 int != long 2005-04-28 14:23:57 +00:00
foobar
03bdd1a5d4 - Added fastcgi.logging php.ini option to be able to disable
logging through the fastcgi connection
2005-04-28 13:14:26 +00:00
Rasmus Lerdorf
3c0411c496 Fix for bug #32263
This adds proto_num to request_info.  It is defaulted to HTTP 1.0 (1000)
such that it has a valid value even if the underlying sapi doesn't set it
correctly.  It is then used to determine if a 302 or a 303 should be sent
on a Location redirect.  Any non GET/HEAD HTTP 1.1 redirect will get a 303
instead of a 302 to be compatible with the HTTP spec.
2005-03-14 19:25:39 +00:00
foobar
59db0751fc Revert previous patch 2005-02-11 02:03:51 +00:00
foobar
951eb23e9a - Fixed bug #28227 (PHP CGI depends upon non-standard SCRIPT_FILENAME)
# patch by: lukem at NetBSD dot org
2005-02-04 10:39:33 +00:00
foobar
376d5f6910 Fix ZTS build 2005-01-11 13:35:56 +00:00
foobar
40b9c63da1 - Fixed bug #28074 (FastCGI: stderr should be written in a FCGI stderr stream). 2005-01-10 15:38:24 +00:00
Rasmus Lerdorf
fdaa130f3a Add the new request_time sapi struct entry to all the sapis. Some of these
may have ways of getting the request time without the extra syscall, but
for now let's just make sure we don't crash and people will eventually
fill these in where applicable.
2004-12-20 19:33:41 +00:00
Edin Kadribasic
546e5bbc43 Made php -m output sorted case-insensitevly 2004-07-14 22:30:29 +00:00
Sascha Schumann
f51ff68dfa - revert to proper behaviour 2004-07-05 11:41:31 +00:00
Stanislav Malyshev
74ab20817a Fix fastCGI breakage: due to calling flush on unitialized requests,
request was aborted unless ignore_user_abort is set
2004-05-06 15:23:53 +00:00
Ilia Alshanetsky
39a43c994e Fixed bug #27802 (default number of children to 8 when PHP_FCGI_CHILDREN is
not defined).
2004-03-31 17:01:01 +00:00
Ilia Alshanetsky
ed2b1770ab Invalid response code when force-cgi-redirect safety mechanism is triggered 2004-03-12 14:05:59 +00:00
Rasmus Lerdorf
2a44432e8c As discussed a while ago. There is no reason to disallow command-line
arguments for the cgi version when run in a cgi context.  Our own test
framework is in fact broken because of this unnecessary restriction.
2004-02-27 23:31:28 +00:00
Marcus Boerger
1c00296cc7 Bugfix #27104 CLI/CGI SAPI module variable name conflict 2004-02-11 21:00:46 +00:00
Ilia Alshanetsky
c6a2a19051 Proper win32 fix. 2004-02-11 14:52:12 +00:00
Ilia Alshanetsky
9c1be88844 Fixed win32 build.
Fixed building of libfcgi when PHP is built from another directory.
Added missing headers needed for wait().
Removed duplicate signal.h header.
Removed unneeded variables.
2004-02-10 17:44:31 +00:00
Ilia Alshanetsky
242296faeb Fixed bug #26758 (FastCGI exits immediately with status 255). 2004-02-10 00:29:46 +00:00
Ilia Alshanetsky
0f9d01d8ac Fixed bug #27026 (Added cgi.nph that allows forcing of the Status: 200
header that is not normally needed).
2004-02-10 00:02:38 +00:00
Andi Gutmans
dbeb4158d2 - A belated happy holidays and PHP 5 2004-01-08 08:18:22 +00:00
foobar
b4c05a5068 MFB 2003-10-31 01:29:59 +00:00
Ilia Alshanetsky
4c4d5a02b9 Fixed formatting issues (patch by: Joe Orton) 2003-10-17 02:21:27 +00:00
Sascha Schumann
45a928ef94 fix heuristic: if someone passed "-b IP:port", this check would
falsely recognize the parameter as defining only a port.
2003-09-03 08:15:09 +00:00
Marcus Boerger
cbb011da2d Fix interactive mode 2003-08-17 18:36:27 +00:00
Ilia Alshanetsky
f6290bfbfd Don't forget to flush() buffers for -w -s 2003-08-13 02:01:46 +00:00
Sascha Schumann
f622240a0e MFB don't overwrite 2003-08-04 19:05:20 +00:00
Ilia Alshanetsky
3253746c26 Preserve exit status for non-php execution modes. 2003-08-01 16:52:49 +00:00
Ilia Alshanetsky
68616d764c Fixed bug #23509 (exit code lost when exit() called from
register_shutdown_function())
2003-08-01 12:26:28 +00:00
Shane Caraveo
42165c12b0 renable -b option (removed when longopts were added)
dissable -b on windows due to fastcgi lib bug
close stdin on linux when using socket server (bug 23664)
2003-06-29 20:45:38 +00:00
Shane Caraveo
97ffab21a6 fix bug http://bugs.php.net/bug.php?id=24009
also do not use APPL_PHYSICAL_PATH as DOCUMENT_ROOT under IIS, it's
different depending on IIS configuration.  Code works fine without it, that
was just an attempt at a shortcut.
2003-06-29 20:09:36 +00:00
James Cox
f68c7ff249 updating license information in the headers. 2003-06-10 20:04:29 +00:00
Edin Kadribasic
b7713f411e Fix for #23902 by Shane.
Removed bogus recommendation from php.ini files.

# Basic authentication is actually possible
# usign IIS + PHP cgi countrary to our current docs
2003-06-03 10:06:45 +00:00
Moriyoshi Koizumi
aa50e817ae CGI SAPI should honour this setting 2003-05-30 22:31:12 +00:00
Derick Rethans
814f793035 - MFB: Version output beautification 2003-05-30 16:10:58 +00:00
foobar
61e09677b2 MFB: nuked php_header() call from the sapi_cgi_log_message() 2003-05-26 23:22:05 +00:00
Shane Caraveo
ce91e18377 http://bugs.php.net/bug.php?id=14409
move from PHP_4_3
2003-05-26 00:46:24 +00:00
Shane Caraveo
92dfadb1e0 continuation on bugfix #13757
make argv/argc *and* query_string work correctly when running cgi in shell
2003-05-19 06:46:19 +00:00
Shane Caraveo
57f01b14e9 bugfix #13757 - passing query string on command line when run from shell 2003-05-19 03:40:33 +00:00
Moriyoshi Koizumi
bb1720a9d7 Fixed bug #23669 2003-05-17 18:47:17 +00:00
Moriyoshi Koizumi
db2de468e1 Fixed too optimized part 2003-03-29 16:18:04 +00:00
Moriyoshi Koizumi
8e8029f23d CS & WS fixes 2003-03-29 16:13:51 +00:00
Moriyoshi Koizumi
2ad3f446c3 Do the right fix.. 2003-03-28 18:24:02 +00:00
Moriyoshi Koizumi
0b6f629b68 Fixed bug #22773 2003-03-28 17:53:36 +00:00
Shane Caraveo
e949850881 handle invalid paths passed to us from iis 2003-03-27 17:52:33 +00:00
Sebastian Bergmann
5ca078779a Eliminate some TSRMLS_FETCH() calls. Tested with Win32 build of SAPI/CGI and SAPI/CLI on Win32. 2003-03-25 08:07:13 +00:00
Shane Caraveo
56210b8921 use the correct flush on deactivate
add some code to make debugging iis 5 cgi easier
2003-03-25 07:43:30 +00:00
Shane Caraveo
ac7748cef1 For fastcgi env vars, don't magic quote them 2003-03-23 20:16:41 +00:00
Stig Bakken
0e6fca4f22 * email address change 2003-03-18 12:06:09 +00:00
Ben Mansell
6d8283fa57 Fix bug whereby a webserver closing stdout from the CGI/FastCGI binary
would cause PHP to get caught in an infinite loop of failing write()
syscalls.
2003-03-07 14:48:28 +00:00
Zeev Suraski
4934744b93 Win32 build improvements 2003-02-17 13:29:59 +00:00
Shane Caraveo
8c73b6ab70 prevent possible crash if used in combo with mod_gzip
fix command line
2003-02-17 03:39:58 +00:00
Marcus Boerger
d4fd1c07b1 - Allow long option names
- Update CLI's manpage

@Added support for long options in CLI & CGI (e.g. --version). (Marcus)

# In contrast to the preliminary patch this should work now completely.
# If all long option names are accepted we may even think about MFHing.
2003-02-16 01:23:11 +00:00
foobar
92279e5e06 MFB 2003-02-14 14:38:20 +00:00
Marcus Boerger
aa8dfa0b74 fix non FCGI build 2003-02-13 19:46:40 +00:00
Shane Caraveo
a13ef6ec42 There is *absolutely no* definitive way to know if argv0 is the
actual php script, or if it is the beginning of a query string.
Additionaly, passing parameters on the command line is
not part of CGI spec, and is not required by either
Apache or IIS.  So I have removed that code altogether,
and done some further cleanup.  Also fix pre4.3 behaviour if fix_pathinfo=0.
I've tested with IIS and Apache 1.3.27 on w2k and RH 7.3.
2003-02-13 18:21:12 +00:00
Shane Caraveo
1a4c82e014 fix bug 21261
putenv on some platforms requires we provide the memory
    cleanup env parsing logic
fix bug 21367
    missed optargs in a previous patch
2003-01-25 22:01:53 +00:00
Ilia Alshanetsky
5de9962d50 Fixed bug #21297. The fix also fixes miscalculation of lines numbers by 1
due the previously mentioned bug.
2003-01-08 00:41:53 +00:00
Zeev Suraski
6591b9c826 Add missing call 2003-01-07 16:33:28 +00:00
Zeev Suraski
19d47d9f6e Initialize lineno using the new infrastructure 2003-01-05 16:10:35 +00:00