Commit Graph

556 Commits

Author SHA1 Message Date
Sriram Natarajan
ac2d3990f2 - Fixed bug #49447 (php engine need to correctly check for socket API
return status on windows). (Sriram Natarajan)
2009-09-04 07:59:48 +00:00
Arnaud Le Blanc
c79528a26d MFH: Fixed bug #48309 (stream_copy_to_stream() and fpasstru() do not
update stream position of plain files)
2009-05-17 14:58:10 +00:00
Arnaud Le Blanc
fab1f0e754 Fix warning when inner stream of a temp:// stream is closed before
the stream ifself
2009-05-16 20:27:36 +00:00
Arnaud Le Blanc
a2600facdd MFH: Fixed bug #48307 (stream_copy_to_stream() copies 0 bytes when $source
is a socket)
2009-05-16 20:23:06 +00:00
Hannes Magnusson
ebf7a8e9a3 Fix comments 2009-05-08 11:35:12 +00:00
Pierre Joye
be093af4fa - silent compiler warning 2009-04-20 08:28:44 +00:00
Arnaud Le Blanc
8ea9eb8560 MFH: Better fix for #47997 2009-04-19 17:10:35 +00:00
Arnaud Le Blanc
14c717f449 Fixed bug #47997 (stream_copy_to_stream returns 1 on empty streams) 2009-04-19 13:46:47 +00:00
Mikko Koppanen
3fd12260aa MFH: Added support for passing O_NONBLOCK to the underlying open() system call 2009-04-11 11:44:15 +00:00
Hannes Magnusson
2881a60e31 Add missing proto 2009-03-25 19:55:59 +00:00
Arnaud Le Blanc
2b57d6d6ea MFH: Better fix for #44607. Fixes #47487 (php_stream_fill_read_buffer()
performance degraded after fix of bug 44607).
2009-03-19 17:55:10 +00:00
Ilia Alshanetsky
aaa5361c90 Adjust condition 2009-02-10 16:14:18 +00:00
Ilia Alshanetsky
2b531b5149 MFB: typo fix 2009-02-10 14:21:27 +00:00
Ilia Alshanetsky
986a933c82 MFB: Added path truncation E_NOTICE to let people now when path resolving
caused the file path to be truncated.
2009-02-10 14:18:46 +00:00
Ilia Alshanetsky
311a87c8d7 MFB: Fixed bug #44874 (dead pfsockopen'ed sockets aren't reaped when
the remote end restarts)
2009-02-09 02:55:45 +00:00
Pierre Joye
acdb832581 - silent compiler warning about socklen_t benign redefinition 2009-02-02 09:41:46 +00:00
Felipe Pena
31169e2c1a MFH:
- Fixed bug #47037 (No error when using fopen with emty string)
Patch by Cristian Rodriguez R.
2009-01-08 18:46:00 +00:00
Arnaud Le Blanc
61ae60f805 MFH: Fixed error conditions handling in stream_filter_append() 2009-01-08 17:01:58 +00:00
Felipe Pena
7c989115c2 MFH:
- Added check for EWOULDBLOCK
- Using EWOULDBLOCK instead of EAGAIN by portability issues
(Related to #46917)
2009-01-07 20:21:46 +00:00
Sebastian Bergmann
08659c2dcd MFH: Bump copyright year, 3 of 3. 2008-12-31 11:15:49 +00:00
Lars Strojny
29f49d2ded If a wrapper could not be found it is either a typo or a configuration issue. But in both cases it is critical enough to warn the user. 2008-12-14 16:25:37 +00:00
Dmitry Stogov
7d4fd3fd38 Fixed bug #46409 (__invoke method called outside of object context when using array_map) 2008-11-27 19:01:23 +00:00
Arnaud Le Blanc
dffdb48c3b MFH: Fixed bug #46673 (stream_lock call with wrong paramater) 2008-11-26 04:19:20 +00:00
David Soria Parra
a9282f72a8 MFH: Revert fix for 43782, as it caused problems. 2008-11-24 15:36:47 +00:00
Arnaud Le Blanc
c6e1b8bc67 MFH: Added stream_cast() and stream_set_options() to user-space stream
wrappers, allowing stream_select(), stream_set_blocking(),
stream_set_timeout() and stream_set_write_buffer() to work with user-space
stream wrappers.
Will document.
2008-11-15 12:52:13 +00:00
Arnaud Le Blanc
e13a4238e5 MFH: Fixed stream_get_contents() when using $maxlength and socket is not
closed. indeyets@php.net on #46049.
2008-11-11 01:55:51 +00:00
Arnaud Le Blanc
d441b5db5b MFH: Fixed stream_get_line() to behave as documented on non-blocking
streams
2008-11-04 17:05:55 +00:00
Arnaud Le Blanc
8e220d99df MFH: Fixed bug #44607 (stream_get_line unable to correctly identify the
"ending" in the stream content)
2008-11-03 23:29:17 +00:00
Arnaud Le Blanc
de29f4161f MFH: Fixed bug #45303 (Opening php:// wrapper in append mode results
in a warning)
2008-11-03 16:58:53 +00:00
Arnaud Le Blanc
0a2bfc7968 MFH: Fixed bug #43353 (wrong detection of 'data' wrapper causes notice) 2008-11-03 15:47:31 +00:00
Nuno Lopes
8a77e55566 clean some dead code (with static analysis help) 2008-09-23 15:18:26 +00:00
Greg Beaver
17cfd5f24e MF52 fix Bug #46147: after stream seek, appending stream filter reads incorrect data 2008-09-22 01:26:14 +00:00
David Soria Parra
9f68483734 MFH: Fixed bug #43782 (feof() does not detect timeout on socket) 2008-08-26 16:06:36 +00:00
Arnaud Le Blanc
c93fbf629b MFH:
Added clear_realpath_cache and filename parameters to clearstatcache() (Jani,
Arnaud)
[DOC] clearstatcache() now defaults to not affect the realpath cache.
clearstatcache() now takes two optionnal parameters, clear_realpath_cache to
clear the realpath cache (defaults to false), and filename to clear only the
given filename from the cache.
2008-08-07 09:25:33 +00:00
Antony Dovgal
93908474ad MFH: increase context refcount before open() to avoid crash when open() fails and destroys the context 2008-08-06 09:03:48 +00:00
Dmitry Stogov
691d4a6999 Fixed uninitialised data 2008-07-25 08:23:07 +00:00
Jani Taskinen
d91bc9eca2 MFH:- Fixed bug #44127 (UNIX abstract namespace socket connect does not work) 2008-07-16 14:08:38 +00:00
Antony Dovgal
04c8373b6a MFH 2008-07-11 12:44:02 +00:00
Antony Dovgal
cf7e15c3a0 MFH: manage references of stream context properly 2008-07-11 10:25:15 +00:00
Dmitry Stogov
99933df5e2 closeder/readdir/rewinddir must work only with directories 2008-06-11 09:01:56 +00:00
Greg Beaver
cac1fd72ea fix erroneous use of php_resolve_path in _php_stream_wrapper_open_ex - this breaks require/include for all extensions that intercept zend_resolve_path 2008-04-28 22:39:54 +00:00
Greg Beaver
c46d651b3e Fixed potentially confusing error message on failure when no errors are logged 2008-04-28 22:37:31 +00:00
Greg Beaver
e668dc629b do not scan include_path with faulty plain_wrapper-based include_path fopen
# _fopen_with_path_rel probably needs to call out to regular php_stream_open, for exts that use it (it is exported)
2008-04-13 22:19:10 +00:00
Dmitry Stogov
862f9ee3d2 Added ability to use stream wrappers in include_path 2008-03-27 10:33:40 +00:00
Antony Dovgal
fc134fd6c5 MFH: disabled mmap() when copying files to memory 2008-03-24 16:28:35 +00:00
Marcus Boerger
f8f01a1fd1 - MFH Settle to 4 MB, see internals@ archives 2008-03-21 19:37:43 +00:00
Marcus Boerger
3ce7194a4d - MFH Fix comment 2008-03-21 18:21:09 +00:00
Marcus Boerger
9f001a01a1 - MFH Increase max mmap size to 8 MB 2008-03-21 17:13:08 +00:00
Felipe Pena
bbac59aa40 MFB: Fixed bug #44440 (st_blocks undefined under BeOS) 2008-03-15 10:32:32 +00:00
Andrey Hristov
49add03404 char **error_message was passed but not used. This causes problems in cases
of getaddrinfo() failure, because the upper layers don't get the error.
initialize a variable because we were reading initialized in case of error.
2008-03-10 19:54:47 +00:00
Ilia Alshanetsky
425c4bca2e Fixed bug #44233 (MSG_PEEK undefined under BeOS R5) 2008-02-27 00:30:24 +00:00
Marcus Boerger
81b40f7047 - MFH Get rid of overoptimization 2008-01-30 23:43:13 +00:00
Greg Beaver
7c1952c863 MFH: clarify error message on why opening a stream wrapper failed for allow_url_include/allow_url_fopen, add test for allow_url_fopen 2008-01-12 15:50:57 +00:00
Sebastian Bergmann
d1dded8751 MFH: Bump copyright year, 2 of 2. 2007-12-31 07:17:19 +00:00
Antony Dovgal
2dab3c40fe correct fix for bug #43522 2007-12-29 10:52:24 +00:00
Ilia Alshanetsky
b9e4413962 Fixed bug #43522 (stream_get_line() eats additional characters) 2007-12-10 14:16:58 +00:00
Jani Taskinen
dcd3b197e7 MFH:- Fixed bug #43365 (Several enums have trailing commas) 2007-11-26 10:59:04 +00:00
Ilia Alshanetsky
6a792bed75 Fixed bug #43182 (file_put_contents() LOCK_EX does not work properly on file
truncation).
2007-11-12 18:44:18 +00:00
Marcus Boerger
5aa7108eb2 - MFH Add glob stream wrapper
[DOC] The glob stream wrapper allows stuff like this:
php -r '$it = new DirectoryIterator("glob://ext/spl/*.c");
        foreach($it as $f) var_dump($f);'
