Commit Graph

3020 Commits

Author SHA1 Message Date
Marcus Boerger
bbfce40c49 - Fix logic 2007-02-22 23:25:36 +00:00
Antony Dovgal
30dacafa72 implement PHP_STREAM_FLAG_NO_CLOSE and avoid hacks in plain wrapper 2007-02-21 21:56:45 +00:00
Antony Dovgal
be4b75b136 improve php_userstreamop_seek()
check for errors in stream_seek() and return correct status
2007-02-13 19:50:13 +00:00
Antony Dovgal
5a6d0f0424 use strdup() 2007-02-06 17:35:42 +00:00
Andi Gutmans
7b6523c8e6 - Make sure to be ANSI C compliant 2007-02-05 05:15:49 +00:00
Marcus Boerger
66398d4e3e - Fix memleak 2007-02-03 14:57:24 +00:00
Marcus Boerger
67206a2cbf - Fix mem/temp stream exports and readonlyissue 2007-02-03 14:45:54 +00:00
Michael Wallner
db22b925bf - don't do memory limit checks for chunk_size 2007-01-29 13:04:57 +00:00
Marcus Boerger
93918c7a7c - Add option support for temp/memory stream (adds ftruncate support) 2007-01-27 15:17:23 +00:00
Sara Golemon
cc1b19cf0e Expand allow_url_fopen/allow_url_include functionality 2007-01-24 21:43:47 +00:00
Marcus Boerger
27a4e7a2ea - Change hardcoded size to lentgh translation to use sizeof(UChar) as suggested by Andrei 2007-01-19 09:12:08 +00:00
Marcus Boerger
511351bf99 - We need to return the length not the byte size 2007-01-18 23:11:42 +00:00
Marcus Boerger
fcef8d4836 - Fix [v]uspprintf()
- Add [v]zspprintf
2007-01-18 21:39:50 +00:00
Nuno Lopes
22fbaf2d6c MFB: use only 2 bits 2007-01-18 16:06:28 +00:00
Antony Dovgal
53e179ea11 fix fodling, mark set_time_limit() unicode safe 2007-01-18 12:37:44 +00:00
Andrei Zmievski
94123c919e Update PHP API version.
# Wonder why it hasn't been done already.
2007-01-16 22:18:39 +00:00
Marcus Boerger
1c60406349 - Add more unicode stuff 2007-01-16 20:36:04 +00:00
Marcus Boerger
99bd9f758a - Help streams debugging 2007-01-15 22:19:33 +00:00
Antony Dovgal
902e6583d9 add trailing '\0' to stream hashes 2007-01-15 17:06:52 +00:00
Antony Dovgal
3868c1533e include \0 to the hash
it does matter because we use these strings in phpinfo()
2007-01-15 14:59:40 +00:00
Marcus Boerger
25095070cf - Use relay to aid debugging 2007-01-14 19:13:34 +00:00
Marcus Boerger
672eae9c90 - Fix readonly mode to 'rb' 2007-01-14 19:09:55 +00:00
Hannes Magnusson
61b4b4b628 MFB: Fix build (wharmby at uk dot ibm dot com) 2007-01-12 14:34:46 +00:00
Antony Dovgal
9efc4483c0 plug newly added leak 2007-01-12 09:10:05 +00:00
Ilia Alshanetsky
e5a2796223 MFB:
Fixed bug #40098 (php_fopen_primary_script() not thread safe).
	Adjusted previous fixes for similar issue to handle sysconf() failures
2007-01-12 01:50:43 +00:00
Antony Dovgal
8c64f4279b use closesocket() on Win32 and close() on *nix 2007-01-11 15:51:29 +00:00
Sara Golemon
53333166fc Add convenience function for openeing files with unicode names 2007-01-10 22:43:17 +00:00
Marcus Boerger
54917a290b - MFH (Ilia's changes) 2007-01-09 18:38:38 +00:00
Nuno Lopes
42fc7a07ba make a var static 2007-01-06 20:43:51 +00:00
Sebastian Bergmann
3717df72ae Bump year. 2007-01-01 09:29:37 +00:00
Ilia Alshanetsky
e88897ec7b MFB: Fixed bug #39984 (redirect response code in header() could be ignored
in CGI sapi).
2006-12-31 19:22:17 +00:00
Ilia Alshanetsky
7c161a1fe6 MFB: strcat() stuff 2006-12-28 15:10:54 +00:00
Antony Dovgal
fbf05e4b70 use strlcat() 2006-12-28 12:18:47 +00:00
Antony Dovgal
8dce10427f use strlcat() and a bigger buffer 2006-12-28 12:01:14 +00:00
Antony Dovgal
867d6380a8 fix php_stream_u_get_line() macro 2006-12-27 15:22:46 +00:00
Ilia Alshanetsky
2dbfe66e4a MFB: safety checks 2006-12-26 17:40:20 +00:00
Dmitry Stogov
1ed6591f8a Fixed heap overflow 2006-12-25 13:11:48 +00:00
Antony Dovgal
4bfad779d7 fix ws, cs and overall code readability 2006-12-21 21:49:13 +00:00
Dmitry Stogov
d7b7678817 Default memory_limit value is set to 128M 2006-12-21 09:12:59 +00:00
Antony Dovgal
b07ab323ad apply correct fix (aka "oops!") 2006-12-21 01:18:14 +00:00
Antony Dovgal
7a6b75e8ac don't leak on error 2006-12-21 01:07:52 +00:00
Antony Dovgal
50791bce76 fix potential leak 2006-12-21 00:46:51 +00:00
Dmitry Stogov
a7c536fbcd Make MEMORY_LIMIT and ZEND_USE_MALLOC_MM to be always enabled. They don't make a
ny significant slowdown, but incrise maintainability a lot. Note that the setting of memory_limit wasn't changes (neither in main/main.c nor in php.ini) and it
still set to 16M.
2006-12-20 10:50:46 +00:00
Hannes Magnusson
460360ae53 MFB:
- Fixed incorrect function names on FreeBSD where inet_pton() was named
        __inet_pton() and inet_ntop() was named __inet_ntop()
