Commit Graph

2231 Commits

Author SHA1 Message Date
Zeev Suraski
0a49c033d0 - Use the new infrastructure of zend_symtable_*() (fixes bug #24565)
- Fix bogus use of get_current_key()
2003-07-22 16:08:50 +00:00
Ilia Alshanetsky
1e92b5e7a3 Make php_check_safe_mode_include_dir check independent of unrelated
open_basedir directive and make it properly handle undefined/empty
safe_mode_include_dir directive when safe_mode is enabled.
2003-07-22 01:32:01 +00:00
Zeev Suraski
023c8a7d95 Fix register_globals 2003-07-21 17:42:24 +00:00
Zeev Suraski
f4ae16519c Remove old code 2003-07-21 17:41:42 +00:00
Marcus Boerger
244795a4df Fix text output of numbers with absolute exponent greater than or equal 80.
#
# Probably not last conclusion on wisdom. But i looked up current apache
# sources and they have the same error and so this must do the trick.
#
2003-07-17 21:26:25 +00:00
Marcus Boerger
bdfed34ef6 Bugfix #22690 2003-07-16 08:36:04 +00:00
Wez Furlong
5cf5248b00 Fix for mips compiler. 2003-07-14 19:38:13 +00:00
foobar
253dc38445 Fixed bug #24563 (preg_match() crashes PHP under Apache2) 2003-07-10 16:08:56 +00:00
Wez Furlong
fa342d2404 MFB: binary mode by default under win32. 2003-07-05 08:25:25 +00:00
Sterling Hughes
9a29929029 avoid external conflicts in apache 2003-07-04 18:19:02 +00:00
Moriyoshi Koizumi
fd9d9dea1c Fix build 2003-07-03 15:26:12 +00:00
foobar
50d3650a92 Cut the long line a bit for readability.. 2003-07-03 02:59:04 +00:00
Ilia Alshanetsky
a96aa89ae3 Compiler warning fix. 2003-07-03 00:55:20 +00:00
Sara Golemon
444615e74c Introduce connection pooling API. I'll use these in http/ftp fopen wrappers soon. 2003-07-02 22:18:59 +00:00
Wez Furlong
49228bd5e2 more size_t -> socklen_t.
Noticed by tychay@php.net
2003-07-02 21:11:35 +00:00
Wez Furlong
989500b347 socklen_t needs this.
We might need some more magic to ensure that socklen_t gets defined in
the correct places; lets see if any more problems arise...
2003-07-02 01:35:39 +00:00
Wez Furlong
17cbf83404 size_t -> socklen_t
fixes warnings under macosx
2003-07-01 19:51:06 +00:00
Ilia Alshanetsky
8cb5c9c6ba Fixed bug #24063 (*printf() did not handle scientific notation correctly) 2003-06-30 01:03:21 +00:00
Rui Hirokawa
2b44c63d50 Fixed corruption of multibyte character including 0x5c as second
byte in multipart/form-data.
2003-06-28 23:37:18 +00:00
Wez Furlong
5ecc91c27d Merge selectable descriptor casting from PHP_4_3 branch. 2003-06-28 11:24:47 +00:00
Wez Furlong
8dfe385215 Merge getaddrinfo() tidy-up from PHP_4_3 branch. 2003-06-28 11:12:48 +00:00
Wez Furlong
c0c20ef6f6 Fix for mips compiler 2003-06-28 11:06:11 +00:00
Edin Kadribasic
2e9c9427ec Move along, nothing to see. 2003-06-27 22:18:06 +00:00
Sterling Hughes
1135af7340 beta 1 2003-06-27 22:09:12 +00:00
Sebastian Bergmann
f8af9c3cee MFB: libpcre 4.X needs POSIX_MALLOC_THRESHOLD to be defined. 2003-06-27 16:43:05 +00:00
foobar
3a7ca909be - HAVE_OPENSSL_EXT is not defined always. 2003-06-27 16:41:41 +00:00
Sara Golemon
2e4ef86e10 MFB
Plug leak in context notifiers, implement notifier->dtor
2003-06-27 16:23:58 +00:00
Edin Kadribasic
94b7050bc0 Enabled sqlite by default on Windows.
# Also added iconv.lib to the build since it is a dependency of
# the precompiled libxml. This will be removed later.
2003-06-27 14:32:59 +00:00
Sascha Schumann
9979003eeb undefine macros before defining them 2003-06-27 07:43:42 +00:00
Sara Golemon
ac79577776 MFB PHP_4_3 main/streams.c r-1.125.2.70 2003-06-27 04:27:18 +00:00
Zeev Suraski
daae086380 New logo (not final yet...) 2003-06-26 17:30:41 +00:00
Sebastian Bergmann
1c6c9e9485 Sync. 2003-06-26 15:15:02 +00:00
Sebastian Bergmann
4434c8e0d6 Add ext/dom and ext/simplexml to the Win32 default build. #Apart from a linker error when HAVE_SIMPLEXML=1 is set this already works. More research, after a good night's sleep, is required ;-) 2003-06-25 21:37:50 +00:00
Sebastian Bergmann
926bd5cf29 Disable MySQL extension by default. 2003-06-25 05:01:50 +00:00
Sebastian Bergmann
a10e5b6381 Remove ext/rpc references from Windows build. 2003-06-25 04:54:23 +00:00
Ilia Alshanetsky
419448238b Fixed typo. 2003-06-24 14:36:01 +00:00
Ilia Alshanetsky
6b5b6079da Fix for bug #24313 (port from dead PHP_5 branch) 2003-06-24 13:56:25 +00:00
Ilia Alshanetsky
caef4c7776 Handle numeric keys passed via GPC 2003-06-17 17:15:02 +00:00
Ilia Alshanetsky
e40142047b Fixed bug #24208 2003-06-16 19:24:56 +00:00
Sara Golemon
730ce7b06f Add context property to userspace streams object. 2003-06-16 19:13:39 +00:00
Sara Golemon
2f4e91bf8a optionvalue is being copied via zval_copy_ctor, there's no need to addref the original 2003-06-16 18:19:14 +00:00
Edin Kadribasic
6e2743023b Win32 build fixes for openssl 2003-06-15 23:34:46 +00:00
Marcus Boerger
f304458bdb Fix ZTS mode (hopefully all is working fine now again) 2003-06-14 19:30:42 +00:00
Ilia Alshanetsky
93a5238465 Fixed bug #24007 (Problem with register_globals & arrays) 2003-06-14 15:08:27 +00:00
Sara Golemon
99db19661a Plug leak (context options not freed)
Make contexts auto-registered, ensures userland contexts
and C API contexts are both dealt with on request shutdown.
Also brings contexts in keeping with streams which are already
auto-registered.
2003-06-13 21:33:59 +00:00
Derick Rethans
5b1f7be3eb - MFB: HTTP Request Methods are case sensitive
#- This was surrounded by an #ifdef, but I thought I fixed it too.
2003-06-12 08:38:58 +00:00
James Cox
f68c7ff249 updating license information in the headers. 2003-06-10 20:04:29 +00:00
Edin Kadribasic
f7c9551d5e MFB 2003-06-09 01:00:23 +00:00
Zeev Suraski
ce40bc9073 Make $_FILES auto global (bug #23680) 2003-06-08 15:30:33 +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
foobar
d5253b4f1f Follow the "standard" naming. 2003-05-30 20:03:10 +00:00
Hartmut Holzgraefe
ac2606bf58 fix for crashbug with user level wrapper implementations of stream_stat 2003-05-29 20:19:03 +00:00
Sebastian Bergmann
d1cb228bf1 Get rid of references to expat in MSVC project files. For now this expects libxml2 (library and includes) in one of the MSVC default include/library directories. Right now it doesn't link, dunno why -- working on it. 2003-05-24 08:03:38 +00:00
Sara Golemon
dccf33b4e8 MFB(r-1.122.2.10)
Bug#23765 File upload handler should not care about case sensitivity of header values.
2003-05-23 21:40:45 +00:00
Ilia Alshanetsky
5298fd6256 MFB 2003-05-21 22:56:59 +00:00
Wez Furlong
2d1a6e5dc2 MFB context refcounting and text-mode fopen fixes 2003-05-21 13:33:55 +00:00
Sara Golemon
83b7b75c3c Implement default contexts. For the moment this is useless
but it will be used soon for connection pooling.
2003-05-21 04:04:50 +00:00
Hartmut Holzgraefe
b5bef8f7b3 always return timestamps as 'atime', 'mtime' and 'ctime'
no matter what names the underlying platform uses for them
2003-05-20 13:09:11 +00:00
Wez Furlong
192f632e2e MFB fix for persistent streams recycling. 2003-05-19 22:58:34 +00:00
Marcus Boerger
f10a7b90b2 Fix warning 2003-05-19 18:48:15 +00:00
Marcus Boerger
1b0fdbf63a Fix memleaks 2003-05-19 18:46:59 +00:00
Sebastian Bergmann
88cb80020a First try at getting the Windows build working again after libxml2 got unbundled. 2003-05-19 16:28:08 +00:00
Derick Rethans
92f0da58e6 - Rename stream_register_filter() to stream_filter_register(),
stream_register_wrapper() to stream_wrapper_register() and added an alias for
  the latter change.
2003-05-19 15:35:06 +00:00
Stanislav Malyshev
605eb159e0 Bump API version - HEAD is no longer binary compatible
to 4.3 branch due to changes in globals, etc.
2003-05-18 10:22:50 +00:00
Frank M. Kromann
941d4c3e99 Fix compilation under Win32 2003-05-17 22:15:39 +00:00
Wez Furlong
84fc3f384a Fix segfault 2003-05-17 09:34:37 +00:00
Sebastian Bergmann
85a13e3e9a Fix warnings. 2003-05-17 06:21:34 +00:00
Wez Furlong
e9b62698c7 Stronger validation of ob_start() parameters. 2003-05-16 19:08:13 +00:00
Sara Golemon
44743cf9ec Implement userspace wrapper support for unlink method 2003-05-14 18:30:49 +00:00
Sara Golemon
65d359d71a Fold 'options' parameter into wops->unlink method 2003-05-14 15:12:07 +00:00
Sara Golemon
5126fbe556 Setup unlink() method in wrapper_ops structure, implement unlink in plainfiles wrapper, explicitly set method NULL in other wrappers (for now), and rewrite unlink userland function to call into wrapper_ops 2003-05-14 06:10:04 +00:00
Ilia Alshanetsky
b76261dcbb Fixed bug #23454 (_REQUEST did not handle arrays with same names from
different sources correctly).
2003-05-13 22:08:48 +00:00
Sascha Schumann
2c7c0457b6 Ensure that open(".", 0); works, otherwise bail out 2003-05-13 18:48:01 +00:00
Sascha Schumann
af402a9e13 MFB don't close random fds 2003-05-13 02:26:42 +00:00
Ilia Alshanetsky
56ba9b4ae5 emalloc -> safe_emalloc 2003-05-13 01:57:54 +00:00
Ilia Alshanetsky
b20df54af7 Make serialize precision a configurable option. 2003-05-08 01:23:21 +00:00
Marcus Boerger
3fc4a32743 Infrastructure to catch warnings and throw tehm as errors autmatically 2003-05-07 01:02:23 +00:00
Sebastian Bergmann
4c8e30eccc MFB: Fix for bug #23489. 2003-05-06 04:22:01 +00:00
Ilia Alshanetsky
4f4cc4f7a3 Sanity check that ensures proper handling of 'E' doubles/floats as well as
prevents an unlikely buffer overflow.
2003-05-05 19:54:28 +00:00
foobar
1948b45b3f Make use of --with-exec-dir for real.. 2003-04-28 21:00:32 +00:00
foobar
f140ae993f fix compiler warning (unused variable) 2003-04-25 18:11:32 +00:00
foobar
2219a62606 - Made 'register_long_arrays' to be "On" by default. 2003-04-25 10:57:23 +00:00
Sascha Schumann
652b615438 Fix PUTS/PUTS_H to only evaluate their argument once. 2003-04-19 18:35:31 +00:00
Sara Golemon
0c366c24e5 Macro: php_stream_get_from_zval(php_stream *stream, zval **zstream, char *mode, int options, char **opened_path, php_stream_context *context) Z_TYPE_PP(zstream) can be either IS_RESOURCE (An already opened stream) or IS_STRING (a path to a stream to be opened) 2003-04-17 00:00:34 +00:00
Marcus Boerger
b09aa87120 Don't access what is already freed (noticed by Sascha) 2003-04-16 17:30:03 +00:00
Moriyoshi Koizumi
49b43ad115 Changed stream filter factory to be capable of accepting a zval as a parameter
instead of a string
2003-04-16 14:30:25 +00:00
Sascha Schumann
bb50c3846f Fix uninitialized reads
==32323== Conditional jump or move depends on uninitialised value(s)
==32323==    at 0x80F5A5C: zend_ini_color_displayer_cb (/home/sas/src/php4/Zend/zend_ini.c:374)
==32323==    by 0x80C5B7F: php_ini_displayer_cb (/home/sas/src/php4/main/php_ini.c:60)
==32323==    by 0x80C5D15: php_ini_displayer (/home/sas/src/php4/main/php_ini.c:115)
==32323==    by 0x80F0168: zend_hash_apply_with_argument (/home/sas/src/php4/Zend/zend_hash.c:707)
2003-04-16 12:44:08 +00:00
Marcus Boerger
75c8f37c03 Make it static 2003-04-13 20:30:57 +00:00
Marcus Boerger
887d5ec9c1 Speling 2003-04-13 20:12:54 +00:00
Marcus Boerger
bff63db577 Fix persistent stream closing (that one took me at least 3 days) 2003-04-13 19:47:55 +00:00
Wez Furlong
2090d23f02 Fix for #23069 (Windows sets readonly mode for temporary files in tempnam) 2003-04-11 11:08:44 +00:00
Andrei Zmievski
2154cddd0e Move memnstr into Zend and make an alias for BC in PHP. 2003-04-08 15:04:26 +00:00
Sara Golemon
d6c24de842 Add IPv6 support to stream_socket_client/server() 2003-04-05 02:42:12 +00:00
Andrei Zmievski
81482833b5 Introduce ZEND_ME() and ZEND_METHOD() macros. Use these for declaring
class methods to avoid name collisions.
2003-04-04 15:38:20 +00:00
Sascha Schumann
7f5a42da17 Backout Jani's commit to resync branches 2003-04-04 08:40:48 +00:00
Sara Golemon
c985b780a5 Prevent php_stream_get_record from grabbing more than maxlen characters 2003-04-04 01:34:00 +00:00
foobar
ff22d581d9 WS & CS fix 2003-04-03 18:44:00 +00:00
Sascha Schumann
7e2fcf986e Add some checks and avoid passing invalid data to call_user_function_ex.
Fixes some heap corruption and allocation of negative amounts of memory.
2003-04-03 18:19:15 +00:00
Moriyoshi Koizumi
f7a8499806 Fixed memleak in output buffering facility 2003-04-03 00:50:17 +00:00
Colin Viebrock
a77cb3c35d oops ... committed the wrong one 2003-04-02 16:28:38 +00:00
Colin Viebrock
6aa1481f83 fix logo (outline around letters) 2003-04-02 15:36:34 +00:00
Sascha Schumann
e2333fd1df Fix an uninitialized read, default to FAILURE 2003-04-01 19:14:47 +00:00
Moriyoshi Koizumi
8d2dd87d89 Fixed bug #22538 (stream filter problem) 2003-03-31 23:22:10 +00:00
Ilia Alshanetsky
62909237c4 WS 2003-03-31 22:13:01 +00:00
Marcus Boerger
0235d331b7 use the correct macro - noticed by Andrei 2003-03-31 19:14:18 +00:00
Marcus Boerger
7a76d5f438 cleanup 2003-03-30 13:59:05 +00:00
Shane Caraveo
0f3a0dfa52 _SERVER also should not be quoted by magic_quotes_GPC
also remove an empty if statement
2003-03-30 01:06:54 +00:00
Marcus Boerger
b5c97d8dab fix phpinfo() & php -i 2003-03-29 21:25:03 +00:00
Moriyoshi Koizumi
e1eb238cf2 On 64bit platforms, pointers are 64bit long.. 2003-03-28 17:09:04 +00:00
Moriyoshi Koizumi
961ad8e24a Improved php_import_environment_variables: avoid emalloc()ing in most cases 2003-03-27 21:13:47 +00:00
Sterling Hughes
84f0dd0e44 really fix 2003-03-26 23:03:48 +00:00
Sterling Hughes
c0f04cc087 fix segfault 2003-03-26 23:01:39 +00:00
Sebastian Bergmann
3fc852824f Eliminate TSRMLS_FETCH() calls in destroy_op_array() and zend_get_class_entry(). 2003-03-26 07:44:11 +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
456b6cbeab The environment should *never* be magic quoted. 2003-03-23 19:30:31 +00:00
Shane Caraveo
26296130ad Fix PHPRC overriding other ini files. This is how PHPRC worked prior to
4.3.x, and is usefull for applications that execute PHP and want to
emulate CGI and define alternate INI files (ie. cannot use -c).
2003-03-22 18:54:35 +00:00
Wez Furlong
e451d88399 Fix for persistent stream shutdown under debug builds 2003-03-20 01:23:04 +00:00
foobar
88fe9c2d3c Fixed bug #22775 (Fatal errors exit with status 0 with CGI/CLI) 2003-03-19 08:22:12 +00:00
Wez Furlong
7379f47518 Sanity check for when a stream is requested to be persistent but the wrapper
does not respect the flag.
2003-03-19 00:17:15 +00:00
Wez Furlong
86fb577d59 Implement persistent plain file streams.
Usage:

php_stream *stream = php_stream_fopen("/path/to/file", "r+b", NULL,
	STREAM_OPEN_PERSISTENT | ENFORCE_SAFE_MODE | REPORT_ERRORS);

the filename and mode are combined to form the hash key for the persistent
list; they must be identical for this same stream to be returned again in the
next request.

Calling php_stream_close() on a persistent stream *will* close it, as is
usual with all persistent resources in PHP/ZE.

This is deliberately *not* exposed to user-space PHP at this time.
2003-03-18 23:37:54 +00:00
Wez Furlong
6a87651006 Q} 2003-03-18 22:26:02 +00:00
Marcus Boerger
4529fb344c -turn html_errors on by default again
-disbale clickable error messages by docref_root default to ''
2003-03-18 22:21:54 +00:00
Marcus Boerger
3e621fac94 make phpinfo() depend on executed sapi 2003-03-18 20:52:52 +00:00
Wez Furlong
ce01fd9526 Avoid using FILE* where possible.
Tidy up handling of potential error situations for the php:// wrapper.
2003-03-18 16:40:29 +00:00
Marcus Boerger
63739c7db8 give sapi modules the possibility to overwrite default ini settings 2003-03-18 15:53:33 +00:00
Wez Furlong
267db80b21 avoid unsigned issues. 2003-03-18 15:15:10 +00:00
Wez Furlong
7c2ccb5f65 Fix for #22721 (poor file() performance on systems without mmap) 2003-03-18 14:35:01 +00:00
Stig Bakken
0e6fca4f22 * email address change 2003-03-18 12:06:09 +00:00
Ilia Alshanetsky
e15cc99415 Win32 build fix. 2003-03-17 22:25:55 +00:00
Ilia Alshanetsky
27a7eaf4e7 Fixed bug #22538 (failed stat on stdio/stdin/stderr streams). 2003-03-17 18:32:15 +00:00
Wez Furlong
cfd0466389 Fix for Bug #21310, based on a patch by jflemer@php.net. 2003-03-17 13:40:45 +00:00
Marcus Boerger
aba27fc6ca - disable html_errors per default as suggested by php.ini-<xxx>
- new error format that does not point to any documentation (if either
  not html_errors or no docref_root given e.g.: production boxes and default)
