Commit Graph

854 Commits

Author SHA1 Message Date
Dmitry Stogov
6e6a84129c Incorrect usage of Z_TYPE() macro 2006-02-20 17:14:18 +00:00
Ilia Alshanetsky
c6ba5765be Nuke safe_mode 2006-02-19 18:19:33 +00:00
Andi Gutmans
1efe984d08 - Get rid of using ENFORCE_SAFE_MODE. 2006-02-19 04:29:42 +00:00
Andi Gutmans
e94e25e621 Start nuking safe_mode. Still a lot of work to do... 2006-02-19 00:55:22 +00:00
Antony Dovgal
77b7b56ab0 improve usleep(): use new param parsing API, check for negative values
(related to #36410)
2006-02-16 10:13:23 +00:00
Frank M. Kromann
921498e38b MFB51 Export symbols that will allow building WDDX as shared object 2006-01-28 06:18:18 +00:00
Dmitry Stogov
227295a4f1 Unicode stuff is changed according to decision maden on PDM.
Now IS_BINRAY data type is removed and IS_STRING starts behave as IS_BINARY in unicode mode. IS_STRING is incompatible with IS_UNICODE, so ALL functions should be improved to support unicode mode.
2006-01-17 12:18:53 +00:00
Antony Dovgal
b5fd1c0ec3 add missing ifdefs 2006-01-13 13:04:01 +00:00
Derick Rethans
648e20c1b6 - New implementation of the sunset algorithm. Fixes bugs #33789, #33671, #32820
and #30937.
#- Didn't add it to news yet, as we'll merge this to PHP 5.1.x (just need to
#  wait for Ilia to approve it for 5.1.2).
2006-01-04 12:57:04 +00:00
Derick Rethans
223aa7294d - Added the lchown() and lchgrp() functions which change permissions and group
permissions on symbolic links.
#- We'll also add this to PHP 5.1.3? or PHP 5.2, so I didn't add it to NEWS.
2006-01-04 12:22:23 +00:00
foobar
251c5173fd bump year and license version 2006-01-01 13:10:10 +00:00
Marcus Boerger
927016e154 - MFB Fix zend_is_callable() usage 2005-12-16 22:26:43 +00:00
Antony Dovgal
c9ae9cd47e MF51: fix #35713 (getopt() returns array with numeric strings when passed options like '-1')
TODO:
make getopt() unicode aware
2005-12-16 20:50:38 +00:00
Ilia Alshanetsky
331b7d7b27 MFB51: Fixed bug #35594 (Multiple calls to getopt() may result in a crash). 2005-12-08 03:25:42 +00:00
foobar
0ac2b74b0b - Nuke php3 legacy 2005-12-05 22:53:34 +00:00
Dmitry Stogov
feaa2501d0 Fixed bug #34729 (Crash in ZTS mode under Apache) 2005-12-01 11:49:51 +00:00
Ilia Alshanetsky
667a9b9bce MFB51: Fixed bug #35425 (idate() function ignores timezone settings). 2005-11-29 20:27:21 +00:00
foobar
895e795b53 - Fixed bug #35243 (php_mblen() crashes when compiled with thread-safety on Linux) 2005-11-20 18:06:09 +00:00
Dmitry Stogov
376d30f441 Fixed bug #35229 (call_user_func() crashes when arguement_stack is nearly full) 2005-11-16 09:43:56 +00:00
Ilia Alshanetsky
61c8e857e4 MFB51: Fixed bug #35022, #35019 (Regression in the behavior of key/current
functions).
2005-10-30 18:04:20 +00:00
Ilia Alshanetsky
a36e2bd05a Fixed possible crash and/or memory corruption in import_request_variables()
Fixed potential GLOBALS overwrite via import_request_variables().
2005-09-29 16:30:15 +00:00
Ilia Alshanetsky
a383bd062c Make key() and current() take argument by value. 2005-09-13 13:22:49 +00:00
Dmitry Stogov
49c3b14f53 Unicode support for PHP constants 2005-09-08 11:10:34 +00:00
Dmitry Stogov
f4b8f4e958 Unicode support cleanup 2005-08-23 09:33:46 +00:00
Dmitry Stogov
6b622046dc zend_is_callable() and zend_make_callable() were changed to return readable function name as zval (instead of string). 2005-08-22 12:22:16 +00:00
Marcus Boerger
acca0d32b0 Add is_unicode(), is_binary() and is_buffer() 2005-08-13 10:16:04 +00:00
Andrei Zmievski
264cec8be6 Unicode support. 2005-08-11 23:36:07 +00:00
Dmitry Stogov
b0d3aec8ad Fixed bug #25359 (array_multisort() doesn't work in a function if array is global or reference) 2005-08-10 12:02:14 +00:00
Ilia Alshanetsky
430dea8ef8 News and constants for parse_url(). 2005-08-09 14:40:59 +00:00
foobar
23e671a51e - Bumber up year 2005-08-03 14:08:58 +00:00
Derick Rethans
8aa3554d19 - Reimplemented time(), getdate() and localtime() functions with new datetime
library.
2005-07-03 20:45:08 +00:00
Derick Rethans
0ef991e5ae - Fixed bug #33532 (Different output for strftime() and date()).
- Re-implemented checkdate(), strftime() and gmstrftime() with the new timelib
  code.