- Fixed bug #39685 (iconv() - undefined function)
- Fixed bug #38852 (XML-RPC Breaks iconv)
2006-12-20 10:38:24 +00:00
Antony Dovgal
884fb55a29 -NAN should not be possible 2006-12-19 13:26:39 +00:00
Antony Dovgal
0632620997 inf->INF
nan->NAN
2006-12-19 13:15:30 +00:00
Dmitry Stogov
fb7237eebd Support for systems without locale.h 2006-12-19 13:13:48 +00:00
Dmitry Stogov
869003830b Fixed bug #39815 (SOAP double encoding is not locale-independent) 2006-12-19 11:55:16 +00:00
Dmitry Stogov
938f3d6efa Added function stream_socket_shutdown(). It is a wraper for system shutdown() function, that shut downs part of a full-duplex connection 2006-12-19 08:59:26 +00:00
Antony Dovgal
58673959f9 fix possible invalid read (reproducible only on big-endian machines) 2006-12-18 13:15:18 +00:00
Hannes Magnusson
44693bbf85 - make %f locale aware again
- fix precision loss with %F (noticed by Sebastian Nohn)
- add new tests
2006-12-18 09:25:32 +00:00
Ilia Alshanetsky
fe1176d443 Fixed compiler warning 2006-12-17 18:30:50 +00:00
Andrei Zmievski
3de95b79c3 Keep CLI args as binary strings. 2006-12-12 18:05:07 +00:00
Michael Wallner
8ad12c9899 - upgrade phpinfo() and phpcredits() 2006-12-10 15:02:50 +00:00
Ilia Alshanetsky
9901e4a31d MFB:
Fixed handling of multiple cookies with the same name.
	Added support for cookies into run-tests.php
