~ubuntu-branches/ubuntu/gutsy/php5/gutsy

« back to all changes in this revision

Viewing changes to README.UPDATE_5_2

  • Committer: Bazaar Package Importer
  • Author(s): Martin Pitt, CVE-2007-0905, CVE-2007-0906, CVE-2007-0909, CVE-2007-0910
  • Date: 2007-02-20 17:54:46 UTC
  • mfrom: (1.1.6 upstream)
  • Revision ID: james.westby@ubuntu.com-20070220175446-nudqyuv0dfowel3r
Tags: 5.2.1-0ubuntu1
* New upstream security/bugfix release:
  - safe_mode & open_basedir bypasses inside the session extension
    [CVE-2007-0905]
  - multiple buffer overflows in various extensions and functions
    [CVE-2007-0906]
  - underflow in the internal sapi_header_op() function [CVE-2007-0907]
  - information disclosure in the wddx extension [CVE-2007-0908]
  - string format vulnerability in *print() functions on 64 bit systems
    [CVE-2007-0909]
  - possible clobbering of super-globals in several code paths
    [CVE-2007-0910]
* Adapted patches to new upstream release:
  - 006-debian_quirks.patch
  - 034-apache2_umask_fix.patch
  - 044-strtod_arm_fix.patch
* Drop 109-libdb4.4.patch: Obsolete, upstream now checks for db 4.5 and 4.4.
* Drop 114-zend_alloc.c_m68k_alignment.patch and
  115-zend_alloc.c_memleak.patch: Applied upstream.
* Add debian/patches/000upstream-str_ireplace_offbyone.patch:
  - Fix off-by-one in str_ireplace(), a regression introduced in 5.2.1.
  - Patch taken from upstream CVS:
    http://cvs.php.net/viewvc.cgi/php-src/ext/standard/string.c?r1=1.630&r2=1.631
  - CVE-2007-0911
* debian/control: Set Ubuntu maintainer.

Show diffs side-by-side

added added

removed removed

Lines of Context:
173
173
  you to fine-grain the levels of the messages stored.
174
174
 
175
175
 
 
176
==============================
 
177
Backwards incompatible changes
 
178
==============================
 
179
 
 
180
In the PHP core
 
181
===============
 
182
getrusage() will return NULL when passed incompatible arguments
 
183
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/standard/microtime.c?r1=1.57&r2=1.58 && ?r1=1.53.2.2&r2=1.53.2.2.2.1
 
184
 
 
185
In ext/zip
 
186
==========
 
187
ZipArchive::setCommentName() now returns TRUE on success
 
188
ZipArchive::setCommentIndex() now return TRUE on success
 
189
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/zip/php_zip.c?r1=1.1.2.15&r2=1.1.2.16
 
190
 
 
191
In ext/spl
 
192
==========
 
193
SplFileObject::getFilename() now returns the filename, not relative/path/to/file
 
194
As of 5.2.1 #See http://cvs.php.net/viewcvs.cgi/php-src/ext/spl/spl_directory.c?r1=1.45.2.27.2.10&r2=1.45.2.27.2.11
176
195
==================
177
196
NEW ERROR MESSAGES
178
197
==================
198
217
strrpos("foo", "f", 4);
199
218
/* Notice:  strrpos(): Offset is greater than the length of haystack string in filename on line n */
200
219
 
 
220
/* when allow_url_include is OFF (default) */
 
221
include "data:;base64,PD9waHAgcGhwaW5mbygpOz8+";
 
222
/* Warning:  include(): URL file-access is disabled in the server configuration in filename on line n */
 
223
 
 
224
/* when allow_url_include is OFF (default) */
 
225
include "php://input";
 
226
/* Warning:  include(): URL file-access is disabled in the server configuration in filename on line n */
 
227
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/standard/php_fopen_wrapper.c?r1=1.45.2.4.2.3&r2=1.45.2.4.2.4
 
228
 
201
229
?>
202
230
 
203
231
OO related in the PHP core
309
337
 
310
338
?>
311
339
 
 
340
In the date extension
 
341
=====================
 
342
 
 
343
<?php
 
344
 
 
345
strtotime("today", "now");'
 
346
/* Warning:  strtotime() expects parameter 2 to be long, string given in filename on line n */
 
347
 
 
348
new DateTime(new stdclass);
 
349
/* Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct() expects parameter 1 to be string, object given' in filename:n */
 
350
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.33&r2=1.43.2.45.2.34
 
351
?>
 
352
 
312
353
In the dBase extension
313
354
======================
314
355
 
317
358
dbase_open("foo", -1);
318
359
/* Warning: Invalid access mode -1 in filename on line n */
319
360
 
 
361
dbase_open("foo", null);
 
362
/* Warning: The filename cannot be empty in filename on line n */
 
363
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/dbase/dbase.c?r1=1.74.2.2.2.5&r2=1.74.2.2.2.6&diff_format=u
320
364
?>
321
365
 
322
366
In the mcrypt extension
368
412
 
369
413
?>
370
414
 
 
415
In the sysvmsg extension
 
416
========================
 
417
<?php
 