- documentation update in php.ini-<xxx>
# hope everyone is happy now
# and why on earth was enabling html_errors default?
2003-03-16 20:47:56 +00:00
Marcus Boerger
f60e8941e7 fix Bug #21751 - the parameter was wrong when this code was introduced 2003-03-15 16:39:35 +00:00
Wez Furlong
16e705a547 64bit fixes 2003-03-15 13:29:56 +00:00
Stefan Esser
10fc5dd573 reverting half the patch (it is not that simple) 2003-03-12 12:00:22 +00:00
David Hill
1edf7f55e5 64 bit corrections to parameters to OnUpdateInt Bug #20994 (Dave) 2003-03-10 14:50:16 +00:00
Marcus Boerger
d0fbdef419 fix warnings - one left 2003-03-08 16:53:54 +00:00
Stefan Esser
4535ff1756 fix possible XSS in error messages 2003-03-08 15:20:12 +00:00
foobar
3c9155e0cb Renamed OnUpdateInt -> OnUpdateLong to prevent further misunderstandings.
# Intentionally left out any 'alias' for it, this way 3rd party extension
# maintainers will really NOTICE the change.
2003-03-07 05:15:28 +00:00
David Hill
5c90216d2c 64-bit correction to variables passed to zend_parse_parameters
@64-bit correction to variables passed to zend_parse_parameters (Dave)
2003-03-06 23:07:28 +00:00
Stefan Esser
af4aa97d1e Fixing functionicalls with variable number of parameters... 2003-03-06 20:31:20 +00:00
Ilia Alshanetsky
4e6997ddf9 Fixed bug #22550 (overflow protection for upload_max_filesize ini setting). 2003-03-05 17:00:09 +00:00
foobar
61668d86b2 ws & CS 2003-03-04 14:12:39 +00:00
Ilia Alshanetsky
fb4dab36f4 Compiler warning fix. 2003-03-03 19:57:18 +00:00
Ilia Alshanetsky
4705fef539 More compiler warnings fixed. 2003-03-03 19:46:16 +00:00
Ilia Alshanetsky
94302c72b3 Compiler warning fix. 2003-03-03 19:41:36 +00:00
Ilia Alshanetsky
66c05f7035 Fixed compiler warnings. 2003-03-03 19:37:09 +00:00
Harald Radi
3e52882d3b adding disable_classes ini directive based on the
newly introduced zend_disable_class function
2003-03-03 01:27:22 +00:00
Zeev Suraski
1f63fba1b7 Fix old variable names 2003-03-02 15:41:12 +00:00
Zeev Suraski
622da33231 - Optimize $_REQUEST
- Fix phpinfo()
2003-03-02 13:35:01 +00:00
Zeev Suraski
4e55747a2b Add JIT initialization for _SERVER and _ENV
(it's less important for the others, even though it should be fairly
easy now too)
2003-03-02 10:19:15 +00:00
Moriyoshi Koizumi
6716188356 Reverted my previous commit 2003-03-01 18:47:18 +00:00
Wez Furlong
c3e6bcd398 Ensure that all fields are initialized to NULL. 2003-03-01 17:27:23 +00:00
Moriyoshi Koizumi
3de8b87cba Fixed build 2003-03-01 15:49:06 +00:00
Wez Furlong
242166d601 Don't shutdown() unix sockets.
It causes the server end to close down/break.
2003-03-01 15:22:21 +00:00
Wez Furlong
a3cf1ab8f6 Folding fixes 2003-03-01 15:20:42 +00:00
Wez Furlong
349ce76f96 Tidy up stupid signed/unsigned issues with win32 by introducing a php_socket_t typedef. 2003-02-28 21:03:36 +00:00
Rasmus Lerdorf
1ad304c2c5 MFB config-file-scan-dir crash fix 2003-02-28 20:48:38 +00:00
Wez Furlong
1b53a2d12e New user-space functions:
. stream_socket_client() - similar to fsockopen(), but more powerful.
  . stream_socket_server() - Creates a server socket.
  . stream_socket_accept() - Accept a client connection.
  . stream_socket_get_name() - Get local or remote name of socket.