2005-07-03 19:14:55 +00:00
Derick Rethans
ed02f202f0 - Fixed bug #30096 (gmmktime does not return the corrent time).
- Re-implemented mktime and gmmktime with new date time library.
- Added testcase for bug #30096, updated test cases for E_STRICT warning of
  is_dst parameter usage for mktime/gmmktime.
2005-07-03 14:27:31 +00:00
Derick Rethans
e155585e6e - Reimplemented date and gmdate with new timelib code.
- Removed old date/gmdate implementations.
- Moved date() related testcases to ext/date/tests.
- Implemented bug #33452.
- Fixed testcase for bug #27719 - there is no timezone called "EST5DST".
2005-06-30 21:38:06 +00:00
Andrei Zmievski
ec09711101 Fix FCI cache for array_walk and user array compare functions. Bug
#33286. (Patch from m.bretz@metropolis-ag.de)
2005-06-15 20:51:33 +00:00
Derick Rethans
4fb4cac65c - Add my new timelib and ext/date. For now only strtotime() makes use of this. 2005-06-14 21:32:29 +00:00
foobar
396affc81e nuked unused header file 2005-05-24 15:24:33 +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
Andrey Hristov
0e459321bf move math_standard_deviation and math_variance to the stats PECL extension 2005-05-13 10:11:19 +00:00
Andrey Hristov
be3a9ccdf3 add function array_product() 2005-05-11 11:43:11 +00:00
Andrey Hristov
f12b14078e rename math_std_dev to math_standard_deviation (the API wasn't published
yet)
2005-05-10 12:50:53 +00:00
Andrey Hristov
7a4eb25870 add also math_variance() which uses the same calculation as math_std_dev() 2005-05-02 12:12:04 +00:00
Andrey Hristov
fb0c19da1c add math_std_dev() 2005-05-02 09:17:49 +00:00
Dmitry Stogov
c81db6bc56 Fixed bug #29210 (Function: is_callable - no support for private and protected classes) 2005-04-27 15:45:36 +00:00
foobar
4c3fdcaa4e - Fixed bug #32647 (Using register_shutdown_function() with invalid callback can crash PHP) 2005-04-21 14:44:29 +00:00
Ilia Alshanetsky
6f539ae99e Added time_sleep_until() function, which is a high precision mechanism of
making a script sleep until specified timestamp.
2005-04-10 16:25:11 +00:00
Ilia Alshanetsky
1d60050312 Removed php_check_syntax() function, it never worked properly. For now
use shell_exec("php -l script_name") or similar.
2005-04-06 14:19:14 +00:00
Zeev Suraski
b31c44d0fd Oops, revert. 2005-03-10 14:33:53 +00:00
Zeev Suraski
1b5d558f91 Fix prototype 2005-03-10 14:32:16 +00:00
Ilia Alshanetsky
975ff6f5d5 Added htmlspecialchars_decode() function for fast conversion from
htmlspecialchars() generated entities back to characters.
2005-03-07 19:37:27 +00:00
Dmitry Stogov
ea6ea21939 Fixed bug #31190 (exceptions in call_user_func_array()) 2005-01-18 10:38:04 +00:00
foobar
6ffb0dcaf2 - Fix leaks with registered shutdown functions. 2005-01-09 16:30:09 +00:00
foobar
4db9db0cc7 - Fix possible crash (PR#26223). Leaks remain. 2005-01-08 20:44:23 +00:00
foobar
4cf9d27072 - Fixed bug #28930 (PHP sources pick wrong header files generated by bison) 2004-12-30 15:18:24 +00:00
Zeev Suraski
f64c4f4569 MFB - description fix 2004-12-27 18:22:50 +00:00
Wez Furlong
d10b86f8f4 Add stream_socket_pair(), a streams based version of socketpair().
Modified patch from Vincent [six at t0x dot net]
2004-12-12 16:10:35 +00:00
Frank M. Kromann
11363296be Avoid renaming of sprintf to php_sprintf 2004-11-15 21:13:25 +00:00
Antony Dovgal
b5c1040240 fix build 2004-11-03 06:22:08 +00:00
Andrey Hristov
494d665955 make sleep() return it's return value when possible
#on some *nix systems sleep() is implemented with SIGALRM. When SIGALRM
#interrupts sleep() it returns the number of seconds that has to be slept
#till the number of seconds wanted by the script. Sleep() on Windows is
# void.
2004-11-02 17:03:20 +00:00
Marcus Boerger
2ffbbb1588 Revert for now 2004-10-08 22:19:03 +00:00
Marcus Boerger
476013cebd - Use ZEND_ARG_SEND_AUTOMATIC for several array functions 2004-10-05 18:37:17 +00:00
Andi Gutmans
11bcaedfc8 - Rename delete_global_variable() to zend_delete_global_variable() 2004-10-04 20:17:06 +00:00
Andi Gutmans
db507dd153 - Commit the variable fetch optimization.
- Extensions which delete global variables need to use new special function
- delete_global_variable() (I'm about to rename it) to remove them.
- Will post to internals@ or via commit messages if there's anything else.
2004-10-04 19:54:35 +00:00
Sterling Hughes
8f1a327edb Add strptime function. 2004-09-29 04:57:19 +00:00
Marcus Boerger
32e478b9fc - Add fputcsv() (David Sklar) 2004-09-26 21:55:22 +00:00
Anantha Kesari H Y
24437ccb75 cleaned up confusing NetWare specific check. disabled chown and chgrp for NetWare 2004-09-25 13:19:45 +00:00
Wez Furlong
31a17d9044 Enable hypot for all 2004-09-20 22:08:06 +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
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
Antony Dovgal
ca28e37be1 fix #29737 in the right way with performance in mind 2004-08-19 15:14:04 +00:00
Antony Dovgal
e156ed7433 fix #29737 (ip2long should return -1 if IP is 255.255.255.255 and FALSE on error) 2004-08-19 13:59:29 +00:00
Sara Golemon
74de8bdb02 Don't require the user to specify as a reference 2004-08-11 03:57:15 +00:00
Sara Golemon
37b8c079d6 Fix inet_pton/ntop() on BSD 2004-08-07 15:59:59 +00:00
Sara Golemon
592b17d4d1 Binary safety fix for inet_pton() 2004-08-07 05:11:26 +00:00
Sara Golemon
75f4ec8879 New Functions inet_pton() and inet_ntop() 2004-08-07 04:50:24 +00:00
Wez Furlong
47e7fef08e Allow win32 stuff to build non-zts.
Fix stream crypto func (again? didn't I already commit that?)
2004-07-31 17:28:27 +00:00
Wez Furlong
ff531cca4d Missing ifdef; thanks Tony 2004-07-29 11:54:12 +00:00
Wez Furlong
cde7423cde Misc. win32 thread safety fixes. 2004-07-29 02:59:44 +00:00
Wez Furlong
17adf438a2 Added stream_context_get_default() which returns the default context option.
You may then set options that affect streams operations for the whole script.

Added stream_socket_enable_crypto() which allows you to turn on or off a crypto
layer (eg: SSL/TLS) on stream, if supported by the underlying transport.

Registered a bunch of constants for that.
2004-07-22 12:12:28 +00:00
Andrey Hristov
5e5d2640fb add array_:
intersect_key()
intersect_ukey()
diff_key()
diff_ukey()
The first two by a patch of Cristiano Duarte. The second two were
implemented in almost the same way except one small difference.
2004-07-21 21:17:56 +00:00
Wez Furlong
a0191f0505 don't allocate 0 bytes here either 2004-07-18 09:55:46 +00:00
Ilia Alshanetsky
53bf5ccbea Removed unneeded if(). 2004-06-27 21:49:47 +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
Marcus Boerger
43b4b086db Bugfix #28851: call_user_func_array has typo in error message 2004-06-20 09:37:35 +00:00
Derick Rethans
f964cc09d2 - Fixed ip2long() behavior if an invalid IP address was passed to the
function. This makes it possible to distingiush between "255.255.255.255"
  and a wrong one.
2004-05-28 10:45:18 +00:00
Andi Gutmans
b5daf7078e - Use FREE_HASHTABLE instead of efree() 2004-05-26 18:00:27 +00:00
Ilia Alshanetsky
396bf39311 Fixed bug #28508 (Do not make hypot() available if not supported by libc). 2004-05-24 17:02:12 +00:00
Marcus Boerger
05a9f544a7 - Move hash table destruction to proper location 2004-05-12 10:17:12 +00:00
Marcus Boerger
b0d27f9e85 - Decouple NAN and INF 2004-05-10 07:23:38 +00:00
Wez Furlong
73f49c16f4 The fix for the vc7 libc putenv bug is also needed here to avoid a crash. 2004-04-22 14:26:03 +00:00
Andi Gutmans
67502a2e7d - modifyable -> modifiable 2004-04-12 12:22:26 +00:00
Marcus Boerger
53b4597fca Initialize to 0 to prevent valgrind warnings 2004-04-03 09:51:57 +00:00
Marcus Boerger
8b15b46aa8 Found a NAN/INF solution that should be portable everywhere(?) (Ard,Marcus) 2004-03-29 18:51:47 +00:00
Marcus Boerger
4f855044c7 Improve portability (idea by Ard) 2004-03-28 21:46:43 +00:00
Marcus Boerger
bc0373b880 Portable solution for bug #27646 that works correct on Windows, too 2004-03-27 00:50:41 +00:00
Marcus Boerger
92d8c3d06e Correct that name 2004-03-26 19:53:07 +00:00
Marcus Boerger
86d3e496f0 let inf be generated by INF constant (thanks to Wez) 2004-03-26 19:45:09 +00:00
Marcus Boerger
3450ed948f -Make NAN and INF more portable (atof() doesn't work on MSVC.6 for example)
-Change test to use constants without prior conversion
2004-03-25 22:36:36 +00:00
Marcus Boerger
fdcff80c16 - Allow negative infinity
- Register missing constants, they work anyway but cause an E_NOTICE
# generation by atof() should be portable enough (afaik)
2004-03-23 22:30:25 +00:00
Rasmus Lerdorf
05f8b4e6bc getopt() doesn't work if variables_order does not include "S" because it
only looks in $_SERVER for argv.  So, if we don't find argv in $_SERVER
fall back to looking in the global symbol table where register_argc_argv
would have put it.
2004-03-10 19:12:49 +00:00
foobar
dde4c166c9 - Make sure srand() / mt_srand() are really called. 2004-01-19 19:01:17 +00:00
Andi Gutmans
dbeb4158d2 - A belated happy holidays and PHP 5 2004-01-08 08:18:22 +00:00
Derick Rethans
6923a16c26 - Fixed var_export() to show public, protected and private modifiers properly.
- Exported (un)mangle_property_name.
2004-01-03 13:51:02 +00:00
Marcus Boerger
a84f8156ff Bugfix #25038 (call_user_func issues warning if function throws exception) 2003-12-27 21:10:34 +00:00
Ilia Alshanetsky
1a53f3c5e0 Define INADDR_NONE for systems that don't have it (apparently solaris). 2003-12-22 16:00:52 +00:00
Ilia Alshanetsky
c6b04cb48a Check correction (Thanks Andi). 2003-12-19 13:49:59 +00:00
Ilia Alshanetsky
c9a9dee298 Fixed bug #26667 (Added safety checks to ip2long()). 2003-12-19 13:33:51 +00:00
Zeev Suraski
cb0fe5786e Cleanup 2003-12-14 12:32:35 +00:00
Wez Furlong
40a573445c Work around a bug in putenv() in the VS.Net C run time library (MSVCRT71) where it will double free a string. 2003-12-04 22:38:22 +00:00
Wez Furlong
37f135ceef Add stream_socket_sendto and stream_socket_recvfrom which work very much
like sendto() and recvfrom() syscalls.
2003-11-29 21:46:50 +00:00
Ilia Alshanetsky
b03d3fa5b7 Added php_strip_whitespace() and php_check_syntax() functions. 2003-11-24 01:17:27 +00:00
Sara Golemon
0101c27823 New function: headers_list(). Ennumerate headers sent to SAPI engine 2003-11-19 21:10:33 +00:00
Ilia Alshanetsky
c53b53f926 Rename nanosleep() to time_nanosleep(). 2003-11-14 22:55:54 +00:00
Ilia Alshanetsky
127ed194b7 Added configure check for nanosleep() availability. 2003-11-12 23:43:46 +00:00
Ilia Alshanetsky
3691ab699c Added nanosleep(), in addition to allowing setting of very short states.
This function is signal safe.
2003-11-12 22:02:37 +00:00
Ilia Alshanetsky
7fe481c9d0 Fixed bug #26176 (Fixed handling of numeric keys in INI files). 2003-11-10 04:12:38 +00:00
Ilia Alshanetsky
ab7ee13670 Added substr_compare(). 2003-10-30 00:49:33 +00:00
Ilia Alshanetsky
8f6b374d1d By popular demand renaming uu(encode/decode) to convert_uu(encode/decode). 2003-10-28 04:02:11 +00:00
Ilia Alshanetsky
17b9b2dc85 Added uuencode() & uudecode() functions. 2003-10-27 05:35:41 +00:00
Ilia Alshanetsky
26f7af25ba Fixed bug #25895 (Incorrect detection of safe_mode limited ini options) 2003-10-20 01:59:35 +00:00
Shane Caraveo
e5103d764a make file uri's work with streams 2003-10-19 20:04:33 +00:00
Wez Furlong
54d1769653 MFB Fix for #25825 2003-10-15 00:18:53 +00:00
Andrey Hristov
638b940307 New array functions for doing intersection of arrays that are complementary
to array_*diff* family of functions. Namely array_uintersect(), array_uintersect_assoc(),
array_intersect_uassoc() and array_uintersect_uassoc(). Test case is also included.
#docs and news entry later.
2003-10-09 08:10:39 +00:00
Wez Furlong
628afb40b6 Implement stream_get_contents, which is somewhat akin to file_get_contents,
except that it works on an already opened stream.
2003-10-08 10:07:25 +00:00
Stanislav Malyshev
e21669502b MF4: allow realpath() for win32 non-ZTS 2003-09-30 09:52:11 +00:00
Andrey Hristov
3579f212df 4 new functions :
array_udiff()
array_udiff_assoc()
array_diff_uassoc()
array_udiff_uassoc()
They work like array_diff() or array_diff_assoc() but callback function(s)
can be used to perform the comparisons. For example array_udiff_uassoc()
expects 2 callbacks are last 2 parameters one is used to compare the values
of the entries in the arrays the second to compare the keys.
Class methods are also valid callbacks. Even when the data that should be
used in the comparison is private or protected then a static method of a
class should be used (this behaviour can be seen in the regression test -
007.phpt).
2003-09-23 17:37:29 +00:00
Sara Golemon
e6fbb7baf5 http.h php_http,h rename 2003-09-06 14:52:10 +00:00
Sara Golemon
0be65c49d3 Introducing php_url_encode_hash_ex() internal function
and http_build_query() userspace function.
2003-09-06 00:35:21 +00:00
Ard Biesheuvel
3d6426ee14 Fix use of EXTERN_C macros 2003-09-02 13:34:23 +00:00
Andrey Hristov
367880b2c1 proto fix 2003-08-28 12:18:51 +00:00
Brian France
d50e0bf4de Added a parameter to php_setcookie to toggle URL encoding of the cookie data
Added the function setrawcookie that turns off URL encoding of the cookie data
Changed setcookie to turn on the URL encoding of the cookie data
2003-08-20 20:51:10 +00:00
foobar
ebec2bb859 Moved the RINIT(crypt) stuff into crypt() itself. 2003-08-11 00:49:19 +00:00
Moriyoshi Koizumi
12ac36ca8d Move shutdown code to better place 2003-08-07 19:53:31 +00:00
Zeev Suraski
90b29aa076 Replace fast_call_user_function() with zend_call_function() 2003-08-05 10:29:03 +00:00
Zeev Suraski
538d58dd5f Use new infrastructure.
There are bound to be some messups, please report build/runtime bugs!
2003-08-03 17:44:39 +00:00
Marcus Boerger
54df2e14b4 Use correct macro 2003-08-02 13:49:12 +00:00
Zeev Suraski
0fe21a3a29 Fix bug #19613 2003-07-24 08:02:08 +00:00
Sebastian Bergmann
10ec176f69 Buckle your seatbelt, Dorothy, 'cause Aggregation is going bye-bye. 2003-06-28 05:38:52 +00:00
Sara Golemon
99db19661a Plug leak (context options not freed)
Make contexts auto-registered, ensures userland contexts
and C API contexts are both dealt with on request shutdown.
Also brings contexts in keeping with streams which are already
auto-registered.
2003-06-13 21:33:59 +00:00
James Cox
f68c7ff249 updating license information in the headers. 2003-06-10 20:04:29 +00:00
Marcus Boerger
ed09fed5cb Removed parts committed by mistake 2003-05-30 19:57:13 +00:00
Marcus Boerger
97a9bf4dd1 MFB 2003-05-29 12:54:01 +00:00
Sara Golemon
af5e2af752 Setup FG(default_context) in RINIT/RSHUTDOWN instead of fg_ctor/fg_dtor.
Frees context at right time without double freeing.
2003-05-21 21:36:51 +00:00
Sterling Hughes
3c6fd35007 initialize these to NULL 2003-05-20 18:18:56 +00:00
Derick Rethans
92f0da58e6 - Rename stream_register_filter() to stream_filter_register(),
stream_register_wrapper() to stream_wrapper_register() and added an alias for
  the latter change.
2003-05-19 15:35:06 +00:00
Ilia Alshanetsky
e2444c223b MFB 2003-05-16 01:09:58 +00:00
Sara Golemon
9103aac254 Modify str_replace/str_ireplace to report how many needles were matched. (FR #8218) 2003-04-13 22:59:19 +00:00
foobar
a45b4258f0 file_set_contents -> file_put_contents 2003-04-08 14:12:52 +00:00
Sara Golemon
b2d4514580 Added stream_get_transports() 2003-04-04 05:21:03 +00:00