PHP  
Anonymous CVS Access Instructions  
/[cvs]/php-src/NEWS Main trees: php-src | pecl | pear | pear-core  

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1247.2.920.2.255 - (show annotations) (download)
Thu Oct 7 16:56:42 1999 UTC (9 years, 9 months ago) by andrei
Branch: MAIN
Renaming ChangeLog to NEWS. All future entries intended for public should
go into NEWS.
1 PHP 4 NEWS
2 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 07 Aug 2008, Version 4.4.9
4 - Updated PCRE to version 7.7. (Nuno)
5 - Fixed overflow in memnstr(). (Reported by Laurent Gaffie, Derick)
6 - Fixed crash in imageloadfont when an invalid font is given.
7 (discovered by CzechSec, fixed by Pierre)
8 - Fixed open_basedir handling issue in the curl extension. (Stas)
9 - Fixed bug #37421 (mbstring.func_overload set in .htaccess becomes global).
10 (Rui)
11
12 03 Jan 2008, Version 4.4.8
13 - Improved fix for MOPB-02-2007. (Ilia)
14 - Fixed an integer overflow inside chunk_split(). Identified by Gerhard Wagner.
15 (Ilia)
16 - Fixed integer overlow in str[c]spn(). (Stas)
17 - Fixed regression in glob when open_basedir is on introduced by #41655 fix
18 (Pierre)
19 - Fixed money_format() not to accept multiple %i or %n tokens. (Stas, Ilia)
20 - Addded "max_input_nesting_level" php.ini option to limit nesting level of
21 input variables. Fix for MOPB-03-2007. (Stas)
22 - Fixed INFILE LOCAL option handling with MySQL - now not allowed when
23 open_basedir or safe_mode is active (Stas)
24 - Fixed session.save_path and error_log values to be checked against
25 open_basedir and safe_mode (CVE-2007-3378) (Stas, Maksymilian Arciemowicz)
26 - Fixed bug #43010 (Fixed regression in imagearc with two equivelent angles)
27 (Pierre)
28 - Fixed bug #41765 (Recode crashes/does not work on amd64)
29 (nexus at smoula dot net, Stas)
30 - Fixed bug #41630 (segfault when an invalid color index is present in
31 the image data). (Reported by Elliot <wccoder@gmail dot com>) (Pierre)
32 - Fixed bug #41628 (PHP settings leak between Virtual Hosts in
33 Apache 1.3). (Scott, manuel at mausz dot at)
34 - Fixed bug #38798 (OpenSSL init corrected in php5 but not in php4). (Tony)
35
36 04 May 2007, Version 4.4.7
37 - Fixed libgd #86 (Fixed possible infinite loop in imagecreatefrompng)
38 (Reported by Xavier Roche) (Pierre)
39 - Fixed MOPB-33-2007 (PHP mail() Message ASCIIZ Byte Truncation). (Ilia)
40 - Fixed MOPB-32-2007 (Double free inside session_decode()). (Ilia)
41 - Fixed MOPB-26-2007 (mb_parse_str() can be used to activate
42 register_globals). (Ilia)
43 - Fixed MOPB-24-2007 (Fixed unallocated memory access/double free in in
44 array_user_key_compare()). (Stas)
45 - Fixed MOPB-22-2007 (PHP session_regenerate_id() Double Free Vulnerability).
46 (Ilia)
47 - Fixed MOPB-21-2007 (An open_basedir/safe_mode bypass inside the
48 compress.bzip2 wraper). (Ilia)
49 - Fixed MOPB-8-2007 (XSS in phpinfo()). (Joe Orton, Stas)
50 - Fixed CVE-2007-1001 (GD wbmp used with invalid image size). (Pierre)
51 - Fixed CVE-2007-0455 (Buffer overflow in gdImageStringFTEx, used by imagettf
52 function). (Kees Cook, Pierre)
53 - Fixed bug #41655 (open_basedir bypass via glob()). (Ilia)
54 - Fixed bug #41527 (WDDX deserialize numeric string array key). (Matt, Ilia)
55 - Fixed bug #41252 (Calling mcrypt_generic without first calling
56 mcrypt_generic_init crashes). (Derick)
57 - Fixed bug #40998 (long session array keys are truncated). (Tony)
58 - Fixed bug #40915 (addcslashes unexpected behavior with binary input). (Tony)
59 - Fixed bug #40831 (cURL extension doesn't clean up the buffer of reused
60 handle). (Tony)
61 - Fixed bug #40747 (possible crash in session when save_path is out of
62 open_basedir). (Tony)
63 - Fixed bug #38236 (Binary data gets corrupted on multipart/formdata POST)
64 (patch by ass3mbler@gmail.com)
65 - Fixed huge CPU usage in imagearc when used with large angles (libgd bug #74).
66 (Pierre)
67 - Fixed CRLF injection inside ftp_putcmd(). (Ilia)
68
69 28 Feb 2007, Version 4.4.6
70 - Updated PCRE to version 7.0. (Nuno)
71 - Fixed segfault in ext/session when register_globals=On. (Tony)
72 - Fixed bug #40635 (segfault in cURL extension). (Tony)
73 - Fixed bug #40611 (possible cURL memory error). (Tony)
74 - Fixed bug #40578 (imagettftext() multithreading issue). (Tony)
75 - Fixed bug #40502 (ext/interbase compile failure). (Tony)
76 - Fixed bug #40286 (PHP fastcgi with PHP_FCGI_CHILDREN don't kill children when
77 parent is killed). (Dmitry)
78
79 14 Feb 2007, Version 4.4.5
80 - Upgraded PEAR to 1.5.0. (Greg)
81 - Updated PCRE to version 6.7. (Ilia)
82 - Moved extensions to PECL:
83 . ext/ovrimos (Derick)
84
85 - Added a meta tag to phpinfo() output to prevent search engines from
86 indexing the page. (Ilia)
87 - Backported a fix in the configure tests to detect the "rounding fuzz".
88 (Derick, Joe Orton)
89 - Backported fix for ext/imap compilation failure with recent c-client
90 versions. (Tony)
91 - Fixed missing open_basedir check inside chdir() function. (Ilia)
92 - Fixed bug #40335 (Compile fails when using GCC 4.1.1/binutils 2.17). (Tony)
93 - Fixed bug #39971 (pg_insert/pg_update do not allow now() to be used for
94 timestamp fields). (Ilia)
95 - Fixed bug #39890 (using autoconf 2.6x and --with-layout=GNU breaks PEAR
96 install path). (Tony)
97 - Fixed bug #39819 (Using $this not in object context can cause segfaults).
98 (Dmitry)
99 - Fixed bug #39653 (ext/dba doesn't check for db-4.5 and db-4.4 when db4
100 support is enabled). (Tony)
101 - Fixed bug #39583 (ftp_put() does not change transfer mode to ASCII). (Tony)
102 - Fixed bug #39458 (ftp_nlist() returns false on empty dirs). (Nuno)
103 - Fixed bug #39354 (Allow building of curl extension against libcurl
104 7.16.0). (Ilia)
105 - Fixed bug #39034 (curl_exec() with return transfer returns TRUE on empty
106 files). (Ilia)
107 - Fixed bug #38963 (Fixed a possible open_basedir bypass in tempnam()). (Ilia)
108 - Fixed bug #38882 (ldap_connect causes segfault with newer versions of
109 OpenLDAP). (Tony)
110 - Fixed bug #38859 (parse_url() fails if passing '@' in passwd). (Tony,Ilia)
111 - Fixed bug #38722 (Calling undefined method prints insufficient error message)
112 (Hannes)
113 - Fixed bug #38534 (segfault when calling setlocale() in userspace session
114 handler). (Tony)
115 - Fixed bug #38450 (constructor is not called for classes used in userspace
116 stream wrappers). (Tony)
117 - Fixed bug #38378 (wddx_serialize_value() generates no wellformed xml).
118 (sj at sjaensch dot org, grzegorz dot nosek at netart dot pl, Tony).
119 - Fixed bug #37812 (aggregate_methods_by_list fails to take certain methods).
120 (Hannes)
121 - Fixed bug #36975 (natcasesort() causes array_pop() to misbehave). (Hannes)
122 - Fixed bug #36248 (CURLOPT_HEADERFUNCTION, couldn't set the function in the
123 class). (Ilia)
124 - Fixed bug #34066 (recursive array_walk causes segfault). (Tony)
125
126 17 Aug 2006, Version 4.4.4
127 - Fixed memory_limit on 64bit systems. (Stefan E.)
128 - Fixed overflow on 64bit systems in str_repeat() and wordwrap(). (Stefan E.)
129 - Disabled CURLOPT_FOLLOWLOCATION in curl when open_basedir or safe_mode are
130 enabled. (Stefan E.)
131 - Fixed a memory corruption error with an invalid foreach() call. (Stefan E.,
132 Dmitry, Derick)
133 - Fixed bug #38456 (Apache2 segfaults when virtual() is called in .php
134 ErrorDocument). (Ilia)
135 - Fixed bug #38431 (xmlrpc_get_type() crashes PHP on objects). (Tony)
136 - Fixed bug #38377 (session_destroy() gives warning after
137 session_regenerate_id()). (Ilia)
138 - Fixed bug #38322 (reading past array in sscanf() leads to arbitary code
139 execution). (Tony)
140 - Fixed bug #38278 (session_cache_expire()'s value does not match phpinfo's
141 session.cache_expire). (Tony)
142 - Fixed bug #38251 (socket_select() and invalid arguments). (Tony)
143 - Fixed bug #38183 (disable_classes=Foobar causes disabled class to be
144 called Foo). (Jani)
145 - Fixed bug #38112 (corrupted gif segfaults) (Pierre)
146 - Fixed bug #37265 (Added missing safe_mode & open_basedir checks to
147 imap_body()). (Ilia)
148 - Fixed bug #29538 (number_format and problem with 0). (Matthew Wilmas)
149
150 03 Aug 2006, Version 4.4.3
151 - Added control character checks for cURL extension's open_basedir/safe_mode
152 checks. (Ilia)
153 - Added overflow checks to wordwrap() function. (Ilia)
154 - Added a check for special characters in the session name. (Ilia)
155 - Improved safe_mode check for the error_log() function. (Ilia)
156 - Updated PCRE to version 6.6. (Andrei)
157 - Fixed handling of extremely long paths inside tempnam() function. (Ilia)
158 - Fixed XSS inside phpinfo() with long inputs. (Ilia)
159 - Fixed a possible buffer overflow inside create_named_pipe() for Win32 systems
160 in libmysql.c. (Ilia)
161 - Fixed bug #37720 (merge_php_config scrambles values). (Mike,
162 pumuckel at metropolis dot de)
163 - Fixed bug #37569 (WDDX incorrectly encodes high-ascii characters). (Ilia)
164 - Fixed bug #37510 (session_regenerate_id changes session_id() even on failure).
165 (Hannes)
166 - Fixed bug #37360 (Memory errors with a corrupt GIF file) (Pierre)
167 - Fixed bug #37348 (Make PEAR install ignore open_basedir). (Ilia)
168 - Fixed bug #37346 (Crashes when using an invalid colormap format). (Pierre)
169 - Fixed bug #37162 (wddx does not build as a shared extension).
170 (jdolecek at NetBSD dot org, Ilia)
171 - Fixed bug #37046 (foreach breaks static scope). (Dmitry)
172 - Fixed bug #37045 (Fixed check for special chars for http redirects). (Ilia)
173 - Fixed bug #36857 (Added support for partial content fetching to the HTTP
174 streams wrapper). (Ilia)
175 - Fixed bug #36776 (node_list_wrapper_dtor segfault). (Rob)
176 - Fixed bug #36459 (Incorrect adding PHPSESSID to links, which contains \r\n).
177 (Ilia)
178 - Fixed bug #36458 (sleep() accepts negative values). (Ilia)
179 - Fixed bug #36242 (Possible memory corruption in stream_select()). (Tony)
180 - Fixed bug #36223 (curl bypasses open_basedir restrictions). (Tony)
181 - Fixed bug #36205 (Memory leaks on duplicate cookies). (Dmitry)
182 - Fixed bug #36148 (unpack("H*hex", $data) is adding an extra character to the
183 end of the string). (Ilia)
184 - Fixed bug #36017 (fopen() crashes PHP when opening a URL). (Tony)
185
186 13 Jan 2006, Version 4.4.2
187 - Added missing safe_mode/open_basedir checks into cURL extension. (Ilia)
188 - Backported missing imap_mailcompose() fixes from PHP 5.x. (Ilia)
189 - Prevent header injection by limiting each header to a single line. (Ilia)
190 - Fixed possible XSS inside error reporting functionality. (Ilia)
191 - Fixed Apache 2 regression with sub-request handling on non-linux systems.
192 (Ilia, Tony)
193 - Fixed bug #35817 (unpack() does not decode odd number of hexadecimal values).
194 (Ilia)
195 - Fixed bug #35735 ($EGREP not defined in configure). (Jani)
196 - Fixed bug #35669 (imap_mail_compose() crashes with
197 multipart-multiboundary-email). (Ilia)
198 - Fixed bug #35655 (whitespace following end of heredoc is lost). (Ilia)
199 - Fixed bug #35646 (%{mod_php_memory_usage}n is not reset after exit).
200 (vovik at getart dot ru, Tony)
201 - Fixed bug #35594 (Multiple calls to getopt() may result in a crash).
202 (rabbitt at gmail dot com, Ilia)
203 - Fixed bug #35571 (Fixed crash in Apache 2 SAPI when more then one php
204 script is loaded via SSI include). (Ilia)
205 - Fixed bug #35536 (mysql_field_type() doesn't handle NEWDECIMAL). (Tony)
206 - Fixed bug #35410 (wddx_deserialize() doesn't handle large ints as keys
207 properly). (Ilia)
208 - Fixed bug #35341 (Fix for bug #33760 breaks build with older curl). (Tony)
209 - Fixed bug #35278 (Multiple virtual() calls crash Apache 2 php module). (Ilia)
210 - Fixed bug #35257 (Calling ob_flush after creating an ob callback causes
211 segfault). (Tony)
212 - Fixed bug #35079 (stream_set_blocking(true) toggles, not enables
213 blocking). (askalski at gmail dot com, Tony)
214 - Fixed bug #35078 (configure does not find ldap_start_tls_s). (Jani)
215 - Fixed bug #35071 (Wrong fopen mode used in GD safe-mode checks). (Jani)
216 - Fixed bug #35067, #35063 (key(),current() need to work by reference). (Ilia)
217 - Fixed bug #35062 (socket_read() produces warnings on non blocking sockets).
218 (Nuno, Ilia)
219 - Fixed bug #35059 (Apache2 crash with mod_rewrite). (Ilia)
220 - Fixed bug #35009 (ZTS: Persistent resource destruct crashes when extension
221 is compiled as shared). (Dmitry)
222 - Fixed bug #34996 (ImageTrueColorToPalette() crashes when ncolors is zero).
223 (Tony)
224 - Fixed bug #34851 (SO_RECVTIMEO and SO_SNDTIMEO socket options expect integer
225 parameter on Windows). (Mike)
226 - Fixed bug #34830 (the 5th argument of mb_send_mail does not work). (Rui)
227 - Fixed bug #34359 (Possible crash inside fopen http wrapper). (Ilia,Nuno,Sara)
228 - Fixed bug #33963 (mssql_bind() fails on input parameters). (Frank)
229 - Fixed bug #33760 (cURL needs CRYPTO_callback functions to prevent locking).
230 (Mike)
231 - Fixed bug #33720 (mb_encode_mimeheader does not work for multibyte chars).
232 (Rui)
233 - Fixed bug #33523 (Memory leak in xmlrpc_encode_request()). (Ilia)
234 - Fixed bug #33201 (Crash when fetching some data types). (Frank)
235 (frantisek at augusztin dot com)
236 - Fixed bug #33153 (crash in mssql_next result). (Frank)
237 - Fixed bug #32009 (crash when mssql_bind() is called more than once). (Frank)
238 - Fixed bug #31971 (ftp_login fails on some SSL servers).
239 - Fixed bug #30760 (Remove MessageBox on win32 for E_CORE errors if
240 display_startup_error is off). (Ilia)
241 - Fixed bug #27678 (number_format() crashes with large numbers). (Marcus)
242
243 31 Oct 2005, Version 4.4.1
244 - Added missing safe_mode checks for image* functions and cURL. (Ilia)
245 - Added missing safe_mode/open_basedir checks for file uploads. (Ilia)
246 - Added "new_link" parameter to mssql_connect(). Bug #34369. (Frank)
247 - Fixed a memory corruption bug regarding included files. (Derick)
248 - Fixed possible INI setting leak via virtual() in Apache 2 sapi. (Ilia)
249 - Fixed possible crash and/or memory corruption in import_request_variables().
250 (Ilia)
251 - Fixed potential GLOBALS overwrite via import_request_variables(). (Ilia)
252 - Fixed possible GLOBALS variable override when register_globals are ON.
253 (Ilia, Stefan)
254 - Fixed possible register_globals toggle via parse_str(). (Ilia, Stefan)
255 - Fixed bug #34850 (--program-suffix and --program-prefix not included in
256 man page names). (Jani)
257 - Fixed bug #34790 (preg_match_all(), named capturing groups, variable
258 assignment/return => crash). (Dmitry)
259 - Fixed bug #34742 (ftp wrapper failures caused from segmented command
260 transfer). (Ilia)
261 - Fixed bug #34704 (Infinite recursion due to corrupt JPEG). (Marcus)
262 - Fixed bug #34645 (ctype corrupts memory when validating large numbers). (Ilia)
263 - Fixed bug #34565 (mb_send_mail does not fetch mail.force_extra_parameters).
264 (Marco, Ilia)
265 - Fixed bug #34557 (php -m exits with "error" 1). (Johannes)
266 - Fixed bug #34456 (Possible crash inside pspell extension). (Ilia)
267 - Fixed bug #34311 (unserialize() crashes with chars above 191 dec). (Nuno)
268 - Fixed bug #34307 (on_modify handler not called to set the default value if
269 setting from php.ini was invalid). (Andrei)
270 - Fixed bug #34302 (date('W') do not return leading zeros for week 1 to 9).
271 (Derick)
272 - Fixed bug #34277 (array_filter() crashes with references and objects).
273 (Dmitry)
274 - Fixed bug #34191 (ob_gzhandler does not enforce trailing \0). (Ilia)
275 - Fixed bug #34156 (memory usage remains elevated after memory limit is
276 reached). (Ilia)
277 - Fixed bug #34148 (+,- and . not supported as parts of scheme). (Ilia)
278 - Fixed bug #34137 (assigning array element by reference causes binary mess).
279 (Dmitry)
280 - Fixed bug #34068 (Numeric string as array key not cast to integer in
281 wddx_deserialize()). (Ilia)
282 - Fixed bug #34064 (arr[] as param to function is allowed only if function
283 receives argument by reference). (Dmitry)
284 - Fixed bug #33989 (extract($GLOBALS,EXTR_REFS) crashes PHP). (Dmitry)
285 - Fixed bug #33987 (php script as ErrorDocument causes crash in Apache 2).
286 (Ilia)
287 - Fixed bug #33940 (array_map() fails to pass by reference when called
288 recursively). (Dmitry)
289 - Fixed bug #33690 (Crash setting some ini directives in httpd.conf). (Rasmus)
290 - Fixed bug #33673 (Added detection for partially uploaded files). (Ilia)
291 - Fixed bug #33648 (Using --with-regex=system causes compile failure). (Andrei)
292 - Fixed bug #33558 (Warning with nested calls to functions returning by
293 reference). (Dmitry, Derick)
294 - Fixed bug #33383 (crash when retrieving empty LOBs). (Tony)
295 - Fixed bug #33156 (cygwin version of setitimer doesn't accept ITIMER_PROF).
296 (Nuno)
297 - Fixed bug #32937 (open_basedir looses trailing / in the limiter). (Adam C.)
298 - Fixed bug #32589 (possible crash inside imap_mail_compose() function). (Ilia)
299 - Fixed bug #32179 (xmlrpc_encode() segfaults with recursive references). (Tony)
300 - Fixed bug #32160 (copying a file into itself leads to data loss). (Ilia)
301 - Fixed bug #31158 (array_splice on $GLOBALS crashes). (Dmitry)
302 - Fixed bug #29983 (PHP does not explicitly set mime type & charset). (Ilia)
303 - Fixed bug #29253 (array_diff with $GLOBALS argument fails). (Dmitry)
304 - Fixed bug #21306 (ext/sesssion: catch bailouts of write handler during
305 RSHUTDOWN). (Jani, Xuefer at 21cn dot com)
306
307 11 Jul 2005, Version 4.4.0
308 - Added man pages for "phpize" and "php-config" scripts. (Jakub Vrana)
309 - Added support for .cc files in extensions. (Brian)
310 - Added the sorting flag SORT_LOCALE_STRING to the sort() functions which makes
311 them sort based on the current locale. (Derick)
312 - Changed sha1_file() and md5_file() functions to use streams instead of
313 low level IO. (Uwe)
314 - Fixed memory corruptions when using references in a wrong way. (Marcus,
315 Dmitry, Derick)
316 - Fixed memory corruption in pg_copy_from() in case the as_null parameter was
317 passed. (Derick)
318 - Fixed memory corruption in stristr(). (Derick)
319 - Fixed bug #32685, #29423 (Segfault when using assignment by reference within
320 function). (Dmitry, Derick)
321 - Fixed bug #33242 (Mangled error message when stream fails). (Derick)
322 - Fixed bug #33222 (segfault when CURL handle is closed in a callback). (Tony)
323 - Fixed bug #33214 (odbc_next_result does not signal SQL errors with
324 2-statement SQL batches). (rich at kastle dot com, Tony)
325 - Fixed bug #33210 (relax jpeg recursive loop protection). (Ilia)
326 - Fixed bug #33200 (preg_replace(): magic_quotes_sybase=On makes 'e' modifier
327 misbehave). (Jani)
328 - Fixed bug #33150 (shtool: insecure temporary file creation). (Jani)
329 - Fixed bug #33072 (Add a safemode/open_basedir check for runtime save_path
330 change) (Rasmus)
331 - Fixed bug #33070 (Improved performance of bzdecompress() by several orders
332 of magnitude). (Ilia)
333 - Fixed bug #33057 (Don't send extraneous entity-headers on a 304 as per
334 RFC 2616 section 10.3.5) (Rasmus, Choitel)
335 - Fixed bug #33019 (socket errors cause memory leaks in php_strerror()).
336 (jwozniak23 at poczta dot onet dot pl, Tony).
337 - Fixed bug #33017 ("make distclean" gives an error with VPATH build). (Jani)
338 - Fixed bug #33013 ("next month" was handled wrong while parsing dates).
339 (Derick)
340 - Fixed bug #32974 (pcntl calls malloc() from a signal handler). (Wez)
341 - Fixed bug #32944 (Disabling session.use_cookies doesn't prevent reading
342 session cookies). (Jani, Tony)
343 - Fixed bug #32936 (http redirects URLs are not checked for control chars). (Ilia)
344 - Fixed bug #32932 (Oracle LDAP: ldap_get_entries invalid pointer). (Jani)
345 - Fixed bug #32904 (pg_get_notify() ignores result_type parameter). (Tony)
346 - Fixed bug #32813 (parse_url() does not handle scheme-only urls properly). (Ilia)
347 - Fixed bug #32810 (temporary files not using plain file wrapper). (Ilia)
348 - Fixed bug #32802 (General cookie overrides more specific cookie). (Ilia)
349 - Fixed bugs #32800, #32830 (ext/odbc: Problems with 64bit systems). (Jani)
350 - Fixed bug #32773 (GMP functions break when second parameter is 0). (Stas)
351 - Fixed bug #32742 (segmentation fault when the stream with a wrapper
352 is not closed). (Tony, Dmitry)
353 - Fixed bug #32730 (ext/crack.c fails to compile with cracklib-2.8.3). (Jani)
354 - Fixed bug #32670 (foreach() does not issue warning on unset array arg). (Ilia)
355 - Fixed bug #32699 (pg_affected_rows() was defined when it was not available).
356 (Derick)
357 - Fixed bug #32682 (ext/mssql: Error on module shutdown when called from
358 activescript). (Frank)
359 - Fixed bug #32647 (Using register_shutdown_function() with invalid callback
360 can crash PHP). (Jani)
361 - Fixed bug #32591 (ext/mysql: Unsatisfied symbol: ntohs with HP-UX). (Jani)
362 - Fixed bug #32589 (Possible crash inside imap_mail_compose, with charsets).
363 (Ilia)
364 - Fixed bug #32587 (Apache2: errors sent to error_log do not include
365 timestamps). (Jani)
366 - Fixed bug #32567 (ext/gmp fails to compile in threadsafe mode). (Tony)
367 - Fixed bug #32538 (ext/swf/swf.c does not compile with gcc-3.4.x or newer).
368 (adam dot greenfield at gmail dot com)
369 - Fixed bug #32530 (chunk_split() does not append endstr if chunklen is
370 longer then the original string). (Ilia)
371 - Fixed bug #32491 (File upload error - unable to create a temporary file).
372 (Uwe Schindler)
373 - Fixed bug #32311 (mb_encode_mimeheader() does not properly escape characters).
374 (Moriyoshi)
375 - Fixed bug #32245 (xml_parser_free() in a function assigned to the xml parser
376 gives a segfault). (Rob)
377 - Fixed bug #32116 (mysql compressed connection doesn't work under windows)
378 (Georg)
379 - Fixed bug #31887 (ISAPI: Custom 5xx error does not return correct HTTP
380 response message). (Jani)
381 - Fixed bug #31583 (php_std_date() uses short day names in non-y2k_compliance mode).
382 (mike at php dot net)
383 - Fixed bug #31213 (Sideeffects caused by fix of bug #29493). (Dmitry)
384 - Fixed bug #30052 (Crash on shutdown after odbc_pconnect()). (Edin)
385 - Fixed bug #29975 (memory leaks when set_error_handler() is used inside error
386 handler). (Tony)
387 - Fixed bug #29944 (Function defined in switch, crashes). (Dmitry)
388 - Fixed bug #29338 (unencoded spaces get ignored after certain tags). (Ilia)
389 - Fixed bug #28605 (Need to use -[m]ieee option for Alpha CPUs). (Jani)
390 - Fixed bug #28377 (debug_backtrace is intermittently passing args). (Dmitry)
391
392 31 Mar 2005, Version 4.3.11
393 - Added Oracle Instant Client support. (cjbj at hotmail dot com, Tony)
394 - Added checks for negative values to gmp_sqrt(), gmp_powm(), gmp_sqrtrem()
395 and gmp_fact() to prevent SIGFPE. (Tony)
396 - Changed phpize not to require libtool. (Jani)
397 - Updated bundled libmbfl library (used for multibyte functions). (Moriyoshi)
398 - Fixed several leaks in ext/browscap and sapi/embed. (Andrei)
399 - Fixed several leaks in ext/filepro. (Tony)
400 - Fixed build system to always use bundled libtool files. (Jani)
401 - Fixed MacOSX shared extensions crashing on Apache startup. (Rasmus)
402 - Fixed bug #32373 (segfault in bzopen() if supplied path to non-existent
403 file). (Tony)
404 - Fixed bug #32340 (insert_before($node,NULL) does not return). (Rob)
405 - Fixed bug #32200 (Prevent using both --with-apxs2 and --with-apxs2filter).
406 (Jani)
407 - Fixed bug #32114 (DOM crashing when attribute appended to Document). (Rob)
408 - Fixed bug #32063 (mb_convert_encoding ignores named entity 'alpha').
409 (Moriyoshi)
410 - Fixed bug #31960 (msql_fetch_row() and msql_fetch_array() dropping columns
411 with NULL values). (Daniel Convissor)
412 - Fixed bug #31936 (set_h_errno() is redefined incompatibly). (Jani)
413 - Fixed bug #31911 (mb_decode_mimeheader() is case-sensitive to hex escapes).
414 (Moriyoshi)
415 - Fixed bug #31858 (--disable-cli does not force --without-pear). (Jani)
416 - Fixed bug #31842 (*date('r') does not return RFC2822 conforming date string).
417 (Jani)
418 - Fixed bug #31797 (exif_read_data() uses too low nesting limit). (Ilia)
419 - Fixed bug #31796 (readline completion handler does not handle empty return
420 values). (Ilia)
421 - Fixed bug #31792 (getrusage() does not provide ru_nswap value). (Ilia)
422 - Fixed bug #31754 (dbase_open() fails for mode = 1). (Mehdi, Derick)
423 - Fixed bug #31705 (parse_url() does not recognize http://foo.com#bar). (Ilia)
424 - Fixed bug #31684 (dio_tcsetattr(): misconfigured termios settings).
425 (elod at itfais dot com)
426 - Fixed bug #31699 (unserialize() float problem on non-English locales). (Ilia)
427 - Fixed bug #31623 (OCILogin does not support password grace period).
428 (daniel dot beet at accuratesoftware dot com, Tony)
429 - Fixed bug #31580 (fgetcsv() problematic with "" escape sequences). (Ilia)
430 - Fixed bug #31527 (crash in msg_send() when non-string is stored without
431 being serialized). (Ilia)
432 - Fixed bug #31514 (open_basedir uses path_translated rather then cwd for .
433 translation). (Ilia)
434 - Fixed bug #31480 (Possible infinite loop in imap_mail_compose()). (Ilia)
435 - Fixed bug #31479 (Fixed crash in chunk_split(), when chunklen > strlen). (Ilia)
436 - Fixed bug #31465 (False warning in unpack() when working with *). (Ilia)
437 - Fixed bug #31454 (session_set_save_handler crashes PHP when supplied
438 non-existent object ref). (Tony)
439 - Fixed bug #31444 (Memory leak in zend_language_scanner.c).
440 (hexer at studentcenter dot org)
441 - Fixed bug #31442 (unserialize broken on 64-bit systems). (Marcus)
442 - Fixed bug #31440 ($GLOBALS can be overwritten via GPC when
443 register_globals is enabled). (Ilia)
444 - Fixed bug #31413 (curl POSTFIELDS crashes on 64-bit platforms). (Joe)
445 - Fixed bug #31396 (compile fails with gd 2.0.33 without freetype). (Jani)
446 - Fixed bug #31371 (highlight_file() trims new line after heredoc). (Ilia)
447 - Fixed bug #31270 (missing safe_mode/open_basedir check in swf_openfile()). (Ilia)
448 - Fixed bug #31174 (compile warning in url.c). (Ilia, lukem at NetBSD dot org)
449 - Fixed bug #31159 (COM object access is not working). (Wez)
450 - Fixed bug #31142 (imap_mail_compose() fails to generate correct output). (Ilia)
451 - Fixed bug #31398 (When magic_guotes_gpc are enabled filenames with ' get cutoff).
452 (Ilia)
453 - Fixed bug #31288 (Possible crash in mysql_fetch_field(), if mysql_list_fields()
454 was not called previously). (Ilia)
455 - Fixed bug #31120 (mssql_query returns false on successfull inserts and
456 stored procedures). (Frank)
457 - Fixed bugs #31107, #31110, #31111, #31249 (Compile failure of zend_strtod.c).
458 (Jani)
459 - Fixed bug #31106 (Fixed crash in overloaded objects). (Stas)
460 - Fixed bug #31103 (Better error message when c-client cannot be found). (Ilia)
461 - Fixed bug #31101 (missing kerberos header file path with --with-openssl). (Jani)
462 - Fixed bug #31072 (var_export() does not output an array element with an empty
463 string key). (Derick)
464 - Fixed bug #31060 (imageftbbox() does not use linespacing parameter). (Jani)
465 - Fixed bug #31056 (php_std_date() returns invalid formatted date if
466 y2k_compliance is On). (Ilia)
467 - Fixed bug #31055 (apache2filter: per request leak proportional to the full
468 path of the request URI). (kameshj at fastmail dot fm)
469 - Fixed bug #30726 (-.1 like numbers are not being handled correctly). (Ilia)
470 - Fixed bug #30609 (cURL functions bypass open_basedir). (Jani)
471 - Fixed bug #30573 (compiler warnings in libmbfl due to invalid type cast).
472 (Moriyoshi)
473 - Fixed bug #30549 (incorrect character translations for some ISO8859 charsets).
474 (Moriyoshi)
475 - Fixed bug #30446 (apache2handler: virtual() includes files out of sequence)
476 - Fixed bug #30430 (odbc_next_result() doesn't bind values and that results
477 in segfault). (pdan-php at esync dot org, Tony)
478 - Fixed bug #30120 (imagettftext() and imagettfbbox() accept too many
479 parameters). (Jani)
480 - Fixed bug #29733 (printf() handles repeated placeholders wrong).
481 (bugs dot php dot net at bluetwanger dot de, Ilia)
482 - Fixed bug #29424 (width and height inverted for JPEG2000 files). (Ilia)
483 - Fixed bug #28976 (mail(): use "From:" from headers if sendmail_from is empty).
484 (Jani)
485 - Fixed bug #28930 (PHP sources pick wrong header files generated by bison).
486 (eggert at gnu dot org)
487 - Fixed bug #28804 (ini-file section parsing pattern is buggy).
488 (wendland at scan-plus dot de)
489 - Fixed bug #28803 (enabled debug causes bailout errors with CLI on AIX
490 because of fflush() called on already closed filedescriptor). (Tony)
491 - Fixed bug #28451 (corupt EXIF headers have unlimited recursive IFD directory
492 entries). (Andrei)
493 - Fixed bug #28220 (mb_strwidth() returns wrong width values for some hangul chars). (Moriyoshi)
494 - Fixed bug #28086 (crash inside overload() function). (Tony)
495 - Fixed bug #28074 (FastCGI: stderr should be written in a FCGI stderr stream).
496 (chris at ex-parrot dot com)
497 - Fixed bug #28067 (partially incorrect utf8 to htmlentities mapping). (Derick,
498 Benjamin Greiner)
499 - Fixed bug #27633 (Double \r problem on ftp_get in ASCII mode on Win32). (Ilia)
500 - Fixed bug #18613 (Multiple OUs in x509 certificate not handled properly). (Jani)
501 - Fixed bug #7782 (Cannot use PATH_INFO fully with php isapi). (Unknown)
502
503 15 Dec 2004, Version 4.3.10
504 - Added the %F modifier to *printf to render a non-locale-aware representation
505 of a float with the . as decimal separator. (Derick)
506 - Backported Marcus' foreach() speedup patch from PHP 5.x. (Derick)
507 - Fixed a bug in addslashes() handling of the '\0' character. (Ilia)
508 - Fixed potential problems with unserializing invalid serialize data. (Marcus)
509 - Fixed bug #31034 (Problem with non-existing iconv header file). (Derick)
510 - Fixed bug #31024 (Crash in fgetcsv() with negative length). (Ilia)
511 - Fixed bug #31019 (Logic error mssql library checking). (Frank)
512 - Fixed bug #30995 (snmp extension does not build with net-snmp 5.2). (Ilia)
513 - Fixed bug #30990 (allow popen() on *NIX to accept 'b' flag). (Ilia)
514 - Fixed bug #30826 (Certain reference relations cannot be unserialized
515 properly). (Ilia)
516 - Fixed bug #30750 (Meaningful error message when upload directory is not
517 accessible). (Ilia)
518 - Fixed bug #30739 (imagefill does not set back alphablending mode). (Pierre)
519 - Fixed bug #30672 (Problem handling exif data in jpeg images at unusual
520 places). (Marcus)
521 - Fixed bug #30658 (Ensure that temporary files created by GD are removed).
522 (Ilia)
523 - Fixed bug #30654 (oci8 persistent connection is deleted from hash
524 if there was exclusive connection with the same credentials). (Tony)
525 - Fixed bug #30613 (Prevent infinite recursion in url redirection). (Ilia)
526 - Fixed bug #30587 (array_multisort doesn't separate zvals before
527 changing them). (Tony)
528 - Fixed bug #30475 (curl_getinfo() may crash in some situations). (Ilia)
529 - Fixed bug #30442 (segfault when parsing ?getvariable[][ ). (Tony)
530 - Fixed bug #30388 (rename across filesystems loses ownership and
531 permission info). (Tony)
532 - Fixed bug #30282 (segfault when using unknown/unsupported
533 session.save_handler and/or session.serialize_handler). (Tony)
534 - Fixed bug #30281 (Prevent non-wbmp images from being detected as such).
535 (Ilia)
536 - Fixed bug #30276 (Possible crash in ctype_digit on large numbers). (Ilia)
537 - Fixed bug #30229 (imagerectangle and imagefilledrectangle do work well
538 with alpha channel, corners are drawn twice). (Pierre)
539 - Fixed bug #30224 (Sybase date strings are sometimes not null terminated).
540 (Ilia)
541 - Fixed bug #30133 (get_current_user() crashes on Windows). (Edin)
542 - Fixed bug #30057 (did not detect IPV6 on FreeBSD 4.1). (Wez)
543 - Fixed bug #30027 (Possible crash inside ftp_get()).
544 (cfield at affinitysolutions dot com)
545 - Fixed bug #29805 (HTTP Authentication Issues). (Uwe Schindler)
546 - Fixed bug #29418 (double free when openssl_csr_new fails).
547 (Kamesh Jayachandran).
548 - Fixed bug #28598 (Lost support for MS Symbol fonts). (Pierre)
549 - Fixed bug #28325 (Circular references not properly serialized). (Moriyoshi)
550 - Fixed bug #28228 (NULL decimal separator is not being handled correctly).
551 (Ilia)
552 - Fixed bug #27469 (serialize() objects of incomplete class). (Dmitry)
553
554 22 Sep 2004, Version 4.3.9
555 - GPC input processing fixes (Stefano Di Paola, Rasmus, Stefan)
556 - Implemented periodic PCRE compiled regexp cache cleanup, to avoid memory
557 exhaustion. (Andrei)
558 - Fixed bug with raw_post_data not getting set (Brian)
559 - Fixed a file-descriptor leak with phpinfo() and other 'special' URLs (Zeev)
560 - Rewritten UNIX and Windows install help files. (Documentation Team)
561 - Updated PCRE to provide better error handling in certain cases. (Andrei)
562 - NSAPI: added "bucket" parameter to list of non-php.ini-keys of php4_execute
563 for doing performance stats without warnings in server-log. (Uwe Schindler)
564 - Fixed bug preventing from building oci8 as shared.
565 (stanislav dot voroniy at portavita dot nl, Tony)
566 - Fixed leap year checking with idate(). (Christian Schneider, Derick)
567 - Fixed strip_tags() to correctly handle '\0' characters. (Stefan)
568 - Fixed funny forking effect in FastCGI when PHP_FCGI_CHILDREN was not set.
569 - Fixed bug #30050 (Possible crash inside php_shutdown_config()).
570 (Ilia, nw at softwarekombinat dot de)
571 - Fixed bug #29954 (array_reduce segfaults when initial value is array). (Tony)
572 - Fixed bug #29882 (isset crashes on arrays). (Marcus)
573 - Fixed bug #29753 (mcal_fetch_event() allows 2nd argument to be optional).
574 (Ilia, Vrana)
575 - Fixed bug #29727 (Added missing CURL authentication directives). (Ilia)
576 - Fixed bug #29719 (fgetcsv() has problem parsing strings ending with escaped
577 enclosures). (Ilia)
578 - Fixed bug #29607 (highlighting code with HEREDOC produces invalid output).
579 (Ilia)
580 - Fixed bug #29599 (domxml_error segfaults another apache module). (Rob)
581 - Fixed bug #29594 (Use PHP's own tmpfile() implementation). (Ilia)
582 - Fixed bug #29581 (Typo inside php.ini comments for mysql.trace_mode). (Ilia)
583 - Fixed bug #29493 (extract(array, EXTR_REFS) misbehaves with elements referred
584 twice or more times). (Moriyoshi)
585 - Fixed bug #29443 (Sanity check for wbmp detection). (Ilia)
586 - Fixed bug #29369 (Uploaded files with ' or " in their names get their names
587 truncated at those characters). (Ilia)
588 - Fixed bug #29349 (imagecreatefromstring() crashes with external GD library).
589 (Ilia, adconrad at debian dot org)
590 - Fixed bug #29333 (output_buffering+trans_sess_id can corrupt output). (Ilia)
591 - Fixed bug #29226 (ctype_* functions missing validation of numeric string
592 representations). (Ilia)
593 - Fixed bug #29209 (imap_fetchbody() doesn't check message index).
594 (Ilia, Tony)
595 - Fixed bug #29116 (Zend constant warning uses memory after free).
596 (Marcus, jdolecek at NetBSD dot org)
597 - Fixed bug #29114 (Potential double free in php_stat). (Sara)
598 - Fixed bug #29075 (strnatcmp() incorrectly handles whitespace).
599 (Curt, Ilia)
600 - Fixed bug #29049 (array sorting via user function/method does not
601 validate it). (Ilia)
602 - Fixed bug #29038 (extract() with EXTR_PREFIX_SAME prefixes empty strings).
603 (Andrey)
604 - Fixed bug #29034 (wordwrap() returns a boolean when passed empty string).
605 (Ilia)
606 - Fixed bug #28974 (overflow in array_slice(), array_splice(), substr,
607 substr_replace(), strspn(), strcspn()). (Andrey)
608 - Fixed bug #28897 (ibase: -1 returned as -0.000 for 64-bit scaled int). (Ard)
609 - Fixed bug #28879 (Implicit/Explicit array creation inconsistency when using
610 Resources, Arrays, or Objects as indices). (Sara)
611 - Fixed bug #28878 (Setting of inikey's in obj.conf fails). (Uwe Schindler)
612 - Fixed bug #28868 (Internal wrapper registry not thread safe). (Sara)
613 - Fixed bug #28818 (Apache 2 sapis do not export st_dev).
614 (xuefer at 21cn dot com, Ilia).
615 - Fixed bug #28800 (strings beginning with "inf" improperly converted). (Ilia)
616 - Fixed bug #28723 (Fixed mbstring config.m4 to work on OSes where test
617 command does not support -e parameter). (Ilia)
618 - Fixed bug #28692 (\0 in Authenticate header passed via safe_mode). (Ilia)
619 - Fixed bug #28670 (WWW-Authentication header mangling with PCRE in safe_mode
620 adds extra spaces). (Ilia)
621 - Fixed bug #28668 (glob() does not work with relative paths on Windows). (Ilia)
622 - Fixed bug #28649 (Proper glob() return value on Linux when there are no
623 matches). (Ilia)
624 - Fixed bug #28633 (sprintf incorrectly adding padding to floats). (Ilia)
625 - Fixed bug #28627 (When multiple MySQL links are used default link is leaked).
626 (gavin at ipalsoftware dot com, Ilia)
627 - Fixed bug #28525 (gmp_powm() does not work with hexadecimal string modulo
628 represented as a string). (pickett at sumu dot org, Ilia)
629 - Fixed bug #28512 (Allocate enough space to store MSSQL data). (Frank)
630 - Fixed bug #28466 (mbstring_convert_variables() array separation problem).
631 (Moriyoshi)
632 - Fixed bug #28175 (Allow bundled GD to compile against freetype 2.1.2).
633 (Elf, Ilia)
634
635 14 Jul 2004, Version 4.3.8
636 - Fixed strip_tags() to correctly handle '\0' characters. (Stefan)
637 - Fixed memory_limit during request startup. (Stefan)
638 - Replace alloca() with emalloc() for better stack protection. (Ilia)
639 - Added missing safe_mode checks inside ftok and itpc. (Ilia)
640 - Fixed bug #28963 (Missing space for \0 in address allocation in IMAP). (Ilia)
641 - Fixed bug #28632 (Prevent open_basedir bypass via MySQL's LOAD DATA LOCAL).
642 (Ilia)
643
644 03 Jun 2004, Version 4.3.7
645 - Upgraded bundled GD library to 2.0.23. (Ilia)
646 - Changed user error handler mechanism to relay to built-in error handler if it
647 returns false. (Andrei)
648 - Fixed command line escaping routines for win32. (Ilia)
649 - Fixed problems with *printf() functions and '%f' formatting. (Marcus)
650 - Fixed possible crash inside pg_copy_(to|from) function if delimiter is more
651 then 1 character long. (Ilia)
652 - Fixed crash inside cpdf_place_inline_image() when working with truecolor
653 images. (Ilia)
654 - Fixed handling of return values from storred procedures in mssql_execute()
655 with multiple result sets returned. (Frank)
656 - Fixed logic bug in session_register() which allowed registering _SESSION
657 and/or HTTP_SESSION_VARS. (Sara)
658 - Fixed bug #28597 (xmlrpc_encode_request() incorrectly encodes chars in
659 200-210 range). (fernando dot nemec at folha dot com dot br, Ilia)
660 - Fixed bug #28569 (informix connection id is not thread safe).
661 (novicky at aarongroup dot cz, Ard)
662 - Fixed bug #28564 (Problem building informix as a shared extension).
663 (roques at mti dot ag, Ilia)
664 - Fixed bug #28508 (Do not make hypot() available if not supported by libc).
665 (Ilia)
666 - Fixed bug #28506 (Allow negative start angle in imagearc and imagefilledarc.
667 (Pierre)
668 - Fixed bug #28456 (Problem with enclosed / in uploaded files). (Antony)
669 - Fixed bug #28386 (wordwrap() wraps lines 1 character too soon). (Ilia)
670 - Fixed bug #28374 (Possible unterminated loop inside
671 _php_pgsql_trim_message()). (Ilia)
672 - Fixed bug #28355 (glob() does not return error on Linux when it does not
673 have permission to open the directory). (Ilia)
674 - Fixed bug #28289 (incorrect resolving of relative paths by glob() in
675 windows). (Ilia)
676 - Fixed bug #28229 (run-tests tripped up by spaces in names). (Marcus)
677 - Fixed bug #28228 (number_format() does not allow empty decimal separator).
678 (Ilia)
679 - Fixed bug #28196 (missing error constants in cURL extension). (Ilia)
680 - Fixed bug #28187 (parse_url() not handling embedded IPv6 in URLs). (Sara)
681 - Fixed bug #28175 (build problem for people using FreeType 2.1.0-2.1.2).
682 (Ilia)
683 - Fixed bug #28147 (Crash with drawing anti-aliased lines). (Derick)
684 - Fixed bug #28122 (dba_open db3: Permission denied). (Marcus)
685 - Fixed bug #28112 (sqlite_query() crashing apache on malformed query). (Ilia,
686 Marcus)
687 - Fixed bug #28055 (timeout duration too long in feof()/pfsockopen() liveness
688 checks). (Wez)
689 - Fixed bug #28087 (Do not force mysql.trace_mode to 0 on every request).
690 (Ilia)
691 - Fixed bug #28042 (greek letters in html to entitity mapping not correct).
692 (Derick)
693 - Fixed bug #28007 (compile mssql extension with old versions of FreeTDS
694 fails). (Frank)
695 - Fixed bug #27995 (imagefilltoborder() stops the fill process prematurely).
696 (Ilia)
697 - Fixed bug #27810 (don't use php's pemalloc in ext/pcre). (Joe Orton)
698 - Fixed bug #23220 (SSL: fatal protocol error when talking to IIS). (Wez)
699
700 15 Apr 2004, Version 4.3.6
701 - Updated bundled PDFLib library to version 5.0.3p1 in Windows distribution.
702 (Edin)
703 - Fixed a crash in multi-threaded environments when a thread is shutdown by
704 the web server. (Stas)
705 - Fixed a bug that prevented building of the GD extension against external GD
706 lib 1.X. (Ilia, Edin, Nick Talbott).
707 - Synchronized bundled GD library with GD 2.0.22. (Ilia)
708 - Fixed bug #27963 (Session lifetime setting may leak between requests). (Ilia)
709 - Fixed bug #27849 (configure craps out on trivial syntax error). (Derick)
710 - Fixed bug #27822 (is_resource() returns TRUE for closed resources). (Derick)
711 - Fixed bug #27819 (problems returning reference to a reference parameter).
712 (Ilia)
713 - Fixed bug #27809 (ftp_systype returns null on some ftp servers). (Ilia)
714 - Fixed bug #27802 (default number of children to 8 when PHP_FCGI_CHILDREN is
715 not defined). (Ilia)
716 - Fixed bug #27780 (strtotime(+1 xxx) returns a wrong date/time). (Derick)
717 - Fixed bug #27769 (domxml_xmltree crashes). (Rob)
718 - Fixed bug #27764 (Get return value from a stored procedure not returning any
719 result sets). (Frank)
720 - Fixed bug #27762 (SCO Openserver doesn't have S_ISSOCK). (Wez)
721 - Fixed bug #27743 (Make sure Money types are converted and returned
722 correctly). (Frank)
723 - Fixed bug #27732 (Fixed compilation bug inside php_sab_info.h). (Ilia)
724 - Fixed bug #27731 (error_reporting() inside @ block fails to set
725 error_reporting level). (Ilia)
726 - Fixed bug #27719 (mktime issues on and around DST changeover). (Rasmus)
727 - Fixed bug #27717 (Test Failures when compiled on 64-bit mode). (Ard, Derick)
728 - Fixed bug #27687 (Bug Adding Default Charset to 'text/*' Content-Type
729 Header). (Marcus)
730 - Fixed bug #27663 (compile failure with cURL 7.11.1). (Ilia)
731 - Fixed bug #27646 (Cannot serialize/unserialize non-finite numeric values).
732 (Marcus)
733 - Fixed bug #26757 (session.save_path default is bogus for win32). (Wez)
734 - Fixed bug #26589 (Crash inside mssql extension when selecting many columns
735 of type money). (Frank)
736 - Fixed bug #25547 (error_handler and array index with function call).
737 (cschneid at cschneid dot com)
738
739 26 Mar 2004, Version 4.3.5
740 - Fixed possible crash using an invalid color index with a palette image in
741 imagecolortransparent. (Pierre)
742 - Fixed php-cgi to not ignore command-line switches when run in a web context.
743 This fixes our test cases allowing INI with GET sections to work. (Rasmus)
744 - Fixed getopt() so it works without $_SERVER. (Rasmus, bfrance)
745 - Fixed crash in php_ini_scanned_files() when no additional INI files were
746 actually parsed. (Jon)
747 - Fixed possible crashes inside socket extension, due to missing check inside
748 allocation functions. (Ilia)
749 - Fixed zero bytes memory allocation when no extra ini files are found in the
750 --with-config-file-scan-dir specified directory. (Eric Colinet, Derick)
751 - Changed "allow_url_fopen" php.ini option to be PHP_INI_SYSTEM. (Sara)
752 - Improved the sybase_ct module: (Timm)
753 . Added ability to define a message handler not only globally, but also per
754 connection.
755 . Added "sybct.packet_size" php.ini option.
756 . Changed "sybct.login_timeout" php.ini option changeable at runtime.
757 . Fixed memory leak in sybase_set_message_handler().
758 - Synchronized bundled GD library with GD 2.0.17. (Ilia)
759 - Upgraded PCRE library to version 4.5. (Andrei)
760 - Updated bundled PostgreSQL library to version 7.4 in Windows distribution.
761 (Edin)
762 - Added support for --program-prefix and --program-suffix configure options.
763 (Jani)
764 - Added a warning when creating temp stream fails with ftp_(n)list(). (Sara)
765 - Fixed header handler in NSAPI SAPI module (header->replace was ignored,
766 send_default_content_type now sends value from php.ini). (Uwe Schindler)
767 - Fixed bug #27633 (Incorrect EOL translation by ftp_get() in ASCII mode).
768 (Ilia)
769 - Fixed bug #27600 (GCC 3.0.4 does not like __attribute__ directive). (Sascha)
770 - Fixed bug #27590 (crash during shutdown when freeing persistent resources in
771 ZTS mode). (Ilia)
772 - Fixed bug #27582 (possible crashes in imagefilltoborder()). (Pierre)
773 - Fixed bug #27580 (pre-initialization errors in ap2 handler are not being
774 written to vhost error log). (Ilia)
775 - Fixed bug #27559 (Corrected open_basedir resolving logic). (Ilia)
776 - Fixed bug #27530 (broken http auth when safe_mode is on and PCRE is disabled).
777 (Ilia)
778 - Fixed bug #27509 (broken getaddrinfo() causes fsockopen() error). (Sara)
779 - Fixed bug #27505 (htmlentities() does not handle BIG5 correctly). (Ilia,
780 ywliu at hotmail dot com)
781 - Fixed bug #27498 (bogus safe_mode error on nonexistent directories for
782 chdir() and opendir() functions). (Ilia)
783 - Fixed bug #27460 (base64_decode() does not handle extra padding).
784 (Ilia, naish at klanen dot net)
785 - Fixed bug #27443 (defined() returns wrong type). (Derick)
786 - Fixed bug #27437 (wrong freetype include inside GD library). (Ilia)
787 - Fixed bug #27424 (headers missing on flush() in apache 2 SAPIs). (Ilia)
788 - Fixed bug #27421 (mbstring.func_overload should be system ini setting).
789 (Ilia)
790 - Fixed bug #27384 (unpack() misbehaves with 1 char string). (GeorgeS)
791 - Fixed bug #27383 (Potential crash inside fopen_wrapper, while
792 parsing response code). (Ilia)
793 - Fixed bug #27354 (Modulus operator crashes PHP). (Derick)
794 - Fixed bug #27341 (HEAD requests fail to return data). (Ilia)
795 - Fixed bug #27337 (missing sapi_shutdown() in sapi/isapi causes memory leak).
796 (Jani, msisolak at yahoo dot com)
797 - Fixed bug #27328 (ftp extension relies on 32-bit longs). (Sara)
798 - Fixed bug #27300 (Improved regex for pg_convert()).
799 (benjcarson at digitaljunkies dot ca, Ilia)
800 - Fixed bug #27295 (memory leak inside sscanf()). (Ilia)
801 - Fixed bug #27293 (two crashes inside image2wbmp()). (Ilia)
802 - Fixed bug #27291 (get_browser matches browscap.ini patterns incorrectly).
803 (Jay)
804 - Fixed bug #27278 (*printf() functions treat arguments as if passed by
805 reference). (Ilia)
806 - Fixed bug #27238 (iptcparse() function misses some fields). (Pierre)
807 - Fixed bug #27235 (Interbase NUMERIC x.0 field returns empty string on 0).
808 (Ard)
809 - Fixed bug #27196 (Missing content_length initialization in apache 2 sapis).
810 (Ilia, pdoru at kappa dot ro)
811 - Fixed bug #27183 (userland stream wrapper segfaults on stream_write).
812 (Moriyoshi)
813 - Fixed bug #27175 (tzset() is not being called by PHP on startup).
814 (Ilia, sagawa at sohgoh dot net)
815 - Fixed bug #27172 (Possible floating point exception in gmp_powm()).
816 (Ilia)
817 - Fixed bug #27171 (crash inside gmp_hamdist()). (Jani)
818 - Fixed bug #27157 (Compile Failure on Solaris 8). (Timm)
819 - Fixed bug #27149 (broken CLOB support in oci8 extension). (Antony)
820 - Fixed bug #27135 (Possible crash inside mb_strlen()). (Moriyoshi)
821 - Fixed bug #27104 (CLI/CGI SAPI module variable name conflict). (Marcus)
822 - Fixed bug #27058 (crash in sybase_connect() with 2 arguments). (Ilia)
823 - Fixed bug #27056 (ints used instead of longs inside some GD functions).
824 (Ilia)
825 - Fixed bug #27040 (passing an array of form-fields to CURLOPT_POSTFIELDS
826 does not work). (Ilia, Jani)
827 - Fixed bug #27037 (fixed possible crash in apache2handler output code).
828 (Ilia)
829 - Fixed bug #27026 (Added "cgi.nph" php.ini option to allow forcing of the
830 'Status: 200' header that is not normally needed). (Ilia)
831 - Fixed bug #27011 (64bit int/long confusion in preg_match*() functions).
832 (Ilia)
833 - Fixed bug #27007 (missing connection closure when connect fails in pgsql).
834 (Ilia)
835 - Fixed bug #26974 (rename() doesn't check the destination file against
836 safe_mode/open_basedir). (Ilia)
837 - Fixed bug #26973 (*printf() '+' modifier broken). (Jani)
838 - Fixed bug #26969 (--with-openssl=shared build fails). (Jani)
839 - Fixed bug #26968 (Segfault with Interbase module built as shared). (Ard)
840 - Fixed bug #26949 (rand(min,max) always returns min when ZTS enabled). (Jani)
841 - Fixed bug #26937 (Warning in xml.c). (Jani)
842 - Fixed bug #26927 (preg_quote() does not escape \0). (Ilia)
843 - Fixed bug #26923 (ext/imap: pam and crypt libraries missing when build as
844 shared extension). (Jani)
845 - Fixed bug #26909 (crash in imap_mime_header_decode() when no encoding is
846 used). (Ilia)
847 - Fixed bug #26896 (ext/ftp does not work as shared extension). (Jani)
848 - Fixed bug #26892 (ORA-21301 in ocinewcollection() call). (Antony)
849 - Fixed bug #26878 (problem with multiple references to the same variable with
850 different types). (Ilia)
851 - Fixed bug #26864 (pg_(update|delete) ignore PGSQL_DML_EXEC option). (Ilia)
852 - Fixed bug #26862 (ob_flush() followed by output_reset_rewrite_vars() may
853 result in data loss). (Ilia, scottmacvicar at ntlworld dot com)
854 - Fixed bug #26847 (memory leak in mail() when to/subject contain only spaces).
855 (Ilia)
856 - Fixed bug #26814 (When included file has a parse error, terminate script
857 execution). (Ilia)
858 - Fixed bug #26777 (ext/interbase: Let DB handle NULL params). (Ard)
859 - Fixed bug #26772, #26967 (file operations return NULL instead of FALSE).
860 (Wez, Ilia)
861 - Fixed bug #26758 (FastCGI exits immediately with status 255).
862 (Ilia, tcarter at noggin dot com dot au)
863 - Fixed bug #26755 (CLI now overrides php.ini settings and switches off output
864 buffering). (Edin)
865 - Fixed bug #26753 (zend_fetch_list_dtor_id() doesn't check NULL strings).
866 (Jani, Markus dot Lidel at shadowconnect dot com)
867 - Fixed bug #26752 (Silent unterminated loop when length parameter for fgets(),
868 fread() and fgetss() is 0). (Ilia)
869 - Fixed bug #26751 (PHP can't find the MySQL socket on a case sensitive file
870 system). (Derick)
871 - Fixed bug #26703 (Certain characters inside strings incorrectly treated
872 as keywords). (vrana [at] php [dot] net, Ilia)
873 - Fixed bug #26699 (mbstring doesn't identify "binary" as a valid encoding).
874 (nirva-php at ishiboo dot com, Moriyoshi)
875 - Fixed bug #26667 (Added safety checks to ip2long()). (Ilia)
876 - Fixed bug #26653 (open_basedir incorrectly resolved on win32).
877 (Ilia, scottmacvicar at ntlworld dot com)
878 - Fixed bug #26639 (mb_convert_variables() clutters variables beyond the
879 references). (Moriyoshi)
880 - Fixed bug #26635 (fixed look up for fonts in the current directory w/ZTS).
881 (Ilia)
882 - Fixed bug #26625 (pg_convert sets NULL incorrectly for character data types).
883 (Ilia)
884 - Fixed bug #26604 (Apache2 SAPIs implicitly disable Keep-Alive). (Ilia)
885 - Fixed bug #26595 (ext/domxml: XSLT_NAMESPACE undeclared). (Christian)
886 - Fixed bug #26565 (strtotime("this month") resolving to the wrong month).
887 (Jani)
888 - Fixed bug #26564 (ncurses5 has headers in PREFIX/include/ncurses/). (Jani)
889 - Fixed bug #26548 (ext/session: Malformed HTTP dates headers). (Derick)
890 - Fixed bug #26531 (ext/domxml: get_elements_by_tag_name() wildcard fails).
891 (Rob Richards)
892 - Fixed bug #26488 (Missing declaration of CRTSCTS in ext/dio/dio.c). (Jani)
893 - Fixed bug #26467 (flock() does not force the "wouldblock" parameter to be
894 passed by reference). (Wez)
895 - Fixed bug #26463 (Incorrect handling of semicolons after heredoc). (Ilia)
896 - Fixed bug #26462 (phpize + ext/bcmath -> compile error). (Jani)
897 - Fixed bug #26461 (-lssl missing from LIBS). (Jani)
898 - Fixed bug #26458 (var_dump(), var_export(), debug_zval_dump() not binary safe
899 for array keys). (Ilia)
900 - Fixed bug #26447 (--with-openssl=shared causes compile errors). (Jani)
901 - Fixed bug #26446 (domxml_open_file() returns an empty error-Array). (Rob)
902 - Fixed bug #26440 (MFH missing context options). (Ilia)
903 - Fixed bug #26438 (error in thttpd SAPI installation). (Jani)
904 - Fixed bug #26415 (Updated bundled OpenSSL DLLs in the Windows distribution
905 to 0.9.7c). (Edin)
906 - Fixed bug #26407 (Result set fetching broken around transactions). (Timm)
907 - Fixed bug #26391 (parse_url() destroys strings that contain a character in
908 range of \x80-\xff)). (Moriyoshi)
909 - Fixed bug #26384 (crash in domxslt->process()). (Christian)
910 - Fixed bug #26381 (rand() without srand() doesn't work with certain php.ini).
911 (Jani)
912 - Fixed bug #26376 (typo in ext/odbc/config.m4: DBMaker test fails). (Jani)
913 - Fixed bug #26355 (flock() doesn't initialize the wouldblock argument). (Ilia)
914 - Fixed bug #26309 (Fixed argument parsing for imageftbbox()). (Ilia)
915 - Fixed bug #26304 (Unexpected data loss when opening dba file). (Marcus)
916 - Fixed bug #26285 (escapeshellarg() uses wrong quotes on windows). (Ilia)
917 - Fixed bug #26267 (gmp_random() leaks memory and does not produce random
918 numbers). (Jani)
919 - Fixed bug #26253 (ext/tokenizer: build as shared extension fails). (Jani)
920 - Fixed bug #26235 (yp_first/yp_next do not specify correct key length). (Ilia)
921 - Fixed bug #26216 ("getimagesize(): stream does not support seeking" when
922 using remote files). (Marcus)
923 - Fixed bug #26201 (crash in ibase_trans() on invalid link handle). (Ilia)
924 - Fixed bug #26198 (strtotime() handling of M/F Y date format). (Ilia)
925 - Fixed bug #26194 (iconv() not properly defined with libiconv).
926 (Steph, Frank, Moriyoshi)
927 - Fixed bug #26176 (Fixed handling of numeric keys in INI files). (Ilia)
928 - Fixed bug #26168 (shtool availability check in phpize).
929 (robbat2 at gentoo dot org, Ilia)
930 - Fixed bug #26148 (Print the notice before modifying variable on type
931 mismatch). (morten-bugs dot php dot net at afdelingp dot dk, Ilia)
932 - Fixed bug #26128 (mbstring prints out wrong information on phpinfo()).
933 (Moriyoshi)
934 - Fixed bug #26113 (remove leftover local file when ftp_get/ftp_nb_get
935 fails). (Ilia)
936 - Fixed bug #26105 (Compile failure on GCC version 3.0.X). (Ilia)
937 - Fixed bug #26103 (ext/mime_magic causes compile failure in ext/mssql). (Jani)
938 - Fixed bug #26097 (gdImageColorClosestAlpha() returns incorrect results).
939 (sprice at wisc dot edu, Ilia)
940 - Fixed bug #26042 (memory leak if mcrypt_generic_deinit() is not called after
941 every mcrypt_generic_init() call). (Ilia)
942 - Fixed bug #26025 (Segfault on glob() without GLOB_NOCHECK or GLOB_NOMAGIC
943 under *BSD platforms). (Moriyoshi)
944 - Fixed bug #26005 (Random "cannot change the session ini settings" errors).
945 (Jani, jsnajdr at kerio dot com)
946 - Fixed bug #26003 (Make fgetcsv() binary safe). (Ilia, Moriyoshi)
947 - Fixed bug #25963 (PostgreSQL error message include \n characters).
948 (Marcus, Ilia)
949 - Fixed bug #25939 (feof() not working correctly for sockets). (Wez)
950 - Fixed bug #25916 (get_browser() -> PHP Fatal error: Nesting level too
951 deep - recursive dependency?). (Uwe Schindler)
952 - Fixed bug #25794 (Cannot open existing hash db3 file with write" ext/dba).
953 (Marcus)
954 - Fixed bug #25753 (php.ini settings "leak" from vhosts/.htaccess files).
955 (Patch by: rover at tob dot ru)
956 - Fixed bug #25694 (round() and number_format() give inconsistent results).
957 (Ilia)
958 - Fixed bug #25664 (calling ITypeInfo::Invoke with bogus params). (Wez)
959 - Fixed bug #25581 (getimagesize () return incorrect values on bitmap (os2)
960 files). (Marcus)
961 - Fixed bug #25329 (sqlite_create_function with method and reference to
962 $this). (Marcus).
963 - Fixed bug #24773 (unsetting string as array causes a crash). (Sara)
964 - Fixed bug #24773 (Unsetting string offsets crashes PHP). (Moriyoshi, Sara)
965 - Fixed bug #24582 (extensions can't be loaded dynamically in Solaris/iPlanet).
966 (Jani)
967 - Fixed bug #23467 (date('T') outputs incorrect Time Zone).
968 (Jani, scottmacvicar at ntlworld dot com)
969 - Fixed bug #22403 (PHP crashes when executing a sql procedure without
970 parameters). (Timm)
971 - Fixed bug #22127 (Invalid response code when force-cgi-redirect safety
972 mechanism is triggered). (Ilia, scottmacvicar at ntlworld dot com)
973 - Fixed bug #21760 (Use of uninitialized pointer inside php_read()).
974 (Ilia, uce at ftc dot gov)
975 - Fixed bug #21513 (shutdown functions not executed if timed out). (Zeev)
976 - Fixed bug #21070 (ftp_genlist/ANSI-tmpfile() fail w/ some platform). (Sara)
977
978 3 Nov 2003, Version 4.3.4
979 - Made MCVE extension available on win32. (Jani)
980 - Upgraded bundled libfcgi and made FastCGI support viable on Win32. (Sascha)
981 - Added apache_get_version() function. (Ilia)
982 - Fixed disk_total_space() and disk_free_space() under FreeBSD. (Jon Parise)
983 - Fixed crash bug when non-existing save/serializer handler was used. (Jani)
984 - Fixed memory leak in gethostbynamel() if an error occurs. (Sara)
985 - Fixed FastCGI being unable to bind to a specific IP. (Sascha)
986 - Fixed multibyte regex engine to properly handle ".*" pattern under
987 POSIX compatible mode. (K.Kosako <kosako at sofnec.co.jp>, Moriyoshi)
988 - Fixed bug #25955 (Compile failure on MacOSX 10.3 Panther). (Marko, Dan)
989 - Fixed bug #25923 (mail() modifies the to & subject arguments). (Ilia)
990 - Fixed bug #25922 (Crash in error handler when 5th argument is modified).
991 (Ilia)
992 - Fixed bug #25918 (Possible crash in mime_content_type()). (Ilia)
993 - Fixed bug #25900 (document->get_elements_by_tag_name with default xmlns).
994 (Rob)
995 - Fixed bug #25895 (Incorrect detection of safe_mode limited ini options).
996 (Ilia)
997 - Fixed bug #25888 (Crash of php.exe when xpath_eval of a namespace). (Rob)
998 - Fixed bug #25836 (last key of multi-dimensional array passed via GPC not
999 being escaped when magic_quotes_gpc is on). (Ilia)
1000 - Fixed bug #25825 (tzset() was not called to reset libc environment on
1001 request shutdown). (Wez)
1002 - Fixed bug #25814 (Make flock() return correct value when 3rd argument is
1003 used). (Ilia)
1004 - Fixed bug #25800 (parse_url() could not parse urls with empty port). (Ilia)
1005 - Fixed bug #25780 (ext/session: invalid "session.cookie_lifetime" makes
1006 session_start() to crash in win32). (Jani)
1007 - Fixed bug #25777 (Do not rtrim() of text fields fetched from mssql). (Ilia)
1008 - Fixed bug #25770 (Segfault with PHP and bison 1.875).
1009 (eggert@gnu.org, Marcus)
1010 - Fixed bug #25764 (ldap_get_option() crashes with unbound ldap link). (Jani)
1011 - Fixed bug #25758 (var_export does not escape ' & \ inside array keys).
1012 (Ilia)
1013 - Fixed bug #25752 (ext/ncurses: ncurses.h instead of curses.h with BSD).
1014 (Jani)
1015 - Fixed bug #25746 (Do not bail out when unable to chdir original dir on
1016 systems with broken getcwd()). (Ilia)
1017 - Fixed bug #25745 (ctype functions fail with non-ascii characters).
1018 (Moriyoshi)
1019 - Fixed bug #25744 (make ZTS build of ext/sybase compile). (Ilia)
1020 - Fixed bug #25738 (alloca() related issues on the Darwin platform).
1021 (Moriyoshi)
1022 - Fixed bug #25708 (extract($GLOBALS, EXTR_REFS) mangles $GLOBALS).
1023 (Moriyoshi)
1024 - Fixed bug #25707 (html_entity_decode() over-decodes &amp;lt;). (Moriyoshi)
1025 - Fixed bug #25703 (openssl configure check failed). (Jani)
1026 - Fixed bug #25701 (On flush() set headers_sent in apache2handler). (Ilia)
1027 - Fixed bug #25671 (str_replace() corrupts subarrays). (Sara)
1028 - Fixed bug #25669 (eregi() with non-ascii characters). (Moriyoshi)
1029 - Fixed bug #25665 (var_dump() hangs on Nan and INF). (Ilia)
1030 - Fixed bug #25648 (xslt_set_encoding() not detected correctly). (Jani)
1031 - Fixed bug #25636 (SNMP Session not closed on success).
1032 (Ilia, patch by: nesslage at mwsc dot edu)
1033 - Fixed bug #25635 (Make "make tests" to fail due to invalid include_path).
1034 (Ilia)
1035 - Fixed bug #25604 (HAVE_SNMP_PARSE_OID undefined with phpize build). (Jani)
1036 - Fixed bug #25583 (Incorrect handling of paths starting with "/" on win32
1037 inside glob() function). (Ilia)
1038 - Fixed bug #25570 (Possible crash in apache2handler when zend_bailout called
1039 outside of zend_try {} block). (Ilia)
1040 - Fixed bug #25558 (ext/dbase: reverted fix for bug #23463). (Vlad)
1041 - Fixed bug #25530 (checkdate() incorrectly handles floats). (Ilia)
1042 - Fixed bug #25525 (ldap_explode_dn() crashes when passed invalid dn).
1043 (Sara, patch by: mikael dot suvi at trigger dot ee)
1044 - Fixed bug #25504 (pcre_match_all() crashes when passed only 2 parameters).
1045 (Jani)
1046 - Fixed bug #25483 (ext/informix: bogus -469 error from ifx_query()).
1047 (Jani, patch by: denisov at kubsu dot ru)
1048 - Fixed bug #25463 (ext/cpdf: compile failure with bundled GD)
1049 - Fixed bug #25429 (fix copying of stdin using copy() function). (Ilia)
1050 - Fixed bug #25424 (ext/informix: lvarchar not supported in win32). (Jani)
1051 - Fixed bug #25404 (ext/pgsql: open transactions not closed when script ends).
1052 (Marcus)
1053 - Fixed bug #25385 (ob_gzhandler(): typo in sapi_add_header_ex() call). (Jani)
1054 - Fixed bug #25378 (unserialize() crashes with invalid data). (Jani)
1055 - Fixed bug #25372 (sscanf() does not work with %X). (Jani)
1056 - Fixed bug #25348 ("make install" fails with --enable-short-tags). (Jani)
1057 - Fixed bug #25343 (is_dir() gives warning on FreeBSD). (Jani)
1058 - Fixed bug #25333 (Possible body corruption & crash in win32 mail()). (Ilia)
1059 - Fixed bug #25316 (Possible infinite loop inside _php_stream_write()). (Ilia)
1060 - Fixed bug #25314 (FTP_ASCII mode behaving like binary from Win->Unix).
1061 (Sara)
1062 - Fixed bug #25308 (php -m crashes when zend extensions are loaded). (Stas)
1063 - Fixed bug #25307 (Crash with WDDX serializer). (Sascha, Jani)
1064 - Fixed bug #25295 (QNX6: php_ini.c:414: 'alphasort' undeclared). (Jani)
1065 - Fixed bug #25294 (ext/ftp: NLST failure leads to crash on exit). (Sara, Rob)
1066 - Fixed bug #25293 (Output correct EOL to error_log). (Ilia)
1067 - Fixed bug #25239 (ftp_fopen_wrapper not RFC compliant). (Sara)
1068 - Fixed bug #25218 ("deflate" compressed pages had a gzip header). (Stefan)
1069 - Fixed bug #25211 (image.c compile failure with AIX). (Marcus)
1070 - Fixed bug #25166 (WDDX serializer handler missing in win32). (Jani)
1071 - Fixed bug #25109 (Possible crash when fetching field names in pgsql). (Ilia)
1072 - Fixed bug #25106 (Added more stringent checks on bzopen() mode). (Ilia)
1073 - Fixed bug #25070 (unlock session files on win32 before closing them). (Ilia)
1074 - Fixed bug #24402 (Compile failure with gettext 0.12.x). (Jani)
1075 - Fixed bug #23488 (zlib.output_compression overrides Vary header). (Stefan)
1076 - Fixed bug #23326 (ext/domxml: Attributes via append_child not supported).
1077 (Melvyn)
1078 - Fixed bug #21220 (Wrong Apache version shown in phpinfo() output). (Jani)
1079 - Fixed bug #18534 (ifx_close() leaves open session). (nobbie@php.net)
1080 - Fixed bug #14049 (realpath() returns invalid results for non-existent
1081 paths). (Ilia)
1082
1083 25 Aug 2003, Version 4.3.3
1084 - Upgraded the bundled Expat library to version 1.95.6. (Jani)
1085 - Upgraded the bundled PCRE library to version 4.3. (Andrei)
1086 - Upgraded the bundled GD library to version GD 2.0.15. (Ilia)
1087 - Improved the engine to use POSIX/socket IO where feasible. (Sascha)
1088 - Improved the IMAP extension (Ilia)
1089 . Added imap_timeout() function. (bug #24161)
1090 . Added optional 'charset' parameter to imap_search() and imap_sort().
1091 (bug #22505)
1092 - Improved the InterBase extension (Daniela)
1093 . Added transaction constants: IBASE_REC_VERSION, IBASE_REC_NO_VERSION,
1094 IBASE_WRITE, IBASE_WAIT and IBASE_CONCURRENCY. (bugs #8797, #23887)
1095 . Made numeric/decimal datatype handling work on any platform.
1096 - Improved the NSAPI SAPI module (Uwe Schindler)
1097 . Added possibility to use PHP to generate HTTP error pages (404 Not Found..)
1098 . Added possibility to use PHP to generate directory listings for directories
1099 without index.html
1100 . php4_init (magnus.conf): new parameter to set alternate path to php.ini.
1101 (php_ini="/path/to/php.ini")
1102 . php4_execute (obj.conf): support for additional php.ini values.
1103 Allows different settings per virtual server.
1104 (See sapi/nsapi/nsapi-readme.txt for more information)
1105 . Added support for virtual().
1106 . Added nsapi_request_headers() and nsapi_response_headers() with aliases
1107 for apache compatibility.
1108 . Added "nsapi.read_timeout" php.ini option.
1109 . Synced $_SERVER variables to be similar to Apache variables.
1110 - Added DBA handler 'inifile' to support ini files. (Marcus)
1111 - Added a "DEBUG" note to 'php -v' output when --enable-debug is used. (Derick)
1112 - Added long options into CLI & CGI (e.g. --version). (Marcus)
1113 - Added a new parameter to preg_match*() that can be used to specify
1114 the starting offset in the subject string to match from. (Andrei)
1115 - Fixed possible integer overflows in:
1116 . base64_encode(). (Moriyoshi)
1117 . bundled GD library. (Ilia)
1118 - Fixed "mysql.connect_timeout" php.ini option to be settable with ini_set().
1119 (Rasmus)
1120 - Fixed FastCGI IIS document root problem. (Shane)
1121 - Fixed corruption of multibyte character including 0x5c as second
1122 byte in multipart/form-data. (Rui)
1123 - Fixed possible crash in imagerotate() when an invalid color index
1124 is used for background color. (Pierre-Alain Joye)
1125 - Fixed a bug that under certain circumstances could invalidate safe_mode.
1126 (Ilia)
1127 - Fixed certificate version and allowed setting of the serial number in
1128 openssl_csr_sign(). (Stefan Roehrich)
1129 - Fixed each() to be binary safe for keys. (Zeev)
1130 - Fixed ext/yaz to not log if "yaz.log_file" php.ini option is not set. (Adam)
1131 - Fixed a bug in bundled libmysql (mysql bug #564). (Georg)
1132 - Fixed ext/exif to honor "magic_quotes_runtime" php.ini option. (Marcus)
1133 - Fixed bug #25093 (ext/pgsql: Various leaks due to non-freed queries). (Ilia)
1134 - Fixed bug #25084 (ext/session: Fixed session.referer_check to be independent
1135 on register_globals). (Ilia)
1136 - Fixed bug #25081 (odbc_fetch_array() may mangle numeric fields). (Ilia)
1137 - Fixed bug #25044 (header("Location:") changing HTTP status). (Marcus)
1138 - Fixed bug #25037 (win32 mail(): Possible infinite loop inside SendText()).
1139 (Ilia)
1140 - Fixed bug #25007 (rand() & mt_rand() seed RNG every call). (Jani)
1141 - Fixed bug #24989 (external libexpat conflicts with bundled libexpat). (Jani)
1142 - Fixed bug #24980 (array_reduce() uses first element as default running
1143 total). (Ilia)
1144 - Fixed bug #24977 (Reverted mysql_select_db() optimization). (Ilia)
1145 - Fixed bug #24958 (Apache2 SAPIs: Incorrect handling of 404s). (Ilia, Justin)
1146 - Fixed bug #24951 (ob_flush() needlessly destroys output handler). (Ilia)
1147 - Fixed bug #24936 (ext/fdf not linked properly as shared extension). (Jani)
1148 - Fixed bug #24909 (Bad random numbers with ZTS builds on Solaris). (Ilia)
1149 - Fixed bug #24897 (inconsistent behavior of shuffle() & array_multisort()).
1150 (Ilia, Jani)
1151 - Fixed bug #24883 ("variables_order" and "gpc_order" being ignored). (Ilia)
1152 - Fixed bug #24873 (incorrect handling of / inside open_basedir). (Ilia)
1153 - Fixed bug #24871 (aggregate(): methods misidentified as constructors). (Ilia)
1154 - Fixed bug #24827 (ob_gzhandler overrides Vary header). (Ilia)
1155 - Fixed bug #24792 (--enable-zend-multibyte causes random segfaults with ZTS).
1156 (Fujimoto)
1157 - Fixed bug #24783 (foreach($ar as $key => $val), $key not binary safe). (Zeev)
1158 - Fixed bug #24760 (non-default SNMP port number not working). (Jani)
1159 - Fixed bug #24752 (Unhandled "uniqueidentifier" field type).
1160 (Ilia, s.sonnenberg[at]coolspot.de)
1161 - Fixed bug #24710 (Crash when $obj->{0} is used). (Zeev)
1162 - Fixed bug #24663 (\n. sequences were not being escaped). (Ilia)
1163 - Fixed bug #24640 (var_export() and var_dump() can not output large floats).
1164 (Marcus)
1165 - Fixed bug #24629 (FreeBSD select() does not like large microseconds values).
1166 (Mirco Bauer).
1167 - Fixed bug #24609 (ext/domxml: segfault when using replace node across
1168 different docs). (Rob Richards)
1169 - Fixed bug #24594 (Rewrite of the imagefill() function). (Pierre-Alain Joye)
1170 - Fixed bug #24592 (NULL related crash in session extension). (Sascha)
1171 - Fixed bug #24573 (debug_backtrace() crashes if $this set to null). (Jani)
1172 - Fixed bug #24560 (parse_url() incorrectly handling certain file:// based
1173 schemas). (Ilia)
1174 - Fixed bug #24557 (make fclose() respect refcount on the resource).
1175 (Wez, Ilia)
1176 - Fixed bug #24537 (apache2 compile misses some include directories). (Jani)
1177 - Fixed bug #24535 (ext/mysql: crash when retrieving data from unbuffered
1178 result after the original connection has been changed). (Ilia)
1179 - Fixed bug #24519 (aggregate_methods_by_list() does not increment refcount).
1180 - Fixed bug #24313 (file_exists() warning on non-existent files when
1181 open_basedir is used). (Ilia)
1182 - Fixed bug #24312 (base64_decode() does not skip 0xF0-0xFF characters).
1183 (gereon.steffens[at]onvista.de, Ilia)
1184 - Fixed bug #24284 (Fixed memory leak inside pg_ping()). (Ilia)
1185 - Fixed bug #24249 (fdf_add_doc_javascript() not available on Windows). (Edin)
1186 - Fixed bug #24224 (ibase_blob_get() overflow). (Ard)
1187 - Fixed bug #24223 (missing variable initialization in bundled gd). (Ilia)
1188 - Fixed bug #24220 (range() didn't handle numeric strings correctly). (Ilia)
1189 - Fixed bug #24210 (not detecting assume_default_colors - typo). (Sara)
1190 - Fixed bug #24198 (Invalid recursion detection in array_merge_recurcive()).
1191 (Ilia)
1192 - Fixed bug #24177 (Apache2 SAPIs: status set incorrectly after flush()).
1193 (Ilia)
1194 - Fixed bug #24155 (gdImageRotate270 incorrectly use x parameter for y axis).
1195 (tom@gksystems.com, Ilia)
1196 - Fixed bug #24150 (crash in imap_fetch_overview() &
1197 imap_rfc822_write_address()). (Ilia)
1198 - Fixed bug #24142 (workaround for a gcc bug affecting round()). (Marcus, Ilia)
1199 - Fixed bug #24063 (serialize() missing 0 after the . on scientific notation).
1200 (Marcus, Ilia)
1201 - Fixed bug #24063 (scientific notation broken in *printf()). (Ilia)
1202 - Fixed bug #24060 (ncurses_del_panel() causes segfault). (Georg)
1203 - Fixed bug #24054 (Integer overflow failure with GCC/x86 for *=). (Sascha)
1204 - Fixed bug #24028 (Reading raw post message by php://input failed). (Jani)
1205 - Fixed bug #24009 (FastCGI handling of file not found). (Shane)
1206 - Fixed bug #24007 (Problem with register_globals & arrays). (Ilia)
1207 - Fixed bug #23951 (constants in static initializers clobbered by inheritance).
1208 (Wez, Zend Engine)
1209 - Fixed bug #23936 (ext/interbase: fail to select and fetch). (Ard)
1210 - Fixed bug #23913 (make rename() work across partitions on *nix). (Ilia)
1211 - Fixed bug #23912 (Invalid CSS in phpinfo() output). (Ilia)
1212 - Fixed bug #23902 (NULL in CGI header output). (Shane)
1213 - Fixed bug #23898 (Proper handling of NULLs in odbc_result, odbc_fetch_into
1214 and odbc_result_all). (Ilia)
1215 - Fixed bug #23897 (Fixed a check for mbfilter_ru.h). (aleks@m2media.ru, Ilia)
1216 - Fixed bug #23894 (sprintf() decimal specifiers problem). (Moriyoshi)
1217 - Fixed bug #23888 (Missing input validation for flags parameter). (Ilia)
1218 - Fixed bug #23808 (broken imagecopymerge()). (Pierre-Alain Joye)
1219 - Fixed bug #23798 (Spaces were not being stripped from Bcc header). (Ilia)
1220 - Fixed bug #23792 (imagerotate() problems with limited platte, the function
1221 will always return true color image from now on). (Pierre-Alain Joye)
1222 - Fixed bug #23779 (mysql_connect(): disable local infile option if php.ini
1223 option "open_basedir" is set). (Georg)
1224 - Fixed bug #23769 (In FreeBSD glob() gives wrong result when pattern not
1225 found). (Hartmut)
1226 - Fixed bug #23733 (Coredump on startup with Oracle 9+). (Edin)
1227 - Fixed bug #23685 (fake values returned when OID value is an empty string).
1228 (Jani)
1229 - Fixed bug #23664 (FastCGI socket listenting). (Shane)
1230 - Fixed bug #23509 (exit code lost when exit() called from
1231 register_shutdown_function()). (Ilia)
1232 - Fixed bug #23463 (ext/dbase: added Dbase2 version check). (Vlad Krupin)
1233 - Fixed bug #23285 (Potential Stack overflow in zendlex). (Wez)
1234 - Fixed bug #23104 (hash position of static arrays not being reset). (Ilia)
1235 - Fixed bug #23038, #23574 (aggregate() related leaks and crashes). (Andrei)
1236 - Fixed bug #22947 (Ack() inside win32/sendmail.c may stall in certain
1237 situations). (Ilia)
1238 - Fixed bug #22690 (ob_start() did not work with create_function() callbacks).
1239 (Marcus)
1240 - Fixed bug #22592 (Cascading assignments to strings with curly braces broken).
1241 (Stas)
1242 - Fixed bug #22245 (References inside $_SESSION not being handled). (Ilia)
1243 - Fixed bug #22154 (Possible crash when memory_limit is reached and output
1244 buffering in addition to session.use_trans_sid is used). (Ilia)
1245 - Fixed bug #22072 (Apache2 sapis do not detect aborted connections). (Ilia)
1246 - Fixed bug #21958 (workaround for unusual realpath() on AIX & Tru64). (Ilia)
1247 - Fixed bug #21957 (serialize() mangles objects with __sleep). (Ilia)
1248 - Fixed bug #21918 (strange behaviour of mixed type in array-keys). (Marcus)
1249 - Fixed bug #21855 (Threading issue on HP-UX). (Roshan Naik, Andi, Moriyoshi)
1250 - Fixed bug #21611 (version_compare() does not support "p" as suffix).
1251 (Stefan Walk)
1252 - Fixed bug #21074 (Apache2: "ErrorDocument xxx /error.php" broken). (Jani)
1253 - Fixed bug #20896 (-s -w modes with php-cli cause php to hang). (Ilia)
1254 - Fixed bug #19613 (putenv("VAR=") does not empty VAR on win32). (Zeev)
1255 - Fixed bug #18744 (ibase_blob_add() has max limit of 64k). (Ard)
1256 - Fixed bug #18291 (escapeshellcmd() can now handle quoted arguments). (Ilia)
1257 - Fixed bug #17414 (pthreads bug workaround). (timo.teras[at]iki.fi)
1258 - Fixed bug #13142 (strtotime not handling "M d H:i:s Y" format). (Ilia)
1259 - Fixed bug #11924 (ibase_query(), ibase_execute() mangled passed parameters).
1260 (Jani)
1261 - Fixed bug #7014 (crash in _php_ibase_error() after request shutdown). (Ard)
1262
1263 29 May 2003, Version 4.3.2
1264 - Syncronized bundled GD library with GD 2.0.12. (Ilia)
1265 - Removed support for GDLIB version 1.x.x (php_gd.dll) on Windows. (Edin)
1266 - Enabled read-only GIF support in the bundled GDLIB (php_gd2.dll) on Windows.
1267 (Sebastian, Edin)
1268 - Improved dba extension (Marcus)
1269 . Added support for internal error handling of Berkeley db libraries.
1270 . Disallowed Berkeley db versions 4.1.0 to 4.1.24 due to locking problems.
1271 . Disallowed linkage of Berkeley db submodules against libraries with
1272 different major versions.
1273 . Disallowed configuring of more than one Berkeley db handler.
1274 . Reenabled dba_popen() with new persistent STDIO streams.
1275 - Added a new Apache 2.0 SAPI module (sapi/apache2handler) based on the old
1276 version (sapi/apache2filter). (Ian Holsman, Justin Erenkrantz)
1277 - Added "disable_classes" php.ini option to allow administrators to disable
1278 certain classes for security reasons. (Harald)
1279 - Added man page for CLI version of PHP. (Marcus)
1280 - Added --clean option into phpize. (Jani)
1281 - Added --ldflags option into php-config. (Jani)
1282 - Added imagesavealpha() and imageistruecolor() functions. (Pierre)
1283 - Added XBM support for bundled GD library. (Marcus)
1284 - Added session_regenerate_id() function. (Sascha)
1285 - Added zlib_get_coding_type() function which returns the coding type used for
1286 output compression. (Moriyoshi)
1287 - Added OCIPasswordChange() which allows renewing expired Oracle users. (Maxim)
1288 - Added memory_get_usage(). Only available when PHP is configured with
1289 --enable-memory-limit. (Andrey)
1290 - Added improved JPEG 2000 support for getimagesize(). (Marcus, Adam Wright)
1291 - Added XBM and WBMP support for getimagesize(). (Marcus)
1292 - Added KOI8-R, CP866, and CP1251 support for htmlentities().
1293 (Antony Dovgal, Moriyoshi)
1294 - Added domdocument->free() to free XML-documents from memory. (Rob Richards)
1295 - Fixed a bug in error reporting with the CLI for start-up errors. (Derick)
1296 - Fixed spurious fsync calls during socket communication. (Sascha)
1297 - Fixed a possible vhost issue in thttpd. (Sascha, dgl@dgl.cx)
1298 - Fixed including from HTTP URLs. (Sascha)
1299 - Fixed a lot of memory leaks in domxml. (Rob Richards, Chregu)
1300 - Fixed a bug in GD's truecolor TTF handling. (Derick)
1301 - Fixed several 64-bit problems. (Dave)
1302 - Fixed several errors in hwapi extension. Objects weren't handled properly.
1303 (Uwe)
1304 - Fixed bug #23788 (str|preg_replace() clobber the array elements). (Ilia)
1305 - Fixed bug #23765 (file uploads ignored due to case sensitivity). (Sara)
1306 - Fixed bug #23738 (ifx_copy_blob() crash). (Jani)
1307 - Fixed bug #23661 (mysql_fetch_array() gives no warning when an invalid
1308 argument was passed as result_type). (Derick)
1309 - Fixed bug #23619 (set_error_handler() registered handler not called for
1310 object instances). (Jani, waboring@qualys.com)
1311 - Fixed bug #23606 (Unable to build --with-db4 (db4.1.25)). (Marcus)
1312 - Fixed bug #23567 (pfsockopen() returns dead connections). (Wez)
1313 - Fixed bug #23539 (curl_exec() produces strange results). (daniel@haxx.se)
1314 - Fixed bug #23527 (PostScript Type 1 fonts do not render properly).
1315 (nid@home.se, Ilia)
1316 - Fixed bug #23402 (crash with improper use of mssql_bind()). (Frank)
1317 - Fixed bug #23371 (configure falsely detects c-client using SSL). (Jani)
1318 - Fixed bug #23340 (fopen on multiple URLs causes memory corruption). (Wez)
1319 - Fixed bug #23298 (serialize cuts off floats & doubles). (Ilia, Marcus)
1320 - Fixed bug #23232 (safe_mode does not honor PHP_AUTH_* in apache2). (Ilia)
1321 - Fixed bug #23225 (money_format() didn't handle erroneous return of strfmon).
1322 (Ilia, marcot@tabini.ca)
1323 - Fixed bug #23201 (set_file_buffer() crashes with stdio streams). (Ilia)
1324 - Fixed Bug #23188 (CDB databases created with 'c' mode do not work). (Marcus)
1325 - Fixed bug #23187 (memory leaks in sybase_connect/sybase_pconnect). (Ilia)
1326 - Fixed bug #23162 (user_error() crashs if error message > 1024 bytes).
1327 (Jay, Marcus, Moriyoshi)
1328 - Fixed bug #23152 ($http_response_header empty on invalid URLs). (Ilia)
1329 - Fixed bug #23102 (integer overflow in exif_iif_add_value()). (Ilia)
1330 - Fixed bug #23099 (ext/interbase: libgds.so: undefined reference to 'crypt').
1331 (Jani)
1332 - Fixed bug #23093 (highlight_string() crashed with __FUNCTION__). (Jani)
1333 - Fixed bug #23080 (socket_strerror() crashes on win32). (Moriyoshi)
1334 - Fixed bug #23071 (when DST in effect, date("T") crashed PHP).
1335 (Scott MacVicar, Jani)
1336 - Fixed bug #23069 (tempnam creates readonly file [win32]). (Wez)
1337 - Fixed bug #23009 (pg_select with timestamp). (Marcus, Jay)
1338 - Fixed bug #23008 (ldap_start_tls() not available on Windows). (Edin)
1339 - Fixed bug #23004 (When ftp_close() is called, send QUIT to the ftp server).
1340 (Ilia)
1341 - Fixed bug #22989 (sendmail not found by configure). (igyu@ionsphere.org)
1342 - Fixed bug #22987 (missing perror() check in configure). (Jani)
1343 - Fixed bug #22965 (Crash in gd lib's ImageFillToBorder()). (Ilia)
1344 - Fixed bug #22939 (crash in imap_header_info()). (Ilia)
1345 - Fixed bug #22844 (Changing bool value via -d or ini_set(), On would be Off).
1346 (Ilia)
1347 - Fixed bug #22786 (Crash when trying to call DomAttribute's
1348 set_namespace method). (Chregu)
1349 - Fixed bug #22775 (Fatal errors exit with status 0 with CGI/CLI). (Jani)
1350 - Fixed bug #22774 (PHP crashes when exiting (long XML doc)). (Rob Richards)
1351 - Fixed bug #22751 (Compile error in gdcache.c when external libgd is used).
1352 (Jani)
1353 - Fixed bug #22721 (Poor file() performance on systems without mmap). (Wez)
1354 - Fixed bug #22709 (Crash in interbase when database unavailable).
1355 (Vladimir Michl)
1356 - Fixed bug #22681 (Crash when reading from invalid file pointer). (Ilia)
1357 - Fixed bug #22672 (User not logged under Apache2). (Ian)
1358 - Fixed bug #22616 (Wrong order of -lssl and -lcrypto with IMAP). (Jani)
1359 - Fixed bug #22613 (imagettfbox() does not add the kerning distance to the
1360 running position). (Ilia)
1361 - Fixed bug #22585 (Do not terminate the script on minor errors). (Ilia)
1362 - Fixed bug #22550 (overflow protection for upload_max_filesize ini option).
1363 (Ilia)
1364 - Fixed bug #22544 (writing transparency to truecolor png images). (Ilia)
1365 - Fixed bug #22538 (failed stat on stdio/stdin/stderr streams). (Wez, Ilia)
1366 - Fixed bug #22530 (append_child does not unlink node). (Chregu)
1367 - Fixed bug #22520 (mcrypt_generic_deinit() was not available on Windows).
1368 (Edin)
1369 - Fixed bug #22508 (Added protection against circular HTML redirects). (Ilia)
1370 - Fixed bug #22473 (ISAPI Secure Server variables not available).
1371 (Christian Swoboda)
1372 - Fixed bug #22402 (opening of ftp for read/write could fail due to invalid
1373 return code handling). (Ilia)
1374 - Fixed bug #22384 (FNM_CASEFOLD is not available). (Hartmut)
1375 - Fixed bug #22382 (fgetcsv() did not handle \" correctly). (Ilia)
1376 - Fixed bug #22376 (wrong httpd.conf modified when using INSTALL_ROOT). (Jani)
1377 - Fixed bug #22363 (combinations of fwrite(), fread() and fseek() produce
1378 unexpected results). (Wez)
1379 - Fixed bug #22355 (PHP would remove folding from Subject & To fields). (Ilia)
1380 - Fixed bug #22330 (overloaded strrpos() gives wrong results).
1381 (david@santinoli.com, Moriyoshi)
1382 - Fixed bug #22312 (crash on failed connection when curl_getinfo() was called).
1383 (Phil Oleson <poleson@verio.net>)
1384 - Fixed bug #22308 (optimized passthru, code is now ~40 times faster). (Ilia)
1385 - Fixed bug #22306 (pg_lo_seek($h, 0, PGSQL_SEEK_SET) succeeds but
1386 returns false). (Jani)
1387 - Fixed bug #22301 (htmlspecialchars() crashes Apache on Tru64). (Ilia)
1388 - Fixed bug #22299 (gethostbyname() with non-existing domain crashed on MacOSX).
1389 (Jani)
1390 - Fixed bug #22283 (possible crash when opening relative URLs). (Ilia)
1391 - Fixed bug #22238 (stream_select() clobbers fifos under win9x). (Wez)
1392 - Fixed bug #22234 (copy() fails if source file has 0 length). (Moriyoshi)
1393 - Fixed bug #22227 (printf() field limiters broke between 4.2.3 and 4.3.0).
1394 (Moriyoshi)
1395 - Fixed bug #22224 (implode() changes object references in array). (Moriyoshi)
1396 - Fixed bug #22221 (bad rows count in the result object for postgresql). (Marc)
1397 - Fixed bug #22207 (e notation in *printf would be missing a 0 when there is
1398 no exponent). (Ilia)
1399 - Fixed bug #22220 ("php_admin_value open_basedir none" does not work). (Jani)
1400 - Fixed bug #22191 (frontbase build broken with old version of frontbase).
1401 (Ilia)
1402 - Fixed bug #22187 (spprintf function did not handle floats correctly). (Ilia)
1403 - Fixed bug #22149 (incorrect insertion of session id when tabs are used to
1404 separate tag elements). (Ilia)
1405 - Fixed bug #22141 (removed undocumented Boyer str_replace() method). (Sara)
1406 - Fixed bug #22103 (Added gdImageEllipse and replaced old gdImageFilledEllipse
1407 with a better implementation). (Pierre)
1408 - Fixed bug #22088 (array_shift() left next index to be +1 too much). (Jani)
1409 - Fixed bug #22083 (MySQL charset directory problem on Windows). (Edin)
1410 - Fixed bug #22059 (ftp_chdir() causes segfault). (Sara)
1411 - Fixed bug #22048 (crash in imap_header() when the e-mail contains an
1412 abnormally large number of special characters). (Ilia)
1413 - Fixed bug #22042 (pg_result_seek() would never seek to the 1st row in the
1414 result due to always seeking to row next to the one requested). (Ilia)
1415 - Fixed bug #22031 (Made curl_write() & curl_write_header() binary safe).
1416 (Ilia)
1417 - Fixed bug #22022 (Crash in imap_mail_compose() if the body is an empty array).
1418 (Ilia)
1419 - Fixed bug #22017 (date() does not support negative timestamps on win32).
1420 (Ilia)
1421 - Fixed bug #22008 (strip_tags() eliminates too much). (Moriyoshi)
1422 - Fixed bug #21007 (html_errors off text-only output in phpinfo). (Marcus)
1423 - Fixed bug #22004 (Overload extension and _call() breaks classes). (Shane)
1424 - Fixed bug #21998 (array_pop() did not reset the current array position).
1425 (Jani)
1426 - Fixed bug #21978, #21036 (win32 mail(), bcc: gets interpreted as cc:). (Sara)
1427 - Fixed bug #21885 (move_uploaded_file() does not ignore open_basedir). (Wez)
1428 - Fixed bug #21820 ("$arr['foo']" generates bogus E_NOTICE, should be E_PARSE).
1429 (Jani)
1430 - Fixed bug #21815 (fpassthru() ignored buffered data but complained anyway).
1431 (Wez)
1432 - Fixed bug #21809 (select would not always timeout during socket shutdown).
1433 (Wez)
1434 - Fixed bug #21751 (default output buffer could not be deleted). (Marcus)
1435 - Fixed bug #21725 (return behaviour differs between include and require).
1436 (Zeev)
1437 - Fixed bug #21713 (include remote files leaks descriptors on Solaris). (Wez)
1438 - Fixed bug #21708 (ucwords() trouble again). (Moriyoshi)
1439 - Fixed bug #21689 (fgetcsv() suppresses some characters before a separator).
1440 (Masahiro, Moriyoshi)
1441 - Fixed bug #21912, #21676 (getimagesize() failed for remote files). (Wez)
1442 - Fixed bug #21597 (made glob() understand Windows paths). (Edin)
1443 - Fixed bug #21549 (problem with Ingres II persistent connections). (Jani)
1444 - Fixed bug #21544 (Extended checks for where FreeTDS is installed). (Frank)
1445 - Fixed bug #21534 (typo in gmp_gcdext() causes incorrect results). (Sara)
1446 - Fixed bug #21531 (file_exists() and other filestat functions report errors
1447 when the requested file/directory does not exists). (Sara)
1448 - Fixed bug #21529 (memory corruption by fsockopen()). (Ilia)
1449 - Fixed bug #21525 (bind_textdomain_codeset() now available on Windows). (Edin)
1450 - Fixed bug #21523 (number_format() could cause a memory allocation for a
1451 negative memory size in situations where the sprintf implementation of the
1452 host system generated less decimal places than were requested). (Wez)
1453 - Fixed bug #21518 (imagecreatefromstring() crashed with invalid image files).
1454 (Ilia)
1455 - Fixed bug #21511 (config.status warning). (Jani)
1456 - Fixed bug #21498 (mysql_pconnect connection problems). (Georg)
1457 - Fixed bug #21453 (improper handling of non-terminated < by strip_tags()).
1458 (Ilia)
1459 - Fixed bug #21445 (gd unable to open fonts). (Ilia)
1460 - Fixed bug #21443 (improper handling of ? surrounded by spaces
1461 in get_browser()). (Ilia)
1462 - Fixed bug #21442 (crash in mail() on Windows when 1st parameter is empty).
1463 (Edin)
1464 - Fixed bug #21410 (fixed handling of NULL or "" files on Win32). (Ilia)
1465 - Fixed bug #21378 (COM code crashes after update 4.2.1 to 4.3.0). (Harald)
1466 - Fixed bug #21338 (html_entity_decode() crashed when "" is passed). (Ilia)
1467 - Fixed bug #21310 (Solaris has issues with getcwd() needing read permissions
1468 on directories instead of just execute). (Wez, jflemer)
1469 - Fixed bug #21297 (in CLI/CGI on the #! it would leave a \n when the code
1470 encounters \r\n). (Ilia)
1471 - Fixed bug #21268 (session_decode() returned FALSE on success). (Ilia)
1472 - Fixed bug #21267 (opening URLs that result in redirection to a relative
1473 path was failing). (Ilia)
1474 - Fixed bug #21229 (missing 3rd argument to php_module_startup). (Ilia)
1475 - Fixed bug #21228 (broken check for ob_gzhandler and made ob_start() return
1476 the correct value). (Ilia)
1477 - Fixed bug #21226 (parse_url handling of urls without a path). (Ilia)
1478 - Fixed bug #21224 (apache configure fails when using --enable-versioning).
1479 (Jani)
1480 - Fixed bug #21169 (Compile Failure and lots of warnings on UnixWare). (Derick)
1481 - Fixed bug #21131 (fopen() with mode 'a+' and rewind() doesn't work). (Wez)
1482 - Fixed bug #20857 (snmpset() failed always, patch by: rs@epost.de). (Jani)
1483 - Fixed bug #20802 (PHP would die silently when memory limit reached). (Ilia)
1484 - Fixed bug #20715 (odbc could not be compiled as shared extension). (Jani)
1485 - Fixed bug #20641 (Numeric/decimal datatype overflow in ext/interbase
1486 on Win32). (Daniela)
1487 - Fixed bug #20503 (imagesetbrush() not available on Windows). (Edin)
1488 - Fixed bug #20282 (COM memory leak). (Harald)
1489 - Fixed bug #20256 (snprintf() not defined on some systems). (Jani)
1490 - Fixed bug #19919 (crash in sapi_apache_header_handler under heavy load).
1491 (George)
1492 - Fixed bug #19795 (Problems with strnatcmp() / strnatcasecmp()). (Moriyoshi)
1493 - Fixed bug #17868 (multiple <!--include--> used to include PHP files crashes).
1494 (Ilia)
1495 - Fixed bug #17448 (Print the message when OCI_SUCCESS_WITH_INFO is returned).
1496 (Maxim)
1497 - Fixed bug #17098 (make Apache2 aware that PHP scripts should not be cached).
1498 (Ilia)
1499 - Fixed bug #16798 (Compile failure with LOB support for Oracle version < 8.1).
1500 (Maxim)
1501 - Fixed bug #14532 (fixed connection_status() to return 2 for timeouts). (Jani)
1502 - Fixed bug #14245 ('make install' fails on AIX when using --with-apxs). (Jani)
1503 - Fixed bug #13757 (CGI: passing query string on command line broken). (Shane)
1504 - Fixed bug #13561 (--without-pear disabled phpize/php-config install). (Jani)
1505 - Fixed bug #13551 (bcmath functions applying scale incorrectly). (Sara)
1506
1507 17 Feb 2003, Version 4.3.1
1508 - Fixed serious security vulnerability in CGI SAPI. (Shane)
1509
1510 27 Dec 2002, Version 4.3.0
1511 - If you don't specify building any other SAPI "make install" will install the
1512 CGI SAPI binary in {PREFIX}/bin/php. If you want to install CLI SAPI in that
1513 location use "make install-cli" after "make install" or add --disable-cgi
1514 to your configure options. In the Windows distribution CLI SAPI is included
1515 in the "cli" folder. (Edin)
1516 - Removed extensions: (Jan, Jani, Sebastian)
1517 . ext/aspell
1518 . ext/ccvs
1519 . ext/icap
1520 . sapi/fastcgi
1521 . sapi/fhttpd
1522 - Moved extensions to PECL (http://pear.php.net/): (James, Derick, George)
1523 . ext/vpopmail
1524 . ext/cybermut
1525 . ext/cybercash
1526 - Make PHP_AUTH_* variables not available in safe mode under Apache when an
1527 external basic auth mechanism is used. (Philip)
1528 - Aliased dba_popen() to dba_open() until 4.3.2 when persistent STDIO streams
1529 are introduced. (Andrei)
1530 - Fixed a security bug in the bundled MySQL library. (Georg, Stefan)
1531 - ZLIB extension is now built-in in the Windows distribution.
1532 External extension (php_zlib.dll) has been removed. (Edin)
1533 - Fixed a bug in ISO-8601 week calculation
1534 - Fixed a crash when using invalid color index with imagecolortransparent().
1535 (Pierre-Alain Joye)
1536 - Fixed bug #20987 (no handling for client certificates). (Ilia)
1537 - Fixed bug #21039 (crash when not supplying an IV to mcrypt_generic_init).
1538 (Derick)
1539 - Fixed bug #20936 (openssl_pkey_get was broken). (jeroen@derks.it, Wez)
1540 - Fixed bug #20927 (wordwrap crash). (Ilia)
1541 - Fixed bug #20796 (when register_globals is on & arrays with same names are
1542 passed via get/post/cookie the data inside $_GET/$_POST/$_COOKIE can would be
1543 corrupted). (Ilia)
1544 - Fixed bug #20725 (if the upload directory cannot be written to, the POST data
1545 after the uploaded file is lost). (Ilia)
1546 - Fixed bug #20865 (array_key_exists() fails to find NULL key). (Ilia)
1547 - Fixed bug #20812 (ftp_get returned NULL on success, instead of TRUE). (Ilia)
1548 - Fixed bug #20785 (crash when using pdf_open_memory_image() to load a
1549 true-color image). (Ilia)
1550 - Fixed a crash when converting between true-color images (png/jpeg) and
1551 gd1/gd2 image formats, png/jpeg -> gd1/gd2 -> png/jpeg conversion now
1552 works correctly. (Ilia, Pierre-Alain Joye)
1553 - Fixed a memory leak in the bundled GD library inside
1554 gdImageTrueColorToPalette(). (Ilia)
1555 - Fixed bug #12776 (array_walk crash). (Moriyoshi)
1556 - Fixed bug #20934 (htmlspecialchars returns latin1 from UTF-8). (Moriyoshi)
1557 - Fixed bugs #20270, #15702, #18600 (segfaults in ext/java). (Tony J. White)
1558 - Made bcmath extension thread safe. (Sander)
1559 - Fixed bug #19566 (get_declared_classes() segfaults). (Moriyoshi, Marcus, Andi)
1560 - Fixed bug #20381 (array_merge_recursive mangles input arrays). (Moriyoshi)
1561 - Added -n command switch to cli and cgi version which allows to skip php.ini
1562 parsing at startup. (Marcus, Wez)
1563 - Fixed bug #19689 (absolute paths like /test/dir/ not working correctly).
1564 (Ilia)
1565 - Added "neutral" language entry to mbstring spec. (Moriyoshi)
1566 - Changed bundled gd library to consider php.ini option memory_limit. (Marcus)
1567 - Modified log() to accept multiple bases. (Jason)
1568 - Fixed bugs #16190/18746 (ext/db: flatfile support with windows). (Marcus)
1569 - Added gd_info() which returns an array of gd support information. (Marcus)
1570 - Implemented features/changes requested in Bug #16960 (Timm):
1571 . Added a new function sybase_unbuffered_query()
1572 . Added a new function sybase_fetch_assoc()
1573 . Added sybase_set_message_handler() which enables users to handle
1574 server messages in a callback function
1575 . Added an ini entry for deadlock retries - retrying deadlocks can cause
1576 transaction state to break (sybct.deadlock_retry_count,
1577 defaults to -1 "forever").
1578 . Fixed sybase_fetch_object() not to return objects with numeric members
1579 . Fixed issues with identical fieldnames
1580 . Made sybase_fetch_*() functions return correct datatypes
1581 . Made phpinfo() section more verbose
1582 . Made sybase_query() error messages more verbose
1583 - Fixed bug #19935 (made OpenSSL file system operations abide by safe_mode
1584 & open_basedir restrictions). (Ilia)
1585 - Fixed bug #18868 (improved the check for availability of realpath()). (Ilia)
1586 - Fixed width/height detection of bmp images using getimagesize() function on
1587 big endian systems and added code to retrieve bmp bit depth. (Ilia)
1588 - Fixed bug #20035 (line counting error when script starts with #! in
1589 cgi/cli/fastcgi sapis). (Ilia)
1590 - Fixed bug #20235 (incorrect handling of symlinks on ZTS build). (Ilia)
1591 - Added sanity checks to headers_sent() & image_type_to_mime_type(). (Ilia)
1592 - Added an aditional parameter to the jdtojewish() function which makes
1593 the function return the symbolic hebrew name. (Moshe Doron, Derick)
1594 - Fixed bug #20169 (implode() clobbers first argument). (Moriyoshi)
1595 - Improved dba extension (Marcus)
1596 . Added dba_handlers() that returns an array of installed handlers and
1597 dba_list() that returns an associative array of open database files.
1598 . Added bundled cdb support wich can be activated by --with-cdb without a
1599 path. The bundled version supports cdb_make that allows writing cdb files.
1600 . Added optional skip parameter to dba_fetch() to support multiple key-value
1601 pairs with the same key for cdb handler.
1602 . Added locking for those handlers that do not have their own locking.
1603 . Added support for magic_quotes_runtime php.ini option.
1604 . Added flatfile support what finally makes ext/db deprecated.
1605 - Added imagerotate() which is available only when bundled libgd is used.
1606 (Pierre-Alain Joye, Ilia)
1607 - Fixed bug #17497 (mssql extension crashes if magic_quotes_runtime is on).
1608 (Sterling)
1609 - Remove $_FILES from $_REQUEST (import_request_variables is not modified),
1610 this didn't work properly in the first place, and added confusion. (Sterling)
1611 - Fixed the socket_read() function on win32 to work in normal mode (reading to
1612 the end of a line), as well as binary mode. (Sterling)
1613 - Fixed bug #20110 (added sanity check to prevent include/require functions
1614 from trying to include directories). (Ilia)
1615 - Fixed bug #20108 (segmentation fault on printf("%1.1s", "string")). (Ilia)
1616 - Added dbx_escape_string() function to dbx module. (Marc)
1617 - Added Oracle (oci8) support to dbx module. (Marc)
1618 - Updated FDF extension to work with Adode fdftk 5.0. (Hartmut)
1619 - Added mb_strtolower() and mb_strtoupper(). (Moriyoshi)
1620 - Fixed an infinite loop in setlocale() when only invalid locale names
1621 were passed in the array. (patch by Pal Loberg, pallo@initio.no)
1622 - Fixed bugs #19156 and #19544 (COM extension leaks memory and keeps
1623 components referenced). (Harald)
1624 - Added fribidi_get_charsets() and fribidi_charset_info() functions. (Tal)
1625 - Added Oracle TIMESTAMP type to oci8 extension. (Thies)
1626 - Fixed fgets($fp) to read until EOL when length parameter is not set. (Wez)
1627 - Changed registry entries under "HKLM\SOFTWARE\PHP\Per Directory Values" to
1628 work also with administrative directives such as safe_mode, open_basedir,
1629 etc. (Claudio Felber)
1630 - Added str_word_count() function which counts words inside a string. (Ilia)
1631 - Added PGSQL_CONNECT_FORCE_NEW option to pg_connect() (Yasuo)
1632 - Added ICONV_IMPL and ICONV_VERSION constants to iconv extension to
1633 indicate which iconv implementation is used. (Moriyoshi)
1634 - Fixed bug #4232 (Added %e & %E support to printf/sprintf). (Ilia)
1635 - Fixed bug #17580 (Allow ini parser to parse files >16K). (Ilia)
1636 - Fixed bug #19649 (Sanity checks for browscap.ini parser). (Ilia)
1637 - Added experimental patch to address problem with floats on various locales.
1638 (Bug #17079). (Ilia)
1639 - Fixed bug #19280 (imap_header fails with many To: addresses). (Ilia)
1640 - Added mb_regex_set_options(). The Options parameters of various mbregex
1641 functions are now deprecated. (Moriyoshi)
1642 - Fixed bug #19482 (Segfault with PCRE and locale). (Andrei)
1643 - Made ImageTruecolorToPalette() in bundled GD2 library actually work. (Rasmus)
1644 - Fixed ImageCopy() in bundled GD2 library to handle copying from truecolor to
1645 palette-based. (Wez, Rasmus)
1646 - Added read-only GIF support for bundled GD2 library. (Rasmus)
1647 - Made several adjustments to xslt extension (David Viner, Lehnar, Melvyn)
1648 . Added xslt_set_object and xslt_setopt function
1649 . Changed backend interaction with Sablotron library
1650 . Fixed leak with error_print
1651 . Made xslt_make_array() always set NULL on last index to signal array end.
1652 - Changed the glue argument in implode() to be optional. If not specified,
1653 defaults to "". (Sterling)
1654 - Fixed fields argument to contain correct info for xslt_set_error_handler().
1655 (Patch by Lenar Lohmus)
1656 - Added --with-config-file-scan-dir compile-time switch which specifies a
1657 directory which will be scanned for *.ini files. (Rasmus)
1658 - Added ob_get_clean() and ob_get_flush(). (Yasuo)
1659 - Added ftp_ssl_connect() to ext/ftp for FTP over SSL support. (Stefan Esser)
1660 - Made a few additions and changes to Apache 2 sapi. (Ilia)
1661 . Added apache_response_headers(), apache_note(), apache_getenv() and
1662 apache_setenv() functions.
1663 . Added more detailed error reporting to apache_lookup_uri() and virtual().
1664 . Renamed getallheaders() to apache_request_headers() and made an alias for BC.
1665 . Added php_apache_sapi_getenv() and php_apache_sapi_get_stat().
1666 . Added syntax-highlighting handling (.phps)
1667 - Fixed strstr(), strchr() and strrchr() to be binary safe. (Andrey)
1668 - Added array_diff_assoc() and array_intersect_assoc(). (Andrey)
1669 - Fixed bug #17825 (ob_start() chunk size option didn't work well). (Yasuo)
1670 - Fixed output buffer infinite loop when buffer_size became 0. (Marcus, Wez)
1671 - Added getopt() for parsing command line options and arguments. (Jon)
1672 - Added pg_fetch_assoc(), pg_fetch_all(), pg_ping(), pg_meta_data(), pg_convert(),
1673 pg_insert(), pg_select(), pg_update(), pg_delete(), pg_result_seek(),
1674 pg_unescape_bytea(), pg_get_notify() and pg_get_pid(). (Yasuo)
1675 - Fixed bug #17281 (Sanity checks for encoding sessions). (Ilia)
1676 - Fixed bug #16995 and #19392 (Prevent crash if $HTTP_SESSION_VARS != ARRAY).
1677 (Ilia)
1678 - Fixed bug #19292 (open_basedir restriction problem). (Rasmus)
1679 - Fixed bug #19366 (gdImageFill crashes when x & y are outside of
1680 the image's boundries). (Ilia)
1681 - Fixed bug #13936 (__FILE__ constant didn't contain full path). (Ilia)
1682 - PHP now has a new stream system that allows it to do some clever stuff with
1683 fopen() and fsockopen(). As a result:
1684 . URL wrappers natively supports https:// URLs if you have compiled
1685 OpenSSL support into PHP (shared extension does not support this).
1686 . Added support for fopen("ftps://...", ...) which allows to connect to FTP
1687 servers via SSL. (Stefan Esser)
1688 . fsockopen() adds support for ssl:// and tls:// connections via TCP/IP
1689 . copy($srcfilename, $destfilename) can now be used with URL wrappers
1690 . zlib wrappers/streams can be used even on systems without fopencookie()
1691 . Changed 'zlib:' fopen wrapper to 'compress.zlib://' and deprecate
1692 'zlib:' to avoid ambiguities when filenames have ':' characters. (Wez)
1693 . Added 'compress.bzip2://' stream and wrapper support.
1694 . Added user-space streams - it is now possible to define a class in PHP
1695 code and register it as a URL wrapper. (stream_register_wrapper)
1696 . Most extensions now support streams when passing files, which means
1697 that those extensions will now also support URL wrappers. (Wez)
1698 . Added URL-wrapper support to exif. (Marcus)
1699 . Added memory stream support. (Marcus)
1700 . Renamed:
1701 socket_set_timeout() -> stream_set_timeout()
1702 socket_set_blocking() -> stream_set_blocking()
1703 set_file_buffer() -> stream_set_write_buffer()
1704 socket_get_status() -> stream_get_meta_data()
1705 As these functions can (in theory) work on any type of stream. (Wez)
1706 . Raw POST data is now available as "php://input" stream. (Hartmut)
1707 . fopen("php://output", "wb") returns a stream that writes to the output
1708 buffer (like echo and print). (Wez)
1709 . Added stream_context_create(), stream_context_set_params() and
1710 stream_context_set_option and added an optional fourth parameter to
1711 fopen() which accepts a stream context. Contexts allow sharing of
1712 information between streams (a kind of "session") and setting
1713 notification callbacks. (Wez)
1714 . Made the "User-Agent" header sent by http:// and https:// wrappers
1715 configurable in php.ini or via a stream context. (Sterling)
1716 . Added stream_filter_prepend() and stream_filter_append() which apply
1717 a filter to either the top or the bottom of a stream filter stack.
1718 Implemented "string.rot13" filter as an example; more filters are
1719 expected to follow in later releases and other extensions. (Wez)
1720 . Added stream_select() which works like socket_select but works on
1721 streams returned by fopen(), fsockopen() and pfsockopen() instead. (Wez)
1722 . Added STDIN, STDOUT and STDERR constants for CLI sapi reflecting opened
1723 streams to their respective standard I/O counterparts. (Edin)
1724 . Added php.ini option "auto_detect_line_endings" which enables PHP to
1725 detect Macintosh, Unix and Dos end-of-line characters in fgets() and
1726 file(). Fixes bugs #16521 and #16708. (Wez)
1727 . Fixed include(), require() and GD functions to work with remote files
1728 under win32.
1729 Fixed bug #18609 (ImageCreateFromJPEG can't fetch from a URL). (Wez)
1730 - Fixed bug #18022 (fopen does not work with php://stdin anymore on Solaris).
1731 (Wez)
1732 - Added php.ini option "default_socket_timeout" to set the timeout limit for
1733 PHP network streams. (kalowsky, ilia@prohost.org, Wez)
1734 - Added file_get_contents() which returns the contents of a file as a string.
1735 This function also supports the URL wrappers. (Wez)
1736 - Fixed bug #19595 (Missing functions for GD2 format handling). (Edin)
1737 - Fixed bug #19633 (Wrong directories in ext/ldap/config.m4). (Derick)
1738 - Fixed bugs #17274 and #19627 (segfault in sem_remove). (Wez)
1739 - Added mb_convert_case() function to the mbstring extension which can convert
1740 strings between upper, lower and title case using Unicode mappings.
1741 Fixed bug #19257 (strtolower & strtoupper does not work for UTF-8 strings).
1742 (Wez)
1743 - Fixed bug #18521 (htmlentities didn't warn about unsupported charsets). (Wez)
1744 - Fixed bug #11643 (Session related, fix SID redefinition). (Ilia)
1745 - Fixed bug #18556 (Scripting Engine, problem with locales like tr_TR). (Ilia)
1746 - Changed y2k_compliance to default to 1 now. (Sascha)
1747 - Added platform independent socket error constants for better error handling. (Jason)
1748 - Update output of phpinfo() to use more CSS to reduce the file size, do
1749 proper HTML escaping, and make it XHTML compliant. (Colin)
1750 - Fixed compile errors in the FriBidi extension (Bug #16414). (Tal)
1751 - Fixed bugs #7472, #12120 and #12989 as well as other potential problems
1752 with strip_tags() function. (Ilia)
1753 - Fixed bugs #17570 and #17957 (Regexps related). (Andrei, Ilia)
1754 - Fixed bugs #18167 and #16859 (SEGV with session_decode). (Ilia)
1755 - Fixed bugs #19573 and #13472 (Session, XHTML compliance and trans_sid).
1756 (Sascha)
1757 - Fixed bug #19570 (last character was missing in get_html_translation_table).
1758 (Wez)
1759 - Upgraded PCRE to version 3.9. (Wez)
1760 - Fixed bug in OCIResult() which returned garbage when called on
1761 empty result-sets. (Thies)
1762 - Added ability to use Perl-style ${n} subpattern references in the
1763 replacement string for preg_replace() (bug #18442). (Andrei)
1764 - Fixed array_merge_recursive() to avoid problems with merging cyclical
1765 arrays (bug #16064). (Andrei)
1766 - Made function_exists() work properly with disabled functions. (Andrei)
1767 - Added ability to extract() variables as references via OR'able EXTR_REFS
1768 flag. (Andrei)
1769 - Fixed a build failure with the OCI8 extension on Tru64.
1770 (Patch by Michael Mauch, micahel.mauch@gmx.de)
1771 - Added --disable-all configure option. (Jani)
1772 - Backported debug_backtrace() from ZendEngine2. (Thies)
1773 - Added html-free phpinfo() output for CLI. (Jan)
1774 - Fixed socket_recvfrom() to be binary safe. (Jason)
1775 - Changed mail() to use escape_shell_cmd() to allow multiple extra parameters
1776 to the invocation of the mailer as used in the fifth parameter. (Derick)
1777 - Changed cURL extension to require cURL version 7.9.8 (Derick)
1778 - Added zend_execute_internal which is called like zend_execute but for
1779 internal functions. (Thies)
1780 - Changed pg_connection_status(), pg_connection_reset(), pg_connection_busy(),
1781 pg_result_status() and pg_result_error() to silently return FALSE when
1782 resource is not passed to them. (Yasuo)
1783 - Fixed some mysql compile failures on 64 bit-OS. (Georg)
1784 - Added warnings for deprecated mysql functions:
1785 . mysql_create_db()
1786 . mysql_drop_db()
1787 . mysql_escape_string()
1788 - Added XsltObject->result_dump_mem($result) for returning xslt-result directly
1789 into a string and XsltObject->result_dump_file($result,$file[,$compression])
1790 for dumping into a file. (morus.walter@web.de, chregu)
1791 - Made mime_magic and ZIP extensions available on Windows. (Edin)
1792 - Added xslt_backend_version() and xslt_backend_name() for getting
1793 information about the processor backend. (chregu)
1794 - Added ImageColorMatch() and ImageLayerEffect() functions which are only
1795 available when using the bundled GD library. (ttoohey)
1796 - Made major improvents to the pcntl extension. (Jason)
1797 . Greatly improved performance (signal callback mechanism uses ticks)
1798 . Implemented object signal callback ability by using array($obj, $method)
1799 . Added a restart parameter to pcntl_signal, which allows you to disable
1800 the default of system call restarting
1801 - Changed DomNode->next_sibling() and DomNode->previous_sibling() to return
1802 NULL instead of false (W3C specs). (chregu)
1803 - Changed DomNode->insert_before() and DomNode->append_child() to conform to
1804 W3C specs (moving not copying nodes, accepting NULL as 2nd param). (chregu)
1805 - Added DomNode->set_namespace(uri[,prefix]) (chregu)
1806 - Fixed shuffle() to properly generate all possibilities. (Patch provided by
1807 Adam <adam@trachtenberg.com>)
1808 - Fixed DomNode->insert_before() to behave according to W3C spec
1809 ie. new_child is moved, not copied. (chregu)
1810 - Added some namespace support with DomNode->add_namespace(uri, prefix)
1811 and DomDocument->create_element_ns(uri, nodename) (chregu)
1812 - Added optional parameter to DomElement->node_name() for retrieving fully
1813 qualified name (ie. namespace prefix). (chregu)
1814 - Changed DomNode->child_nodes() to return empty array instead of false if no
1815 child nodes are found. (chregu)
1816 - Fixed a bug with handling the Expect header. (Patch by ilia@prohost.org)
1817 - Fixed a bug in ODBC where closing the module caused a crash in the Windows
1818 executable. (kalowsky)
1819 - Fixed memory leaks in pack() and unpack(). (Patch by ilia@prohost.org)
1820 - Added URLs to error messages which direct to a page describing the error or
1821 function in question. (Derick, Wez, Marcus)
1822 - Added odbc_data_source() functionality to identify DB ServerName, and a
1823 description of it gathered from the DSN. (kalowsky)
1824 - Fixed copy() to return TRUE with 0 byte files. (Patch by ilia@prohost.org)
1825 - Added ob_list_handlers() which returns an array of all active output
1826 handlers. (Marcus)
1827 - Added mbstring encoding/decoding "HTML-ENTITIES". (Marcus)
1828 - Added parameter 'L' for mb_http_input() to retrieve input encoding as a
1829 comma separated string. (Marcus)
1830 - Added the ability for declare() compiler modifications to occur globally
1831 by using an empty statement. (Jason, Zend Engine)
1832 i.e.
1833 //Globally enables the ticks modifier for the whole program
1834 declare (ticks=1);
1835
1836 //Enables the ticks modifier for just the lexical block containing
1837 //"statement".
1838 declare (ticks=1) {
1839 statement;
1840 }
1841 - Brought strtotime() "next" keyword handling in line with documentation and
1842 its glibc cousin. (Rasmus)
1843 - Fixed str_rot13() to not mangle source string. (Rasmus)
1844 - Fixed imap_get_quota() to work with multiple returned resources as per
1845 the RFC 2087 and bug #14673. (kalowsky, Sander Steffann)
1846 - Added MarkerNote decoding to exif_read_data() for several Cameras. (Marcus)
1847 - Disabled zlib.output_compression for "image/" content-type
1848 headers which can be changed during script execution. (Stefan)
1849 - Added new asynchronous FTP functions. (Stefan)
1850 - Added optional 5th parameter to FTP functions to support resuming. (Stefan)
1851 - Added optional 2nd parameter to print_r() to make it return the variable
1852 representation instead of echoing it. (Derick)
1853 - Added mysql_ping(), mysql_real_escape_string(), mysql_character_set_name(),
1854 mysql_thread_id(), mysql_stat() and mysql_list_processes(). (Zak, Georg)
1855 - Added safe_mode & open_basedir checks for pg_lo_export(). (Yasuo)
1856 - Added open_basedir check for pg_lo_import(). (Yasuo)
1857 - Fixed infinite recursion crash bug in ticks. (Jason)
1858 - Added php.ini option "mysql.connect_timeout" to set the timeout limit for
1859 mysql_connect() and mysql_pconnect(). (Georg)
1860 - Added optional parameter "flags" to mysql_connect() and mysql_pconnect()
1861 which can be used to set usage of idle timeout and different protocols,
1862 SSL and compressed. (Georg)
1863 - Added automatic rollback to ext/mysql for non committed transactions. (Georg)
1864 - Fixed cases where preg_split() incorrectly terminated final element if it
1865 contained null bytes. (Andrei)
1866 - Added persistent connections/pipelining to thttpd. (Sascha)
1867 - Fixed two potential blocking issues in thttpd. (Sascha)
1868 - Fixed broken header file detection on Solaris. (Sascha)
1869 - Improved nss/socket-related symbol/library detection. (Jani, Sascha)
1870 - Made iconv() work well with both libiconv and libgconv. (Moriyoshi, Yasuo)
1871 - Fixed socket_set_timeout() on win32. (Jason, Edin, Jani)
1872 - Added domxml_node_namespace_uri(). (Rui Lopes)
1873 - Fixed win32 memory leak in /ext/sockets that would occur on any error
1874 condition. Also fixed host resolution error messages on win32. (Jason)
1875 - Added optional 3rd parameter 'recursive' to ftp_rawlist() which will
1876 do 'LIST -R' instead of 'LIST'. (Jani)
1877 - Changed getimagesize() to always set unknown fields to 0 and added support
1878 for iff imagetype. (Marcus)
1879 - Added runtime Apache2 thread check to ensure we don't run a non-threaded
1880 PHP inside a threaded Apache2 MPM. (Rasmus)
1881 - Made getimagesize() and exif_read_data() to return also the mime-type and
1882 exif_thumbnail() to return also the image-type. (Marcus)
1883 - Added image_type_to_mime_type() which converts image-types to mime-types.
1884 (Marcus)
1885 - Made GD functions to only exist if they are available in libgd. Now the
1886 availability can be tested with function_exists(). (Derick)
1887 - Added an optional parameter to the header() function which overrides the HTTP
1888 response code. (Derick)
1889 - Changed the order of which modules are unloaded to the reverse order of
1890 which they were loaded. (Derick, Zend Engine)
1891 - Added preliminary SAX-Input support. It's now possible to build a DomDocument
1892 with SAX-Events. (chregu)
1893 - Bundled GD library 2.0.1 with php (ext/gd/libgd) (Rasmus, Jani, Markus, Edin)
1894 - Fixed bzopen() crash in thread-safe mode. (Andrei)
1895 - Added better error-messages (3rd parameter) and validating of DTDs (2nd
1896 parameter) to domxml_open_mem() and domxml_open_file(). (Christian)
1897 - Added domxml_doc_validate() for validating existing DomDocuments with a DTD.
1898 (Christian)
1899 - Added ability to capture string offsets in preg_match_*() results.
1900 (David Brown, Andrei)
1901 - Fixed set_error_handler() to accept methods as callbacks and also report
1902 invalid callbacks. (Andrei)
1903 - Fixed a memory corruption bug in overload extension. (Andrei)
1904 - Fixed error handling in fsockopen() on win32. (Jason)
1905 - Added win32 support for the timeout parameter of fsockopen(). (Jason)
1906 - Fixed shuffle() to provide equal distribution of values. (Andrei)
1907 - Added --with-mysql-sock configure option which can be used to override
1908 the unix socket location. (e.g. NFS compiles, etc.) (James Cox)
1909 - Fixed is_a() to properly work on extension registered classes. (Andrei)
1910 - Added new constants: PHP_PREFIX and PHP_SHLIB_SUFFIX. (Stig)
1911 - Added pctnl_alarm() function. (Edin)
1912 - If zlib.output_compression is enabled and a page is compressed
1913 a "Vary: Accept-Encoding" header is now added. (Stefan)
1914 - Renamed getallheaders() to apache_request_headers() and kept getallheaders()
1915 as an alias to it. Also added apache_response_headers() which returns the
1916 current response headers from Apache. (Rasmus)
1917 - Added missing AddRef() calls in the COM extension. This should fix weird
1918 behaviour (in particular with ADODB). (Harald)
1919 - Fixed segfault in version_compare(). (Stig)
1920 - Added compressed Flash MX files support to getimagesize(). (Derick)
1921 - Added ability to capture string offsets in preg_split() results.
1922 (David Brown, Andrei)
1923 - Fixed a crash bug in token_get_all(). (Andrei)
1924 - Implemented glob() for Unix/Win32. (Hartmut, Edin, Markus)
1925 - Added domxml_doc_set_root() to change the root node. (Lukas Schroeder)
1926 - Fixed a crash bug in stripslashes() when working in sybase mode. (Rasmus)
1927 - Added experimental support for Simplified Chinese, Traditional Chinese and
1928 Korean encodings into mbstring. (Rui)
1929 - Misc. Win32 mail() enhancements: support 'From:' header (msisolak@yahoo.com),
1930 support Bcc header, case-insensitive headers, enhanced error reporting,
1931 automatic proper line ending conversion, fixed crash with Cc, fixed buffer
1932 overflows with $header. (Markus)
1933 - Improved IMAP extension performance. (adam.kauffman@mindspring.com,
1934 rjs3@andrew.cmu.edu, Jon)
1935 - Added optional 5th parameter to domxml_xslt_process(). When set, profiling
1936 information is saved to the specified file. (chregu)
1937 - Added MD5 support for crypt() on Windows. (Edin)
1938 - Fixed resource bug in LDAP extension. (Stig Venaas)
1939 - Fixed crash in output buffering when buffer is overwritten in a callback.
1940 (Yasuo)
1941 - Added output_add_rewrite_var() and output_remove_rewrite_var() to inject
1942 and remove variables from the URL-Rewriter. (Thies)
1943 - The Windows build can now be configured more comfortably, for example
1944 when dealing with built-in extensions. (Sebastian)
1945 - Added large OID value (2^31 to 2^32) support for pg_lo_import(),
1946 pg_lo_unlink(), pg_lo_open() and pg_lo_export(). (Yasuo)
1947 - Fixed mixing OCIPlogon() and OCINLogon() to not leak Oracle-Sessions. (Thies)
1948 - Added php.ini options for EXIF extension to encode and decode Unicode/JIS
1949 user comments. (Marcus)
1950 - Changed the "-c" CLI/CGI option to allow both 'filename' and
1951 'path to php.ini'. (Yasuo)
1952 - Added version information to the .dll and .exe files created under Windows.
1953 (jtate)
1954 - Added __FUNCTION__ and __CLASS__ constants. (Jani, Zend Engine)
1955 - Added optional 2nd parameter for pg_result_status() to specify return type.
1956 (Yasuo)
1957 - Added "log_errors_max_len" php.ini option which controls maximum length for
1958 error messages. (Marcus)
1959 - Added "ignore_repeated_errors" and "ignore_repeated_source" php.ini options
1960 which can be used to disable logging of repeated error messages. (Marcus)
1961 - Made pg_last_notice() work correctly. (Yasuo)
1962 - Added "pgsql.ignore_notice" and "pgsql.log_notice" php.ini options. (Yasuo)
1963 - Added "zlib.output_compression_level" php.ini option. (Stig)
1964 - Added support for --with-apxs build on Mac OS X / Darwin. (markonen)
1965 - Added support for dynamically loaded extensions on OS X / Darwin.
1966 NOTE: This requires Apache 1.3.25 or later. (kalowsky, markonen)
1967 - Fixed CR/LF processing in quoted_printable_decode() on Win32. (kir)
1968 - Made crack extension available on Win32. Cracklib libraries for Win32 are
1969 available at http://www.jtatesoftware.com/cracklib/. (jtate)
1970 - Added mysql_info() function. (Jan)
1971 - Added mysql_list_processes() and mysql_stat() functions. (Georg)
1972 - Fixed memory allocation problem on systems that have iconv() support in libc.
1973 (Yasuo)
1974 - Made var_dump() handle recursive structures better. (Yasuo, Derick)
1975 - Added exif_imagetype() function. (Marcus)
1976 - New improved build system. Among other improvements, replaces the slow
1977 recursive make with one global Makefile and eases the integration of proper
1978 dependencies. Automake is only needed for its aclocal tool. The build
1979 process is now more portable and less resource-consuming. (Sascha)
1980
1981 06 Sep 2002, Version 4.2.3
1982 - Disabled the fifth parameter in mail() when safe-mode is turned on. (Derick)
1983 - Enable UTF8 modifier support for PCRE on win32. (Wez, Edin)
1984 - Enabled strcoll() on win32. (Markus)
1985 - Fixed possible ASCII control char injection in mail(). (Stefan Esser)
1986 - Fixed a potential crash bug in import_request_variables() (Zeev)
1987 - Fixed several problems with directory functions on Windows. (Steph)
1988 - Fixed xbithack bug in Apache module. (Rasmus)
1989 - Fixed a bug that prevented touch() from working on various platforms. (Steph)
1990 - Fixed ob_gzhandler()'s handling of requests that do have the Accept-Encoding
1991 header, but do not allow compression. (Zeev)
1992 - Fixed several bugs in the multithreaded version that could cause random parse
1993 errors, especially on machines with multiple CPUs. (Zeev, Zend Engine)
1994 - Fixed a build problem in bcmath. (Alan)
1995 - Fixed several bzip2 issues. (Andrei, kalowsky)
1996 - Fixed several COM issues. (Harald)
1997 - Various exif fixes. (Marcus)
1998 - Fixed domxml_xslt_process() and domxml_get_element_by_id() and several
1999 other issues in DOMXML. (Christian)
2000 - Fixed DOMXML crash on removing previously created attributes. (Christian)
2001 - Fixed crash when converting $GLOBALS to an object. (Zeev, Zend Engine)
2002 - Fixed ImageCreateFromGD2Part() (Jani)
2003 - Fixed a build issue in the IMAP extension under IRIX. (kalowsky)
2004 - Fixed a bug in imap_last_error() (Jani)
2005 - Various mbstring fixes. (Yasuo, Rui)
2006 - Fixed a build problem in the mcal extension. (Jani)
2007 - Made MySQL rollback open transactions when the request ends. (Georg)
2008 - Fixed a crash in the shutdown order of the ODBC module. (kalowsky)
2009 - Fixed PCRE build problems. (troels@arvin.dk)
2010 - Fixed a crash in pg_lo_write() (Yasuo)
2011 - Fixed posix_isatty() and posix_ttyname(). (Markus)
2012 - Fixed accidental pg_lo_import() API change. (Yasuo)
2013 - Fixed ereg_replace() crash when the backreference number was greater than the
2014 number of captured subpatterns. (oliver@billix.franken.de)
2015 - Fixed array_rand() on thread-safe platforms such as Windows. (Edin)
2016 - Report the right exit code after a call to exit(). (Edin)
2017
2018 22 Jul 2002, Version 4.2.2
2019 - Fixed serious security vulnerability. (Stefan Esser)
2020
2021 13 May 2002, Version 4.2.1
2022 - Added safe-mode checks to show_source(), parse_ini_file() and rmdir(). Also
2023 fixed security problems with safe_mode_include_dir directive. (Rasmus)
2024 - Changed HTTP upload code to accept 0 byte file uploads. (Zeev)
2025 - Major update of domxml. New functions, better DOM compliance and bug fixes:
2026 * Changed the old $node->append_child() to $node->append_sibling() since
2027 the new append_child() behaves correctly (= W3C standard).
2028 * Added domxml functions:
2029 . domxml_elem_get_elements_by_tagname()
2030 . domxml_doc_get_elements_by_tagname()
2031 . domxml_doc_get_element_by_id()
2032 . domxml_elem_remove_attribute()
2033 . domxml_elem_get_attribute_node()
2034 * Fixed a segfault in domxml_unlink().
2035 * Added formatting option to domxml_dump_mem().
2036 (Uwe, jtate, Chregu)
2037 - Fixed a bug in socket_select() that could cause unexpected behavior when
2038 using a statement like $w = $e = array($sock); This change unfortunately
2039 prevents the use of constant values (e.g. NULL) for the socket array
2040 paramaters. Instead, use a temporary variable or an expression with the
2041 leftmost member being a temporary variable. ex.:
2042 socket_select($w, $r, $e = NULL, 10); (Jason)
2043 - Fixed crashes in the session serializer. (Stas)
2044 - Fixed malformed atime/mtime with touch(). (Yasuo)
2045 - Fixed a couple of bugs in array_sum() and array_merge(). (Andrei)
2046 - Fixed SJIS directory name handling under Windows. (Rui)
2047 - Fixed empty mb_output_handler() output when Content-Type is specified.
2048 (Yasuo)
2049 - Fixed the false logic in ext/session which made SID constant not to be
2050 defined when cookies are disabled. (Sascha)
2051 - Fixed possible crash bug in HTTP uploads. (Patch: Lucas Schroeder)
2052 - Fixed possible NULL-pointer dereferencing in the COM extension which
2053 caused 'Error in php_OLECHAR_to_char()' warnings on various places.
2054 Also modified the API to consistently return NULL in case of an error.
2055 (Alan, Harald)
2056 - Fixed a bug in the COM extension that caused outproc servers to 'hang'
2057 because of a missing Release() call. (Alan, Harald)
2058
2059 22 Apr 2002, Version 4.2.0
2060 - ATTENTION!! register_globals defaults to 'off' now !!!
2061 - Note: Apache2 support is EXPERIMENTAL.
2062 - PostgreSQL functions are renamed, but all old function names are available.
2063 Old function names will be available long enough. User can safely use old
2064 function names. (Yasuo)
2065 - Moved ext/mailparse to PECL. See http://thebrainroom.com/opensource/php/
2066 for more information and to download the extension. (Wez/Jim)
2067 - Fixed pg_last_notice() crash. (Yasuo)
2068 - Modified the mysql extension to disable 'LOAD LOCAL' when safe mode is
2069 enabled. (Jason)
2070 - Added CLI (command line interface) sapi which is more suitable for writing
2071 shell scripts. Some of the differences to CGI sapi are: no HTTP headers,
2072 plain text error messages, does not change working directory, have a new -r
2073 option which executes a piece of PHP code directly from the commmand line, etc.
2074 (Edin)
2075 - Fixed HTTP file upload support to handle big files better. (Jani)
2076 - Major modifications to the Sockets Extension and its API (Jason):
2077 . Fixed numerous bugs.
2078 . Added automatic host lookup capability to all functions that take addr's.
2079 example: socket_connect($sock, 'www.yahoo.com', 80);
2080 . Corrected and standardized host lookup errors
2081 . Modified socket_recv() behavior. [$r=socket_recv($sock, $buf, $len, $flags)]
2082 . Added socket_set_block() which changes a socket into blocking IO mode
2083 . Modified socket_last_error() to not clear the last error
2084 . Added socket_clear_error() which clears the last error on a socket
2085 . Removed all code pertaining to fd_sets (socket_fd_*)
2086 . Modified/Improved socket_select() to accept array of resources instead of
2087 fd_sets. example:
2088 <?php
2089 $wfds=$rfds=array($sock1, $sock2, $sock3, $sock7);
2090 $r=socket_select($rfds, $wfds, NULL, 1);
2091 print "Ready to read:\n"; var_dump($rfds);
2092 ?>
2093 - Fixed segfault in ibase_close() if user does not free the resultset.
2094 Bugs #15419, #15992. (daniela)
2095 - Added optional 3rd parameter "int encoding_mode" to gzencode() and fixed
2096 parameters to conform documentation. (Stefan)
2097 - Changed read_exif_data() to be an alias of exif_read_data(). (Marcus)
2098 - Added exif_tagname() function which returns the names of tags and
2099 exif_thumbnail() function to extract embedded thumbnails. (Marcus)
2100 - Fixed iconv support with FreeBSD. (kalowsky)
2101 - Cleaned up the posix extension: (Markus)
2102 . Removed unwanted warning messages
2103 . Added posix_errno() and posix_strerror() for fetching error messages
2104 . Changed the way posix_getgrnam() and posix_getgrgid() return their values
2105 (breaks BC but makes more sense)
2106 . Does not include functions in symbol table which aren't supported on host
2107 system.
2108 - Added TIFF support for getimagesize() and read_exif_data(). (Marcus)
2109 - Changed the Velocis extension namespace to Birdstep to reflect new product
2110 name. Added aliases for BC. (James)
2111 - Added safe_mode checks for opendir(). (jflemer)
2112 - Changed the 2nd parameter in pgsql_fetch_*() functions to support NULL if
2113 all 3 parameters are supplied, but you do not want to provide a row number.
2114 (Derick)
2115 - Improved iconv() when using libc's iconv. (Yasuo)
2116 - Added PHP_SAPI constant which contains the name of running SAPI. (Edin)
2117 - Added ob_get_status() which returns an array of buffers with their status.
2118 (Yasuo)
2119 - Fixed a crash bug in ob_end_*() functions. ob_end_*() will not delete
2120 buffers that may not be deleted. (Yasuo)
2121 - Added 3rd parameter "bool erase" to ob_start(). If FALSE, the buffer may not
2122 be deleted until script finishes. (Yasuo)
2123 - Changed ob_*() functions to return TRUE for success, FALSE for failure.
2124 (Yasuo)
2125 - Added sybase_ct support to dbx module. (Marc)
2126 - Fixed error message handling with PostgreSQL 7.2. (Rui)
2127 - Added object aggregation capability, see aggregation_*() functions. (Andrei)
2128 - Added debug_zval_dump() which works similarly to var_dump, but displays
2129 extra internal information such as refcounts and true type names. (Jason)
2130 - Added Andrei's tokenizer extension. (Stig)
2131 - Fixed a bug in the COM extension which caused php to crash in
2132 php_COM_get_ids_of_names(). (Paul, Harald)
2133 - Removed ext/satellite. It is now part of PEAR. (eriksson)
2134 - Changed php.ini directive 'safe_mode_include_dir' to accept a (semi)colon
2135 separated path (like 'include_path') rather than a single directory.
2136 (jflemer)
2137 - Added is_a() function that can be used to test whether object is of a certain
2138 class or is derived from it. (Andrei, Zend Engine)
2139 - Added optional parameter to highlight_string() and highlight_file() which
2140 makes these functions to return a highlighted string instead of dumping
2141 it to standard output. (Derick)
2142 - Added EXTR_IF_EXISTS and EXTR_PREFIX_IF_EXISTS flags to extract(). (Rasmus)
2143 - Fixed a segfault in pg_pconnect(). If PostgreSQL server is restarted, broken
2144 connection is detected and reconnected. (Yasuo)
2145 - Fixed --enable-safe-mode configure option. (Yasuo)
2146 - Added function domxml_dump_node($doc,$node). Dumps a node plus all children
2147 into a string. (chregu)
2148 - Added function domxml_node_get_content(). (chregu)
2149 - Added function domxml_dump_file($filename,[$compression]). Dumps XML to
2150 a file and uses compression, if specified. (chregu)
2151 - Added exslt integration to domxml extension (http://exslt.org for details).
2152 Configure with --with-dom-exslt[=DIR] (and --with-dom-xslt).
2153 (chregu,jaroslaw)
2154 - Fixed session_unset() to not touch any globals if register_globals is off.
2155 (Thies)
2156 - Added 3 new optional parameters to OCIFetchStatement(). They control
2157 the number of rows to skip at the beginning of the cursor, the
2158 maximun numer of rows that should be fetched and the format of the
2159 returned array. (Thies)
2160 - Updated the XSLT extension to support Sablotron 0.8. (Petr Cimprich)
2161 - Fixed a bug in preg_match() and preg_match_all() when matching strings
2162 contain null bytes. (Andrei)
2163 - Added xpath_register_ns() function. This makes it possible to issue XPath
2164 queries with namespaces like for example: "//namespace:sampletag".
2165 (Chris Jarecki)
2166 - Added multi-byte enabled regular expression functions. (Rui)
2167 - Added optional second parameter to count() which can be used to specify
2168 either normal or recursive counting. (patch by Vlad Bosinceanu <glipy@fx.ro>)
2169 - Added mb_get_info() to get internal settings of mbstring. (Rui)
2170 - Added async query functions to PostgreSQL module. (Yasuo)
2171 - Added pg_copy_to()/pg_copy_from() for PostgreSQL module. (Youichi, Yasuo)
2172 - Added IPv6 support for FTP extension. (Stig Venaas)
2173 - Improved the speed of wordwrap() significantly. (Jim)
2174 - Fixed pow()'s incorrect behaviour when dealing with powers of 0. (Jim)
2175 - Added is_finite(), is_infinite() and is_nan(). (Jim)
2176 - Fixed segfault in wordwrap() when wrapping to zero width and using
2177 multi-character break or trying to force cut (bug #12768). (Jim)
2178 - Fixed several bugs in dbase extension (dbase_pack() truncate file to right
2179 size, fix 6852 #1 and 6852 #2). (Vlad)
2180 - Fixed bug in krsort() where an extra character was being compared. (Andi)
2181 - Fixed bug that made pspell include pspell.h from a wrong location. (Vlad)
2182 - Added function overload in mbstring to add multibyte support for
2183 string and mail functions. (Rui)
2184 - Added flags parameter to preg_grep(). The only flag currently is
2185 PREG_GREP_INVERT that will make the function return entries that
2186 did not match. (Andrei)
2187 - Fixed several crash bugs in the xslt extension. (Markus, Derick)
2188 - Fixed problem with dbase not returning very large (larger than long)
2189 integers properly. (Vlad)
2190 - Added concepts to IRCG: bailout-on-trivial issue, write output to
2191 files, fetch a resource upon connection end. (Sascha)
2192 - Fixed POST-related bugs in thttpd, added QUERY_STRING, HTTP_HOST,
2193 HTTP_ACCEPT_LANGUAGE to the script environment, improved patch
2194 to send correct MIME types, and added support for /nocache/. (Sascha)
2195 - Fixed several bugs and memleaks in the domxml extension. (Markus)
2196 - Added var_export() which outputs a representation of a variable as reusable
2197 PHP code. (Derick)
2198 - Added -w option to the CGI-version to strip all comments and whitespace
2199 from the script. (Thies)
2200 - Added support for SO_RCVTIMEO and SO_SNDTIMEO to ext/sockets. (Jason)
2201 - Added ob_get_level() which returns the nesting level of the output buffering
2202 mechanism. (Yasuo, Derick)
2203 - Added ob_flush() and ob_clean() functions which flush and clean an output
2204 buffer without destroying the buffer. (Derick)
2205 - Added new optional parameter to mysql_connect() which forces a new database
2206 link to be created. (Markus, Derick)
2207 - Added ldap_sort() function. (Stig Venaas)
2208 - Added md5_file() function which calculates the MD5 sum of a file.
2209 Patch by Alessandro Astarita <aleast@capri.it> (Derick)
2210 - Added support for parsing recordsets contained in WDDX packets. (Andrei)
2211 - Renamed key_exists() to array_key_exists(). (Derick)
2212 - Fixed ImageColorsForIndex() and ImageColorAt() to work for TrueColor
2213 images. (Rasmus)
2214 - Added support for bind_textdomain_codeset(). (rudib@email.si)
2215 - Added generic Win 32 API extension. (jmoore)
2216 - Removed warning message about NONEXISTENT character set from mysql_connect()
2217 when the server's default character set != latin1. (Mysql Team)
2218 - Added Direct I/O extension for lowlevel access to the POSIX layer. (Sterling)
2219 - Added SAPI module for the WebJames server on RISC OS. (Alex Waugh)
2220 - Fixed ldap_add() and ldap_modify() functions to throw a warning with illegal
2221 value arrays. Previously segfaulted or added wrong value. (Stig Venaas)
2222 - Added udm_check_charset() function into mnoGoSearch extension. (gluke)
2223 - Fixed mnoGoSearch extension to support mnogosearch-3.2.x. (gluke)
2224 - Made fbsql_num_rows() to return the correct value on all select statements.
2225 (Frank)
2226 - Added array_chunk() function which splits an array into chunks of specified
2227 size. (Andrei)
2228 - Fixed $HTTP_RAW_POST_DATA to be populated on a missing content-type when
2229 always_populate_raw_post_data is on. (Rasmus)
2230 - Added session_cache_expire() function. (patch by anuradha@gnu.org) (Andrei)
2231 - Added array_fill() function. (Rasmus)
2232 - Made Authorization header to be hidden from phpinfo() output in safe_mode.
2233 (Rasmus)
2234 - Re-instated safe-mode realm mangling. (Rasmus)
2235 - Fixed a bug in preg_replace() that would change the type of the replacement
2236 array entries to string. (Andrei)
2237 - Added user-space object overloading extension. (Andrei)
2238 - Added ldap_start_tls() function. (Stig Venaas, patch by kuenne@rentec.com)
2239 - Changed rand() and mt_rand() to be seed automatically if srand() or
2240 mt_srand() has not been called. (Sterling)
2241 - Changed the seed options to srand() and mt_srand() to be optional. If the
2242 seed is not specified the most random seed possible is generated. (Sterling)
2243 - Added array_change_key_case() function which returns an array with all
2244 string keys lowercased or uppercased. (Edin)
2245 - Added parameter to ircg_pconnect to suppress treating non-fatal errors
2246 as fatal, and added conversion of Windows quotes to &quot;. (Sascha)
2247 - Added pcntl_exec() function which behaves similar to the system execve.
2248 (Jason)
2249 - Fixed segfault and check for truecolor image in ImageColorAt(). (Rasmus)
2250 - Fixed nl2br() to handle all styles of line-endings in one string.
2251 (Boian, Derick)
2252 - Added mcrypt_generic_deinit() to replace mcrypt_generic_end(). (Derick)
2253 - Added apache_setenv() function for injecting variables into Apache's
2254 subprocess_env table. (Rasmus)
2255 - Added support for 'int', 'bool', 'float' and 'null' in settype(). (Jeroen)
2256 - Added IPv6 support to gethostbyaddr().
2257 (Patch by Matthias Wimmer <matthias@charente.de> and venaas)
2258 - Fixed LONG_VARCHAR type crashing in ODBC extension. Patch by Walter Franzini.
2259 (kalowsky)
2260 - Changed in_array() and search_array() to allow the needle to be an array
2261 in itself. (Andrei)
2262 - Added ini_get_all() function which returns all registered ini entries
2263 or entries for the specified extension. (Jani)
2264 - Added mailparse_uudecode_all() which extracts all uuencoded attachments.
2265 (Wez)
2266 - Added support for chinese encodings in htmlentities() and htmlspecialchars().
2267 (Patch by Alan Knowles <alan_k@hklc.com> and Wez)
2268 - Improved support for autoconf-2.50+/libtool 1.4b+. (Jan Kneschke, Sascha)
2269
2270 27 Feb 2002, Version 4.1.2
2271 - Fixed start up failure when mm save handler is used and there are multiple
2272 SAPIs working at the same time. (Yasuo)
2273 - Fixed the Roxen SAPI. (Yasuo)
2274 - Fixed a buffer overflow in the RFC-1867 file upload code. (Stefan)
2275 - Fixed a crash bug in the session module. (Yasuo)
2276 - Fixed a crash bug in the pspell module. (Yasuo)
2277 - Changed the default output encoding of mbstring 'pass' to fix
2278 initialization problem. (Rui)
2279
2280 26 Dec 2001, Version 4.1.1
2281 - Fixed incompatibility with Windows .NET / IIS 6 - may improve stability
2282 under other versions of IIS. (Zeev)
2283 - Fixed bug that caused crashes or error notices on shutdown on threaded
2284 platforms. (Zeev)
2285 - Fixed several crash bugs in the xslt extension. (Markus, Derick)
2286 - Fixed problem with dbase not returning very large (larger than long)
2287 integers properly. (Vlad)
2288 - Fixed several bugs and memleaks in the domxml extension. (Markus)
2289 - Fixed bug in gmmktime() which was one hour off during standard time -
2290 bug #9878. Patch by bfoddy@mediaone.net. (jmoore)
2291 - Fixed bug in gmdate() timezone handling on Windows - bug #13885. (jmoore)
2292 - Fixed several crash bugs in the mcrypt extension. (Derick)
2293 - Made the mcrypt extension compile with the libmcrypt 2.2 series again.
2294 (Sterling)
2295 - Fixed a bug where the is_file() family of functions would in-correctly give
2296 an error when they were given filenames that didn't exist. (Sterling)
2297 - Fixed a bug in the strtotime() function where it was incorrectly recognizing
2298 GMT +0100 and GMT -0100. (Derick)
2299
2300 10 Dec 2001, Version 4.1.0
2301 - Fixed return values for strtok (Bug #13866) (jmoore)
2302 - Worked around a bug in the MySQL client library that could cause PHP to hang
2303 when using unbuffered queries. (Zeev)
2304 - Fixed a bug which caused set_time_limit() to affect all subsequent requests
2305 to running Apache child process. (Zeev)
2306 - Removed the sablotron extension in favor of the new XSLT extension.
2307 (Sterling)
2308 - Fixed a bug in WDDX deserialization that would sometimes corrupt the root
2309 element if it was a scalar one. (Andrei)
2310 - Make ImageColorAt() and ImageColorsForIndex() work with TrueColor images.
2311 (Rasmus)
2312 - Fixed a bug in preg_match_all() that would return results under improper
2313 indices in certain cases. (Andrei)
2314 - Fixed a crash in str_replace() that would happen if search parameter was an
2315 array and one of the replacements resulted in subject string being empty.
2316 (Andrei)
2317 - Fixed MySQL extension to work with MySQL 4.0. (Jani)
2318 - Fixed a crash bug within Cobalt systems. Patch by tomc@tripac.com. (Jani)
2319 - Bundled Dan Libby's xmlrpc-epi extension.
2320 - Introduced extension version numbers. (Stig)
2321 - Added version_compare() function. (Stig)
2322 - Fixed pg_last_notice() (could cause random crashes in PostgreSQL
2323 applications, even if they didn't use pg_last_notice()). (Zeev)
2324 - Fixed DOM-XML's error reporting, so E_WARNING errors are given instead of
2325 E_ERROR error's, this allows you to trap errors thrown by DOMXML functions.
2326 (Sterling)
2327 - Fixed a bug in the mcrypt extension, where list destructors were not
2328 properly being allocated. (Sterling)
2329 - Better Interbase blob, null and error handling. (Patch by Jeremy Bettis)
2330 - Fixed a crash bug in array_map() if the input arrays had string or
2331 non-sequential keys. Also modified it so that if a single array is passed,
2332 its keys are preserved in the resulting array. (Andrei)
2333 - Fixed a crash in dbase_replace_record. (Patch by robin.marlow@dps-int.com)
2334 - Fixed a crash in msql_result(). (Zeev)
2335 - Added support for single dimensional SafeArrays and Enumerations.
2336 Added com_isenum() function to check if a component implements an
2337 enumeration. (Alan, Harald)
2338 - Fixed a bug in dbase_get_record() and dbase_get_record_with_names().
2339 boolean fields are now returned correctly.
2340 Patch by Lawrence E. Widman <widman@cardiothink.com> (Jani)
2341 - Added --version option to php-config. (Stig)
2342 - Improved support for thttpd-2.21b by incorporating patches for all known
2343 bugs. (Sascha)
2344 - Added ircg_get_username, a roomkey argument to ircg_join, error fetching
2345 infrastructure, a tokenizer to speed up message processing, and fixed
2346 a lot of bugs in the IRCG extension. (Sascha)
2347 - Improved speed of the serializer/deserializer. (Thies, Sascha)
2348 - Floating point numbers are better detected when converting from strings.
2349 (Zeev, Zend Engine)
2350 - Replaced php.ini-optimized with php.ini-recommended. As the name implies,
2351 it's warmly recommended to use this file as the basis for your PHP
2352 configuration, rather than php.ini-dist. (Zeev)
2353 - Restore xpath_eval() and php_xpathptr_eval() for 4.0.7. There
2354 are still some known leaks. (Joey)
2355 - Added import_request_variables(), to allow users to safely import form
2356 variables to the global scope (Zeev)
2357 - Introduced a new $_REQUEST array, which includes any GET, POST or COOKIE
2358 variables. Like the other new variables, this variable is also available
2359 regardless of the context. (Andi & Zeev)
2360 - Introduced $_GET, $_POST, $_COOKIE, $_SERVER and $_ENV variables, which
2361 deprecate the old $HTTP_*_VARS arrays. In addition to be much shorter to
2362 type - these variables are also available regardless of the scope, and
2363 there's no need to import them using the 'global' statement. (Andi & Zeev)
2364 - Added vprintf() and vsprintf() functions that allow passing all arguments
2365 after format as an array. (Andrei)
2366 - Added support for GD2 image type for ImageCreateFromString(). (Jani)
2367 - Added ImageCreateFromGD(), ImageCreateFromGD2(), ImageCreateFromGD2part(),
2368 ImageGD() and ImageGD2() functions. (Jani)
2369 - addcslashes now warns when charlist is invalid. The returned string
2370 remained the same (Jeroen)
2371 - Added optional extra argument to gmp_init(). The extra argument
2372 indicates which number base gmp should use when converting a
2373 string to the gmp-number. (Troels)
2374 - Added the Cyrus-IMAP extension, which allows a direct interface to Cyrus'
2375 more advanced capabilities. (Sterling)
2376 - Enhanced read_exif_data() to support multiple comment tags. (Rasmus)
2377 - Fixed a crash bug in array_map() when NULL callback was passed in. (Andrei)
2378 - Change from E_ERROR to E_WARNING in the exif extension (Rasmus)
2379 - New pow() implementation, which returns an integer when possible,
2380 and warnings on wrong input (jeroen)
2381 - Added optional second parameter to trim, chop and ltrim. You can
2382 now specify which characters to trim (jeroen)
2383 - Hugely improved the performance of the thread-safe version of PHP, especially
2384 under Windows (Andi & Zeev)
2385 - Improved request-shutdown performance significantly (Andi & Zeev, Zend
2386 Engine)
2387 - Added a few new math functions. (Jesus)
2388 - Bump bundled expat to 1.95.2 (Thies)
2389 - Improved the stability of OCIPlogon() after a database restart. (Thies)
2390 - Fixed __FILE__ in the CGI & Java servlet modes when used in the main script.
2391 It only worked correctly in included files before this fix (Andi)
2392 - Improved the Zend hash table implementation to be much faster (Andi, Zend
2393 Engine)
2394 - Updated PHP's file open function (used by include()) to check in the calling
2395 script's directory in case the file can't be found in the include_path (Andi)
2396 - Fixed a corruption bug that could cause constants to become corrupted, and
2397 possibly prevent resources from properly being cleaned up at the end of
2398 a request (Zeev)
2399 - Added optional use of Boyer-Moore algorithm to str_replace() (Sascha)
2400 - Fixed and improved shared-memory session storage module (Sascha)
2401 - Add config option (always_populate_raw_post_data) which when enabled
2402 will always populate $HTTP_RAW_POST_DATA regardless of the post mime
2403 type (Rasmus)
2404 - Added support for socket and popen file types to ftp_fput (Jason)
2405 - Fixed various memory leaks in the LDAP extension (Stig Venaas)
2406 - Improved interactive mode - it is now available in all builds of PHP, without
2407 any significant slowdown (Zeev, Zend Engine)
2408 - Fixed crash in iptcparse() if the supplied data was bogus. (Thies)
2409 - Fixed return value for a failed snmpset() - now returns false (Rasmus)
2410 - Added hostname:port support to snmp functions (nbougues@axialys.net, Rasmus)
2411 - Added fdf_set_encoding() function (Masaki YATSU, Rasmus)
2412 - Reversed the destruction-order of resources. This fixes the reported OCI8
2413 "failed to rollback outstanding transactions!" message (Thies, Zend Engine)
2414 - Added option for returning XMLRPC fault packets. (Matt Allen, Sascha
2415 Schumann)
2416 - Improved range() function to support range('a','z') and range(9,0) types of
2417 ranges. (Rasmus)
2418 - Added getmygid() and safe_mode_gid ini directive to allow safe mode to do
2419 a gid check instead of a uid check. (James E. Flemer, Rasmus)
2420 - Made assert() accept the array(&$obj, 'methodname') syntax. (Thies)
2421 - Made sure that OCI8 outbound variables are always zero-terminated. (Thies)
2422 - Fixed a bug that allowed users to spawn processes while using the 5th
2423 parameter to mail(). (Derick)
2424 - Added nl_langinfo() (when OS provides it) that returns locale.
2425 - Fixed a major memory corruption bug in the thread safe version. (Zeev)
2426 - Fixed a crash when using the CURLOPT_WRITEHEADER option. (Sterling)
2427 - Added optional suffix removal parameter to basename(). (Hartmut)
2428 - Added new parameter UDM_PARAM_VARDIR ha in Udm_Set_Agent_Param() function to
2429 support alternative search data directory. This requires mnogoSearch 3.1.13
2430 or later.
2431 - Fixed references in sessions. This doesn't work when using the WDDX
2432 session-serializer. Also improved speed of sessions. (Thies)
2433 - Added new experimental module pcntl (Process Control). (Jason)
2434 - Fixed a bug when com.allow_dcom is set to false. (phanto)
2435 - Added a further parameter to the constructor to load typelibs from file when
2436 instantiating components (e.g. DCOM Components without local registration).
2437 (phanto)
2438 - Added the possibility to specify typelibs by full name in the typelib file
2439 (Alan Brown)
2440 - Renamed the ZZiplib extension to the Zip extension, function names have also
2441 changed accordingly, functionality, has stayed constant. (Sterling)
2442 - Made the length argument (argument 2) to pg_loread() optional, if not
2443 specified data will be read in 1kb chunks. (Sterling)
2444 - Added a third argument to pg_lowrite() which is the length of the data to
2445 write. (Sterling)
2446 - Added the CONNECTION_ABORTED, CONNECTION_TIMEOUT and CONNECTION_NORMAL
2447 constants. (Zak)
2448 - Assigning to a string offset beyond the end of the string now automatically
2449 increases the string length by padding it with spaces, and performs the
2450 assignment. (Zeev, Zend Engine)
2451 - Added warnings in case an uninitialized string offset is read. (Zeev, Zend
2452 Engine)
2453 - Fixed a couple of overflow bugs in case of very large negative integer
2454 numbers. (Zeev, Zend Engine)
2455 - Fixed a crash bug in the string-offsets implementation (Zeev, Zend Engine)
2456 - Improved the implementation of parent::method_name() for classes which use
2457 run-time inheritance. (Zeev, Zend Engine)
2458 - Added 'W' flag to date() function to return week number of year using ISO
2459 8601 standard. (Colin)
2460 - Made the PostgreSQL driver do internal row counting when iterating through
2461 result sets. (gvz@2scale.net)
2462 - Updated ext/mysql/libmysql to version 3.23.39; Portability fixes, minor
2463 bug fixes. (tim@mysql.com)
2464 - Added get_defined_constants() function to return an associative array of
2465 constants mapped to their values. (Sean)
2466 - New mailparse extension for parsing and manipulating MIME mail. (Wez)
2467 - Define HAVE_CONFIG_H when building standalone DSO extensions. (Stig)
2468 - Added the 'u' modifier to printf/sprintf which prints unsigned longs.
2469 (Derick)
2470 - Improved IRIX compatibility. (Sascha)
2471 - Fixed crash bug in bzopen() when specifying an invalid file. (Andi)
2472 - Fixed bugs in the mcrypt extension that caused crashes. (Derick)
2473 - Added the IMG_ARC_ROUNDED option for the ImageFilledArc() function, which
2474 specified that the drawn curve should be rounded. (Sterling)
2475 - Updated the sockets extension to use resources instead of longs for the
2476 socket descriptors. The socket functions have been renamed to conform with
2477 the PHP standard instead of their C counterparts. The sockets extension is
2478 now usable under Win32. (Daniel)
2479 - Added disk_total_space() to return the total size of a filesystem.
2480 (Patch from Steven Bower)
2481 - Renamed diskfreespace() to disk_free_space() to conform to established
2482 naming conventions. (Jon)
2483 - Fixed #2181. Now zero is returned instead of an unset value for
2484 7-bit encoding and plain text body type. (Vlad)
2485 - Fixed a bug in call_user_*() functions that would not allow calling
2486 functions/methods that accepted parameters by reference. (Andrei)
2487 - Added com_release($obj) and com_addref($obj) functions and the related class
2488 members $obj->Release() and $obj->AddRef() to gain more control over the used
2489 COM components. (phanto)
2490 - Added an additional parameter to dotnet_load to specify the codepage (phanto)
2491 - Added peak memory logging. Use --enable-memory-limit to create a new Apache
2492 1.x logging directive "{mod_php_memory_usage}n" which will log the peak
2493 amount of memory used by the script. (Thies)
2494 - Made fstat() and stat() provide identical output by returning a numerical and
2495 string indexed array. (Jason)
2496 - Fixed memory leak upon re-registering constants. (Sascha, Zend Engine)
2497
2498 23 Jun 2001, Version 4.0.6
2499 - Fixed memory fragmention problem which could lead to web server processes
2500 growing much more than they should. (Andi, Zend Engine)
2501 - Made $HTTP_SESSION_VARS['foo'] and $foo be references to the same value
2502 when register_globals is on. (Andrei)
2503 - Fixed disk_free_space() and disk_total_space() under FreeBSD. (Jon)
2504 - Fixed readfile/passthru losing resources during connection abort (Sascha)
2505 - Fixed bug in the mcrypt extension that caused segfaults when using a key
2506 that is too large for the used algorithm, and a bug that caused
2507 mcrypt_generic() to segfault PHP (Derick)
2508 - Fixed getopt so that it accepts command line arguments in the form
2509 -<opt><arg> and -<opt> <arg>. (Jmoore)
2510 - Fixed race in writing session files (Sascha)
2511 - Fixed a possible crash in the PHP CGI when no input file is
2512 specified (Zeev)
2513 - Added is_callable() function that can be used to find out whether
2514 its argument is a valid callable construct. (Andrei)
2515 - Fixed a rare possible crash when generating extended information. (Dmitri
2516 Dmitrienko, Zend Engine)
2517 - Improved virtual() to support PHP-enabled URIs. (Zeev)
2518 - Fixed undefined behavior when using floating point keys in array()
2519 expressions. (Zeev, Zend Engine)
2520 - Fixed a possible crash in case of parse errors in include files or eval
2521 statements. (Zeev, Zend Engine)
2522 - Added --with-layout configure option. (Stig)
2523 - Improved interactive mode - supports function calls, and works in
2524 multithreaded builds. (Zeev, Zend Engine)
2525 - Fixed a crash bug in interactive mode. (Zeev, Zend Engine)
2526 - Added pg_last_notice() function. (Rasmus from suggestion by Dirk@rackspace.com)
2527 - Fixed a bug in preg_split() that would incorrectly limit the number of
2528 results when used along with PREG_SPLIT_NO_EMPTY flag. (Andrei)
2529 - Added connection error support to mysql_error() and mysql_errno(). (Jason)
2530 - Added support to getimagesize to return dimensions of BMP and PSD
2531 files. (Derick)
2532 - Added heuristic to kill stale IRC connections, message scanner caching, and
2533 nickname escaping to IRCG, suppress option to ircg_msg(), and statistics to
2534 IRCG phpinfo() output. (Sascha)
2535 - Added Japanese multibyte string functions support. (Rui)
2536 - Added Mac OS X "\r" line ending support. (Andi, Zend Engine)
2537 - Fixed a bug regarding the $PHP_SELF being incorrectly registered when
2538 force-cgi-redirect was not enabled. (Sterling)
2539 - pfpro extension now supports version 3 of the Verisign SDK. (John Donagher)
2540 - Udm_Cat_List and Udm_Cat_Path functions has been added.
2541 - Added key_exists() to check if a given key or index exists in an
2542 array or object. (David Croft)
2543 - Modify the cURL extension to compile only with the latest cURL release.
2544 Backwards compatibility with regards to the extension api has not been
2545 broken. (Sterling)
2546 - Added the ability to use user-defined callbacks with cURL. (Sterling)
2547 - Added the SSL_VERIFYPEER, CAINFO, MAXREDIRS, FILETIME, RANDOM_FILE, EGDSOCKET
2548 and CONNECTTIMEOUT options to curl_setopt(). (Sterling)
2549 - Added support for persistent connections with cURL. (Sterling)
2550 - Fixed a problem in cURL with file descriptors being allocated, but never
2551 closed. (Sterling)
2552 - Fixed interactive mode (-a). It works again with the same limitations it
2553 has always had. (Andi, Zend Engine)
2554 - Improved memory manager to use less memory and provide better memory overflow
2555 detection abilities in debug mode. (Andi, Zend Engine)
2556 - Fixed resource leaks when resources were being cast to numbers. (Zeev, Zend
2557 Engine)
2558 - Fixed foreach() to not crash when being sent an invalid argument. (Andi, Zend
2559 Engine)
2560 - Fixed a bug in opendir() under Windows when trying to open a non-exisiting
2561 directory. (Andi)
2562 - Fixed popen() and the exec family under Win32 (Unable to fork issue). (Daniel)
2563 - Make the printf family of functions binary clean. (Rasmus)
2564 - Fixed WDDX serialization to HTML-escape key/variable names so as not to
2565 break the XML packet. (Andrei)
2566 - Made WDDX extension enabled by default. (Andrei)
2567 - Added -C command-line option to avoid chdir to the script's directory. (Stig)
2568 - Fixed a bug with /e modifier in preg_replace(), that would not correctly
2569 replace two-digit references if single digit references were present
2570 before them. This fixed bug #10218. (Andrei)
2571 - Added temporary LOB support in OCI8. (Patch by David Benson)
2572 - Fixed crash in pathinfo()
2573 - OCI8 now supports binding of collections. (Patch by Andy Sautins
2574 <asautins@veripost.net>)
2575 - Added GD 2.0.1 support for truecolor and alpha channels, plus some other gd
2576 functions, both old and new - see docs for more info. (Wez)
2577 - Added S/MIME sign/verify encrypt/decrypt functions to openssl extension,
2578 along with some other certificate manipulation and interrogation functions.
2579 See docs for more info. (Wez)
2580 - printf argnum (parameter swapping) support. (Morten Poulsen, Rasmus)
2581 - Add DIRECTORY_SEPARATOR constant ('/' on UNIX, '\' on Windows). (Stig)
2582 - Added small change to php_odbc module, to check for failed SQLDisconnects
2583 and to close any outstanding transactions if the call fails, then disconnect
2584 again. (lurcher)
2585 - Modified get_parent_class() and get_class_methods() to accept a class name as
2586 well as a class instance. (Andrei, Zend Engine)
2587 - Added support for UNC style paths. (\\server\share\file,
2588 //server/share/file). (Daniel, TSRM)
2589 - Added dbx module (database abstraction) to the repository. (Marc)
2590 - Using ITypeInfo instead of IDispatch if possible. This makes DCOM calls
2591 and even COM calls much faster.
2592 All ini settings are now prefixed by 'com.'.
2593 Now you need not provide a path to the file containing the typelib, you can
2594 also provide the GUID of the TypeLib - entry or an IID for preloading
2595 type - information. (Harald)
2596 - Rewrite of domxml. It's now mostly DOM Level 2 conform. (Uwe)
2597 - Added array_map() function that applies a callback to the elements
2598 of given arrays and returns the result. It can also be used with a
2599 null callback to transpose arrays. (Andrei)
2600 - Added array_filter(), which allows filtering of array elements via
2601 the specified callback. (Andrei)
2602 - Fixed all relevant array functions to avoid moving the internal array
2603 pointer during operations. (Andrei)
2604 - Added mysql_unbuffered_query(), which is useful for very large result sets.
2605 (Zeev)
2606
2607 30 Apr 2001, Version 4.0.5
2608 - Added new php.ini directive: arg_separator.input which is used to tell
2609 PHP which characters are considered as argument separators in URLs.
2610 Renamed php.ini directive: arg_separator -> arg_separator.output (Jani)
2611 - Added FastCGI SAPI module. (Ben Mansell)
2612 - Added array_reduce(), which allows iterative reduction of an array
2613 to a single value via a callback function. (Andrei)
2614 - The imageloadfont function of the gd extension should be not platform
2615 dependent after this fix. (alex@zend.com)
2616 - Fixed a compatibility problem in some file functions (fgets, fputs, fread,
2617 fwrite). The ANSI standard says that if a file is opened in read/write
2618 mode, fseek() should be called before switching from reading to writing
2619 and vice versa. (alex@zend.com)
2620 - Fixed argument checking for call_user_func* functions and allowed
2621 specifying array($obj, 'method') syntax for call_user_func_array. (Andrei)
2622 - Fixed parent::method() to also work with runtime bindings.
2623 (Zeev, Zend Engine)
2624 - Implemented high-performance zlib-based output compression - see
2625 zlib.output_compression INI directive. (Zeev)
2626 - Improved ob_gzhandler() to support chunked output buffering - it's
2627 recommended to use it with 4KB chunks. (Zeev)
2628 - Fixed chunked output buffering. (Zeev)
2629 - Forced call_user_method() and call_user_method_array() to take the
2630 object argument by reference. (Andrei)
2631 - Fixed binding of ROWIDs in OCI8. (Thies)
2632 - Added PEAR/Cache as a generic Caching System. (Sebastian, PEAR/Cache)
2633 - Added IMAP quota support (imap_set_quota, imap_get_quota), enabled/added via
2634 c-client2000. (kalowsky)
2635 - Upgraded PCRE to version 3.4. (Andrei)
2636 - Added array_search which works similar to in_array but returns
2637 the key instead of a boolean. (jason@php.net)
2638 - Fixed pgsql transaction support. (Stig, PEAR/DB)
2639 - Added new object VARIANT() to encapsulate values for use with
2640 the COM and DOTNET module. Therefore it is now possible to pass
2641 values by reference, convert php values to extended variant types (currency,
2642 date, idispatch, iunknown, ...) and define the codepage that should
2643 be used for unicode - conversion.
2644 - Improved overall speed of IRCG, added URL handling to message scanner.
2645 (Sascha)
2646 - Fixed some modules to allow using output-buffering. (Thies)
2647 - Added the chroot() function. (Derick)
2648 - PostgreSQL now does a rollback at the end of a request on every
2649 persistent connection. This is done by doing an "empty" transaction
2650 on the connection. This was advised by someone from the PostgreSQL
2651 core-team. (Thies)
2652 - Fixed PostgeSQL pg_connect() bug. We would sometimes close the default
2653 link by accident. (Patch by: aja@nlgroup.ca)
2654 - Improved OCI8 dead-session detection. (Patch by: George Schlossnagle)
2655 - Fixed get_meta_tags() multiline bug #4556. (Sean)
2656 - Prefer random() over *rand48(). (JimJag)
2657 - Sped up WDDX serialization 2x. (Andrei)
2658 - Added a new parameter to mail() which appends aditional command line
2659 parameters to the mail program. (Derick)
2660 - Added Udm_Clear_Search_Limits mnoGoSearch extension function. (gluke)
2661 - Fixed mnogosearch protos. Fixed mnogosearch functions return values.
2662 A bug with capital letters break search has been fixed. (gluke)
2663 - Static methods can now be called via call_user_method_* functions, e.g.
2664 call_user_method('method', 'class'), and also array('class', 'method')
2665 constructs (for array_walk(), for example). (Andrei, Zend Engine)
2666 - microtime() under Windows now returns accurate values. (James)
2667 - Added PREG_SPLIT_DELIM_CAPTURE flag to preg_split() that allows for Perl-like
2668 functionality of capturing parenthesized delimiter expression. (Andrei)
2669 - Fixed strip_tags() to not strip a lone > character. (Rasmus)
2670 - When using the ob_gzhandler() PHP now automagically also sets the
2671 Content-Lengh correctly which enables browsers to use the HTTP
2672 Keep-Alive feature. (Thies)
2673 - Improved handling of preg_replace() /F modifier so that it's possible to
2674 specify array($obj, 'method') construct as a replacement function. (Andrei)
2675 - Added mysql_get_client_info(), mysql_get_server_info(),
2676 mysql_get_proto_info(), and mysql_get_host_info() functions. (Sean)
2677 - Major change of the php pdf api. It could break some functions though
2678 backwards compatibility was tried to maintain. Adding some still
2679 missing functions as well. (Uwe)
2680 - Added mnoGoSearch extension - http://search.mnogo.ru. (Sergey K)
2681 - Allow URL encoding in DB usernames and passwords. (Stig, PEAR)
2682 - Added raiseError and setErrorHandling methods to PEAR class. (Stig, PEAR)
2683 - Added support for converting images from JPG/PNG on the fly with the GD
2684 extension, which is usefull for creating dynamic WAP-sites. (Derick)
2685 - Updated ext/mysql/libmysql to version 3.23.32; bug fixes. (tim@mysql.com)
2686 - Fixed possible crash in all (non-pcre) regex functions. (Thies)
2687 - Improved str_replace() to accept an array for any parameter - similar
2688 to preg_replace(). (Andrei)
2689 - Fixed extract() to properly prefix numeric keys when EXTR_PREFIX_ALL is
2690 used. (Andrei)
2691 - Added EXTR_PREFIX_INVALID flag to extract() to automatically prefix
2692 string keys that do not constitute valid variable names. (Andrei)
2693 - BeOS patch from svanegmond@bang.dhs.org, modified somewhat by Rasmus.
2694 - Fixed the Apache module to overwrite PATH_TRANSLATED with SCRIPT_FILENAME,
2695 only if PATH_TRANSLATED is not previously set. (Zeev)
2696 - Fixed crash bug in highlight_string(). (Rasmus)
2697 - Added URL support for getimagesize() function. (Jani)
2698 - Added xslt_set_scheme_handler() function. (carmelo@akooe.com)
2699 - Added the pg_lolseek and pg_lotell functions. (Derick)
2700 - Fixed wrong breaking with the wordwrap function. (Derick)
2701 - Fixed 'O' and 'r' flags of date() to have correct sign for timezone
2702 offset. (Andrei)
2703 - Changed 'Z' flag to date() to always return timezone offset with
2704 negative sign if it's west of UTC. (Andrei)
2705 - Added the HTML_Processor class which provides common functions for
2706 processing HTML. (Sterling)
2707 - Added localeconv() and strcoll() functions for localization. (Sean)
2708 - Added the xslt_set_base function. (Sterling)
2709 - Added support for Zeus 3.3.8.
2710 - Added odbc_error() and odbc_errormsg() functions. (Stig)
2711 - New extension for vpopmail - http://www.inter7.com/vpopmail,
2712 give it a try, but keep in mind that it is not ready for production
2713 environments. (David Croft, Boian Bonev)
2714 - Added sybase_get_last_message() to the Sybase CT module. (Jan Fedak)
2715 - Made ldap_list(), ldap_read() and ldap_search() do parallel search when
2716 first parameter is an array of link identifiers. (Stig Venaas)
2717 - Made fopen() of HTTP URL follow redirects, $http_response_header will
2718 contain all headers with empty string as delimiter. (Stig Venaas)
2719 - Added Console_Getopt class for parsing command-line args. (Andrei, PEAR)
2720 - Added an experimental version of the ZZipLib extension which provides the
2721 ability to read zip files. (Sterling)
2722 - Allow access to uploaded files in safe_mode. Beware that you can only
2723 read the file. If you copy it to new location the copy will not have the
2724 right UID and you script won't be able to access that copy. (Thies)
2725 - Changed extract() to check that prefixed name is a valid one. (Andrei)
2726 - Changed extract() to return the number of variables extracted. (Andrei)
2727 - Added ldap_rename() function. (Stig Venaas)
2728 - Made ldap_set_option() support controls. (Stig Venaas)
2729 - Changed ldap_search() and added functions ldap_parse_result(),
2730 ldap_first_reference(), ldap_next_reference() and ldap_parse_reference()
2731 to cope with LDAPv3 stuff like referrals and references. (Stig Venaas)
2732 - Fixed date('r') overflow.
2733 - Made the php.ini path reported in phpinfo() always point to the absolute
2734 path that was opened. (Zeev)
2735 - Made the INI mechanism thread safe. (Zeev, Zend Engine)
2736 - Changed setlocale() to use LC_* constants. (Jani)
2737 - ctype functions now follow the extension naming conventions. (Hartmut)
2738 - Added iconv() function (using libc or libiconv). (Stig)
2739 - Added ODBC_TYPE constant. (Stig)
2740 - Added the call_user_method_array function which allows you to call a method
2741 with an arbitrary number of parameters. (Sterling)
2742 - ext/odbc: IBM DB2 patch by Walter Franzini. <walter@sys-net.it>
2743 - Added extension for the cracklib library. (Alexander Feldman)
2744
2745 19 Dec. 2000, Version 4.0.4
2746 - Allow assigning a newly created object by reference. This is needed only if
2747 your constructor makes other data structures reference the $this object (for
2748 example, $GLOBALS["foobar"] =& $this;)
2749 The new syntax is $obj =& new MyClass(); (Andi, Zend Engine)
2750 - Allow for three expression types to be sent to functions which are requesting
2751 the function argument to be passed by reference (only c. was previously
2752 supported):
2753 a. func(new myclass());
2754 b. func(func2()); where func2() returns a reference, i.e. is defined as
2755 function &func2(...)
2756 {
2757 ...
2758 }
2759 c. func($var); where func() is defined as function func(&$var) {...}
2760 You CAN'T count on any other expressions to be passable by reference.
2761 (Andi, Zend Engine)
2762 - Made ldap_get_entries() return an array even if there are no entries
2763 in search result. (Jani)
2764 - Fixed bad mod_perl interaction which caused segfaults when using LFS (Sascha)
2765 - const CONSTNAME now gets recognized. Before the patch only @const CONSTNAME
2766 description was recognized.
2767 - Added the is_null() function that will return true if a variable is of
2768 type null. (Sterling)
2769 - Fixed a bug which made readdir() unusable in some systems. (Jani)
2770 - Added the get_defined_functions() function which returns a list of all
2771 currently defined functions. (Sterling)
2772 - Added the get_defined_vars() function which returns an associative array
2773 of all variables defined in the current scope and their subsequent values.
2774 (Sterling)
2775 - Added the call_user_func_array() function which gives you the ability to
2776 call a user function by passing an array of parameters as the second
2777 argument. (Sterling)
2778 - Added the constant() function which returns the value of a constant given
2779 the constant's name. (Sterling)
2780 - Implemented support for Perl-style matching regexp delimiters in PCRE.
2781 You can use <{[( and )]}> to delimit your expressions now. (Andrei)
2782 - Introduced new 'F' modifier in PCRE that lets you specify a function
2783 name in the replacement argument to preg_replace() that will be called
2784 at run-time to provide the replacement string. It is passed an array of
2785 matched pattern and subpatterns. (Andrei)
2786 - Put an end to BUG#4615 (kalowsky & Eric Veldhuyzen)
2787 - Added the IRCG extension (Sascha)
2788 - Fixed realpath() in Virtual Directory mode (Daniel)
2789 - Integrated the Phil Nelson's bc math library routines into PHP, now that
2790 the license allows it (Phil Nelson <phil@cs.wwu.edu>)
2791 - Added the xslt_set_error_handler() function to the Sablotron extension.
2792 (Sterling)
2793 - Improved Sablotron's error handling system allowing you to catch all
2794 errors before they are outputted to the screen. (Sterling)
2795 - Added OpenSSL extension (Stig Venaas)
2796 - Fixed/created support for Solid 3.0 databases (kalowsky)
2797 - Fixed support for Solid 2.3 databases (kalowsky)
2798 - quoted_printable_decode() function is made RFC-2045 compliant. (Kir)
2799 - Modified preg_grep() to always return the results with keys from the original
2800 array. (Andrei)
2801 - Modified preg_replace() to accept Perl-style $n backreferences in addition
2802 to \\n ones. (Andrei)
2803 - Modified preg_replace() to ignore backreferences that refer to
2804 non-existing subpatterns. (Andrei)
2805 - Fixed column-title buffer-overflow in OCIFetchStatement(). (Thies)
2806 - Added 'output_handler' INI directive (Zeev)
2807 - Fixed some buglets in the output buffering mechanism (Zeev)
2808 - Added transparent gzip compression support (Jade Nicoletti, Zeev)
2809 - Major overhaul of domxml. Added basic XPath support as well (Uwe)
2810 - Added 'r' flag to date() which generates an RFC822 formatted date, e.g.
2811 "Thu, 9 Nov 2000 16:33:01 -0500" (Colin)
2812 - In CGI mode, $HTTP_SERVER_VARS now includes all of the environment variables
2813 as well (Zeev)
2814 - Allow user to use mysql_use_result in mysql queries (Stas)
2815 - Fixed a memory leak that would occur when restarting Apache often
2816 (mookid@sigent.ru)
2817 - Fixed a bug that prevented $argv and $argc from being defined in the command
2818 line version of PHP (Stas)
2819 - Fixed a bug that prevented a changed compile-time extension_dir from
2820 affecting modules that were loaded via php.ini (Zeev)
2821 - Fixed a bug in ftp_mkdir() when used on ftp server which doesn't return
2822 the full path (Jani)
2823 - Added ImageCreateFromString() which creates an image stream out of
2824 e.g. a MySQL blob. (Mathieu)
2825 - Fixed a crash bug in imagewbmp() (Jani)
2826 - Changed the sablot configuration file so that if you use any version of
2827 Sablotron below 0.44 you must use Sablotron's built-in Expat libraries.
2828 (Sterling)
2829 - Added basic authentication support to thttpd (Sascha)
2830 - Added support for the Caudium webserver (http://caudium.net/). It's based
2831 on the Roxen SAPI module. Many bugs have been identified and fixed. (David)
2832 - Fixed mysql_close(), pg_close(), msql_close() and sybase_close() - they
2833 weren't properly closing the SQL connections (Zeev)
2834 - Fixed crypt() to supply random seed if none is given (Andi)
2835 - Made print_r() support recursive data structures, e.g. $GLOBALS. (Zeev)
2836 - Fixed a bug that caused PHP not to properly flush its output buffer, if more
2837 than one output buffer was used. (Zeev)
2838 - Fixed a bug that could draw the shutdown sequence of the PHP Apache module
2839 into an endless loop, under certain circumstances. It could cause Apache
2840 processes under Solaris to get stuck, especially when using output
2841 buffering. (Zeev)
2842 - Added support for serializing references (Stas)
2843 - Fixed conflict with OpenLDAP and Oracle 8.1.x (Jani)
2844 - parse_ini_file() supports a new optional 2nd argument that instructs it
2845 to divide the directives to arrays according to the sections in which they
2846 reside (Zeev)
2847 - parse_ini_file() is now thread-safe, and supported under Windows (Zeev)
2848 - Unified aborted-connection semantics of all SAPI modules (Sascha)
2849 - URL-opened files now store the HTTP response header in $http_response_header
2850 (Zeev)
2851 - Fixed array_rand() to shuffle results when the number of requested
2852 elements is the same as the number of elements in the array. (Andrei)
2853 - Added replace parameter to header() (Sascha)
2854 - Fixed handling of single quotes in transparent session-id mode (Sascha)
2855 - Fixed "php://*" fopen handler (Sascha)
2856 - Made rename work in threadsafe enviroments (Daniel)
2857 - Made session_destroy() close files before unlinking (Daniel)
2858 - Added array_sum() function. (Andrei)
2859 - Fixed a bug in session.c. The php_session_save_current_state did not check
2860 if mod_data is NULL and such situation is possible if the user calls
2861 session_module_name with a parameter. (alex@zend.com)
2862 - Added IIS Admin extension. (Frank)
2863 - OCIBindByName() now does better parameter-checking. (Thies)
2864 - Made read() binary-safe in sockets.c (Chris Vandomelen)
2865 - Made array_intersect() and array_diff() not alter order (Stig Venaas)
2866 - Made ldap_connect() accept URL in host parameter when using OpenLDAP
2867 2.x. To use SSL, use ldaps://host/ as URL. (Stig Venaas)
2868 - Made resource type names visible, e.g. var_dump() and
2869 get_resource_type() display "file" for file resources. (Andrei)
2870 - Added the curl_getinfo() function to find out information about a CURL
2871 transfer. This function requires cURL 7.4.0 or above. (Sterling)
2872 - Added the CURLOPT_KRB4, CURLOPT_INTERFACE, CURLOPT_QUOTE, CURLOPT_POSTQUOTE,
2873 CURLOPT_QUOTE and CURLOPT_HTTPPROXYTUNNELL options. (Sterling)
2874 - Renamed the shm_* functions to shmop_* (Derick)
2875 - Updated ext/mysql/libmysql to version 3.23 (tim@mysql.com)
2876