2006-12-09 14:17:17 +00:00
Ilia Alshanetsky
16e11ad947 MFB: Strip leading spaces from cookie names, that can come from multi-cookie
headers where ; can be followed by any number of spaces.
2006-12-09 13:14:06 +00:00
Andrei Zmievski
4097992ed4 Don't use zend_ascii_hash_find() here -- module names are binary strings. 2006-12-08 19:13:31 +00:00
Antony Dovgal
4789badd3a use BSD licensed implementation of double-to-string utilities instead of LGPL one
this patch also fixes thread safety issues in zend_strtod()
2006-12-06 09:50:28 +00:00
Stanislav Malyshev
40b496d63f Merge from 5.2:
Improve tolower()-related functions on Windows and VC2005 by caching locale and using
tolower_l function.
2006-12-05 02:55:27 +00:00
Antony Dovgal
576797c7c1 fix retval type
it should be int, not zend_bool
2006-12-04 15:58:35 +00:00
Ilia Alshanetsky
b728cd3b05 MFB: Fixed php_readdir_r() usage in scandir emulation 2006-12-03 15:52:37 +00:00
Antony Dovgal
f5ad39de6d fix Solaris build 2006-12-03 14:38:05 +00:00
Frank M. Kromann
8fba0806cd MFB: Fix win32 build 2006-12-01 20:22:11 +00:00
Ilia Alshanetsky
3fb8bece12 MFB: Thread-safety issues 2006-11-30 16:10:48 +00:00
Antony Dovgal
9ed4f515d1 fix #39673 (file_get_contents causes bus error on certain offsets) 2006-11-29 11:10:49 +00:00
Dmitry Stogov
e229ea6cb7 Fixed bug #39548 (ZMSG_LOG_SCRIPT_NAME not routed to OutputDebugString() on Windows) 2006-11-23 08:37:34 +00:00
Antony Dovgal
8373efc9b9 fix #39551 (Segfault with stream_bucket_new in user filter)
also fixes several segfaults and leaks
add test
2006-11-21 15:47:44 +00:00
Dmitry Stogov
a563332ee4 COM initialization/deinitialization are done only if necessary 2006-11-17 11:41:13 +00:00
Dmitry Stogov
57d22421db Unicode support.
Now the real UG(unicode) value is available during MINIT calls.
2006-11-17 10:48:53 +00:00
Hannes Magnusson
9da991dd50 MFB: Fix ftruncate() with negative size 2006-11-16 16:08:09 +00:00
Michael Wallner
d96f225a15 - fix buffer size alignment
- avoid memory overflow #if MEMORY_LIMIT
2006-11-13 14:05:03 +00:00
Dmitry Stogov
6850e95c3e Removed unnecessary ftell() calls (one call for each included PHP file) 2006-11-10 13:18:46 +00:00
Dmitry Stogov
c39eecf9ae Disabled reading from stream (calls to read()) after EOF 2006-11-10 13:10:28 +00:00
Dmitry Stogov
768185e58f Implemented registry cache that prevent registry lookup on each request. In case of modification of corresponding registry-tree PHP will reload it automatic. 2006-11-10 11:42:40 +00:00
Dmitry Stogov
a68d5f0a89 opendir() is reimplemented using GetFistFile/GetNextFile those are faster then _findfirst/_findnext 2006-11-10 11:20:58 +00:00
Dmitry Stogov
b71309f4a2 Removed unnecessary checks for ISREG file and corresponding stat() calls on Wind
ows
2006-11-10 10:55:43 +00:00
Dmitry Stogov
dc34d34230 Simplify the code base as this getpwd() was used only once 2006-11-10 09:56:37 +00:00
Antony Dovgal
e2070c4360 eliminate a couple of compile warnings 2006-11-09 01:06:45 +00:00
Rasmus Lerdorf
d566d5553f Mark memory streams as is_url 2006-11-04 20:44:02 +00:00
Johannes Schlüter
823681aaa0 - Fix merging of $_REQUEST in unicode mode and remove $GLOBALS check from
register_globals times
2006-10-21 10:01:39 +00:00
Dmitry Stogov
d73bf1d322 Fixed mkdir("/tmp/foo//bar/log", 0777, true) 2006-10-19 09:49:56 +00:00
Sara Golemon
be5debc65a Extend open_basedir functionality to allow runtime tightening 2006-10-17 21:54:17 +00:00
Ilia Alshanetsky
bec31fe85a MFB: main/php_open_temporary_file.c 2006-10-13 01:11:45 +00:00
Michael Wallner
9de590ecf1 - use new zend_fcall_info API
- use enums where appropriate
2006-10-12 12:50:29 +00:00
Sara Golemon
d9423de12e Bugfix 38648: Don't assume all buckets are part of a brigade 2006-10-11 23:07:30 +00:00
Antony Dovgal
729ed6eafc fix crash when parsing invalid hostnames/IPs 2006-10-11 12:53:38 +00:00
Hannes Magnusson
176b72284c Error message clean up
(patch by Matt W (php_lists -AT- realpain.com))
2006-10-08 13:34:24 +00:00
Antony Dovgal
d38bf75b69 int -> size_t 2006-10-03 23:22:21 +00:00
Michael Wallner
99fe9133c1 - typo 2006-10-03 22:28:33 +00:00
Michael Wallner
32186c45fb - fix failure with tests/lang/bug23489.phpt
- allocate fci param space at once with php_output_handler_user_func_t
2006-10-03 22:20:28 +00:00
Ilia Alshanetsky
15e5832c26 MFB: Last set of zend_hash_init() optimizations 2006-10-03 19:52:34 +00:00
Sara Golemon
d666c05427 PHP6 Update for get_included_files() and export of path decode for Zend 2006-10-03 16:28:02 +00:00
Michael Wallner
ea0f299bad - use fci/fcc instead of zval* for user ob handler 2006-10-03 08:15:44 +00:00
Sara Golemon
fa71abf4a2 Unused label, now how the heck did it get there? 2006-10-02 18:13:56 +00:00
Sara Golemon
e321287b4f Try out simplified API for encoding paths/filenames 2006-10-02 02:24:29 +00:00
Antony Dovgal
500dd0ac79 fix compile warning 2006-09-28 08:26:19 +00:00
Dmitry Stogov
eb1e643690 Fixed wrong pipe detection code 2006-09-28 07:26:19 +00:00
Ilia Alshanetsky
1af5f8cd39 MFB: Fixed bug #38963 (Fixed a possible open_basedir bypass in tempnam()). 2006-09-27 23:44:34 +00:00
Ilia Alshanetsky
13e1309f40 MFB: Fixed bug #38904 (apache2filter changes cwd to /). 2006-09-25 14:49:34 +00:00
Sara Golemon
f8fdb67056 PHP6 Updates for popen() and related functionality 2006-09-24 20:33:14 +00:00
Sara Golemon
3191ed0e85 Update stream_copy_to_stream() for PHP6 2006-09-22 19:54:30 +00:00
Sara Golemon
3f56da6eba Add INI controlled default stream encoding (unicode.stream_encoding).
Add convenience function stream_defualt_encoding() for setting it.
2006-09-19 20:36:48 +00:00
Dmitry Stogov
128548a5c0 Disabled autoconversion of hash keys (from string to unicode) for PHP arrays 2006-09-19 10:38:31 +00:00
Ilia Alshanetsky
a3a3cc7546 MFB: Avoid generating php_errormsg twice in some instances. 2006-09-18 23:11:01 +00:00
Antony Dovgal
e264e460a4 fix double free(), add test 2006-09-15 07:26:19 +00:00
Dmitry Stogov
a9f035d5c1 *** empty log message *** 2006-09-14 09:59:23 +00:00
Ilia Alshanetsky
504078c64e MFB: Fixed bug #37779 (empty include_path leads to search for files
inside /).
2006-09-12 15:49:02 +00:00
Sara Golemon
1ce3ba599b Bug #38687 - sockaddr local storage insufficient for all sock families 2006-09-11 19:18:06 +00:00
Antony Dovgal
d13d452523 fix coverity issue #197
"I can't think of a reason to pass a NULL buf" (c) Wez
2006-09-10 13:01:28 +00:00
Edin Kadribasic
b279fe502a MFB 2006-09-05 11:55:08 +00:00
Dmitry Stogov
9a06a517d6 Fixed VIRTUAL_DIR inconsistency 2006-09-04 08:18:35 +00:00
Ilia Alshanetsky
22206ebf22 MFB: Fixed bug #38661 (mixed-case URL breaks url-wrappers). 2006-09-03 16:33:02 +00:00
Michael Wallner
df26ea87bd - output handler alias ctor should know about chunk_size and flags 2006-08-31 13:51:35 +00:00
Michael Wallner
d83fdc677f - fix PHP_OUTPUT_CONFLICT macro 2006-08-30 22:34:32 +00:00
Michael Wallner
e62c35f141 - add PHP_OUTPUT_WRITTEN and PHP_OUTPUT_SENT status flags 2006-08-30 14:42:01 +00:00
Michael Wallner
2dc5f6de5d - the Vary header for zlib.output_compression is now handled inside the output handler 2006-08-30 12:25:56 +00:00
Michael Wallner
0eef1208c2 - output handler may modify context->op
- discard any context->out.data on failure
2006-08-30 12:06:22 +00:00
Michael Wallner
7947beb75a - revise output handler alias API
- add convenience macros for conflicts and aliases
- generalize flags to php_output_stack_pop()
- mark the handler as started *after* run
- handler should still be flushable after marking it immutable
2006-08-30 07:39:09 +00:00
Antony Dovgal
144cca7be3 fix #38199 (fclose() unable to close STDOUT and STDERR) 2006-08-28 17:14:13 +00:00
Andrei Zmievski
f4a5e50069 MFB 2006-08-23 20:39:37 +00:00
Michael Wallner
53ca648bb5 - fix php_output_handler_started() 2006-08-22 09:56:24 +00:00
Michael Wallner
31632b3458 - use the handler name zval directly when listing stati, too 2006-08-22 08:21:19 +00:00
Michael Wallner
0ff7bc29d9 - fix tests to comply with upgraded string.c
- use add_next_index_zval() when listing handlers
2006-08-22 08:16:37 +00:00
Michael Wallner
139f6ff79d - allocate handler stack on the heap and avoid segfaults on shutdown when startup fails
- don't try to append empty buffer
- fix some dbg format strings
2006-08-22 07:53:58 +00:00
Dmitry Stogov
d824f02ce1 Fixed bug #38488 (Access to "php://stdin" and family crashes PHP on win32) 2006-08-22 06:15:45 +00:00
Ilia Alshanetsky
2ae992d772 MFB: Increased default memory limit to 16 megabytes to accommodate for a
more accurate memory utilization measurement.
2006-08-17 13:43:51 +00:00
Antony Dovgal
a4a561dc72 fix #38450 (constructor is not called for classes used in userspace stream wrappers) 2006-08-14 15:00:04 +00:00
Nuno Lopes
5897477522 MFH: const/static keywording 2006-08-12 19:41:28 +00:00
Michael Wallner
de93f1dc91 - error message enhancements
- avoid duplicate error messages
- add PHP_OUTPUT_HANDLER_FLUSHABLE
- add PHP_OUTPUT_HANDLER_HOOK_GET_LEVEL
- add more tests
2006-08-09 13:56:45 +00:00
Michael Wallner
6e54e763ae - mark unicode safe functions 2006-08-09 10:57:46 +00:00
Michael Wallner
f5949edfe9 - use HashPosition for traversal of registered reverse conflicts
- fix protos
2006-08-09 10:21:10 +00:00
Antony Dovgal
2c946984da unused variable 2006-08-08 17:05:14 +00:00
Antony Dovgal
dbe2092313 implement zend_unicode_to_string() and zend_string_to_unicode()
part #2 (of 2)
2006-08-08 16:59:11 +00:00
Dmitry Stogov
a0f7f6680a In addtion to path to php.ini, PHPRC now may specify full file name 2006-08-03 11:05:09 +00:00
Ilia Alshanetsky
d2579f9dd1 MFB: Fixed bug #38236 (Binary data gets corrupted on multipart/formdata
POST).
2006-07-27 17:14:24 +00:00
foobar
95f2db2459 - Removed unnecessary quotes 2006-07-27 08:52:10 +00:00
foobar
f0fe4e05b9 - Added PHP_VERSION_ID == PHP_VERSION as integer value. 2006-07-27 08:50:41 +00:00
Michael Wallner
73ba3e2592 - added error_get_last() function 2006-07-19 12:25:02 +00:00
Dmitry Stogov
6687f0377b New memory manager 2006-07-18 09:08:06 +00:00
Dmitry Stogov
14bb973768 Fixed memory leaks in ZTS mode 2006-07-17 07:20:28 +00:00
Sara Golemon
2ef3bb9cb8 Logic fix: (!a == b) != (a != b) 2006-07-14 22:24:07 +00:00
Sara Golemon
eb634dfa84 #38105 (2/3) Filters should report char/UChar count, not bytes 2006-07-14 19:15:31 +00:00
Sara Golemon
aea4195ac6 #38105 (1/3) Backward logic, filter_product == IS_STRING means the wrapper HAS applied pre-filtering 2006-07-14 19:14:40 +00:00
Antony Dovgal
87d846c2cb initialize variables 2006-07-13 17:55:50 +00:00
Antony Dovgal
f7f468863a fix build 2006-07-13 17:02:43 +00:00
Ilia Alshanetsky
e49961c935 MFB: Fixed compiler warnings. 2006-07-13 15:05:42 +00:00
Antony Dovgal
68bd430a63 fix C++ comments in C code and comment out unused variable 2006-07-13 12:17:25 +00:00
Antony Dovgal
12f44c2b2b fix #38086 (stream_copy_to_stream() returns 0 when maxlen is bigger than the actual length) 2006-07-13 11:58:42 +00:00
Andrei Zmievski
ed77c07a35 Commit Sara's patch for supporting filesystem enccoding in
include/require.
2006-07-12 17:04:13 +00:00
Nuno Lopes
62338cfeb8 static+const keywords 2006-07-07 23:28:23 +00:00
Dmitry Stogov
a72dd9fe17 Changed priority of PHPRC environment variable on win32 to be higher then value from registry. 2006-07-04 06:38:32 +00:00
Nuno Lopes
c2b1be3549 MFB5.2: const keywording 2006-07-01 11:50:52 +00:00
Hannes Magnusson
b9c078acf4 url->URL 2006-06-29 14:42:30 +00:00
Andrei Zmievski
e875205714 Implement user conversion error handler support. Works as normal error
handler, in that it can return false to make the default one take over.
Handler signature is:
  user_handler($direction, $encoding, $char_byte, $offset, $message)

