History log of /PHP_5_3/main/streams/streams.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
a2045ff 01-Jan-2013 Xinchen Hui <laruence@php.net> Happy New Year~
/PHP_5_3/main/streams/streams.c
76601c4 12-Oct-2012 Gustavo Lopes <glopes@nebm.ist.utl.pt> Fix bug #63240 on stream_get_line()

stream_get_line() could contain the delimiter string if that string
had more than one character. The bug manifested itself when a read on
the stream ended with part of the delimiter string and the read after
would start with the rest of the delimiter string; provided that
the data of first read did not complete the max length result of the
call to stream_get_line() with the partial delimiter used in that max
length return. In that case, the delimiter will still appear in
the result, divided in two subsequent return values. That is not a bug.

See <http://www.mail-archive.com/internals@lists.php.net/msg61325.html>
/PHP_5_3/main/streams/streams.c
6284ef1 09-Oct-2012 Xinchen Hui <laruence@php.net> Fixed bug #63236 (Executable permission on various source files)
/PHP_5_3/main/streams/streams.c
fc74503 08-Jun-2012 Stanislav Malyshev <stas@php.net> improve overflow checks
/PHP_5_3/main/streams/streams.c
7d04e0f 08-Jun-2012 Stanislav Malyshev <stas@php.net> fix potential overflow in _php_stream_scandir
/PHP_5_3/main/streams/streams.c
3e9923d 06-May-2012 Reeze Xia <reeze.xia@gmail.com> Fixed Bug #61961 (file_get_content leaks when access empty file with max length)
/PHP_5_3/main/streams/streams.c
0f180a6 07-Apr-2012 Gustavo André dos Santos Lopes <cataphract@php.net> Fixed bug in new stream_get_line() when using NUL as a delimiter.