2007-11-06 12:12:58 +00:00
Marcus Boerger
fb7306822d - MFH glob stream wrapper (part 1) 2007-11-06 11:50:52 +00:00
Marcus Boerger
6362476b20 MFH streams stuff 2007-11-06 11:02:36 +00:00
Jani Taskinen
34b45a30e5 MFH: nuke unused variables 2007-11-01 17:32:44 +00:00
Jani Taskinen
f552f91618 MFH: - Fixed bug #43137 (rmdir() and rename() do not clear statcache) 2007-10-31 13:22:45 +00:00
Yiduo (David) Wang
4b4d634cb9 MFH: Added macros for managing zval refcounts and is_ref statuses 2007-10-07 05:22:07 +00:00
Stanislav Malyshev
5b021ac2fa fix proto 2007-08-16 23:54:24 +00:00
Jani Taskinen
45e96efd1d MFH: This is what we get for not doing MFH..or MFB..a mess 2007-08-08 07:01:49 +00:00
Ilia Alshanetsky
0cb6dd5671 Fixed bug #42237 (stream_copy_to_stream returns invalid values for mmaped
streams).
2007-08-08 02:16:41 +00:00
Dmitry Stogov
2d3d745bd9 Fixed EOF handling in case of reading from file opened in write only mode. 2007-07-25 16:34:06 +00:00
Dmitry Stogov
78932ba2f9 Fixed bug #41984 (Hangs on large SoapClient requests) 2007-07-24 14:24:44 +00:00
Jani Taskinen
d271071067 MFH: Fixed compile warnings 2007-07-21 01:43:33 +00:00
Jani Taskinen
dd23eb0c88 MFH:- Fixed bugs #36796, #36918, #41371 (stream_set_blocking() does not work) 2007-07-17 13:28:44 +00:00
Jani Taskinen
efe310579e MFH: - Fixed bug #41815 (Concurrent read/write fails when EOF is reached) 2007-07-12 11:03:46 +00:00
Dmitry Stogov
5c28db4a9c Fixed wrong warning 2007-07-11 14:33:30 +00:00
Dmitry Stogov
510bee631f Fixed warning 2007-07-10 11:57:34 +00:00
Dmitry Stogov
539f67ed8f Added ability to create local or remote (URL) user streams
Local user streams must not be able to open(), URLs if allow_url_include is off
Implemented new function stream_is_local()
[
- stream_wrapper_register() extended with additional optional argument "flags"
  of type long. This time only one flag is implemented
- STREAM_IS_URL, that means that userstream wrapper is remote (URL).
  By default stream is local.
- stream_is_local() is a new function that accepts stream and tell if this
  stream is local or remote (URL)
]
2007-07-09 17:27:24 +00:00
Scott MacVicar
55a3d5f8b1 MFH: Fixed bug #41390 (Clarify error message with invalid protocol scheme) 2007-05-15 13:04:43 +00:00
Dmitry Stogov
eec0b67cd8 Fixed bug #41304 (compress.zlib temp files left) 2007-05-08 12:08:17 +00:00
Dmitry Stogov
41d27878de Fixed crash on win32 in case of negative size 2007-04-18 14:23:06 +00:00
Dmitry Stogov
02ee91dbb4 Fixed crash 2007-04-18 13:53:19 +00:00
Dmitry Stogov
e1814f0dbe WIN64 support 2007-04-16 08:09:56 +00:00
Dmitry Stogov
4de76f02ea Fixed 64-bit support 2007-04-09 15:38:58 +00:00
Marcus Boerger
0ad927dbf2 - MFH A stream wrapper might only allow directory access 2007-03-03 19:01:34 +00:00
Ilia Alshanetsky
1b8a85415d Fixed Bug #39396 (stream_set_blocking crashes on Win32). 2007-02-24 15:48:40 +00:00
Sara Golemon
c3935671cd MFH (r-1.82): Add retry for interrupted reads and graceful handling for failed retries 2007-02-23 23:09:14 +00:00
Marcus Boerger
e3d786be4e - MFH Fix logic 2007-02-22 23:26:03 +00:00
Antony Dovgal
4a95928d1d MFH: implement PHP_STREAM_FLAG_NO_CLOSE and avoid hacks 2007-02-21 21:57:21 +00:00
Ilia Alshanetsky
a92ef5e0dc Fixed a memory leak on highlight_file() with a non-existant file 2007-02-13 23:39:14 +00:00
Antony Dovgal
c8a4b13638 MFH: improve php_userstreamop_seek() 2007-02-13 19:50:59 +00:00
Marcus Boerger
ee3226e50e - MFH options/exports 2007-02-07 20:59:59 +00:00
Andi Gutmans
a11e0b5ef1 - Make sure to be ANSI C compliant 2007-02-05 05:15:16 +00:00
Marcus Boerger
0709a0490f - MFH Add PHPAPI to stuff needed by streams API for shared exts
- MFH Readonly issue fix to memory streams option handling (still not
  activated in 5.2.1 though)
