Commit Graph

551 Commits

Author SHA1 Message Date
Jani Taskinen
9942f30a38 MFH: ws 2007-10-25 10:01:30 +00:00
Dmitry Stogov
6f7b738b71 Added CGI SAPI -T option, to measure execution time of script repeated several times. 2007-10-25 05:39:06 +00:00
Rob Richards
c4575f4c4b MFH: fix win build 2007-10-05 16:00:30 +00:00
Jani Taskinen
2bc631fb40 MFH:- Added common getopt implementation to core.
MFH:- Added long-option feature to getopt().
MFH:- Made getopt() available on win32 systems.
MFH:  Patch by: David Soria Parra <dsp@php.net>
[DOC]: These changes will be available from 5.3+

# Note: Fixed also tests and synced basic_functions.c with HEAD.
2007-10-01 12:40:54 +00:00
Jani Taskinen
09b6f37f20 MFH:
- Added ".htaccess" style user-defined php.ini files support for
  CGI/FastCGI.
- Added support for special [PATH=/opt/httpd/www.example.com/] sections
  in php.ini. All directives set in these sections will not be able to be
  overridden in user-defined ini-files or during runtime in the specified
  path.

- Improved php.ini handling:
  . Added better error reporting for syntax errors in php.ini files
  . Allowed "ini-variables" to be used almost everywhere ini php.ini files
  . Allowed using alphanumeric/variable indexes in "array" ini options
  . Fixed get_cfg_var() to be able to return "array" ini options

- Fixed bug #27372 (parse error loading browscap.ini at apache startup)
- Fixed bug #42069 (parse_ini_file() allows using some non-alpha numeric
  characters)
2007-09-28 02:05:10 +00:00
Jani Taskinen
0d3bdf23d2 MFH: ws + cs 2007-09-27 22:09:46 +00:00
Dmitry Stogov
06f43b30c1 MFH: Improved and cleaned CGI code. FastCGI is now always enabled and can not be disabled. See sapi/cgi/CHANGES for more details. 2007-09-27 08:23:58 +00:00
Dmitry Stogov
b441b275b3 Fixed bug #42699 (PHP_SELF duplicates path) 2007-09-24 11:40:05 +00:00
Dmitry Stogov
96810f0ae6 Fixed bug #42587 (behaviour change regarding symlinked .php files) 2007-09-10 10:55:26 +00:00
Dmitry Stogov
dd8c8d05e8 Added checks for malformated FastCGI requests (Mattias Bengtsson) 2007-09-07 08:26:47 +00:00
Dmitry Stogov
5d238efaa6 Fixed bug #42523 (PHP_SELF duplicates path) 2007-09-05 08:26:32 +00:00
Dmitry Stogov
39bceffc4a Fixed bug #42453 (CGI SAPI does not shut down cleanly with -i/-m/-v cmdline options) 2007-08-31 12:17:52 +00:00
Stanislav Malyshev
50293835bf remove unneeded variables 2007-08-08 23:51:57 +00:00
Dmitry Stogov
50aef7ec83 - Fixed bug #42198 (SCRIPT_NAME and PHP_SELF truncated when inside a userdir
and using PATH_INFO).
- Fixed bug #31892 (PHP_SELF incorrect without cgi.fix_pathinfo, but turning
  on screws up PATH_INFO).
