Commit Graph

302 Commits

Author SHA1 Message Date
Sterling Hughes
91df221ab7 @ Made the User-Agent that php's fopen wrappers send, configurable via
@ php.ini or via a stream context. (Sterling)

The stream context is untested, but it should/could work :)  Either way it
doesn't make the rest of the code bad. Wez -- please take a looksie for me
:)
2002-09-07 15:45:29 +00:00
Anantha Kesari H Y
8b8f1e0590 NetWare related additions/modifications 2002-09-05 14:25:07 +00:00
Marcus Boerger
6063c8c478 fix fwrite to no longer apply stripslashes on input string when
magic_quotes_runtime is set On.
2002-08-26 23:18:59 +00:00
Marcus Boerger
ba40963985 improoved error messages 2002-08-25 18:21:40 +00:00
Wez Furlong
5c6ad38c31 Prevent possible problems with include_path. 2002-08-25 12:09:57 +00:00
Marcus Boerger
149ad05b4f php_error_docref
#New conversion available at: http://docref.txt.marcus-boerger.de
2002-08-24 01:19:28 +00:00
Wez Furlong
9d348ea800 Implement filter API for streams.
Filters can be stacked onto a stream; more details will follow in docs and
on php-dev.

Implement "string.rot13" filter

Allows the following script:

$fp = fopen("file.txt", "r");
stream_filter_prepend($fp, "string.rot13");

// File contents will be subject to a rot13 transformation before
// being output.
fpassthru($fp);
fclose($fp);
2002-08-20 20:47:47 +00:00
Wez Furlong
5f9a5a7c8e Remove php_stream_sock_set_blocking and replace with
php_stream_set_option which can be used in a similar way as ioctl()
to set options for streams.

Current options include buffering and blocking support.