2007-02-03 16:40:05 +00:00
Marcus Boerger
0903f26151 - Disable memory streams set option until 5.2.2 2007-01-27 20:31:51 +00:00
Marcus Boerger
d10beb67c3 - MFH truncate support for mem/temp streams 2007-01-27 20:25:11 +00:00
Nuno Lopes
58d4b44ae7 only 2 bits are needed for shutdown(2) method (only 3 possible values). this is new code in 5.2.1, so don't worry.. 2007-01-18 16:05:48 +00:00
Antony Dovgal
7ad1c3c5f2 MFH: add trailing '\0' to stream hashes 2007-01-15 17:07:08 +00:00
Antony Dovgal
7dd989fd4a revert the patch temporarily, I need to test a bigger patch in HEAD.. 2007-01-15 16:03:42 +00:00
Antony Dovgal
c463e98e99 MFH 2007-01-15 14:59:49 +00:00
Sebastian Bergmann
4223aa4d5e MFH: Bump year. 2007-01-01 09:36:18 +00:00
Dmitry Stogov
5436160dc6 Fixed heap overflow 2006-12-25 13:11:23 +00:00
Antony Dovgal
6aec52bde7 MFH 2006-12-21 01:18:28 +00:00
Antony Dovgal
f807343197 MFH 2006-12-21 01:08:04 +00:00
Antony Dovgal
41b55d9b78 MFH 2006-12-21 00:47:02 +00:00
Dmitry Stogov
03312cc0d9 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:58:58 +00:00
Antony Dovgal
60bb494607 MFH: fix #39673 (file_get_contents causes bus error on certain offsets) 2006-11-29 11:12:59 +00:00
Antony Dovgal
090a83b974 ensure that bucket->brigade is NULL in newly created bucket 2006-11-21 20:58:17 +00:00
Hannes Magnusson
133bdb42e3 Fix ftruncate() with negative size on FreeBSD 2006-11-16 16:06:51 +00:00
Dmitry Stogov
daed379550 Removed unnecessary ftell() calls (one call for each included PHP file) 2006-11-10 13:18:35 +00:00
Dmitry Stogov
f22ae56bc9 Disabled reading from stream (calls to read()) after EOF 2006-11-10 13:10:16 +00:00
Dmitry Stogov
a5f951f27c Removed unnecessary checks for ISREG file and corresponding stat() calls on Windows 2006-11-10 10:55:26 +00:00
Rasmus Lerdorf
c8778c73c3 Mark memory streams as is_url 2006-11-04 20:43:28 +00:00
Dmitry Stogov
770b29803c Fixed mkdir("/tmp/foo//bar/log", 0777, true) 2006-10-19 09:49:44 +00:00
Sara Golemon
d8fc0ccfe1 MFH(r-1.38) Bugfix 38648: Don't assume all buckets are part of a brigade 2006-10-11 23:11:26 +00:00
Antony Dovgal
1cc0339d40 MFH: fix crash when parsing invalid hostnames/IPs 2006-10-11 12:53:56 +00:00
Ilia Alshanetsky
557838efa4 Last set of zend_hash_init() optimizations 2006-10-03 19:51:01 +00:00
Dmitry Stogov
dbae50bf13 Fixed wrong pipe detection code 2006-09-28 07:26:02 +00:00
Antony Dovgal
99b133d7a7 MFH: fix double free(), add test 2006-09-15 07:27:22 +00:00
Dmitry Stogov
2604f21fa6 Removed unused macro USE_ZEND_ALLOC 2006-09-14 09:58:27 +00:00
Ilia Alshanetsky
f0fd70fadb Fixed bug #37779 (empty include_path leads to search for files inside /). 2006-09-12 15:47:25 +00:00
Antony Dovgal
9fa594c2dd fix coverity issue #197
"I can't think of a reason to pass a NULL buf" (c) Wez
2006-09-10 13:01:37 +00:00
Ilia Alshanetsky
4427552b60 Fixed bug #38661 (mixed-case URL breaks url-wrappers). 2006-09-03 16:32:27 +00:00
Antony Dovgal
4e971e8874 MFH: fix #38199 (fclose() unable to close STDOUT and STDERR) 2006-08-28 17:15:03 +00:00
Dmitry Stogov
7dfbf5b2e4 Fixed bug #38488 (Access to "php://stdin" and family crashes PHP on win32) 2006-08-22 06:15:26 +00:00
Antony Dovgal
f42e9f5e15 MFH: fix #38450 (constructor is not called for classes used in userspace stream wrappers) 2006-08-14 15:01:29 +00:00
Antony Dovgal
4902fc6c25 MFH: fix #38086 (stream_copy_to_stream() returns 0 when maxlen is bigger than the actual length)
add tests
2006-07-13 12:00:17 +00:00
Hannes Magnusson
7a6fe06e4b url->URL 2006-06-29 14:40:49 +00:00
Hannes Magnusson
c4154145df MFH: plug memleak 2006-06-20 18:09:50 +00:00
Rasmus Lerdorf
6bfeea9eb9 MFH: Backported allow_url_include from HEAD. This directive allows
separate control of URL handling in includes/requires allowing sites to
enable allow_url_fopen without enabling remote includes.
2006-06-16 14:09:01 +00:00
Antony Dovgal
2f26d8d7ae MFH: don't leak when decoding failed 2006-06-06 14:09:12 +00:00
Antony Dovgal
073ee1397a MFH: no need to check if non-existing include_path complies with open_basedir setting 2006-06-05 22:39:50 +00:00
Edin Kadribasic
8b764bd08c Fixed bug #35886 (nlopes) 2006-06-05 22:19:36 +00:00
Marcus Boerger
59d2ce8258 - MFH Fix feof() 2006-05-23 22:31:25 +00:00
Marcus Boerger
e145343b57 - MFH Handle corrupt base64 data in data: url 2006-05-21 13:37:19 +00:00
Antony Dovgal
6557578657 MFH: initialize factory 2006-05-19 10:24:05 +00:00
Antony Dovgal
3a830a30f4 fix #37395 (recursive mkdir() fails to create nonexistent directories in root dir) 2006-05-16 13:05:02 +00:00
Marcus Boerger
5d43fe49f7 - MFH No need to have this controlled by allow_url_fopen 2006-05-14 19:15:31 +00:00
Marcus Boerger
3577115118 - MFH Add strict compliant RFC2397 support (no //) 2006-05-14 18:40:12 +00:00
Marcus Boerger
5b44266a5f - MFH RFC2397 decoding 2006-05-14 01:42:03 +00:00
Marcus Boerger
0c09d4cb63 - MFH RFC 2397 meta data handling 2006-05-14 01:06:09 +00:00
Marcus Boerger
2100a86198 - MFH Initial support for RFC2397 2006-05-13 17:58:58 +00:00
Wez Furlong
8663f1644d fix for #37158 2006-04-22 17:17:40 +00:00
Michael Wallner
f7a6327728 - Fix reading stream filters never notified about EOF 2006-04-20 17:43:18 +00:00
Marcus Boerger
fa922fb51c - MFH Fix seek/eof issue in temp streams 2006-03-18 19:57:00 +00:00
Marcus Boerger
5a69b29082 - Warning fixes by Steph 2006-02-26 10:57:00 +00:00
Sara Golemon
3a4a0e3cef MFH: Prevent bindport from being used uninitialized 2006-02-02 18:16:43 +00:00
Ilia Alshanetsky
5f9dde24d8 Only report mkdir() errors if error reporting option is set. 2006-01-17 02:32:09 +00:00
Antony Dovgal
3062348c75 MFH: fix #35999 (recursive mkdir() does not work with relative path like "foo/bar") 2006-01-16 19:48:23 +00:00
Ilia Alshanetsky
778c635c40 Fixed bug #35916 (Duplicate calls to stream_bucket_append() lead to a crash). 2006-01-10 16:14:16 +00:00
Marcus Boerger
0d0f3e290b - Fix issue with memset seeking
- Fix issue with shutdown order of temp/memory stream
2006-01-05 22:03:07 +00:00
foobar
5bd93221a8 bump year and license version 2006-01-01 12:51:34 +00:00
Antony Dovgal
248be6fcfc fix #35781 (stream_filter_append() can cause segfault) 2005-12-23 14:32:11 +00:00
Antony Dovgal
aec3b4e73c fix #35740 (memory leak when including a directory) 2005-12-20 09:47:57 +00:00
Zeev Suraski
59dc41f761 Fix prototype 2005-12-18 15:38:08 +00:00
Marcus Boerger
71c7cdb7d9 - Fix temp/memory stream modes 2005-12-14 00:06:09 +00:00
foobar
a3af52c11e MFH: list_entry -> zend_rsrc_list_entry 2005-12-05 23:38:04 +00:00
Antony Dovgal
1a78dc5fbf MFH: fix #35079 (stream_set_blocking(true) toggles, not enables blocking)
patch by askalski at gmail dot com
2005-11-17 14:19:40 +00:00
Wez Furlong
890f7f46b4 Fix #34957; file access checks should use VCWD_ACCESS() 2005-10-22 17:02:10 +00:00
Marcus Boerger
6b0de601be - MFH C vs. C++ fix 2005-10-07 07:38:59 +00:00
Marcus Boerger
35c82a75eb - MFH Fix issue (endless loop) with temp/memory streams 2005-10-06 21:31:25 +00:00
Derick Rethans
b842d8e3d8 - MFH: Fixed a bug where stream_get_meta_data() did not return the "uri"
element for files opened with tmpname().
2005-08-26 12:56:07 +00:00
foobar
23e671a51e - Bumber up year 2005-08-03 14:08:58 +00:00
Wez Furlong
8c57c3a9fe compile before commit (gah!) 2005-07-18 14:12:52 +00:00
Wez Furlong
c4ba9edd57 Apparently our pipe detection code just above this isn't foolproof.
Catch it here.
2005-07-18 13:28:24 +00:00
Marcus Boerger
7316ee0399 - Fix problem with debug mode on selective machines 2005-07-17 18:39:24 +00:00
Ilia Alshanetsky
87d6f497f7 Likely fix for bug #33140 2005-06-24 02:04:19 +00:00
Ilia Alshanetsky
3b79941168 Fixed bug #31054 (safe_mode & open_basedir checks only check first
include_path value).
2005-06-20 15:59:13 +00:00
Sebastian Bergmann
1d9baf3dd5 ZTS fix. 2005-06-14 05:13:01 +00:00
Ilia Alshanetsky
b36d4ae02c Added bindto socket context option. 2005-06-14 02:39:42 +00:00
Wez Furlong
6b29526617 Don't crash when compiled with the zend memory manager disabled. 2005-06-06 01:52:18 +00:00
Dmitry Stogov
8b134356ef Disabled search of recored separator outside of buffer 2005-06-01 15:11:44 +00:00
Antony Dovgal
041b37b2b9 make it compile on Win32 (thanks to Sebastian for noticing) 2005-05-24 10:13:52 +00:00
Ilia Alshanetsky
d367b7b913 Fixed bug #32810 (temporary files not using plain file wrapper). 2005-05-23 21:48:51 +00:00
Antony Dovgal
d4db964aed revert by Wez's request 2005-05-23 15:36:58 +00:00
Antony Dovgal
201fbc48e6 fix bug #32810 (fread after tmpfile() reads only 8192 bytes) 2005-05-23 11:51:53 +00:00
Antony Dovgal
d5bb03b11a fix bugs #32742 (segmentation fault when the stream with a wrapper is not closed),
#32171 (Userspace stream wrapper crashes PHP)
2005-05-16 08:37:14 +00:00
Wez Furlong
4cabeaf1c7 fix inverted logic and thus Bug #27508 2005-05-11 02:02:27 +00:00
Ilia Alshanetsky
edd4860674 Attempt to eliminate seek() prior to every write. 2005-04-29 19:01:33 +00:00
Antony Dovgal
2a83dbdf1c revert the patch, the problem seems to be somewhere else 2005-04-11 15:19:27 +00:00
Sara Golemon
dc8823b565 Fold validation into an inlined function per Andi's suggestion 2005-04-09 19:36:49 +00:00
Uwe Schindler
cd47b3c542 Bug #32614 - prevent from crahsing with segfault on solaris if fdopen() fails - this fixes NOT the stdio-problem on solaris! 2005-04-07 07:29:14 +00:00
Ilia Alshanetsky
a7ae41bf89 Fixed bug #31363 (broken non-blocking flock()).
# Patch by ian at snork dot net
2005-04-06 13:57:30 +00:00
Antony Dovgal
e7a2efe053 do not try to read after EOF 2005-04-06 08:26:06 +00:00
Ilia Alshanetsky
d9aea604b3 Fixed bug #30362 (stream_get_line() not reading data correctly). 2005-04-05 03:00:04 +00:00
Sara Golemon
51852db0df BugFix #32563
This could have been done in stream_wrapper_register()
without introducing the slight performance hit on
wrapper registration since anyone registering a wrapper
in an extension should know better.

