[meego-commits] 5649: Changes to Trunk/libpng

Anas Nashif nashif at linux.intel.com
Tue Jul 13 22:59:29 UTC 2010


Hi,
I have made the following changes to libpng in project Trunk. Please review and accept ASAP.

Thank You,
Anas Nashif

[This message was auto-generated]

---

Request #5649:

  submit:   Trunk:Testing/libpng(r7) -> Trunk/libpng


Message:
    Move to Trunk

State:   new          2010-07-13T10:54:06 nashif
Comment: None



changes files:
--------------
--- libpng.changes
+++ libpng.changes
@@ -0,0 +1,4 @@
+* Mon Jul 05 2010 Bin Gao <bin.gao at intel.com> - 1.2.44
+- Update to 1.2.44 which includes CVE fix for CVE-2010-1205 and CVE-2010-2249
+- Drop CVE-2010-0205.patch since CVE-2010-0205 is fixed in 1.2.44
+

old:
----
  CVE-2010-0205.patch
  libpng-1.2.37-apng.patch
  libpng-1.2.37.tar.bz2

new:
----
  libpng-1.2.44-apng.patch
  libpng-1.2.44.tar.bz2

spec files:
-----------
--- libpng.spec
+++ libpng.spec
@@ -1,13 +1,13 @@
 # 
 # Do not Edit! Generated by:
-# spectacle version 0.14
+# spectacle version 0.17
 # 
 # >> macros
 # << macros
 
 Name:       libpng
 Summary:    A library of functions for manipulating PNG image format files
-Version:    1.2.37
+Version:    1.2.44
 Release:    1
 Group:      System/Libraries
 License:    zlib
@@ -16,13 +16,13 @@
 Source100:  libpng.yaml
 Patch0:     libpng-multilib.patch
 Patch1:     libpng-pngconf.patch
-Patch2:     libpng-1.2.37-apng.patch
+Patch2:     libpng-1.2.44-apng.patch
 Patch3:     libpng-header-fix.patch
-Patch4:     CVE-2010-0205.patch
 Requires(post):  /sbin/ldconfig
 Requires(postun):  /sbin/ldconfig
 BuildRequires:  zlib-devel
 
+
 %description
 The libpng package contains a library of functions for creating and
 manipulating PNG (Portable Network Graphics) image format files.  PNG
@@ -55,12 +55,10 @@
 %patch0 -p1
 # libpng-pngconf.patch
 %patch1 -p1
-# libpng-1.2.37-apng.patch
+# libpng-1.2.44-apng.patch
 %patch2 -p1
 # libpng-header-fix.patch
 %patch3 -p1
-# CVE-2010-0205.patch
-%patch4 -p1
 # >> setup
 # << setup
 
@@ -90,6 +88,8 @@
 
 
 
+
+
 %files
 %defattr(-,root,root,-)
 # >> files

other changes:
--------------