o Buffer control is support for stdio based streams.
o Blocking/non-blocking is supported for stdio and socket based streams.
2002-08-19 22:59:10 +00:00
Ilia Alshanetsky
1aea030cf2 Corrected if() syntax in previous patch. 2002-08-18 07:54:33 +00:00
Ilia Alshanetsky
d42dbfce8e Fixed a segmentation fault that would occur if an entry contained a
non-terminated enclosure. Bug #12556
2002-08-18 06:55:32 +00:00
Rasmus Lerdorf
b025bb1023 Missing proto 2002-08-13 05:08:47 +00:00
Wez Furlong
ccb5c84b6c Centralize some blocking socket related code.
# It's been a while since I wrote this!
2002-08-09 21:02:36 +00:00
Yasuo Ohgaki
c528157123 Remove duplicated checks. 2002-08-08 22:59:41 +00:00
foobar
e3797ab76a Fixed bug: #16638. 2002-07-13 04:45:21 +00:00
Jason Greene
d907b2d525 @Fixed socket_set_timeout on win32 (Jason, Edin, Jani) 2002-07-10 15:23:47 +00:00
Andi Gutmans
b4146638f0 - Fix TSRMLS_* stuff 2002-07-08 18:29:54 +00:00
Derick Rethans
728f2de442 Unify error messages 2002-07-08 12:52:22 +00:00
Derick Rethans
7b7608d630 - Fix for bug #15547 (Patch by Justin Garrett <usjgarrett@byu.edu>) 2002-07-02 06:16:35 +00:00
Hartmut Holzgraefe
303852b42e - fixed bug in enclosure handling (was still hardcoded to '"' in one place)
- added possibility to pass empty enclosure if you really don't want one
2002-06-18 12:16:27 +00:00
Markus Fischer
f9936a8459 - Fix proto. 2002-06-10 10:28:33 +00:00
Andi Gutmans
fc059f5e40 - Fix typo 2002-05-23 14:28:14 +00:00
Derick Rethans
c37d2a97ac - Fix errormessage and whitespace 2002-05-23 07:08:25 +00:00
Yasuo Ohgaki
b768cf0322 Added 4th parameter to specify enclosure character. Patch by Dean Richard Benson <dean@vipersoft.co.uk>
Spit more meaningful error messages when delim and/or enclosure char is null.
2002-05-23 07:03:43 +00:00
Rasmus Lerdorf
93af4bdfb7 Change safe-mode rule for rmdir() to match unlink() - allow is target
is opened by caller or in a directory owned by caller
@ Minor fix to rmdir() under safe-mode (Rasmus)
2002-05-12 15:59:42 +00:00
jim winstead
51e2ea5ed2 fix problem with mkdir() on freebsd 2002-05-06 17:31:22 +00:00
Sascha Schumann
4378214b80 Make this code work on compilers which don't consider the address
of a variable on the stack available at compile time.
2002-05-04 17:12:26 +00:00
Sebastian Bergmann
eacad68c68 Fix ZTS build. 2002-04-30 04:27:52 +00:00
Wez Furlong
760573695c Implement user-space funtions to operate on stream contexts. 2002-04-30 00:28:24 +00:00
Wez Furlong
e1d0a14790 Implement stream context and status notification system.
Bump the BC for zlib notice to a warning
# See my RFC to php-dev a few days ago
2002-04-10 22:42:32 +00:00
Zeev Suraski
385b233040 Fix gzip/bz2 builds for Windows 2002-04-05 11:51:43 +00:00
Wez Furlong
2539cbc74c Phase 3 of OO wrapper cleanup
# What was phase 2?
2002-03-28 00:49:00 +00:00
Markus Fischer
341af63328 - Use proper macros for php_stream_cast() return values (fixes #16211). 2002-03-21 22:05:40 +00:00
Hartmut Holzgraefe
b00d9a5b2c added fnmatch() and glob() functions
could someone please check if i got the virtual dir stuff right?
2002-03-21 19:18:13 +00:00
Wez Furlong
a662f012bb Convert the gzfile related functions into aliases for their equivalents
in ext/standard/file.c, so a gzopen()ed file pointer can be used in
fread, fseek etc.
Improved behaviour of zlib stream.
Moved passthru code into streams.c
# I'm not happy about BG(mmap_file)
Nuked gzgetss_state as no longer needed.
2002-03-21 01:11:52 +00:00
Wez Furlong
3dbde95896 Make state parameter of php_strip_tags passed by reference.
Move state tracking to stream structure.
2002-03-20 14:38:13 +00:00
Wez Furlong
659a071e3d Streams are all tracked as resources now.
Add some logic that will help track down leaks
when debug is enabled.
2002-03-20 14:21:30 +00:00
Wez Furlong
14a3911866 fix for bug #16168 2002-03-19 17:49:02 +00:00
Wez Furlong
6abe71bebc s/fgetwrapperdata/file_get_wrapper_data/ 2002-03-19 13:33:07 +00:00
Wez Furlong
c9d5e13738 TSRMLS related work on streams, as discussed with Zeev.
# Should be the last "broad" commit for a while
# Don't forget to make clean ; make
2002-03-18 18:54:32 +00:00
Zeev Suraski
73e79322ba Fix the build and all of the outstanding VC++ warnings 2002-03-18 08:05:28 +00:00
Wez Furlong
0895998bef s/get_file_contents/file_get_contents/ 2002-03-16 16:52:24 +00:00
Wez Furlong
201446c2b5 Ooops. 2002-03-16 16:14:56 +00:00
Wez Furlong
0447327118 Implement get_file_contents() as discussed (briefly!) by myself, Derick
and Sterling on php-dev some months ago.
It returns the file contents as a string, and uses mmap if possible.
2002-03-16 16:06:18 +00:00
Wez Furlong
636829345e Allow php_stream_copy_to_stream to do nothing when used with code
that calculates a max length of zero. (Thanks again Marcus).
2002-03-16 02:48:35 +00:00
Wez Furlong
52982c422e This should help with some build problems/warnings under win32.
Someone still needs to add the streams.c file to the MSVC
project/workspace though (there are so many that I don't really know
what I am doing :-).
2002-03-16 02:33:00 +00:00
Wez Furlong
a184f5d1d3 * formatting, plus remove some old fopen wrappers 2002-03-16 01:34:52 +00:00
Wez Furlong
0f65280cb5 New PHP streams... 2002-03-15 21:03:08 +00:00
Sebastian Bergmann
90613d2282 Maintain headers. 2002-02-28 08:29:35 +00:00
Markus Fischer
1e2b854bba - mkdir(): made second (mode) parameter optional, default to 0777
switched to zend_parse_parameters().
# Added vim 'noet' setting
2002-01-11 10:44:24 +00:00
Derick Rethans
e5c08b815f - Added open basedir checks to file functions. (Patch by
Christoph Kassen <chkassen@chkassen.de>)
2001-12-21 08:04:21 +00:00
Sean Bright
25058db066 Use memset() instead. 2001-12-21 03:50:07 +00:00
Sean Bright
33730ca2b9 Initialize variable to avoid bogus data and possible segfault. 2001-12-21 03:10:11 +00:00
Sean Bright
0ca4f69d31 Switched some functions to use zend_parse_parameters, cleaned up some
unused variables and some whitespace work.
2001-12-21 01:53:25 +00:00
Sebastian Bergmann
38933514e1 Update headers. 2001-12-11 15:32:16 +00:00
Hartmut Holzgraefe
94737d086f proto fix 2001-12-07 07:27:00 +00:00
Hartmut Holzgraefe
c1626365f9 proto fixes 2001-12-06 18:59:22 +00:00
Sterling Hughes
886ad91adf Make the length parameter to fgets optional (defaults to 1024) 2001-12-04 19:40:48 +00:00
foobar
fc3906e93a WS fix 2001-11-18 03:34:23 +00:00
Sterling Hughes
42b9349d8b Many other reasons that setvbuf can fail than "wrong arguments", returning
false should be enough
2001-11-14 12:57:06 +00:00
Jeroen van Wolffelaar
5ccdb1d352 Fix all (at least, I tried to catch all) proto's in file.c 2001-11-11 20:33:27 +00:00
Jeroen van Wolffelaar
788b1552a7 Add warning when set_file_buffer() fails 2001-11-11 19:42:31 +00:00
Derick Rethans
88c6758d4e - Fixing this bad idea 2001-11-10 18:06:28 +00:00
James Moore
4f78737000 Fix apache win32 dso build.
(This is untested on linux but shouldnt break anything)
2001-11-10 17:24:02 +00:00
foobar
f73ee14bd9 Check that realpath is available. Bug: #9469
# TSRM still uses it without checking. I can't fix that.
2001-10-23 11:14:51 +00:00
Sascha Schumann
a92fa9b2bc Either sizeof(struct stat) or sizeof f_stat, but not sizeof stat. 2001-10-13 23:43:49 +00:00
Derick Rethans
62fb3d63c5 @- Added mmapfile(), read a file into a variabele with mmap (Ilia A, Derick)
- Added mmapfile(), read a file into a variabele with mmap (Patch by:
  Ilia A. <ilia@prohost.org>)
2001-10-07 18:34:44 +00:00
Jeroen van Wolffelaar
c033288573 Back-substitute for Z_* macro's. If it breaks some extension (the script isn't optimal, it parses for example var->zval.value incorrect) please let me know. 2001-09-25 21:58:48 +00:00
Derick Rethans
78747bd2df - Don't wrap lines... this is annoying while coding. 2001-09-09 13:29:31 +00:00
Sterling Hughes
c53f80fb23 1) update to the ZEND_NUM_ARGS() and Z_*_P{0,2} macros
2) minor ws improvements, removing unecessary error checking logic, and
making the error messages a bit nicer looking
2001-08-17 09:08:03 +00:00
Sterling Hughes
8300abe367 Removed select(), fd_set(), etc. (wasn't present in the first place, and
these are implemented in the sockwasn't present in the first place, and
 these are implemented in the sockets extension))