The important thing is that since locate_wrapper makes
the assumption that all schemes will be /^[a-z0-9+.-]+$/i
Anything which registers them should make the same assumption as well.
2005-04-04 19:34:32 +00:00
Sara Golemon
29ede46872 BugFix #31137 stream_filter_remove() segfaults when stream already closed 2005-03-29 04:02:03 +00:00
Rasmus Lerdorf
00832b763f Silence a warning here on systems where off_t is a long long. 2005-03-17 16:26:24 +00:00
Andi Gutmans
f4cdd366e1 - Fix comment 2005-02-24 03:04:57 +00:00
Ilia Alshanetsky
8aaafb1ae9 Increase maximum mmapable file size to 2mb from 1mb. 2005-02-23 22:41:05 +00:00
Ilia Alshanetsky
c7b931d80d Fixed bug #31515 (Improve performance of scandir() by factor of 10 or so). 2005-02-22 00:24:13 +00:00
Wez Furlong
f400f0e665 add an open mode for the memory streams that allows the stream to take
ownership of the passed-in buffer
2005-02-06 21:41:36 +00:00
Ilia Alshanetsky
d98a44d483 Fixed bug #29801 (Set limit on the size of mmapable data). 2004-11-15 23:43:12 +00:00
Rob Richards
d563495a24 add support for file://localhost/
support file:/// under windows again
2004-11-11 13:08:32 +00:00
Antony Dovgal
aa35b11afe fix Win32 & Netware build 2004-10-28 05:05:20 +00:00
Antony Dovgal
ceacc834fb fix bug #30388 (rename across filesystems loses ownership and permission info) 2004-10-27 11:58:49 +00:00
Ilia Alshanetsky
5c04e39383 Fixed bug #30362 (stream_get_line() not handling end string correctly). 2004-10-11 18:31:49 +00:00
Wez Furlong
b7182e85c7 Fix the return value check too 2004-10-11 01:40:41 +00:00
Wez Furlong
7cb4e769ff check the correct flag for async connect 2004-10-11 01:30:19 +00:00
Christian Stocker
bd99d77bf6 - Fixed bug #27183 (Userland stream wrapper segfaults on stream_write)
Was applied to PHP 4 ages ago, but not to PHP 5 branch
2004-10-08 14:40:11 +00:00
Anantha Kesari H Y
b855337d39 CLIB_STAT_PATCH check is redundant. So removing it 2004-09-23 13:07:43 +00:00
Wez Furlong
ff4e970fb1 Make new poll stuff work on win32 (and still be safe on unix) 2004-09-17 14:36:55 +00:00
Wez Furlong
99e290f882 Fix for Bug #24189: possibly unsafe select(2) usage.
We avoid the problem by using poll(2).