Tidy up some leaks and debug printfs.
Move more streams functions into streamsfuncs.c and streamsfuncs.h.
2003-02-28 19:53:21 +00:00
foobar
08b5f6b2b9 - No need to include the ssl headers elsewhere but in ext/openssl
# ext/ftp doesn't use streams yet so it needs to include them.
2003-02-28 07:25:15 +00:00
Wez Furlong
cd98ed7b0a Implement memory mapping for win32.
Could do with some rigorous testing; simple readfile() tests here appear to work.
2003-02-28 01:47:28 +00:00
Ilia Alshanetsky
e089944308 compiler warning fixed. 2003-02-28 00:08:00 +00:00
Wez Furlong
cfd8150b30 Add a generic meta data api for streams. 2003-02-27 19:10:24 +00:00
Wez Furlong
203068d055 Fixup build for win32 2003-02-27 18:06:31 +00:00
Wez Furlong
fd61f69077 Another big commit (tm).
Main Changes:
- Implement a socket transport layer for use by all code that needs to open
  some kind of "special" socket for network or IPC.
- Extensions can register (and override) transports.
- Implement ftruncate() on streams via the ioctl-alike option interface.
- Implement mmap() on streams via the ioctl-alike option interface.
- Implement generic crypto API via the ioctl-alike option interface.
  (currently only supports OpenSSL, but could support other SSL toolkits,
  and other crypto transport protocols).