This is the issue Derick spotted a few days ago..
/PHP_5_3/main/streams/streams.c
ef19fba 17-Mar-2012 Gustavo André dos Santos Lopes <cataphract@php.net> - Fixed bug #61371 (resource leak). This bug had two parts, a long standing leak
already fixed in trunk/5.3 and now merged onto 5.4 and a leak introduced in
fixing bug #61115. This better fix for #61115 fixes the leak (the inhibition
for deleting the context was too broad) and so prevents segfaults in new
circumstances (where the inhibition was not broad enough).
/PHP_5_3/main/streams/streams.c
b976eba 08-Mar-2012 Gustavo André dos Santos Lopes <cataphract@php.net> - Oops committed old version of the patch in r324020. Fixed. See bug #61253.
/PHP_5_3/main/streams/streams.c
f413b37 08-Mar-2012 Gustavo André dos Santos Lopes <cataphract@php.net> - Fixed bug #61253: Wrappers opened with errors concurrency problem
#NOTE: There is a very small possibility that this will further break
#extensions that access wrapper->{err_stack, err_count}. On PECL SVN, rar is the
#only one and it may leak memory after this. I say "further break" because
#extensions that do that are already broken (will segfault) under ZTS, which is
#why this patch is necessary.
#There was what I deem as tacit acceptance from 5.3/5.4 RMs on this.
/PHP_5_3/main/streams/streams.c
bcefc31 24-Feb-2012 Gustavo André dos Santos Lopes <cataphract@php.net> - Better fix for #61115.
- Fixed resource leak in stream_socket_client().
/PHP_5_3/main/streams/streams.c
eb1ada8 22-Feb-2012 Gustavo André dos Santos Lopes <cataphract@php.net> - Fixed bug #61115 (stream related segfault on fatal error in
php_stream_context_link).
#run-tests.php is not currently detecting the segfault in the test
#Missing 5.4 merge
/PHP_5_3/main/streams/streams.c
45a6f8d 22-Jan-2012 Gustavo André dos Santos Lopes <cataphract@php.net> - Further fix for bug #60455 (stream_get_line misbehaves if EOF is not detected
together with the last read).
- Fixed bug #60817 (stream_get_line() reads from stream even when there is
already sufficient data buffered). stream_get_line() now behaves more like
fgets(), as is documented.
#withheld commit to 5.4
/PHP_5_3/main/streams/streams.c
e4ca0ed 01-Jan-2012 Felipe Pena <felipe@php.net> - Year++
/PHP_5_3/main/streams/streams.c
74d2b2f 11-Dec-2011 Gustavo André dos Santos Lopes <cataphract@php.net> - Fixed bug #60455: stream_get_line misbehaves if EOF is not detected together
with the last read.
/PHP_5_3/main/streams/streams.c
987c843 05-Jul-2011 Gustavo André dos Santos Lopes <cataphract@php.net> - Fixed bug #52935 (call exit in user_error_handler cause stream relate core).
/PHP_5_3/main/streams/streams.c
d846d0e 05-Jun-2011 Ilia Alshanetsky <iliaa@php.net> Fixed bug #51997 (SEEK_CUR with 0 value, returns a warning).
/PHP_5_3/main/streams/streams.c
3b030ec 29-May-2011 Hannes Magnusson <bjori@php.net> Fixed bug #54946 (stream_get_contents infinite loop)
/PHP_5_3/main/streams/streams.c
8f77168 08-May-2011 Gustavo André dos Santos Lopes <cataphract@php.net> - Merged to 5.3 change in trunk in _php_stream_free. This prevents the segfault
in the testcase for bug #53624. The testcase still has to be fixed though,
because it only works as intended on Windows.
/PHP_5_3/main/streams/streams.c
0230281 01-May-2011 Gustavo André dos Santos Lopes <cataphract@php.net> - Fixed accidental change.
/PHP_5_3/main/streams/streams.c
6df67ac 01-May-2011 Gustavo André dos Santos Lopes <cataphract@php.net> - Fixed bug #54623 (Segfault when when writing to a persistent socket after
closing a copy of the socket).
/PHP_5_3/main/streams/streams.c
da0e2a4 01-Feb-2011 Gustavo André dos Santos Lopes <cataphract@php.net> - Fixed several comparisons that always result in true of false
due to signedness of one of the operands, either by removing
dead code or fixing it.
- Thrown some comments around in php_stream_get_record.
- See http://www.mail-archive.com/internals@lists.php.net/msg49525.html
/PHP_5_3/main/streams/streams.c
927bf09 01-Jan-2011 Felipe Pena <felipe@php.net> - Year++
/PHP_5_3/main/streams/streams.c
1045aa2 15-Nov-2010 Gustavo André dos Santos Lopes <cataphract@php.net> - Fixed bug #52820 (writes to fopencookie FILE* not commited when seeking the
stream).
/PHP_5_3/main/streams/streams.c
14a54b9 13-Oct-2010 Gustavo André dos Santos Lopes <cataphract@php.net> - Fixed forward stream seeking emulation in streams that don't support seeking
in situations where the read operation gives back less data than requested
and when there was data in the buffer before the emulation started. Also made
more consistent its behavior -- should return failure every time less data
than was requested was skipped.
- Small performance improvement by correcting off-by-one error that generate an
invalid call to the seek handler or read handler. in _php_stream_seek.
/PHP_5_3/main/streams/streams.c
0d47dff 18-May-2010 Pierre Joye <pajoye@php.net> - #51854, fix logic (patch by Tjerk)
/PHP_5_3/main/streams/streams.c
d269979 08-Apr-2010 Antony Dovgal <tony2001@php.net> fix build
/PHP_5_3/main/streams/streams.c
517d9bb 08-Apr-2010 Pierre Joye <pajoye@php.net> - WS
/PHP_5_3/main/streams/streams.c
d5b2007 06-Jan-2010 Ilia Alshanetsky <iliaa@php.net> Fixed bug #50657 (copy() with an empty (zero-byte) HTTP source succeeds but returns false).
/PHP_5_3/main/streams/streams.c
9ba1e81 03-Jan-2010 Sebastian Bergmann <sebastian@php.net> sed -i "s#1997-2009#1997-2010#g" **/*.c **/*.h **/*.php
/PHP_5_3/main/streams/streams.c
f61a063 16-Nov-2009 Felipe Pena <felipe@php.net> - Switching to TSRMLS_FETCH version
/PHP_5_3/main/streams/streams.c
5411bb3 15-Nov-2009 Felipe Pena <felipe@php.net> - Fixed bug #49936 (crash with ftp stream in php_stream_context_get_option())
(patch by Pierrick)
/PHP_5_3/main/streams/streams.c
c79528a 17-May-2009 Arnaud Le Blanc <lbarnaud@php.net> MFH: Fixed bug #48309 (stream_copy_to_stream() and fpasstru() do not
update stream position of plain files)
/PHP_5_3/main/streams/streams.c
a2600fa 16-May-2009 Arnaud Le Blanc <lbarnaud@php.net> MFH: Fixed bug #48307 (stream_copy_to_stream() copies 0 bytes when $source
is a socket)
/PHP_5_3/main/streams/streams.c
8ea9eb8 19-Apr-2009 Arnaud Le Blanc <lbarnaud@php.net> MFH: Better fix for #47997
/PHP_5_3/main/streams/streams.c
14c717f 19-Apr-2009 Arnaud Le Blanc <lbarnaud@php.net> Fixed bug #47997 (stream_copy_to_stream returns 1 on empty streams)
/PHP_5_3/main/streams/streams.c
2b57d6d 19-Mar-2009 Arnaud Le Blanc <lbarnaud@php.net> MFH: Better fix for #44607. Fixes #47487 (php_stream_fill_read_buffer()
performance degraded after fix of bug 44607).
/PHP_5_3/main/streams/streams.c
31169e2 08-Jan-2009 Felipe Pena <felipe@php.net> MFH:
- Fixed bug #47037 (No error when using fopen with emty string)
Patch by Cristian Rodriguez R.
/PHP_5_3/main/streams/streams.c
08659c2 31-Dec-2008 Sebastian Bergmann <sebastian@php.net> MFH: Bump copyright year, 3 of 3.
/PHP_5_3/main/streams/streams.c
29f49d2 14-Dec-2008 Lars Strojny <lstrojny@php.net> 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.
/PHP_5_3/main/streams/streams.c
a9282f7 24-Nov-2008 David Soria Parra <dsp@php.net> MFH: Revert fix for 43782, as it caused problems.
/PHP_5_3/main/streams/streams.c
e13a423 11-Nov-2008 Arnaud Le Blanc <lbarnaud@php.net> MFH: Fixed stream_get_contents() when using $maxlength and socket is not
closed. indeyets@php.net on #46049.
/PHP_5_3/main/streams/streams.c
d441b5d 04-Nov-2008 Arnaud Le Blanc <lbarnaud@php.net> MFH: Fixed stream_get_line() to behave as documented on non-blocking
streams
/PHP_5_3/main/streams/streams.c
8e220d9 03-Nov-2008 Arnaud Le Blanc <lbarnaud@php.net> MFH: Fixed bug #44607 (stream_get_line unable to correctly identify the
"ending" in the stream content)
/PHP_5_3/main/streams/streams.c
0a2bfc7 03-Nov-2008 Arnaud Le Blanc <lbarnaud@php.net> MFH: Fixed bug #43353 (wrong detection of 'data' wrapper causes notice)
/PHP_5_3/main/streams/streams.c
17cfd5f 22-Sep-2008 Greg Beaver <cellog@php.net> MF52 fix Bug #46147: after stream seek, appending stream filter reads incorrect data
/PHP_5_3/main/streams/streams.c
9f68483 26-Aug-2008 David Soria Parra <dsp@php.net> MFH: Fixed bug #43782 (feof() does not detect timeout on socket)
/PHP_5_3/main/streams/streams.c
9390847 06-Aug-2008 Antony Dovgal <tony2001@php.net> MFH: increase context refcount before open() to avoid crash when open() fails and destroys the context
/PHP_5_3/main/streams/streams.c
04c8373 11-Jul-2008 Antony Dovgal <tony2001@php.net> MFH
/PHP_5_3/main/streams/streams.c
cf7e15c 11-Jul-2008 Antony Dovgal <tony2001@php.net> MFH: manage references of stream context properly
/PHP_5_3/main/streams/streams.c
99933df 11-Jun-2008 Dmitry Stogov <dmitry@php.net> closeder/readdir/rewinddir must work only with directories
/PHP_5_3/main/streams/streams.c
cac1fd7 28-Apr-2008 Greg Beaver <cellog@php.net> 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
/PHP_5_3/main/streams/streams.c
c46d651 28-Apr-2008 Greg Beaver <cellog@php.net> Fixed potentially confusing error message on failure when no errors are logged
/PHP_5_3/main/streams/streams.c
862f9ee 27-Mar-2008 Dmitry Stogov <dmitry@php.net> Added ability to use stream wrappers in include_path
/PHP_5_3/main/streams/streams.c
fc134fd 24-Mar-2008 Antony Dovgal <tony2001@php.net> MFH: disabled mmap() when copying files to memory
/PHP_5_3/main/streams/streams.c
7c1952c 12-Jan-2008 Greg Beaver <cellog@php.net> MFH: clarify error message on why opening a stream wrapper failed for allow_url_include/allow_url_fopen, add test for allow_url_fopen
/PHP_5_3/main/streams/streams.c
d1dded8 31-Dec-2007 Sebastian Bergmann <sebastian@php.net> MFH: Bump copyright year, 2 of 2.
/PHP_5_3/main/streams/streams.c
2dab3c4 29-Dec-2007 Antony Dovgal <tony2001@php.net> correct fix for bug #43522
/PHP_5_3/main/streams/streams.c
b9e4413 10-Dec-2007 Ilia Alshanetsky <iliaa@php.net> Fixed bug #43522 (stream_get_line() eats additional characters)
/PHP_5_3/main/streams/streams.c
6362476 06-Nov-2007 Marcus Boerger <helly@php.net> MFH streams stuff
/PHP_5_3/main/streams/streams.c
45e96ef 08-Aug-2007 Jani Taskinen <jani@php.net> MFH: This is what we get for not doing MFH..or MFB..a mess
/PHP_5_3/main/streams/streams.c
0cb6dd5 08-Aug-2007 Ilia Alshanetsky <iliaa@php.net> Fixed bug #42237 (stream_copy_to_stream returns invalid values for mmaped
streams).
/PHP_5_3/main/streams/streams.c
5c28db4 11-Jul-2007 Dmitry Stogov <dmitry@php.net> Fixed wrong warning
/PHP_5_3/main/streams/streams.c
510bee6 10-Jul-2007 Dmitry Stogov <dmitry@php.net> Fixed warning
/PHP_5_3/main/streams/streams.c
539f67e 09-Jul-2007 Dmitry Stogov <dmitry@php.net> 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)
]
/PHP_5_3/main/streams/streams.c
eec0b67 08-May-2007 Dmitry Stogov <dmitry@php.net> Fixed bug #41304 (compress.zlib temp files left)
/PHP_5_3/main/streams/streams.c
0ad927d 03-Mar-2007 Marcus Boerger <helly@php.net> - MFH A stream wrapper might only allow directory access
/PHP_5_3/main/streams/streams.c
4a95928 21-Feb-2007 Antony Dovgal <tony2001@php.net> MFH: implement PHP_STREAM_FLAG_NO_CLOSE and avoid hacks
/PHP_5_3/main/streams/streams.c
7ad1c3c 15-Jan-2007 Antony Dovgal <tony2001@php.net> MFH: add trailing '\0' to stream hashes
/PHP_5_3/main/streams/streams.c
4223aa4 01-Jan-2007 Sebastian Bergmann <sebastian@php.net> MFH: Bump year.
/PHP_5_3/main/streams/streams.c
557838e 03-Oct-2006 Ilia Alshanetsky <iliaa@php.net> Last set of zend_hash_init() optimizations
/PHP_5_3/main/streams/streams.c
99b133d 15-Sep-2006 Antony Dovgal <tony2001@php.net> MFH: fix double free(), add test
/PHP_5_3/main/streams/streams.c
9fa594c 10-Sep-2006 Antony Dovgal <tony2001@php.net> fix coverity issue #197
"I can't think of a reason to pass a NULL buf" (c) Wez
/PHP_5_3/main/streams/streams.c
4427552 03-Sep-2006 Ilia Alshanetsky <iliaa@php.net> Fixed bug #38661 (mixed-case URL breaks url-wrappers).
/PHP_5_3/main/streams/streams.c
4902fc6 13-Jul-2006 Antony Dovgal <tony2001@php.net> MFH: fix #38086 (stream_copy_to_stream() returns 0 when maxlen is bigger than the actual length)
add tests
/PHP_5_3/main/streams/streams.c
c415414 20-Jun-2006 Hannes Magnusson <bjori@php.net> MFH: plug memleak
/PHP_5_3/main/streams/streams.c
6bfeea9 16-Jun-2006 Rasmus Lerdorf <rasmus@php.net> 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.
/PHP_5_3/main/streams/streams.c
3577115 14-May-2006 Marcus Boerger <helly@php.net> - MFH Add strict compliant RFC2397 support (no //)
/PHP_5_3/main/streams/streams.c
8663f16 22-Apr-2006 Wez Furlong <wez@php.net> fix for #37158
/PHP_5_3/main/streams/streams.c
f7a6327 20-Apr-2006 Michael Wallner <mike@php.net> - Fix reading stream filters never notified about EOF
/PHP_5_3/main/streams/streams.c
5bd9322 01-Jan-2006 foobar <sniper@php.net> bump year and license version
/PHP_5_3/main/streams/streams.c
248be6f 23-Dec-2005 Antony Dovgal <tony2001@php.net> fix #35781 (stream_filter_append() can cause segfault)
/PHP_5_3/main/streams/streams.c
aec3b4e 20-Dec-2005 Antony Dovgal <tony2001@php.net> fix #35740 (memory leak when including a directory)
/PHP_5_3/main/streams/streams.c
a3af52c 05-Dec-2005 foobar <sniper@php.net> MFH: list_entry -> zend_rsrc_list_entry
/PHP_5_3/main/streams/streams.c
23e671a 03-Aug-2005 foobar <sniper@php.net> - Bumber up year
/PHP_5_3/main/streams/streams.c
8b13435 01-Jun-2005 Dmitry Stogov <dmitry@php.net> Disabled search of recored separator outside of buffer
/PHP_5_3/main/streams/streams.c
d4db964 23-May-2005 Antony Dovgal <tony2001@php.net> revert by Wez's request
/PHP_5_3/main/streams/streams.c
201fbc4 23-May-2005 Antony Dovgal <tony2001@php.net> fix bug #32810 (fread after tmpfile() reads only 8192 bytes)
/PHP_5_3/main/streams/streams.c
d5bb03b 16-May-2005 Antony Dovgal <tony2001@php.net> fix bugs #32742 (segmentation fault when the stream with a wrapper is not closed),
#32171 (Userspace stream wrapper crashes PHP)
/PHP_5_3/main/streams/streams.c
edd4860 29-Apr-2005 Ilia Alshanetsky <iliaa@php.net> Attempt to eliminate seek() prior to every write.
/PHP_5_3/main/streams/streams.c
2a83dbd 11-Apr-2005 Antony Dovgal <tony2001@php.net> revert the patch, the problem seems to be somewhere else
/PHP_5_3/main/streams/streams.c
dc8823b 09-Apr-2005 Sara Golemon <pollita@php.net> Fold validation into an inlined function per Andi's suggestion
/PHP_5_3/main/streams/streams.c
e7a2efe 06-Apr-2005 Antony Dovgal <tony2001@php.net> do not try to read after EOF
/PHP_5_3/main/streams/streams.c
d9aea60 05-Apr-2005 Ilia Alshanetsky <iliaa@php.net> Fixed bug #30362 (stream_get_line() not reading data correctly).
/PHP_5_3/main/streams/streams.c
51852db 04-Apr-2005 Sara Golemon <pollita@php.net> 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.
/PHP_5_3/main/streams/streams.c
c7b931d 22-Feb-2005 Ilia Alshanetsky <iliaa@php.net> Fixed bug #31515 (Improve performance of scandir() by factor of 10 or so).
/PHP_5_3/main/streams/streams.c
d98a44d 15-Nov-2004 Ilia Alshanetsky <iliaa@php.net> Fixed bug #29801 (Set limit on the size of mmapable data).
/PHP_5_3/main/streams/streams.c
d563495 11-Nov-2004 Rob Richards <rrichards@php.net> add support for file://localhost/
support file:/// under windows again
/PHP_5_3/main/streams/streams.c
5c04e39 11-Oct-2004 Ilia Alshanetsky <iliaa@php.net> Fixed bug #30362 (stream_get_line() not handling end string correctly).
/PHP_5_3/main/streams/streams.c
3455038 14-Sep-2004 Sara Golemon <pollita@php.net> 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()
/PHP_5_3/main/streams/streams.c
9cd4320 13-Sep-2004 Sara Golemon <pollita@php.net> Allocating hash tables should be done via macro, not directly
/PHP_5_3/main/streams/streams.c
ed5dcbf 10-Sep-2004 Sara Golemon <pollita@php.net> A little extra code to allow overriding plainfiles wrapper as well
/PHP_5_3/main/streams/streams.c
955b43b 10-Sep-2004 Sara Golemon <pollita@php.net> 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.
/PHP_5_3/main/streams/streams.c
d179ac7 08-Sep-2004 Sara Golemon <pollita@php.net> Handle maxlen when stream can't be mmaped
/PHP_5_3/main/streams/streams.c
fd6d9cb 31-Aug-2004 Antony Dovgal <tony2001@php.net> fix bug #29723 (file_get_contents() fails with the file:// wrapper under Win32)
/PHP_5_3/main/streams/streams.c
971fcd4 13-Jul-2004 Wez Furlong <wez@php.net> Looks like Sara forgot to change this too.
/PHP_5_3/main/streams/streams.c
ae40d0e 12-Jul-2004 Wez Furlong <wez@php.net> Fix file_get_contents() bug...
/PHP_5_3/main/streams/streams.c
cd732f1 10-Jul-2004 Wez Furlong <wez@php.net> 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.
/PHP_5_3/main/streams/streams.c
8f43501 29-Jun-2004 Wez Furlong <wez@php.net> Fix for Bug #28964 fread "greedy" behaviour
/PHP_5_3/main/streams/streams.c
a2c24ae 21-Jun-2004 Sara Golemon <pollita@php.net> BugFix#28868 (Part Two): This fixes thread unsafety in the userspace
filters which relates to the fix just applied for userspace wrappers.
/PHP_5_3/main/streams/streams.c
7fcfa88 21-Jun-2004 Sara Golemon <pollita@php.net> 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.
/PHP_5_3/main/streams/streams.c
b369925 27-May-2004 Wez Furlong <wez@php.net> Fix #25939 for good this time.
# How could I miss this??
/PHP_5_3/main/streams/streams.c
002f7ef 01-Apr-2004 Sara Golemon <pollita@php.net> This leaks when a stream opener proxy opens another stream.
/PHP_5_3/main/streams/streams.c
72616e6 31-Mar-2004 Sara Golemon <pollita@php.net> BugFix#27619
Filters not applied to pre-buffered stream data.
(esp. http:// streams)
/PHP_5_3/main/streams/streams.c
7075706 07-Mar-2004 Wez Furlong <wez@php.net> 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.
/PHP_5_3/main/streams/streams.c
0dd2280 07-Mar-2004 Wez Furlong <wez@php.net> Less magic please
/PHP_5_3/main/streams/streams.c
4db9007 01-Mar-2004 Jon Parise <jon@php.net> Cast the php_stream_dirent to a 'const char *' for estrndup() to avoid a
compiler warning.
/PHP_5_3/main/streams/streams.c
a44838e 04-Feb-2004 Wez Furlong <wez@php.net> 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.
/PHP_5_3/main/streams/streams.c
6d10371 28-Jan-2004 Sara Golemon <pollita@php.net> 'Bug Fix': scandir, being a new function in PHP5 should have always been wrapper aware.
/PHP_5_3/main/streams/streams.c
dbeb415 08-Jan-2004 Andi Gutmans <andi@php.net> - A belated happy holidays and PHP 5
/PHP_5_3/main/streams/streams.c
a67bf6e 13-Dec-2003 Sara Golemon <pollita@php.net> Fix Win32 Build. mkdir/rmdir are macros
/PHP_5_3/main/streams/streams.c
c566478 13-Dec-2003 Sara Golemon <pollita@php.net> Route mkdir()/rmdir() via wrapper ops.
Move current rmdir()/rmdir() code to plain_wrappers.c
Implement mkdir()/rmdir() in ftp:// wrapper
/PHP_5_3/main/streams/streams.c
ab0029c 05-Dec-2003 Wez Furlong <wez@php.net> Be smarter about which systems should register unix transports.
Fix skip conditions in these network tests
/PHP_5_3/main/streams/streams.c
026d4c9 28-Nov-2003 Sara Golemon <pollita@php.net> Route php_stat() via streams/url_stat API (php_stream_stat_path).
This enables fopen-wrappers support on stat() and related family calls.
/PHP_5_3/main/streams/streams.c
6d86bb9 28-Nov-2003 Wez Furlong <wez@php.net> (sort of) MFB, feof fix for sockets.
/PHP_5_3/main/streams/streams.c
baced1d 28-Nov-2003 Ilia Alshanetsky <iliaa@php.net> Fixed a memory leak.
/PHP_5_3/main/streams/streams.c
0831f2b 23-Nov-2003 Sara Golemon <pollita@php.net> Fix for file:// wrapper parsing.
(Cristiano Duarte <cunha17@uol.com.br>)
/PHP_5_3/main/streams/streams.c
3ab8d26 03-Nov-2003 Derick Rethans <derick@php.net> - Always store the URI path in the streams structure, and expose it with
stream_get_meta_data().
/PHP_5_3/main/streams/streams.c
2a41429 19-Oct-2003 Shane Caraveo <shane@php.net> A simpler patch to add file uri support
/PHP_5_3/main/streams/streams.c
3cf2d2f 13-Sep-2003 Marcus Boerger <helly@php.net> Show the whole message when in debug mode
/PHP_5_3/main/streams/streams.c
6f37733 13-Sep-2003 Ard Biesheuvel <abies@php.net> Fixed for 64bit archs
/PHP_5_3/main/streams/streams.c
ef23b49 11-Sep-2003 Ilia Alshanetsky <iliaa@php.net> Fixed bug #25316 (Possible infinite loop inside _php_stream_write()).
/PHP_5_3/main/streams/streams.c
0a3d5c9 10-Sep-2003 Ilia Alshanetsky <iliaa@php.net> Fixed bug #25429 (fix copying of stdin using copy() function)
/PHP_5_3/main/streams/streams.c
af8e15b 28-Aug-2003 Sascha Schumann <sas@php.net> kill warnings
/PHP_5_3/main/streams/streams.c
4d98e9e 29-Jul-2003 Ilia Alshanetsky <iliaa@php.net> Finalize the closing process of persistent streams. The current
behavior/API is as follows:

1) To close a persistent use php_stream_pclose(), it will close the stream
and remove it from the persistent list.

2) Inside PHP code only explicit fclose() will close persistent streams,
all other actions such as unset() or assigning a value to stream handle
will not.

3) Regular streams can still be closed by either fclose(), unset() or an
assignment of a value to the stream handler.
/PHP_5_3/main/streams/streams.c
37ee0e5 28-Jul-2003 Ilia Alshanetsky <iliaa@php.net> Fixed a double free bug when freeing persistent streams.
/PHP_5_3/main/streams/streams.c
444615e 02-Jul-2003 Sara Golemon <pollita@php.net> Introduce connection pooling API. I'll use these in http/ftp fopen wrappers soon.
/PHP_5_3/main/streams/streams.c
2e4ef86 27-Jun-2003 Sara Golemon <pollita@php.net> MFB
Plug leak in context notifiers, implement notifier->dtor
/PHP_5_3/main/streams/streams.c
ac79577 27-Jun-2003 Sara Golemon <pollita@php.net> MFB PHP_4_3 main/streams.c r-1.125.2.70
/PHP_5_3/main/streams/streams.c
2f4e91b 16-Jun-2003 Sara Golemon <pollita@php.net> optionvalue is being copied via zval_copy_ctor, there's no need to addref the original
/PHP_5_3/main/streams/streams.c
f304458 14-Jun-2003 Marcus Boerger <helly@php.net> Fix ZTS mode (hopefully all is working fine now again)
/PHP_5_3/main/streams/streams.c
99db196 13-Jun-2003 Sara Golemon <pollita@php.net> 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.
/PHP_5_3/main/streams/streams.c
f68c7ff 10-Jun-2003 James Cox <imajes@php.net> updating license information in the headers.
/PHP_5_3/main/streams/streams.c
2d1a6e5 21-May-2003 Wez Furlong <wez@php.net> MFB context refcounting and text-mode fopen fixes
/PHP_5_3/main/streams/streams.c
192f632 19-May-2003 Wez Furlong <wez@php.net> MFB fix for persistent streams recycling.
/PHP_5_3/main/streams/streams.c
b09aa87 16-Apr-2003 Marcus Boerger <helly@php.net> Don't access what is already freed (noticed by Sascha)
/PHP_5_3/main/streams/streams.c
75c8f37 13-Apr-2003 Marcus Boerger <helly@php.net> Make it static
/PHP_5_3/main/streams/streams.c
887d5ec 13-Apr-2003 Marcus Boerger <helly@php.net> Speling
/PHP_5_3/main/streams/streams.c
bff63db 13-Apr-2003 Marcus Boerger <helly@php.net> Fix persistent stream closing (that one took me at least 3 days)
/PHP_5_3/main/streams/streams.c
c985b78 04-Apr-2003 Sara Golemon <pollita@php.net> Prevent php_stream_get_record from grabbing more than maxlen characters
/PHP_5_3/main/streams/streams.c
8d2dd87 31-Mar-2003 Moriyoshi Koizumi <moriyoshi@php.net> Fixed bug #22538 (stream filter problem)
/PHP_5_3/main/streams/streams.c
6290923 31-Mar-2003 Ilia Alshanetsky <iliaa@php.net> WS
/PHP_5_3/main/streams/streams.c
e451d88 20-Mar-2003 Wez Furlong <wez@php.net> Fix for persistent stream shutdown under debug builds
/PHP_5_3/main/streams/streams.c
7379f47 19-Mar-2003 Wez Furlong <wez@php.net> Sanity check for when a stream is requested to be persistent but the wrapper
does not respect the flag.
/PHP_5_3/main/streams/streams.c
6a87651 18-Mar-2003 Wez Furlong <wez@php.net> Q}
/PHP_5_3/main/streams/streams.c
7c2ccb5 18-Mar-2003 Wez Furlong <wez@php.net> Fix for #22721 (poor file() performance on systems without mmap)
/PHP_5_3/main/streams/streams.c
e15cc99 17-Mar-2003 Ilia Alshanetsky <iliaa@php.net> Win32 build fix.
/PHP_5_3/main/streams/streams.c
27a7eaf 17-Mar-2003 Ilia Alshanetsky <iliaa@php.net> Fixed bug #22538 (failed stat on stdio/stdin/stderr streams).
/PHP_5_3/main/streams/streams.c
af4aa97 06-Mar-2003 Stefan Esser <sesser@php.net> Fixing functionicalls with variable number of parameters...
/PHP_5_3/main/streams/streams.c
fd61f69 27-Feb-2003 Wez Furlong <wez@php.net> 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.
/PHP_5_3/main/streams/streams.c
088e269 24-Feb-2003 Wez Furlong <wez@php.net> MFB: Bunch of streams related fixes.
/PHP_5_3/main/streams/streams.c
8e3f23e 19-Feb-2003 foobar <sniper@php.net> ws fixes + missing $Id$ tags, headers added
/PHP_5_3/main/streams/streams.c
4c4d77d 18-Feb-2003 Wez Furlong <wez@php.net> Fix incorrect TSRMLS_CC usage.
Fix com_create_guid()
/PHP_5_3/main/streams/streams.c
952d5f5 18-Feb-2003 Wez Furlong <wez@php.net> TSRMLS!
/PHP_5_3/main/streams/streams.c
32165a5 18-Feb-2003 Wez Furlong <wez@php.net> 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.
/PHP_5_3/main/streams/streams.c
2cc68ad 16-Feb-2003 Wez Furlong <wez@php.net> Move streams files around a bit, to ease maintenance.
I will update the win32 .dsp in a moment.
/PHP_5_3/main/streams/streams.c