On systems without poll(2) (older bsd-ish systems, and win32), we emulate
poll(2) using select(2) and check for valid descriptors before attempting
to access them via the descriptor sets.

If an out-of-range descriptor is detected, an E_WARNING is raised suggesting
that PHP should be recompiled with a larger FD_SETSIZE (and also with a
suggested value).

Most uses of select(2) in the source are to poll a single descriptor, so
a couple of handy wrapper functions have been added to make this easier.

A configure option --enable-fd-setsize has been added to both the unix and
win32 builds; on unix we default to 16384 and on windows we default to 256.
Windows FD_SETSIZE imposes a limit on the maximum number of descriptors that
can be select()ed at once, whereas the unix FD_SETSIZE limit is based on the
highest numbered descriptor; 256 should be plenty for PHP scripts under windows
(the default OS setting is 64).

The win32 specific parts are untested; will do that now.
2004-09-17 12:44:56 +00:00
Sara Golemon
34550382d8 Added stream_filter_remove() to cancel a stream filter.
Register filters as resources when
instantiated by stream_filter_(ap|pre)pend().

Export php_stream_filter_flush() internal function to wind buffered data
out of a particular filter until consumed by a later filter or sent to
stream->readbuffer or stream->ops->write()
2004-09-14 03:48:17 +00:00
Sara Golemon
9cd4320b65 Allocating hash tables should be done via macro, not directly 2004-09-13 21:07:22 +00:00
Sara Golemon
ed5dcbff9b A little extra code to allow overriding plainfiles wrapper as well 2004-09-10 21:50:29 +00:00
Sara Golemon
955b43ba12 Add stream_wrapper_unregister()
Disables a wrapper (user-defined or built-in) for the life of the request.