2001-08-15 05:21:43 +00:00
Zeev Suraski
c0404f4631 Whitespace 2001-08-11 17:03:37 +00:00
Sascha Schumann
23b9300fd1 more tsrm cleanup 2001-08-06 03:50:52 +00:00
Sascha Schumann
373b3e101e more tsrm cleanup -- output.c is not doing any fetches anymore 2001-08-05 15:55:43 +00:00
Zeev Suraski
1159c84ab7 - TSRMLS_FETCH work
- whitespace fixes
2001-08-05 01:43:02 +00:00
Sean Bright
d789d45a2e WS Pollution 2001-08-04 13:47:44 +00:00
Sean Bright
fff883689e Don't allocated quoted strings unless we are in a META tag. 2001-08-04 12:36:51 +00:00
Zeev Suraski
b1de7fc900 More TSRMLS_FETCH annihilation. Enough for today... 2001-07-31 07:09:49 +00:00
Zeev Suraski
bc42c37513 More TSRMLS_FETCH work. Got it under 400 now. 2001-07-31 06:28:05 +00:00
Zeev Suraski
aa1772ca72 More TSRMLS_FETCH annihilation 2001-07-31 05:44:11 +00:00
Zeev Suraski
c43806f415 Zend compatibility patch 2001-07-30 08:24:42 +00:00
Zeev Suraski
797a079a95 More TSRMLS_FETCH work, and a bit of cleanup 2001-07-30 06:18:13 +00:00
Zeev Suraski
7b1c400631 More TSRMLS_FETCH annihilation (Zend compatibility patch) 2001-07-30 04:58:07 +00:00
Zeev Suraski
d87cc976e1 Redesigned thread safety mechanism - nua nua 2001-07-28 11:36:37 +00:00
Zeev Suraski
fe6f8712a4 - Get rid of ELS_*(), and use TSRMLS_*() instead.
- Move to the new ts_allocate_id() API
This patch is *bound* to break some files, as I must have had typos somewhere.
If you use any uncommon extension, please try to build it...
2001-07-27 10:16:41 +00:00
Stanislav Malyshev
cdf0532ad3 Make read always 0-terminate strings 2001-07-16 15:44:36 +00:00
Zeev Suraski
94f5950438 Get rid of var_uninit() 2001-07-15 19:03:04 +00:00
Sean Bright
9d05cba6b8 This should be lower-cased per the documentation and previous
implementation.
2001-07-05 23:29:11 +00:00
Sean Bright
55fecbab76 Remove unused variable. 2001-07-01 14:07:44 +00:00
Sean Bright
1b0356e0f7 Fix for bug #11796. Also, fixed a problem in get_meta_tags that required
NAME and CONTENT to be in that order.  Meta tags with no CONTENT attribute
are now added to the array as empty strings.  Meta tags with no NAME
attribute are ignored.
2001-06-30 20:07:12 +00:00
Rasmus Lerdorf
81e2cf03ac Fix folding and clean up some extensions 2001-06-06 13:06:12 +00:00
Rasmus Lerdorf
25c3a3a39d vim-6 does folding - clean up a bunch of missing folding tags plus
some misguided RINIT and RSHUTDOWN calls in a few fringe extensions
2001-06-05 13:12:10 +00:00
Rasmus Lerdorf
ae3dda8285 Fix bug #9526 2001-05-19 22:50:44 +00:00
Sascha Schumann
d5cfb03ac9 munmap() file in RSHUTDOWN, if PHPWRITE fails. 2001-05-18 23:38:46 +00:00
Sascha Schumann
0255bb01e4 Files should be shared among processes. 2001-05-18 17:48:43 +00:00
Wez Furlong
7a88deb402 expose streams to other extensions. 2001-05-12 21:48:39 +00:00
Jason Greene
c115a75544 Rewrote stat() and fstat() to be memory efficient, due to a recent
thread on php-dev.

Note: I added a macro that might have use in other instances, but for now
is included in php_filestat.h
2001-05-11 19:55:44 +00:00
Jason Greene
0ed93d71b2 @fstat() and stat() now return identical output by returning a numerical and
@string indexed array (Jason)

(Andrei's suggestion to still allow backwords compatibility.)
2001-05-11 01:47:46 +00:00
Andi Gutmans
4c823e8a89 - Change macros from V_ to VCWD_ because of AIX name clash 2001-04-30 12:45:02 +00:00
Wez Furlong
86c84da7c2 Discovered warn_not_available and used it. 2001-04-17 17:08:03 +00:00
Wez Furlong
57af70f707 Changes for streams. Added temporary fopenstream function to PHP so that
the streams can be tested.
2001-04-17 17:06:06 +00:00