cvs: gd(GD_2_0) /libgd NEWS gd_png.c /libgd/tests/png CMakeLists.txt bug00086.c

[email protected] ("Pierre-Alain Joye")
Newsgroups php.gd.cvs
Message-ID <cvspajoye1179412705@cvsserver>
pajoye		Thu May 17 14:38:25 2007 UTC

  Added files:                 (Branch: GD_2_0)
    /gd/libgd/tests/png	bug00086.c 

  Modified files:              
    /gd/libgd	NEWS gd_png.c 
    /gd/libgd/tests/png	CMakeLists.txt 
  Log:
  - #86, Possible infinite loop in libgd/gd_png.c
    (flaw reported by Xavier Roche)
  
  
http://cvs.php.net/viewvc.cgi/gd/libgd/NEWS?r1=1.4.2.16&r2=1.4.2.17&diff_format=u
Index: gd/libgd/NEWS
diff -u gd/libgd/NEWS:1.4.2.16 gd/libgd/NEWS:1.4.2.17
--- gd/libgd/NEWS:1.4.2.16	Sun May  6 20:21:22 2007
+++ gd/libgd/NEWS	Thu May 17 14:38:24 2007
@@ -19,6 +19,8 @@
 73, TTF usage doesn't work properly on Netware (Guenter Knauf, Scott MacVicar)
 74, gdImageArc CPU usage with large angles
 78, gdImageFilledRectangle regression fixed when used with reversed edges
+86, Possible infinite loop in libgd/gd_png.c, flaw found by Xavier Roche
+    (Pierre)
 
 GD 2.0.34 (2007-02-07)
  3, Initialize variables in tweenColorTest, fix cache
http://cvs.php.net/viewvc.cgi/gd/libgd/gd_png.c?r1=1.21.2.1&r2=1.21.2.2&diff_format=u
Index: gd/libgd/gd_png.c
diff -u gd/libgd/gd_png.c:1.21.2.1 gd/libgd/gd_png.c:1.21.2.2
--- gd/libgd/gd_png.c:1.21.2.1	Sun Apr  1 20:41:01 2007
+++ gd/libgd/gd_png.c	Thu May 17 14:38:24 2007
@@ -1,4 +1,4 @@
-/* $Id: gd_png.c,v 1.21.2.1 2007/04/01 20:41:01 pajoye Exp $ */
+/* $Id: gd_png.c,v 1.21.2.2 2007/05/17 14:38:24 pajoye Exp $ */
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
@@ -81,7 +81,11 @@
 static void
 gdPngReadData (png_structp png_ptr, png_bytep data, png_size_t length)
 {
-  gdGetBuf (data, length, (gdIOCtx *) png_get_io_ptr (png_ptr));
+  int check;
+  check = gdGetBuf (data, length, (gdIOCtx *) png_get_io_ptr (png_ptr));
+  if (check != length) {
+    png_error(png_ptr, "Read Error: truncated data");
+  }
 }
 
 static void
http://cvs.php.net/viewvc.cgi/gd/libgd/tests/png/CMakeLists.txt?r1=1.1&r2=1.1.2.1&diff_format=u
Index: gd/libgd/tests/png/CMakeLists.txt
diff -u gd/libgd/tests/png/CMakeLists.txt:1.1 gd/libgd/tests/png/CMakeLists.txt:1.1.2.1
--- gd/libgd/tests/png/CMakeLists.txt:1.1	Tue Jan 23 23:57:54 2007
+++ gd/libgd/tests/png/CMakeLists.txt	Thu May 17 14:38:24 2007
@@ -2,6 +2,7 @@
 SET(TESTS_FILES
 	bug00011
 	bug00033
+	bug00086
 )
 
 FOREACH(test_name ${TESTS_FILES})

http://cvs.php.net/viewvc.cgi/gd/libgd/tests/png/bug00086.c?view=markup&rev=1.1
Index: gd/libgd/tests/png/bug00086.c
+++ gd/libgd/tests/png/bug00086.c
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.