Impact:
- tcp sockets can be overloaded by the openssl capable sockets at runtime,
  removing the link-time requirement for ssl:// and https:// sockets and
  streams.
- checking stream types using PHP_STREAM_IS_SOCKET is deprecated, since
  there are now a range of possible socket-type streams.

Working towards:
- socket servers using the new transport layer
- mmap support under win32
- Cleaner code.

# I will be updating the win32 build to add the new files shortly
# after this commit.
2003-02-27 17:43:38 +00:00
Sascha Schumann
60dcebd71a rename macro argument so that it does not partially match the string.
fixes a warning on unixware
2003-02-27 10:07:12 +00:00
Rasmus Lerdorf
ca2a28774a MFB: Get rid of a redundant syscall on non-Windows 2003-02-26 22:19:01 +00:00
Derick Rethans
424c41a72e - Added an extra ini setting with which extra commands can be forced to
the sendmail deamon on a per-vhost base. The value in this ini setting
  will override all extra commands passed as the 5th parameter to mail()
  and will work in Safe Mode.
@- Added an extra ini setting (mail_force_extra_paramaters) which forces
@  the addition of the specified parameters to be passed as extra
@  parameters to the sendmail binary. These parameters will always replace
@  the value of the 5th parameter to mail(), even in safe mode. (Derick)
2003-02-26 20:04:16 +00:00
foobar
411478e1f6 Fixed bug #20256 (snprintf() not defined) 2003-02-25 09:44:12 +00:00
Ilia Alshanetsky
5e118977cd Fixed various compiler warnings. 2003-02-25 01:44:57 +00:00
Ilia Alshanetsky
9e0fb1a33c Use native flock() whenever possible. 2003-02-25 01:41:58 +00:00
Ilia Alshanetsky
862634ffa5 Added locking to streams.
Allow PHP to automatically release locks on files when terminating the
stream.
Fixed bugs in the handling of the 3rd optional parameter to flock().
2003-02-25 01:39:06 +00:00
Moriyoshi Koizumi
4759048194 Removed unnecessary asserts 2003-02-24 23:13:40 +00:00
Wez Furlong
088e2692c3 MFB: Bunch of streams related fixes. 2003-02-24 21:40:23 +00:00
foobar
8c3cd0344d MFB: Fix for open_basedir error message 2003-02-23 22:30:02 +00:00
Wez Furlong
c1bdf163ed Add comment about thread-safety of gethostbyname on win32.
Set the correct path to the win32 config.h file in the .dsp file.
2003-02-21 14:06:55 +00:00
Rasmus Lerdorf
d08a0e99c8 An input filter might not simply strip stuff, it might also turn things
into entities or use some other mechanism which causes the filtered data
to be longer than the original data.  Ergo, pass in the address of the
buffer instead so the filter is free to reallocate it.
2003-02-20 22:21:49 +00:00
Rasmus Lerdorf
7429c2dc3f Input Filter support. See README.input_filter for details.
@- Input Filter support added. See  README.input_filter. (Rasmus)
2003-02-19 19:41:09 +00:00
foobar
0458bb5e2b MFB 2003-02-19 18:45:51 +00:00
Harald Radi
53d70b2c14 prevent xdebug from crashing 2003-02-19 16:17:15 +00:00
foobar
7e3b50896c ws/style fixes 2003-02-19 09:38:11 +00:00
foobar
ec11fe04e9 Fix the possible conflicts with other libs (like libc-client) 2003-02-19 09:25:16 +00:00
foobar
8e3f23e3c0 ws fixes + missing $Id$ tags, headers added 2003-02-19 08:40:19 +00:00
Wez Furlong
4c4d77d23e Fix incorrect TSRMLS_CC usage.
Fix com_create_guid()
2003-02-18 19:03:44 +00:00
Wez Furlong
e52aac940f Implement simple stream support in the ZE scanners. 2003-02-18 09:37:54 +00:00
Sara Golemon
6fe4ab41f0 Fix stream_filter_(ap|pre)pend to allow attaching on the read and/or write chains. Automagically decide what to do if noone tells us. 2003-02-18 02:53:24 +00:00
Wez Furlong
952d5f548e TSRMLS! 2003-02-18 01:39:26 +00:00
Wez Furlong
32165a5546 Implement new filter API, stage 1.
This breaks user-space filters (for the time being), and those
weird convert.* filters in ext/standard/filters.c