Add stream_wrapper_restore()
Restores the wrapper originally defined at the time the request started
to the protocol name mentioned.
2004-09-10 20:45:35 +00:00
Sara Golemon
d179ac771c Handle maxlen when stream can't be mmaped 2004-09-08 18:42:15 +00:00
Antony Dovgal
fd6d9cbeac fix bug #29723 (file_get_contents() fails with the file:// wrapper under Win32) 2004-08-31 11:37:02 +00:00
Ilia Alshanetsky
c84bd49fb5 Using int when long should be used. 2004-08-22 18:05:24 +00:00
Wez Furlong
b21a7357fc Fix for #29256 from Dmitry, very slightly modified 2004-08-10 13:44:43 +00:00
Wez Furlong
d0be029908 zts fix... 2004-07-31 16:34:44 +00:00
Wez Furlong
ae7285d658 Misc sendto/recvfrom tweaks that have been pending here for a while... 2004-07-31 10:56:55 +00:00
Wez Furlong
05a3fabacb Make sure this is initialized... 2004-07-31 10:49:09 +00:00
Wez Furlong
71078de71a Implement an fstat cache for plain files. 2004-07-31 10:09:25 +00:00
Wez Furlong
971fcd4254 Looks like Sara forgot to change this too. 2004-07-13 16:34:56 +00:00
Wez Furlong
ae40d0ef2a Fix file_get_contents() bug... 2004-07-12 20:59:24 +00:00
Wez Furlong
cd732f1a3f RIP: greedy ready problems
This allows people to use fread($fp, filesize($filename)) for regular files,
but packet-based non-greedy reads for everything else.
2004-07-10 10:54:09 +00:00
Wez Furlong
8f435013ff Fix for Bug #28964 fread "greedy" behaviour 2004-06-29 21:51:53 +00:00
Sara Golemon
a2c24ae90e BugFix#28868 (Part Two): This fixes thread unsafety in the userspace
filters which relates to the fix just applied for userspace wrappers.
2004-06-21 21:08:05 +00:00
Sara Golemon
7fcfa8865e BugFix#28868: Wrapper hash not thread-safe.
Userdefined wrappers were being registered into a global wrapper hash
which can cross threads.  Termination of once instance then has the
potential to leave an active stream in another instance with no wrapper
leading to segfault.
2004-06-21 18:58:55 +00:00
Wez Furlong
b369925372 Fix #25939 for good this time.
# How could I miss this??
2004-05-27 13:04:14 +00:00
Wez Furlong
dd9ac710f1 Fix silly mistake.
Thanks Antony :)
2004-05-26 21:19:21 +00:00
Wez Furlong
6873d6839d *sigh*, obviously, we need this to be able to use sapi_module.name 2004-05-25 13:23:20 +00:00
Wez Furlong
ff0ee48537 DEBUG -> PHP_DEBUG 2004-05-25 13:17:01 +00:00
Wez Furlong
146255f35c check if it matches... not if it doesn't... 2004-05-25 13:00:25 +00:00
Wez Furlong
c6dff79138 In debug mode, under CLI don't close stderr.
This is so that we can see any error reports.