2007-08-08 13:01:40 +00:00
Jani Taskinen
9c07366bb0 MFH: fix typos in comments 2007-08-08 10:00:34 +00:00
Jani Taskinen
eb923bf6fc MFH: - Changed AC_ARG_* options to PHP_ARG_* options.
MFH: - Some cleanups here and there
MFH: - Enabled PHP_CHECK_CONFIGURE_OPTIONS (checks for unknown configure
MFH:   options)
# Note to Marcus: ext/dba/config.m4 needs to be "converted" to use
# the PHP_ARG_* options. I did't touch it needs quite a lot of work to keep
# it's current behaviour regarding "enabled-by-default" parts of it.
#
# Hint: By using the PHP_ARG_* options you have the "default" option.. ;)
2007-07-11 23:20:37 +00:00
Dmitry Stogov
3a5501e0d4 ECONNABORTED is not a critical error (Andrei Nigmatulin) 2007-07-09 11:48:39 +00:00
foobar
7ed3c4536d MFH: Fix some configure --help texts 2007-07-03 17:25:43 +00:00
Dmitry Stogov
e5909f149c Fixed bug #40419 (Trailing Slash in CGI request don't work) 2007-06-26 14:47:16 +00:00
Dmitry Stogov
5d2180835a no need to return exit status of the last fastcgi request 2007-06-21 08:40:43 +00:00
Antony Dovgal
5c75e5b4f4 MFH: add missing open_basedir checks to CGI 2007-06-04 15:38:12 +00:00
foobar
ca1b7e7b47 fix test 2007-06-03 22:50:19 +00:00
Dmitry Stogov
e35679618e Removed deprecated comment 2007-05-28 08:11:59 +00:00
Antony Dovgal
ccd16d09c0 MFH 2007-05-27 19:23:09 +00:00
foobar
a894611636 - Unify installation of SAPIs: CGI is no exception anymore. 2007-05-24 23:29:59 +00:00
Dmitry Stogov
23409a4bbf Fixed crash on "php -b 1234 -unknown-option" 2007-05-21 09:08:13 +00:00
Dmitry Stogov
3040a34b21 libfcgi cleanup (Andrei Nigmatulin) 2007-05-21 08:47:51 +00:00
Ilia Alshanetsky
30dd6a45d3 Fixed a possible crash when PATH_INFO is not provided but the path contains
path info information
2007-05-20 15:56:10 +00:00
Dmitry Stogov
633aff5541 Fixed bug #41378 (fastcgi protocol lacks support for Reason-Phrase in "Status:" header) 2007-05-15 08:17:08 +00:00
Dmitry Stogov
6e8438633b Fixed bug #41291 (FastCGI does not set SO_REUSEADDR). (fmajid at kefta dot com) 2007-05-10 15:21:02 +00:00
Antony Dovgal
a10cd19d05 MFH: fix long options 2007-04-23 11:05:16 +00:00
Marcus Boerger
f62d5c9adf - MFH getopt fixes 2007-04-22 15:31:16 +00:00
Antony Dovgal
695e81c2cc fix test 2007-04-17 20:17:25 +00:00
foobar
4f54b301ef - Fix a possible leak when multiple -c parameters are used 2007-04-17 20:00:53 +00:00
Antony Dovgal
a0370cd797 add tests for CGI 2007-04-17 19:49:26 +00:00
Antony Dovgal
44066f23b7 MFH: fix leak appearing when more than one -f option specified 2007-04-17 18:51:34 +00:00
foobar
2fe7267d53 MFH: Simplify previous patch. 2007-04-15 23:06:08 +00:00
foobar
a40b6f5c4f - Allow using syntax highlighting under FastCGI mode. 2007-04-15 22:52:07 +00:00
foobar
c71b1401ff - Synch these files from sapi/cli/ and allow using s.c. long-options
with CGI.
2007-04-15 22:50:58 +00:00
Dmitry Stogov
857f992cd3 Removed wrong size_t definition 2007-04-09 15:39:59 +00:00
Sara Golemon
52b07d1895 Add missing #if check 2007-03-29 18:47:04 +00:00
Dmitry Stogov
4a119f9a79 Improved FastCGI SAPI to support external pipe and socket servers on win32 2007-03-28 15:39:22 +00:00
Dmitry Stogov
1e13ef2de5 Fixed compilation warning 2007-03-12 07:39:01 +00:00
Dmitry Stogov
c2a71f8eb1 Return HTTP 403 in case of "access denied". 2007-03-09 16:46:07 +00:00
Ilia Alshanetsky
efad70c2cc snprintf() -> slprintf() 2007-02-27 03:28:17 +00:00
Dmitry Stogov
94d7b8b004 poll() is not affected by FD_SETSIZE (Tony) 2007-02-26 09:38:44 +00:00
Dmitry Stogov
0caa2be91f Use poll() instead of select() if available 2007-02-24 11:20:43 +00:00
Marcus Boerger
50ea26760d - Avoid sprintf, even when checked copy'n'paste or changes lead to errors 2007-02-24 02:17:47 +00:00
Dmitry Stogov
2b5e7d315f Check for FD_SETSIZE limit 2007-02-21 15:46:13 +00:00
Antony Dovgal
43d788ec33 MFH: move PHP_TEST_WRITE_STDOUT to acinclude.m4 and use it in configure.in 2007-02-20 20:11:11 +00:00
Antony Dovgal
748b6fdeb3 MFH: make use of startup hooks 2007-02-20 19:20:41 +00:00
Ilia Alshanetsky
9ae588dfb1 Fixed strlcat() usage.
# Thanks Andi
2007-02-19 23:52:13 +00:00
Dmitry Stogov
2a170f0584 Initialize "retval" on each request 2007-02-19 14:13:02 +00:00
Dmitry Stogov
7c77611057 Fixed fcgi_putenv() semantic with NULL value 2007-02-19 13:21:14 +00:00
Ilia Alshanetsky
26214fc15f Eliminate strcat() usage
Fixed handling of argv[] for GET
2007-02-18 18:08:22 +00:00
Dmitry Stogov
780c66d14b Fixed bug #40286 (PHP fastcgi with PHP_FCGI_CHILDREN don't kill children when parent is killed) 2007-02-16 11:30:03 +00:00
Dmitry Stogov
a79d74b694 Fixed bug #40414 (possivle endless fork() loop when running fastcgi) 2007-02-15 12:33:16 +00:00
Dmitry Stogov
12bbbf022f Fixed Bug #40352 (FCGI_WEB_SERVER_ADDRS function get lost) 2007-02-15 12:04:59 +00:00
Andi Gutmans
71645e8c4f - Give Dmitry credit for all the FastCGI work 2007-02-14 08:12:27 +00:00
Dmitry Stogov
d44cb7fa7b Prevent flush of closed handle on php_module_shutdown() 2007-01-29 19:36:01 +00:00
Sebastian Bergmann
4223aa4d5e MFH: Bump year. 2007-01-01 09:36:18 +00:00
Antony Dovgal
2820e6c1fa MFH 2006-12-28 22:36:53 +00:00
Dmitry Stogov
868ac7d3a3 Fixed bug #39869 (safe_read does not initialize errno). (michiel at boland dot org) 2006-12-19 09:17:04 +00:00
Dmitry Stogov
7389f59f4d Fixed FastCGI impersonation for persistent connections on Windows 2006-12-05 08:55:15 +00:00
Dmitry Stogov
8619bf8332 Removed unnecessary getenv/putenv calls 2006-11-15 13:33:41 +00:00
Dmitry Stogov
0916ac47c9 Fixed wrong ext/filter behavior. It didn't register FastCGI environment variables and made memory leaks. 2006-11-15 11:13:02 +00:00
Dmitry Stogov
5caf547a9f 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:31:47 +00:00
Pierre Joye
c002606a88 - fix build (var.s is for zstr) 2006-11-03 16:40:52 +00:00
Ilia Alshanetsky
6123f11021 MFH:
Added filter support for $_SERVER in cgi/apache2 sapis
	Make sure PHP_SELF is filtered in Apache 1 sapi