The filters stack has been separated into one chain for read and one chain
for write.

The user-space stream_filter_append() type functions currently only operate
on the read chain. They need extending to work with the write chain too.
2003-02-18 01:22:21 +00:00
Zeev Suraski
4934744b93 Win32 build improvements 2003-02-17 13:29:59 +00:00
Wez Furlong
6e296c5cbb Move some of the streams header into supplementary files
# Just when you thought you had learned your way around the streams code;
# I like to keep you all on your toes!
2003-02-17 00:20:38 +00:00
Wez Furlong
2cc68ad7ad Move streams files around a bit, to ease maintenance.
I will update the win32 .dsp in a moment.
2003-02-16 22:19:28 +00:00
Wez Furlong
0a18a9d744 A add much more useful select(2) implementation than is provided by
windows sockets.  The winsock implementation will only work with sockets;
our implementation works with sockets and file descriptors.
By association, stream_select() will now operate correctly with files, pipes and sockets.

This change required linking against the winsock2 library.  In terms of
compatibility, only older versions of windows 95 do not have winsock2
installed by default.  It is available as a redistributable file, and is most likely installed by any OS patches (eg: Internet Explorer) applied by the user.

Also, add a win32 compatible pipe test when opening a stream from a pipe.  This test will only work on NT, win2k and XP platforms.  Without this test, interleaved fread() and select() calls would cause the read buffer to be clobbered.  I will be working on a fix for this issue for win9x.
2003-02-16 03:48:49 +00:00
foobar
3a94aeae72 - Fix unsetting of open_basedir, safe_mode_exec_dir and user_dir with
"php_admin_value <ini option> none"
- Fixes bug #22220
2003-02-15 20:22:19 +00:00
Moriyoshi Koizumi
22517ce0de Fixed bug #22234 2003-02-15 19:56:12 +00:00
Wez Furlong
f98f27ffa9 MFB: Fix for bug #22199 2003-02-13 21:08:04 +00:00
Ilia Alshanetsky
f9669f6c49 Modified fix for bug #22187 so that it does not affect handling of numbers
represented in scientific notation.
2003-02-13 19:02:34 +00:00
Wez Furlong
cddcaf737f Another IS_SLASH fix. 2003-02-13 17:36:35 +00:00
Wez Furlong
cd7d762b79 A probable cure for many getcwd/relative include related problems for win32. 2003-02-13 17:20:20 +00:00
Ilia Alshanetsky
586672fd16 PAD() macro didn't increase the buffer size resulting in loss of the
padding.
2003-02-13 17:17:03 +00:00
Ilia Alshanetsky
343b92e66e Fixed a typo. 2003-02-13 16:22:03 +00:00
Ilia Alshanetsky
c28753de76 Simplified the mode validation code & added support for read+write mode to
'x' mode.
2003-02-13 15:09:39 +00:00
Wez Furlong
2953892df3 Clarify error message. 2003-02-13 14:52:54 +00:00
Ilia Alshanetsky
f8eba6ded2 Added 'x' mode for fopen() used on local files. This mode will create a new
file only if a file does not already exist (O_CREAT|O_EXCL).
2003-02-13 14:40:17 +00:00
Wez Furlong
77b98f8615 Potential fixes for #21809 and #22099. 2003-02-13 14:35:47 +00:00
Wez Furlong
35878992d8 Moving away from ANSI stdio for plain files. 2003-02-13 13:40:34 +00:00
Wez Furlong
068c90bd1d Whitespace-fix these goto labels. 2003-02-13 11:12:56 +00:00
Wez Furlong
b2b3596257 Fix for Bug #21815 (fpassthru ignored buffered data but then complained anyway) 2003-02-13 01:17:45 +00:00
Ilia Alshanetsky
f924aaf647 Fixed bug #22187 (spprintf function did not handle floats correctly). 2003-02-12 20:41:53 +00:00
Sascha Schumann
0cb1ff3bda - trims +100 lines of code from spprintf.c
- introduces an overflow detection in STR_TO_DEC
    - eliminates dead code (e.g. assert(foo); if (foo) {..})
    - removes unused macros from the original code
    - simplifies code (e.g. cc was completely dropped)
    - improves run-time performance

      The max_len feature is never used in our code base.
      Nevertheless, cpu cycles were spent on each string
      operation to check the current length against max_len which
      is quite inefficient.  Thus, I've moved the check to
      vspprintf where it is applied only once per call.