# for extra paranoia, could limit this check to happen only after the script is
# finished running.
2004-05-25 12:59:15 +00:00
Sara Golemon
0dae58bb2a Bugfix #28300 Userspace stream/filter names don't need to be lowercased. 2004-05-06 14:29:33 +00:00
Sara Golemon
0180c36951 BugFix#28287 stream_*_register() not calling __autoload(). 2004-05-05 18:18:57 +00:00
Wez Furlong
0fb4bf9771 Fixed bug #19749 (shouldn't mmap() files larger than memory_limit) 2004-04-21 12:02:47 +00:00
Sara Golemon
fac9416797 Only wind filters when appending to the read chain. 2004-04-01 03:52:34 +00:00
Sara Golemon
002f7ef393 This leaks when a stream opener proxy opens another stream. 2004-04-01 01:07:54 +00:00
Sara Golemon
72616e6eae BugFix#27619
Filters not applied to pre-buffered stream data.
(esp. http:// streams)
2004-03-31 23:48:59 +00:00
Sara Golemon
581948ab00 Provide a meaningful error message when registration fails 2004-03-17 00:08:22 +00:00
Ilia Alshanetsky
88058e5715 Fixed bug #27498 (bogus safe_mode error on nonexistent directories for
chdir() and opendir() functions).
2004-03-16 23:23:17 +00:00
Ard Biesheuvel
b303ba089c More wordsize fixes 2004-03-08 23:11:45 +00:00
Wez Furlong
70757063a7 add cast for qsort compare function.
Kinda ugly, but helps assert that we are doing the right thing as well as
kill the warning there.
2004-03-07 22:06:36 +00:00
Wez Furlong
1e35cf4f32 Connect feof() call to user-space stream feof() method.
Fixes Bug #27417 and #27508
2004-03-07 22:05:21 +00:00
Wez Furlong
0dd2280102 Less magic please 2004-03-07 21:36:55 +00:00
Jon Parise
4db900732d Cast the php_stream_dirent to a 'const char *' for estrndup() to avoid a
compiler warning.
2004-03-01 07:02:23 +00:00
Sara Golemon
860daac5d8 Must addref the resource when we make a new zval reference to it that will be exported to userspace. 2004-03-01 05:33:19 +00:00
Hartmut Holzgraefe
8c32fa79d7 EXTERN_C wrapping for PHPAPI prototypes
(Zend and main should now be ok)
2004-02-20 08:22:12 +00:00
Wez Furlong
a44838e8a3 Fix a bug in the persistent socket liveness checks and feof(); they were
using the default socket timeout of 60 seconds before returning the socket
to the calling script.  The reason they were using that value is that the
same code is used for feof(), so the fix is allowing the caller to
indicate the timeout value for liveness checks.

