1941 Commits

Author SHA1 Message Date
John Bowler
829cba63d3 Fix undefined behavior in pngvalid.c
Undefined because (png_byte) << shift is undefined if it changes the signed bit
(because png_byte is promoted to int).  The libpng exported functions
png_get_uint_32 and png_get_uint_16 handle this.

Bug reported by David Drysdale as a result of reports from UBSAN in clang 3.8.

This changes pngvalid to use BE random numbers; this used to produce errors but
these should not be fixed as a result of the previous changes.

Signed-off-by: John Bowler <jbowler@acm.org>
2015-12-17 12:57:49 -08:00
John Bowler
b409572cec Merge branch 'libpng15' of ../../libpng into libpng15 2015-12-17 09:40:11 -08:00
Glenn Randers-Pehrson
94322f3f8f [libpng15] Imported from libpng-1.5.26.tar v1.5.26 libpng-1.5.26-signed 2015-12-17 08:11:20 -06:00
John Bowler
aff684567e pngvalid from libpng 1.7 with fixes
Signed-off-by: John Bowler <jbowler@acm.org>
2015-12-15 08:28:02 -08:00
Glenn Randers-Pehrson
8f1c1a6d8c [libpng15] Imported from libpng-1.5.26rc01.tar v1.5.26rc01 2015-12-13 21:44:19 -06:00
Glenn Randers-Pehrson
fd3cd9fad2 [libpng15] Update some last-changed dates 2015-12-13 18:36:30 -06:00
Glenn Randers-Pehrson
2921aa280f Merge branch 'libpng15-20151213-keyword' of git://github.com/jbowler/libpng-1 into libpng15 2015-12-13 18:20:11 -06:00
John Bowler
e40ac66f81 [libpng15] Do png_check_keyword in png_set_*() 2015-12-13 18:10:53 -06:00
Glenn Randers-Pehrson
a510a813ef [libpng15] Remove new redundant prototype for png_set_keyword() 2015-12-13 17:35:11 -06:00
Glenn Randers-Pehrson
ad5f16c406 [libpng15] Bump version to 1.5.26beta02 2015-12-13 16:19:49 -06:00
Glenn Randers-Pehrson
2b5be93866 [libpng15] Move png_check_keyword() from pngwutil.c to pngset.c 2015-12-13 16:18:58 -06:00
John Bowler
8d28ab2101 Move png_check_keyword to pngset.c
This is a backport of the libpng16 version with the warnings switched
off.

Signed-off-by: John Bowler <jbowler@acm.org>
2015-12-13 13:44:34 -08:00
Glenn Randers-Pehrson
29c1086ba3 [libpng15] Imported from libpng-1.5.26beta01.tar v1.5.26beta01 2015-12-11 10:20:41 -06:00
Glenn Randers-Pehrson
456d614959 [libpng15] Bump version to 1.5.26beta01 2015-12-09 09:42:49 -06:00
Glenn Randers-Pehrson
d9006f683c [libpng15] Fixed an out-of-range read in png_check_keyword() (Bug report
from Qixue Xiao).
2015-12-09 09:40:48 -06:00
Glenn Randers-Pehrson
93e111afc5 [libpng15] Imported from libpng-1.5.25.tar v1.5.25 libpng-1.5.25-signed 2015-12-02 22:30:30 -06:00
Glenn Randers-Pehrson
3a1a5256fa [libpng15] Imported from libpng-1.5.25rc01.tar v1.5.25rc01 2015-11-26 07:04:16 -06:00
Glenn Randers-Pehrson
b5da27d211 [libpng15] Imported from libpng-1.5.25beta03.tar v1.5.25beta03 2015-11-24 09:36:23 -06:00
Glenn Randers-Pehrson
11c2f47bd6 Merge branch 'libpng15-20151123' of git://github.com/jbowler/libpng-1 into libpng15 2015-11-24 09:34:59 -06:00
John Bowler
daf54fe4fc Test backport
Tests backported from the multi-version compatible ones in libpng 1.7