2003-02-12 19:38:10 +00:00
Stefan Esser
a0873a8f7d size matters not. 2003-02-11 21:44:02 +00:00
Stefan Esser
d2c550e991 8 + 20 + 1 + 1 = 30
There was no Bufferoverflow on 64bit systems.

And the "fix" broke the header code on systems with old style snprintf.
2003-02-11 21:41:32 +00:00
Marcus Boerger
e92f8f64e3 speed up 2003-02-11 20:30:37 +00:00
Moriyoshi Koizumi
6d95ea199d Fixed possible snprintf problem
# besides snprintf returns int value, not uint / size_t...
2003-02-10 20:18:08 +00:00
Moriyoshi Koizumi
9450b1e4b0 Fixed possible buffer overflow in 64bit systems 2003-02-10 20:11:10 +00:00
Moriyoshi Koizumi
9d5811c1f0 Jani happification 2003-02-10 19:45:34 +00:00
Moriyoshi Koizumi
21f766b7a4 Fixed zlib.output_compression so it can work even if zlib extension is built as shared 2003-02-10 19:04:44 +00:00
Sascha Schumann
ba32a619ae use SUCCESS/FAILURE instead of 0/-1 2003-02-09 21:15:55 +00:00
Ilia Alshanetsky
f98ea4c46d Added feature request #9173 (added stream_get_line(), this function will
read either the specified number of bytes or until the ending string is
found).
2003-02-09 20:43:05 +00:00
foobar
a09e1397c7 Fixed compile failures when ZLIB / PCRE are compiled as shared
extensions in same build.
2003-02-09 19:09:52 +00:00
Ilia Alshanetsky
a592f3cc56 Added missing definitions. 2003-02-07 22:49:21 +00:00
Ilia Alshanetsky
b1a6778fe5 Added get_browser() function. This function can be used to fetch the headers
sent by the server when a request is made for a given URL.
2003-02-07 21:33:35 +00:00
Zeev Suraski
021d1b684b Fixlet 2003-02-07 09:39:39 +00:00
Hartmut Holzgraefe
2546f09b08 proto-fix 2003-02-03 23:36:19 +00:00
foobar
173b9493e2 Fixed bug: #22011 (-n must ignore all ini files) 2003-02-03 12:25:28 +00:00
Ilia Alshanetsky
ccf8365baa Fixed bug #22021. 2003-02-02 23:09:24 +00:00
Ilia Alshanetsky
87a113f5c1 Fixed build on Solaris (patch by Melvyn Sopacua). 2003-02-02 20:26:46 +00:00
Sascha Schumann
4cf174cbd4 Fix sticky EOF problem
Sometimes streams signal a temporary EOF, because all current data
has been consumed. But that does not preclude the possibility that
more data will become available later.