A possible remaining issue now is that 0 second timeout[1] for pfsockopen
is possibly too short; it's impossible to specify a sane value for all
possible uses, so maybe we need a stream context or an .ini option to
control this, or maybe use the timeout value that was passed to
pfsockopen().

# [1] by timeout, I mean the time that PHP will wait for data on a
# persistent socket before deciding if a new connection should be made;
# NOT the timeout while waiting for a new connection to be established.
2004-02-04 22:46:44 +00:00
Sara Golemon
6d10371ec6 'Bug Fix': scandir, being a new function in PHP5 should have always been wrapper aware. 2004-01-28 22:21:54 +00:00
Wez Furlong
e1ae61802b Fix segfault for scripts like this:
<?php
pfsockopen("foo");
pfsockopen("foo");
?>
Where the transport fails to connect (since args are bogus);
the problem was that the persistent stream entry was not
correctly freed.
2004-01-27 22:40:44 +00:00
Ilia Alshanetsky
4cc62a06f6 Removed unused variable. 2004-01-27 03:20:35 +00:00
Hartmut Holzgraefe
234e8a76c4 stream_lock() method added to userspace streams wrapper 2004-01-21 10:17:12 +00:00
Ilia Alshanetsky
eb3ff409b0 Fixed bug #26974 (rename() doesn't check the destination file
against safe_mode/open_basedir).
2004-01-21 02:28:50 +00:00
foobar
ccfc46b0aa - Happy new year and PHP 5 for rest of the files too..
# Should the LICENSE and Zend/LICENSE dates be updated too?
2004-01-08 17:33:29 +00:00
Andi Gutmans
dbeb4158d2 - A belated happy holidays and PHP 5 2004-01-08 08:18:22 +00:00
Wez Furlong
ab11c8c5ba MFB fix for #25597 2003-12-20 20:25:55 +00:00
Ilia Alshanetsky
1128955aa4 Fixed compiler warnings. 2003-12-14 18:23:15 +00:00
Sara Golemon
822ea95785 Export STREAM_MKDIR_RECURSIVE constant 2003-12-13 23:13:51 +00:00