Also removed support for using exceptions in default error handler.
2006-06-21 20:17:21 +00:00
Andrei Zmievski
9573e77249 Typos. 2006-06-21 17:10:13 +00:00
Hannes Magnusson
64ce1969c9 Plug memleak (leaks on empty files) 2006-06-20 18:09:33 +00:00
Dmitry Stogov
943960c324 Added automatic module globals management 2006-06-13 13:12:20 +00:00
Michael Wallner
cf914cc0a7 - don't use anonymous union 2006-06-12 18:18:39 +00:00
Michael Wallner
773fa96dfc - fix SEGV in php_output_handler_started() 2006-06-06 22:13:23 +00:00
Antony Dovgal
7a9ad25d8c don't leak when decoding failed 2006-06-06 14:08:47 +00:00
Michael Wallner
0fe565293f - fix regression with bug #22690 (ob_start() with create_function() output handler) 2006-06-06 11:08:45 +00:00
Antony Dovgal
99e0a6f3d6 no need to check if non-existing include_path complies with open_basedir setting
the only result we can get is segfault
2006-06-05 22:39:10 +00:00
Edin Kadribasic
19787d38e9 MFB 2006-06-05 22:23:39 +00:00
Michael Wallner
af012fd916 - fix output handler seeing buffered data when it gets discarded
- add test
2006-06-04 10:01:58 +00:00
Michael Wallner
4de156baa2 - remove obsolete cruft 2006-06-03 11:51:35 +00:00
Michael Wallner
231ad17475 - explicit usage of TS macros
# this could have been raised a lot earlier
2006-06-03 11:19:44 +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
Andrei Zmievski
7a14d10fe4 MFB 2006-05-31 17:19:05 +00:00
Johannes Schlüter
3d2ddf524e - nitpicking "PHP6" vs. "PHP 6" 2006-05-27 20:53:38 +00:00
Edin Kadribasic
4eab123723 MFB: Missing definition, patch by Steph Fox 2006-05-25 18:48:30 +00:00
Edin Kadribasic
7d605c31d1 MFB: Initialize windows globals, fixes #37428 2006-05-24 22:00:57 +00:00
Ilia Alshanetsky
45b278cc34 MFB: Fixed handling of extremely long paths inside tempnam() function. 2006-05-23 23:22:16 +00:00
Marcus Boerger
25d5adec0d - Fix feof() with temp/memory streams 2006-05-23 22:26:23 +00:00
Marcus Boerger
a4d6c5a6f0 - Handle corrupt base64 data in data: url 2006-05-21 13:35:06 +00:00
Antony Dovgal
1417222aee initialize factory 2006-05-19 10:23:43 +00:00
Dmitry Stogov
ab9e070bbf Optimized zend_try/zend_catch macroses (eliminated memcpy()) 2006-05-19 06:11:02 +00:00
Antony Dovgal
e2d3206e78 MFB: fix #37395 (recursive mkdir() fails to create nonexistent directories in root dir) 2006-05-16 13:05:23 +00:00
Ilia Alshanetsky
9ac333f624 MFB: Disable realpath cache when open_basedir or safe_mode are enabled on a
per-request basis.
2006-05-16 00:40:36 +00:00
Marcus Boerger
1bbfe90571 - No need to have this controlled by allow_url_fopen 2006-05-14 19:13:17 +00:00
Marcus Boerger
3856d8da6d - Add strict compliant RFC2397 support (no //) 2006-05-14 18:35:40 +00:00
Marcus Boerger
3b66ab74f9 - RFC2397 add decoding
# done (need to decide whether all examples shouldl work or specs are
# followed)
2006-05-14 01:39:24 +00:00
Marcus Boerger
f9c249407d - Enforce stream mode correct 2006-05-14 01:03:42 +00:00
Marcus Boerger
73069100fd - Change to use dedicated stream ops 2006-05-14 00:45:27 +00:00
Marcus Boerger
4f29479a22 - RFC 2397 meta data handling 2006-05-14 00:40:53 +00:00
Marcus Boerger
29c0f5bede - Initial RFC2397 support
# decoding is missing right now
2006-05-13 17:53:01 +00:00
Dmitry Stogov
b75a22b203 Fixed bug #37306 (max_execution_time = max_input_time). 2006-05-11 22:08:55 +00:00
Marcus Boerger
1f030db700 - Fix error mode handling 2006-05-11 07:55:48 +00:00
Rasmus Lerdorf
839c3e24a3 MFB input filter hook for getenv() 2006-05-10 21:25:01 +00:00
Rasmus Lerdorf
2f537ad0ff MFB filter defines 2006-05-10 21:23:46 +00:00
Dmitry Stogov
736b8d903b Fixed bug #37276 (problems witch $_POST array) 2006-05-03 11:24:51 +00:00
Frank M. Kromann
e6e2754439 Remove ZSTR() from stream macros. Calling function must apply this macro 2006-04-28 19:03:58 +00:00
Antony Dovgal
8a434f5df0 merge fix for #37158 into HEAD
add test
2006-04-22 23:49:39 +00:00
Michael Wallner
54ff84d3d5 MFB: Fix reading stream filters never notified about EOF 2006-04-20 17:52:01 +00:00
Sara Golemon
d229fc9048 Fix copy/paste typo in php_stream_path_decode() proto 2006-04-18 19:09:31 +00:00
Dmitry Stogov
83657db8ff Fixed memory leaks 2006-04-18 06:58:54 +00:00
Antony Dovgal
78fdeb1acc fix CS and prevent NULL dereference 2006-04-13 18:14:14 +00:00
Sara Golemon
d05836890b Preserve full name of filter for use in stream_get_meta_data() 2006-04-13 04:41:08 +00:00
Sara Golemon
0b84c73635 Allow http:// wrapper to automatically apply correct unicode.from.* filter based on content-type header 2006-04-12 22:40:56 +00:00
Antony Dovgal
821aff2e9c MF51: fix #37053 (html_errors with internal classes produces wrong links) 2006-04-12 12:52:00 +00:00
foobar
b8cdb46cce - More safe_mode left-overs. 2006-04-11 11:32:06 +00:00
foobar
6af3218f81 more cleanup (lingering ini settings which do not exist anymore, etc.) 2006-04-10 15:09:15 +00:00
foobar
2442d71b16 - Silence some PCRE compile warnings 2006-04-10 11:54:54 +00:00
Andrei Zmievski
3411f2bca1 Separate suffixes of shared libraries that we link against and the ones
we load with dlopen(). This matters on Mac OS X, for example.
2006-04-08 17:34:57 +00:00
Dmitry Stogov
7a6284cef0 Optimization 2006-04-07 13:57:39 +00:00
Dmitry Stogov
e5d4bfd637 We don't need setup the same time-out two times. 2006-04-07 11:43:43 +00:00
Sara Golemon
3b35b15961 Do runtime conversions (with an E_NOTICE) on writing unicode data to a binary stream. Take the WTF out of the equation 2006-04-06 19:39:11 +00:00
Ilia Alshanetsky
ae08857016 Removed extra space in the Content-Type header for logos
Simplified stderr error reporting in apache sapi.
2006-04-02 17:58:07 +00:00
Sara Golemon
fd606a8d78 Add API hooks and unicode.filesystem_encoding for handling unicode
conversions of filename entries.

Normal path conversions will simply use this converter,
Certain other protocols (such as http) which specify a
required character set (utf8), may override the conversion
by defining a path_encode() and/or path_decode() wrapper ops method.
2006-03-31 22:51:37 +00:00
Sara Golemon
51b9a0f269 Make php_stream_copy_to_mem() unicode aware and
update userspace function file_get_contents().

Note: fgc()'s second parameter (use_include_path) has been changed
to be a bitmask "flags" parameter instead.

For the most commonly used values (TRUE, 1) this will continue functioning
as expected since the value of FILE_USE_INCLUDE_PATH is (coincidentally) 1.
The impact to other values should be noted in the migration6 guide.

This change makes it possible to allow fgc() to return binary file
contents (default) or unicode transcoded contents (using FILE_TEXT flag).
2006-03-30 00:22:51 +00:00
Sara Golemon
1c97a0d78c Update php_stream_passthru() to handle unicode data.
This updates userspace functions fpassthru() and readfile()

UG(output_encoding) is used by php_stream_passthru() to translate
unicode stream contents back to an outputable character set.

Note: readfile()'s second parameter (use_include_path) has been changed
to be a bitmask "flags" parameter instead.

For the most commonly used values (TRUE, 1) this will continue functioning
as expected since the value of FILE_USE_INCLUDE_PATH is (coincidentally) 1.
The impact to other values should be noted in the migration6 guide.

This change makes it possible to allow readfile() to output binary file
contents (default) or unicode transcoded contents (using FILE_TEXT flag).
2006-03-29 22:52:24 +00:00
Sara Golemon
30a2bd1d11 Another (and hopefully last) major streams commit.
This moves unicode conversion to the filter layer
(rather than at the lower streams layer)
unicode_filter.c has been moved from ext/unicode to main/streams
as it's an integral part of the streams unicode conversion process.

There are now three ways to set encoding on a stream:

(1) By context
$ctx = stream_context_create(NULL,array('encoding'=>'latin1'));
$fp = fopen('somefile', 'r+t', false, $ctx);

(2) By stream_encoding()
$fp = fopen('somefile', 'r+');
stream_encoding($fp, 'latin1');

(3) By filter
$fp = fopen('somefile', 'r+');
stream_filter_append($fp, 'unicode.from.latin1', STREAM_FILTER_READ);
stream_filter_append($fp, 'unicode.to.latin1', STREAM_FILTER_WRITE);

Note: Methods 1 and 2 are convenience wrappers around method 3.
2006-03-29 01:20:43 +00:00
Antony Dovgal
d15557fb76 MF51: fix #36869 (memory leak in output buffering when using chunked output) 2006-03-27 08:26:20 +00:00
Andrei Zmievski
1709428494 Implement to-Unicode conversion error behavior. Note the adjusted APIs. 2006-03-26 06:19:24 +00:00
Andrei Zmievski
930bde5897 * Remove unicode.from_error_mode and unicode.from_subst_char from INI
settings.
* Add unicode_set_error_mode() and unicode_set_subst_char() functions to
  manipulate these global settings.
2006-03-26 01:48:33 +00:00
Sara Golemon
e883cee0b1 Handle converter instantiation errors properly 2006-03-25 04:37:44 +00:00
Andrei Zmievski
abf44bf9df This is probably not a test.. 2006-03-24 21:25:44 +00:00
Sara Golemon
0260dfc9b1 Hook into new unicode conversion error handling API 2006-03-24 20:21:48 +00:00
Sara Golemon
880dd406f2 Add php_stream_get_record_unicde() API call.
Update stream_get_line() userspace function to handle unicode streams.
2006-03-24 19:22:24 +00:00
Andrei Zmievski
19897a5f44 UTODO note 2006-03-24 00:25:49 +00:00
Sara Golemon
eb44e642b1 Add some error checking when stream converters are instantiated.
Use the global conversion error handlers for output conversion (for now)
We may want to make this customizable on a per-stream basis
via context param later on...
2006-03-24 00:19:39 +00:00
Sara Golemon
201d5df650 Allow grow_mode && !bufstart (original assertion logic) 2006-03-21 18:28:42 +00:00
Antony Dovgal
95d4ac09ca fix spelling 2006-03-21 13:46:51 +00:00
Dmitry Stogov
79c653ab98 Fixed bug #36809 (__FILE__ behavior changed) 2006-03-21 08:49:58 +00:00
Dmitry Stogov
00c81b0e49 Fixed register_argc_argv behavior. Now it behave in the same way as before in combinations with variables_order and auto_globals_jit.
$argc and $argv global variables are registered only in CLI mode and under $_SERVER[] in other case. (This is done because register_globals was removed and assumed - off).
2006-03-20 10:18:50 +00:00
Antony Dovgal
a4f9c8efc2 MFB: first check stream for NULL, then dereference 2006-03-19 22:34:26 +00:00
Marcus Boerger
46bc026fb0 - Fix seek/eof issue in temp streams 2006-03-18 19:56:35 +00:00
Marcus Boerger
d7a4909ed2 - Fix issue in _php_stream_get_line(): Allow maxchars == 0 as macro
php_stream_get_line() does
2006-03-18 19:44:51 +00:00
Andrei Zmievski
a75b8f5f35 Fix compiler errors by using NULL_ZSTR where zstr is expected.
# I guess we need to use NULL_ZSTR instead of NULL when passing NULL to
# functions that expect zstr parameter.
2006-03-17 22:52:55 +00:00
Dmitry Stogov
fb7324bb71 Fixed register_argc_argv 2006-03-17 15:04:23 +00:00
Dmitry Stogov
34c493ea07 Unicode support for dl() patch. 2006-03-17 13:45:43 +00:00
Dmitry Stogov
c09bbfa2b8 Eliminated unnecessary getcwd() syscall 2006-03-17 10:46:02 +00:00
Dmitry Stogov
22a7b0c06e Allowed 'auto_globals_jit' work together with 'register_argc_argv' 2006-03-17 08:59:02 +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
Dmitry Stogov
9d7ca01c8b Dropped allow_call_time_pass_reference, the error is maden E_STRICT. 2006-03-16 11:32:00 +00:00
Dmitry Stogov
7c0e534157 Dropped zend.ze1_compatibility_mode 2006-03-16 10:33:23 +00:00
Dmitry Stogov
22055cb8fd Dropped register_long_arrays, added E_CORE for all dropped setting 2006-03-16 09:44:42 +00:00
Marcus Boerger
6380908706 - Fix warning 2006-03-16 00:53:58 +00:00
Sara Golemon
1eca7b87d1 Fix improper byte count on partial reads 2006-03-15 21:18:36 +00:00
Sara Golemon
df77705572 Switch (zstr) casts to use ZSTR() macro. 2006-03-15 00:28:57 +00:00
Sara Golemon
b576354982 More stream updates.
fgets() will work now as will anything which calls one of the
_php_stream_get_line() family of functions.
The one exception here is when the legacy defines are used on a unicode
stream.  At the moment they'll simply return NULL, I'll update these
to do sloppy conversion in a bit.

'make (u)test' still doesn't work, but it's a different doesn't work.
2006-03-14 21:15:05 +00:00
Dmitry Stogov
e4aa6e302e Fixed bug #35988 (Unknown persistent list entry type in module shutdown) 2006-03-14 15:16:27 +00:00
Sara Golemon
04df7e3bdc Make php_stream_write_buffer() return characters written, not bytes 2006-03-13 20:54:06 +00:00
Derick Rethans
f7bfe18307 This makes file_put_contents() work for:
<?php
    declare(encoding="latin1");
    $a = "1234å67890";
    file_put_contents( "/tmp/testuc.1", $a);
    file_put_contents( "/tmp/testuc.2", (string) $a);

    $context = stream_context_create();
    stream_context_set_params($context, array( "output_encoding" => "latin1" ) );
    file_put_contents( "/tmp/testuc.3", $a, FILE_TEXT, $context);
    file_put_contents( "/tmp/testuc.4", (string) $a, FILE_TEXT, $context);
?>

But it still throws a warning on ".3". It's a small design issue that I
didn't want to touch right now.
2006-03-13 15:01:44 +00:00
Dmitry Stogov
c23806d331 Fixed realpath() cache for main script with FastCGI SAPI 2006-03-13 09:36:05 +00:00
Sara Golemon
48798021b5 Refactor streams layer for PHP6.
Don't be frightened by the size of this commit.
A significant portion of it is restoring the read buffer semantics back
to what PHP4/5 use.  (Or a close aproximation thereof).

See main/streams/streams.c and ext/standard/file.c for a set of
UTODO comments covering work yet to be done.
2006-03-13 04:40:11 +00:00
Brian France
43b75c6ab4 for the primary file only lookup the real file path and
add it to the included_files list if already opened
	otherwise it will get opened and added to the included_files list in zend_execute_scripts
2006-03-10 18:16:24 +00:00
Sara Golemon
5c7826716b Move temporary local storage of primary file's realpath up one block to ensure it stays on the stack. 2006-03-09 20:31:58 +00:00
Ilia Alshanetsky
27e175eef0 So long safe_mode mode.
Also removed the magic_quotes configure option, no longer relevant since
the magic is gone :-).
2006-03-08 14:41:45 +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