Signed-off-by: John Bowler <jbowler@acm.org>
2015-11-23 20:16:21 -08:00
Glenn Randers-Pehrson
17749bdd61 [libpng15] Imported from libpng-1.5.25beta02.tar v1.5.25beta02 2015-11-23 09:29:33 -06:00
Glenn Randers-Pehrson
3ccfba8c28 [lbpng15] Revert 12 -> 12U change in pngrutil.c 2015-11-22 22:59:16 -06:00
Glenn Randers-Pehrson
596f052d69 [libpng15] Fixed bug recently introduced in png_set_PLTE() that uses png_ptr
not info_ptr.
2015-11-22 20:47:45 -06:00
Glenn Randers-Pehrson
69ac844654 [libpng15] Bump version to 1.5.25beta02 2015-11-22 14:11:19 -06:00
Glenn Randers-Pehrson
635a8b9b84 [libpng15] Imported from libpng-1.5.25beta01.tar v1.5.25beta01 2015-11-22 14:08:45 -06:00
Glenn Randers-Pehrson
611e8de78c [libpng15] Use unsigned constants in buffer length comparisons 2015-11-21 14:33:31 -06:00
Glenn Randers-Pehrson
68a6e6755b [lbpng15] Rearrange terms in buffer length tests in pngrutil.c to
avoid potential overflow in calculations.
2015-11-19 09:12:43 -06:00
Glenn Randers-Pehrson
8738633bd6 [libpng15] Avoid potential pointer overflow in png_handle_iTXt(),
png_handle_zTXt(), png_handle_sPLT(), and png_handle_pCAL() (Bug report
by John Regehr).
2015-11-13 22:47:30 -06:00
Glenn Randers-Pehrson
b257d4a6a1 [libpng15] Bump version to 1.5.25beta01 2015-11-13 10:18:08 -06:00
Glenn Randers-Pehrson
df80d38897 [libpng15] Imported from libpng-1.5.24.tar v1.5.24 2015-11-12 07:13:10 -06:00
Glenn Randers-Pehrson
9b70e0332b [libpng15] Clean up coding style in png_handle_PLTE() 2015-11-05 11:17:54 -06:00
Glenn Randers-Pehrson
b6ec5eb74e [libpng15] Imported from libpng-1.5.24rc04.tar v1.5.24rc04 2015-11-05 06:59:22 -06:00
Glenn Randers-Pehrson
15117f202c [libpng15] Fixed new bug with CRC error after reading an over-length palette. 2015-11-04 23:46:24 -06:00
Glenn Randers-Pehrson
4b0a6350cd [libpng15] Imported from libpng-1.5.24rc02.tar v1.5.24rc02 2015-11-03 10:00:01 -06:00
Glenn Randers-Pehrson
e4a9c63445 [libpng15] Imported from libpng-1.5.24rc02.tar 2015-11-03 08:12:20 -06:00
Glenn Randers-Pehrson
06c1be4b28 [libpng15] Bump version to 1.5.24rc02 2015-11-03 07:51:53 -06:00
Glenn Randers-Pehrson
cd8a3ffeb1 [libpng15] Fixed some inconsequential cut-and-paste typos in
png_set_cHRM_XYZ_fixed().
2015-11-01 12:40:04 -06:00
Glenn Randers-Pehrson
9db953ad5b [libpng15] Imported from libpng-1.5.24rc01.tar v1.5.24rc01 2015-10-31 08:52:12 -05:00
Glenn Randers-Pehrson
91a73053b9 [libpng15] Update manual about handling over-length PLTE chunks. 2015-10-31 08:47:32 -05:00
Glenn Randers-Pehrson
820a090567 [libpng15] Silently truncate over-length PLTE chunk while reading. 2015-10-30 13:21:32 -05:00
Glenn Randers-Pehrson
20e0daa74a [libpng15] Update CHANGES and ANNOUNCE about rowbytes fix 2015-10-30 13:02:20 -05:00
John Bowler
8678f9c3f4 rowbytes check correction
The old code incorrectly calculated the output rowbytes when the
application decreased either the number of channels or the bit depth (or
both) in a user transform.  This was safe; libpng overallocated buffer
space (potentially by quite a lot; up to 4 times the amount required)
but, from 1.5.4 on, resulted in a png_error.

Signed-off-by: John Bowler <jbowler@acm.org>
2015-10-29 18:12:10 -07:00
Glenn Randers-Pehrson
3a990c93f4 [libng15] Prevent writing over-length PLTE chunk (Cosmin Truta). 2015-10-29 09:56:19 -05:00
Glenn Randers-Pehrson
39f8f0e6da [libpng15] Bump version to 1.5.24beta03 2015-10-14 22:14:22 -05:00
Glenn Randers-Pehrson
51148c5255 [libpng15] Imported from libpng-1.5.24beta02.tar v1.5.24beta02 2015-10-14 22:14:13 -05:00
Glenn Randers-Pehrson
5e51957594 [libpng15] Added sPLT support to pngtest.c 2015-10-11 11:31:44 -05:00
Glenn Randers-Pehrson
2cc28ebc00 [libpng15] Merged pngvalid.c with libpng16's pngvalid.c, again. 2015-10-03 18:07:03 -05:00
Glenn Randers-Pehrson
24e485baec [libpng15] Improve CHANGES and ANNOUNCE description of filler-byte fix. 2015-09-18 23:34:55 -05:00
Glenn Randers-Pehrson
01789a5e8e [libpng15] Fix "last changed" line for pngvalid.c 2015-09-18 22:01:55 -05:00
Glenn Randers-Pehrson
1f4508c7e2 [libpng15] Update CHANGES and ANNOUNCE per recent pull request. 2015-09-18 21:24:29 -05:00