2006-11-03 13:51:48 +00:00
Dmitry Stogov
bf95b64376 Fixed bug #39020 (PHP in FastCGI server mode crashes) 2006-10-16 10:46:59 +00:00
Dmitry Stogov
4705155d13 Removed unused libfcgi 2006-09-28 09:37:52 +00:00
Antony Dovgal
bc81c718c8 fix CGI build 2006-09-23 12:27:40 +00:00
Ilia Alshanetsky
be18d5f345 Restore support for unquoted -d options 2006-09-22 17:41:09 +00:00
Dmitry Stogov
7d14dad02e MFH: Fixed mess with CGI/CLI -d command line option (now it works with cgi; constants are working exactly like in php.ini; with FastCGI -d affects all requests). 2006-09-19 20:33:12 +00:00
Dmitry Stogov
da09526eac Fix for bug #38757 (MultiPart Form Uploads fail with FastCGI) 2006-09-13 13:03:01 +00:00
Dmitry Stogov
567a4785b3 Don't try to do safe connection close in case of FastCGI protocol error 2006-09-11 07:22:40 +00:00
Dmitry Stogov
a5107c1803 Fixed "signed/unsigned mismatch" warning. 2006-09-04 07:26:48 +00:00
Dmitry Stogov
f9d9c4a6aa FastCGI environment variables must not be overriden by system environment variables 2006-08-31 13:11:58 +00:00
Ilia Alshanetsky
672da2daeb MFH: sa_len compile fix for IRIX
# Patch by Sascha
2006-08-20 18:24:11 +00:00
Dmitry Stogov
b9ba07f7a0 Documentation fix 2006-07-24 12:15:07 +00:00
Antony Dovgal
6c52ec1319 MFH: fix #37920 (compilation problems on z/OS) 2006-06-27 08:27:10 +00:00
Antony Dovgal
33616195b9 MFH: plug leak in CGI SAPI when running scripts with query string in console 2006-06-19 17:49:26 +00:00
Antony Dovgal
cd7d7039ac MFH: add missing ifdef and avoid "unused variable" warning 2006-06-19 11:39:02 +00:00
Nuno Lopes
6509311ebb plug memory leak in sapi_putenv, by using setenv(), that doesnt need any malloc 2006-06-17 11:08:05 +00:00
Dmitry Stogov
eb8c558966 Removed warnings 2006-06-13 14:22:46 +00:00
Dmitry Stogov
5a73f8f13f Removed warning 2006-06-13 13:55:12 +00:00
Johannes Schlüter
2f418134ff MFH 2006-06-03 22:02:02 +00:00
Dmitry Stogov
630def46f7 Fixed bug #37496 (FastCGI output buffer overrun) 2006-05-25 06:40:04 +00:00
Dmitry Stogov
6fe36adf0c Fixed bug #37256 (php-fastcgi dosen't handle connection abort) 2006-05-24 09:42:21 +00:00
Dmitry Stogov
07b8d051fa Fixed bug #37341 ($_SERVER in included file is shortened to two entries, if $_ENV gets used). 2006-05-24 07:55:19 +00:00
Dmitry Stogov
302c53fc5d Fixed bug #37496 (FastCGI output buffer overrun) 2006-05-22 09:22:20 +00:00
Antony Dovgal
52cb01a933 fix typo 2006-05-22 06:49:48 +00:00
Edin Kadribasic
52566bba75 Give exe files 8MB stack (same default as on Linux) instead of Windows default 1MB 2006-05-18 21:46:12 +00:00
Dmitry Stogov
b5cd968ffc - Removed source compatibility with libfcgi
- Optimized access to FastCGI environment using HashTable instead of linear search
- 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:31 +00:00
Ilia Alshanetsky
57184454e9 Fixed bug #37376 (fastcgi.c compile fail with gcc 2.95.4). 2006-05-09 22:00:08 +00:00
Dmitry Stogov
b096a5de17 Fixed bug #37313 (sigemptyset() used without including <signal.h>). (jdolecek) 2006-05-05 07:05:34 +00:00
Antony Dovgal
24f0701867 MFH: plug leak 2006-05-03 19:40:58 +00:00
Dmitry Stogov
f03fe1c09d Fixed bug #37205 (incompatibility with mod_fastcgi) 2006-05-03 15:39:16 +00:00
Dmitry Stogov
79fd560e5e Fixed incompatibility with isapi_fcgi.dll 2006-05-03 13:19:57 +00:00
Dmitry Stogov
ff452441e2 Proper fix for bug #37205 2006-04-27 11:39:32 +00:00
Dmitry Stogov
e0beb7fc71 Revert wrong fix 2006-04-26 17:48:27 +00:00
Dmitry Stogov
bbda630ed9 Fixed bug #37205 (Serving binary content/images fails with "comm with server aborted" FastCGI err) 2006-04-26 11:08:10 +00:00
Dmitry Stogov
5b973c86ee iFixed compilation on Solaris 2006-04-24 09:53:57 +00:00
Dmitry Stogov
d19c105819 Fixed SUN_LEN calculation 2006-04-18 06:59:19 +00:00
Dmitry Stogov
73e4913cca Fixed memory leaks 2006-04-18 06:58:43 +00:00
Dmitry Stogov
79b3d79a95 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:23 +00:00
Dmitry Stogov
8c40d605e4 Removed unnecessary copying 2006-04-07 12:39:43 +00:00
Dmitry Stogov
cb3a53db83 Cleanup 2006-03-23 10:19:30 +00:00
Dmitry Stogov
0c1b4f45eb Allowed '-b' with UNIX sockets:
-b <hostname>:<port_number>
  -b <port_number>
  -b <unix_socket_path>