++++++ libpng-1.2.44-apng.patch (new)
--- libpng-1.2.44-apng.patch
+++ libpng-1.2.44-apng.patch
+diff -Naru libpng-1.2.44.org/png.c libpng-1.2.44/png.c
+--- libpng-1.2.44.org/png.c	2010-06-27 22:50:20.000000000 +0900
++++ libpng-1.2.44/png.c	2010-06-27 22:50:20.000000000 +0900
+@@ -56,6 +56,11 @@
+ PNG_tIME;
+ PNG_tRNS;
+ PNG_zTXt;
++#ifdef PNG_APNG_SUPPORTED
++PNG_acTL;
++PNG_fcTL;
++PNG_fdAT;
++#endif
+ 
+ #ifdef PNG_READ_SUPPORTED
+ /* Arrays to facilitate easy interlacing - use pass (0 - 6) as index */
+diff -Naru libpng-1.2.44.org/png.h libpng-1.2.44/png.h
+--- libpng-1.2.44.org/png.h	2010-06-27 22:50:20.000000000 +0900
++++ libpng-1.2.44/png.h	2010-06-27 22:50:20.000000000 +0900
+@@ -1041,6 +1041,19 @@
+    png_fixed_point int_y_blue PNG_DEPSTRUCT;
+ #endif
+ 
++#ifdef PNG_APNG_SUPPORTED
++   png_uint_32 num_frames PNG_DEPSTRUCT; /* including default image */
++   png_uint_32 num_plays PNG_DEPSTRUCT;
++   png_uint_32 next_frame_width PNG_DEPSTRUCT;
++   png_uint_32 next_frame_height PNG_DEPSTRUCT;
++   png_uint_32 next_frame_x_offset PNG_DEPSTRUCT;
++   png_uint_32 next_frame_y_offset PNG_DEPSTRUCT;
++   png_uint_16 next_frame_delay_num PNG_DEPSTRUCT;
++   png_uint_16 next_frame_delay_den PNG_DEPSTRUCT;
++   png_byte next_frame_dispose_op PNG_DEPSTRUCT;
++   png_byte next_frame_blend_op PNG_DEPSTRUCT;
++#endif
++
+ } png_info;
+ 
+ typedef png_info FAR * png_infop;
+@@ -1142,6 +1155,10 @@
+ #define PNG_INFO_sPLT 0x2000   /* ESR, 1.0.6 */
+ #define PNG_INFO_sCAL 0x4000   /* ESR, 1.0.6 */
+ #define PNG_INFO_IDAT 0x8000L  /* ESR, 1.0.6 */
++#ifdef PNG_APNG_SUPPORTED
++#define PNG_INFO_acTL 0x10000L
++#define PNG_INFO_fcTL 0x20000L
++#endif
+ 
+ /* This is used for the transformation routines, as some of them
+  * change these values for the row.  It also should enable using
+@@ -1182,6 +1199,10 @@
+ typedef void (PNGAPI *png_progressive_end_ptr) PNGARG((png_structp, png_infop));
+ typedef void (PNGAPI *png_progressive_row_ptr) PNGARG((png_structp, png_bytep,
+    png_uint_32, int));
++#ifdef PNG_APNG_SUPPORTED
++typedef void (PNGAPI *png_progressive_frame_ptr) PNGARG((png_structp, 
++   png_uint_32));
++#endif
+ #endif
+ 
+ #if defined(PNG_READ_USER_TRANSFORM_SUPPORTED) || \
+@@ -1527,6 +1548,39 @@
+    png_uint_32 user_height_max PNG_DEPSTRUCT;
+ #endif
+ 
++#ifdef PNG_APNG_SUPPORTED
++   png_uint_32 apng_flags PNG_DEPSTRUCT;
++   png_uint_32 next_seq_num PNG_DEPSTRUCT;         /* next fcTL/fdAT chunk sequence number */
++   png_uint_32 first_frame_width PNG_DEPSTRUCT;
++   png_uint_32 first_frame_height PNG_DEPSTRUCT;
++
++#ifdef PNG_READ_APNG_SUPPORTED
++   png_uint_32 num_frames_read PNG_DEPSTRUCT;      /* incremented after all image data of */
++                                     /* a frame is read */
++#ifdef PNG_PROGRESSIVE_READ_SUPPORTED
++   png_progressive_frame_ptr frame_info_fn PNG_DEPSTRUCT; /* frame info read callback */
++   png_progressive_frame_ptr frame_end_fn PNG_DEPSTRUCT;  /* frame data read callback */
++#endif
++#endif
++
++#ifdef PNG_WRITE_APNG_SUPPORTED
++   png_uint_32 num_frames_to_write PNG_DEPSTRUCT;
++   png_uint_32 num_frames_written PNG_DEPSTRUCT;
++#endif
++
++/* For png_struct.apng_flags: */
++#define PNG_FIRST_FRAME_HIDDEN       0x0001
++
++/* dispose_op flags from inside fcTL */
++#define PNG_DISPOSE_OP_NONE        0x00
++#define PNG_DISPOSE_OP_BACKGROUND  0x01
++#define PNG_DISPOSE_OP_PREVIOUS    0x02
++
++/* blend_op flags from inside fcTL */
++#define PNG_BLEND_OP_SOURCE        0x00
++#define PNG_BLEND_OP_OVER          0x01
++#endif /* PNG_APNG_SUPPORTED */
++
+ /* New member added in libpng-1.0.25 and 1.2.17 */
+ #ifdef PNG_UNKNOWN_CHUNKS_SUPPORTED
+    /* Storage for unknown chunk that the library doesn't recognize. */
+@@ -1861,6 +1915,18 @@
+ extern PNG_EXPORT(void,png_write_image) PNGARG((png_structp png_ptr,
+    png_bytepp image));
+ 
++#ifdef PNG_WRITE_APNG_SUPPORTED
++extern PNG_EXPORT (void,png_write_frame_head) PNGARG((png_structp png_ptr,
++   png_infop png_info, png_bytepp row_pointers,
++   png_uint_32 width, png_uint_32 height,
++   png_uint_32 x_offset, png_uint_32 y_offset, 
++   png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op,
++   png_byte blend_op));
++
++extern PNG_EXPORT (void,png_write_frame_tail) PNGARG((png_structp png_ptr,
++   png_infop png_info));
++#endif
++   
+ /* Writes the end of the PNG file. */
+ extern PNG_EXPORT(void,png_write_end) PNGARG((png_structp png_ptr,
+    png_infop info_ptr));
+@@ -2114,6 +2180,11 @@
+    png_voidp progressive_ptr,
+    png_progressive_info_ptr info_fn, png_progressive_row_ptr row_fn,
+    png_progressive_end_ptr end_fn));
++#ifdef PNG_READ_APNG_SUPPORTED
++extern PNG_EXPORT(void,png_set_progressive_frame_fn) PNGARG((png_structp png_ptr,
++   png_progressive_frame_ptr frame_info_fn,
++   png_progressive_frame_ptr frame_end_fn));
++#endif
+ 
+ /* Returns the user pointer associated with the push read functions */
+ extern PNG_EXPORT(png_voidp,png_get_progressive_ptr)
+@@ -2554,6 +2625,59 @@
+ #endif
+ #endif /* PNG_sCAL_SUPPORTED || PNG_WRITE_sCAL_SUPPORTED */
+ 
++#ifdef PNG_APNG_SUPPORTED
++extern PNG_EXPORT(png_uint_32,png_get_acTL) PNGARG((png_structp png_ptr,
++   png_infop info_ptr, png_uint_32 *num_frames, png_uint_32 *num_plays));
++extern PNG_EXPORT(png_uint_32,png_set_acTL) PNGARG((png_structp png_ptr, 
++   png_infop info_ptr, png_uint_32 num_frames, png_uint_32 num_plays));
++extern PNG_EXPORT(png_uint_32,png_get_num_frames) PNGARG((png_structp png_ptr,
++   png_infop info_ptr));
++extern PNG_EXPORT(png_uint_32,png_get_num_plays) 
++   PNGARG((png_structp png_ptr, png_infop info_ptr));
++
++extern PNG_EXPORT(png_uint_32,png_get_next_frame_fcTL) 
++   PNGARG((png_structp png_ptr, png_infop info_ptr, png_uint_32 *width, 
++   png_uint_32 *height, png_uint_32 *x_offset, png_uint_32 *y_offset, 
++   png_uint_16 *delay_num, png_uint_16 *delay_den, png_byte *dispose_op,
++   png_byte *blend_op));
++extern PNG_EXPORT(png_uint_32,png_set_next_frame_fcTL) 
++   PNGARG((png_structp png_ptr, png_infop info_ptr, png_uint_32 width, 
++   png_uint_32 height, png_uint_32 x_offset, png_uint_32 y_offset, 
++   png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op,
++   png_byte blend_op));
++extern PNG_EXPORT(void,png_ensure_fcTL_is_valid)
++   PNGARG((png_structp png_ptr,
++   png_uint_32 width, png_uint_32 height,
++   png_uint_32 x_offset, png_uint_32 y_offset,
++   png_uint_16 delay_num, png_uint_16 delay_den,
++   png_byte dispose_op, png_byte blend_op));
++extern PNG_EXPORT(png_uint_32,png_get_next_frame_width)
++   PNGARG((png_structp png_ptr, png_infop info_ptr));
++extern PNG_EXPORT(png_uint_32,png_get_next_frame_height)
++   PNGARG((png_structp png_ptr, png_infop info_ptr));
++extern PNG_EXPORT(png_uint_32,png_get_next_frame_x_offset)
++   PNGARG((png_structp png_ptr, png_infop info_ptr));
++extern PNG_EXPORT(png_uint_32,png_get_next_frame_y_offset)
++   PNGARG((png_structp png_ptr, png_infop info_ptr));
++extern PNG_EXPORT(png_uint_16,png_get_next_frame_delay_num)
++   PNGARG((png_structp png_ptr, png_infop info_ptr));
++extern PNG_EXPORT(png_uint_16,png_get_next_frame_delay_den)
++   PNGARG((png_structp png_ptr, png_infop info_ptr));
++extern PNG_EXPORT(png_byte,png_get_next_frame_dispose_op)
++   PNGARG((png_structp png_ptr, png_infop info_ptr));
++extern PNG_EXPORT(png_byte,png_get_next_frame_blend_op)
++   PNGARG((png_structp png_ptr, png_infop info_ptr));
++extern PNG_EXPORT(png_byte,png_get_first_frame_is_hidden)
++   PNGARG((png_structp png_ptr, png_infop info_ptr));
++extern PNG_EXPORT(png_uint_32,png_set_first_frame_is_hidden)
++   PNGARG((png_structp png_ptr, png_infop info_ptr, png_byte is_hidden));
++#endif /* PNG_APNG_SUPPORTED */
++
++#ifdef PNG_READ_APNG_SUPPORTED
++extern PNG_EXPORT(void,png_read_frame_head) PNGARG((png_structp png_ptr,
++   png_infop info_ptr));
++#endif
++
+ #ifdef PNG_HANDLE_AS_UNKNOWN_SUPPORTED
+ /* Provide a list of chunks and how they are to be handled, if the built-in
+    handling or default unknown chunk handling is not desired.  Any chunks not
+@@ -2918,6 +3042,10 @@
+ #define PNG_BACKGROUND_IS_GRAY     0x800
+ #define PNG_HAVE_PNG_SIGNATURE    0x1000
+ #define PNG_HAVE_CHUNK_AFTER_IDAT 0x2000 /* Have another chunk after IDAT */
++#ifdef PNG_APNG_SUPPORTED
++#define PNG_HAVE_acTL             0x4000
++#define PNG_HAVE_fcTL             0x8000L
(1565 more lines skipped)

++++++ libpng-1.2.37.tar.bz2 -> libpng-1.2.44.tar.bz2
38556 lines of diff (skipped)

++++++ libpng.yaml
--- libpng.yaml
+++ libpng.yaml
@@ -1,6 +1,6 @@
 Name: libpng
 Summary: A library of functions for manipulating PNG image format files
-Version: 1.2.37
+Version: 1.2.44
 Release: 1
 Group: System/Libraries
 License: zlib
@@ -10,9 +10,8 @@
 Patches:
     - libpng-multilib.patch
     - libpng-pngconf.patch
-    - libpng-1.2.37-apng.patch
+    - libpng-1.2.44-apng.patch
     - libpng-header-fix.patch
-    - CVE-2010-0205.patch
 Description: |
     The libpng package contains a library of functions for creating and
     manipulating PNG (Portable Network Graphics) image format files.  PNG

++++++ deleted files:
--- CVE-2010-0205.patch
--- libpng-1.2.37-apng.patch



More information about the MeeGo-commits mailing list