418
 
 
419
/* Warning:  maximum size of the message has to be greater then zero in filename on line n */
 
420
 
 
421
?>
 
422
 
 
423
In the Zip extension
 
424
====================
 
425
<?php
 
426
$obj = new ZipArchive();
 
427
$obj->open("archive.zip");
 
428
$obj->setCommentName("", "comment");'
 
429
/* Notice:  ZipArchive::setCommentName(): Empty string as entry name in filename on line n */
 
430
 
 
431
$obj->getCommentName("");
 
432
/* Notice:  ZipArchive::getCommentName(): Empty string as entry name in filename on line n */
 
433
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/zip/php_zip.c?r1=1.1.2.15&r2=1.1.2.16
 
434
?>
 
435
 
371
436
 
372
437
============
373
438
NEW FEATURES
541
606
    Methods:
542
607
      DateTime::__construct([string time[, DateTimeZone object]])
543
608
      - Returns new DateTime object
544
 
      string DateTime::format(DateTime object, string format)
 
609
      string DateTime::format(string format)
545
610
      - Returns date formatted according to given format
546
 
      long DateTime::getOffset(DateTime object)
 
611
      long DateTime::getOffset()
547
612
      - Returns the DST offset
548
 
      DateTimeZone DateTime::getTimezone(DateTime object)
 
613
      DateTimeZone DateTime::getTimezone()
549
614
      - Return new DateTimeZone object relative to give DateTime
550
 
      void DateTime::modify(DateTime object, string modify)
 
615
      void DateTime::modify(string modify)
551
616
      - Alters the timestamp
552
617
      array DateTime::parse(string date)
553
618
      - Returns associative array with detailed info about given date
554
 
      void DateTime::setDate(DateTime object, long year, long month, long day)
 
619
      void DateTime::setDate(long year, long month, long day)
555
620
      - Sets the date
556
 
      void DateTime::setISODate(DateTime object, long year, long week[, long day])
 
621
      void DateTime::setISODate(long year, long week[, long day])
557
622
      - Sets the ISO date
558
 
      void DateTime::setTime(DateTime object, long hour, long minute[, long second])
 
623
      void DateTime::setTime(long hour, long minute[, long second])
559
624
      - Sets the time
560
 
      void DateTime::setTimezone(DateTime object, DateTimeZone object)
 
625
      void DateTime::setTimezone(DateTimeZone object)
561
626
      - Sets the timezone for the DateTime object
562
627
 
563
628
  DateTimeZone:
564
629
    Methods:
565
630
      DateTimeZone DateTimeZone::__construct(string timezone)
566
631
      - Returns new DateTimeZone object
567
 
      string DateTimeZone::getName(DateTimeZone object)
 
632
      string DateTimeZone::getName()
568
633
      - Returns the name of the timezone
569
 
      long DateTimeZone::getOffset(DateTimeZone object, DateTime object)
 
634
      long DateTimeZone::getOffset(DateTime object)
570
635
      - Returns the timezone offset
571
 
      array DateTimeZone::getTransitions(DateTimeZone object)
 
636
      array DateTimeZone::getTransitions()
572
637
      - Returns numerically indexed array containing associative array for all transitions for the timezone
573
638
 
574
639
  RecursiveRegexIterator:
692
757
      boolean XMLReader::setSchema(string filename)
693
758
        Use W3C XSD schema to validate the document as it is processed. Activation is only possible before the first Read()
694
759
 
 
760
In ext/zip
 
761
==========
 
762
    ZipArchive:
 
763
      bool addEmptyDir(string dirname)
 
764
        Creates an empty directory in the archive
 
765
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/zip/php_zip.c?r1=1.1.2.15&r2=1.1.2.16
695
766
 
696
767
New class constants
697
768
===================
730
801
     - Returns numerically indexed array with all timezone identifiers
731
802
    string timezone_name_from_abbr(string abbr[, long gmtOffset[, long isdst]])
732
803
     - Returns the timezone name from abbreviation
 
804
As of 5.2.1: #See http://cvs.php.net/viewvc.cgi/php-src/ext/standard/streamsfuncs.c?r1=1.58.2.6.2.9&r2=1.58.2.6.2.10&diff_format=u
 
805
    int stream_socket_shutdown(resource stream, int how)
 
806
     - Causes all or part of a full-duplex connection on the socket associated with stream to be shut down
733
807
 
734
808
In ext/mbstring
735
809
===============
750
824
    string mb_strstr(string haystack, string needle[, bool part[, string encoding]])
751
825
      - Finds first occurrence of a string within another
752
826
 
 
827
In ext/ming
 
828
===========
 
829
As of 5.2.1: See http://cvs.php.net/viewvc.cgi/php-src/ext/ming/ming.c?r1=1.79.2.4.2.4&r2=1.79.2.4.2.5&diff_format=u
 
830
    void ming_setSWFCompression(int num)
 
831
     - Sets output compression
 
832
    void swfmovie::namedanchor(string name)
 
833
     - Creates anchor
 
834
    void swfmovie::protect([string pasword])
 
835
     - Protects
 