2006-03-23 10:15:01 +00:00
Dmitry Stogov
76a7240d70 Optimized FastCGI SAPI check. Check for ini options only once. 2006-03-17 09:32:30 +00:00
Alex Waugh
b8d26da1be MFH Fix for RISC OS 2006-03-07 22:37:53 +00:00
Marcus Boerger
5a69b29082 - Warning fixes by Steph 2006-02-26 10:57:00 +00:00
Frank M. Kromann
5e673e0639 Fix build on win32 2006-02-04 23:54:21 +00:00
Dmitry Stogov
aa1142eded Fixed bug #36158 (SIGTERM is not handled correctly when running as a FastCGI server) 2006-02-03 16:30:09 +00:00
Dmitry Stogov
6a176fa7b3 AIX support 2006-02-02 09:59:23 +00:00
Dmitry Stogov
7e7fcc3a07 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.
2006-02-02 08:17:23 +00:00
foobar
5bd93221a8 bump year and license version 2006-01-01 12:51:34 +00:00
Dmitry Stogov
5461b5a6b1 Fixed bug #34429 (Output buffering cannot be turned off with FastCGI) 2005-12-09 17:01:50 +00:00
foobar
bde40a73db MFH: fix possible compile error 2005-12-03 01:28:16 +00:00
Michael Wallner
496fd1c041 - 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:38:13 +00:00
Johannes Schlüter
d3dc0a39bc - MFH: Fix #34557 php -m exits with "error" 1 2005-10-06 20:29:41 +00:00
foobar
20241fe16a - 2004 -> 2005 2005-08-03 11:12:19 +00:00
Dmitry Stogov
8de3367453 Fixed support for shared extensions on AIX 2005-07-07 05:54:43 +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
a20383ba06 - Unify the "configure --help" texts 2005-05-29 23:17:16 +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
foobar
9af93dbb41 Expose EXEEXT and use for cli/cgi binaries 2005-04-21 14:57:53 +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
84e560435e MFB: Fix VPATH build 2005-03-06 23:16:44 +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
foobar
a139dbf9cc - Fix outside-source-tree builds. Always include generated header files
with #include <some_header.h> to make sure the correct file is used.
2005-01-09 21:05:06 +00:00
foobar
69eec3f3b9 MFB_4_3: Quote macro names in AC_DEFUN() 2004-12-30 07:08:39 +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
foobar
f4983c0d3f - Renamed all *php4* files to *php5*, changed all php4/PHP4 to php5/PHP5 2004-01-17 13:00:38 +00:00