Thus we must not treat eof in the read path as final.

Now, "tail -f" like scripts work again.
2003-01-30 21:06:34 +00:00
Harald Radi
f8e014b228 MFPHP_4_3 2003-01-29 00:49:09 +00:00
Derick Rethans
1ca8d7d4c3 - Fix includes 2003-01-28 16:05:34 +00:00
Ilia Alshanetsky
4fe6fc8b0b Fixed compiler warning. 2003-01-28 16:04:10 +00:00
Ilia Alshanetsky
b9a7918c43 2nd part of Sebastian's patch. 2003-01-28 00:42:54 +00:00
Ilia Alshanetsky
d59d500af7 Moved the scandir code into it's own files so that it can be used by other
OSes where libc does not have a native scandir() implementation.
2003-01-27 20:39:31 +00:00
Ilia Alshanetsky
9bb3dc6903 Removed pointless checks. 2003-01-27 17:22:22 +00:00
Shane Caraveo
82f6cef483 Fix broken build by adding scandir and alphasort for win32 2003-01-26 01:39:18 +00:00
Ilia Alshanetsky
8d352d2dd6 Fixed bug #21625 (When scanning a directory for ini files, do so in
alphabetical order. This gives a user a way to control the order in which
the ini files are loaded).
Fixed a bug that would make the code try to read files without an extension
as ini files.
2003-01-25 21:13:00 +00:00
Sascha Schumann
294e776d95 add sapi_get_target_uid/_gid for obtaining information about the
non-privileged user the web server is running as.  this is useful
for creating shared memory segments which need to be accessed by
the child processes/threads.
2003-01-21 11:03:58 +00:00
Harald Radi
b51b6f0fbf ini patch to allow 'entry[] = value' entries 2003-01-19 12:18:46 +00:00
Sebastian Bergmann
0e178230b2 Move ZEND_ENGINE_2 check to where it is defined. 2003-01-17 06:15:24 +00:00
Harald Radi
914cf3c0f8 move the ZE2 check into internal_functions_win32.c 2003-01-16 22:09:58 +00:00
Harald Radi
dd67c075bc add COM 2003-01-16 18:17:48 +00:00
Harald Radi
7c0e7b4fe8 prevent HEAD + ZE1 builds and add COM 2003-01-16 18:16:50 +00:00
Sascha Schumann
6f4333c7ae scrap STANDARD_SAPI_MODULE_PROPERTIES; it is causing more harm than good 2003-01-15 21:13:01 +00:00
Sebastian Bergmann
be3427e4f0 Define PHP_CAN_SUPPORT_PROC_OPEN. 2003-01-15 16:53:49 +00:00
Sascha Schumann
0855c0b603 whitespace 2003-01-15 11:30:39 +00:00
Sascha Schumann
4668b7130b whitespace 2003-01-15 11:22:04 +00:00
Harald Radi
c3867a7c8e HEAD defaults to build with ZE2 now 2003-01-10 23:36:18 +00:00
Ilia Alshanetsky
9b560970f8 Fixed compiler warnings. 2003-01-09 22:33:43 +00:00
Sara Golemon
4d789b593f Bug #21531 file_exists() and other filestat functions throw errors when in safe mode and file/directory does not exist.
Extended php_checkuid function to add "flags" field via rename to php_checkuid_ex with alias for BC in functions that do want safe mode errors thrown.
2003-01-09 21:57:45 +00:00
Zeev Suraski
d35ddb740e Time for an update 2003-01-09 10:03:26 +00:00
Ilia Alshanetsky
a7ac507ade Fixed bug #21499 (more descriptive message in the event of require/include
failure).
2003-01-08 02:44:09 +00:00