836
 
753
837
In ext/openssl
754
838
==============
755
839
    resource openssl_csr_get_public_key(mixed csr)
792
876
     - End current element - returns FALSE on error
793
877
    bool xmlwriter_write_raw(resource xmlwriter, string content)
794
878
     - Write text - returns FALSE on error
 
879
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/xmlwriter/php_xmlwriter.c?r1=1.20.2.12.2.8&r2=1.20.2.12.2.9
 
880
    bool xmlwriter_start_dtd_entity(resource xmlwriter, string name, bool isparam)
 
881
     - Create start DTD Entity - returns FALSE on error
 
882
    bool xmlwriter_end_dtd_entity(resource xmlwriter)
 
883
     - End current DTD Entity - returns FALSE on error
 
884
    bool xmlwriter_write_dtd_entity(resource xmlwriter, string name, string content [, bool pe [, string pubid [, string sysid [, string ndataid]]]])
 
885
     - Write full DTD Entity tag - returns FALSE on error
795
886
 
796
887
 
797
888
New optional parameters
809
900
===========
810
901
  - array curl_multi_info_read(resource mh [, long msgs_in_queue]) (msgs_in_queue)
811
902
 
 
903
In ext/imap
 
904
===========
 
905
  - resource imap_open ( string mailbox, string username, string password [, int options[, int n_retries]]) (n_retries)
 
906
  - bool imap_reopen(resource stream_id, string mailbox [, int options [, int n_retries]]) (n_retries)
 
907
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/imap/php_imap.c?r1=1.208.2.7.2.7&r2=1.208.2.7.2.8
 
908
 
812
909
In ext/mbstring
813
910
===============
814
911
  - int mb_strrpos(string haystack, string needle [, int offset [, string encoding]]) (offset)
815
912
 
 
913
In ext/ming
 
914
===========
 
915
  - int swfmovie::streamMP3(mixed file [, float skip]) (skip)
 
916
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/ming/ming.c?r1=1.79.2.4.2.3&r2=1.79.2.4.2.4
 
917
 
816
918
In ext/openssl
817
919
==============
818
920
  - int openssl_verify(string data, string signature, mixed key [, int signature_algo]) (signature_algo)
830
932
  - SimpleXMLElement simplexml_load_file(string filename [, string class_name [, int options [, string ns [, bool is_prefix]]]]) (ns, is_prefix)
831
933
  - SimpleXMLElement simplexml_load_string(string data [, string class_name [, int options [, string ns [, bool is_prefix]]]]) (ns, is_prefix)
832
934
 
 
935
In ext/spl
 
936
==========
 
937
  - array iterator_to_array(Traversable it [, bool use_keys = true]) (use_keys)
 
938
As of 5.2.1 #See http://cvs.php.net/viewvc.cgi/php-src/ext/spl/spl_iterators.c?r1=1.73.2.30.2.20&r2=1.73.2.30.2.21
 
939
 
833
940
In ext/xmlreader
834
941
================
835
942
  - boolean XMLReader::open(string URI [, string encoding [, int options]]) (encoding, options)
860
967
    - PREG_NO_ERROR
861
968
    - PREG_RECURSION_LIMIT_ERROR
862
969
    - UPLOAD_ERR_EXTENSION
 
970
As of 5.2.1: (See http://cvs.php.net/viewvc.cgi/php-src/ext/standard/file.c?r1=1.409.2.6.2.13&r2=1.409.2.6.2.14&diff_format=u)
 
971
    - STREAM_SHUT_RD
 
972
    - STREAM_SHUT_WR
 
973
    - STREAM_SHUT_RDWR
863
974
 
864
975
In ext/curl
865
976
===========
876
987
    - CURLOPT_FTP_SSL
877
988
    - CURLOPT_FTPSSLAUTH
878
989
 
 
990
In ext/ming
 
991
===========
 
992
As of 5.2.1: See http://cvs.php.net/viewvc.cgi/php-src/ext/ming/ming.c?r1=1.79.2.4.2.4&r2=1.79.2.4.2.5&diff_format=u
 
993
    - SWFTEXTFIELD_USEFONT
 
994
    - SWFTEXTFIELD_AUTOSIZE
 
995
    - SWF_SOUND_NOT_COMPRESSED
 
996
    - SWF_SOUND_ADPCM_COMPRESSED
 
997
    - SWF_SOUND_MP3_COMPRESSED
 
998
    - SWF_SOUND_NOT_COMPRESSED_LE
 
999
    - SWF_SOUND_NELLY_COMPRESSED
 
1000
    - SWF_SOUND_5KHZ
 
1001
    - SWF_SOUND_11KHZ
 
1002
    - SWF_SOUND_22KHZ
 
1003
    - SWF_SOUND_44KHZ
 
1004
    - SWF_SOUND_8BITS
 
1005
    - SWF_SOUND_16BITS
 
1006
    - SWF_SOUND_MONO
 
1007
    - SWF_SOUND_STEREO
 
1008
 
879
1009
In ext/openssl
880
1010
==============
881
1011
    - OPENSSL_VERSION_NUMBER