Commit Graph

51 Commits

Author SHA1 Message Date
Glenn Randers-Pehrson
9fcb846402 [libpng16] Imported from libpng-1.6.31.tar 2017-07-27 05:27:17 -05:00
John Bowler
72d07d3202 [libpng16] Removed one of the GCC-7.1.0 'strict-overflow' warnings that
result when integers appear on both sides of a compare.  Worked around the
  others by forcing the strict-overflow setting in the relevant functions to
  a level where they are not reported.
Changed "FALL THROUGH" comments to "FALLTHROUGH" because GCC doesn't like
  the space.
Worked around some C-style casts from (void*) because g++ 5.4.0 objects
  to them.
Increased the buffer size for 'sprint' to pass the gcc 7.1.0 'sprint
  overflow' check that is on by default with -Wall -Wextra.
2017-07-11 08:47:05 -05:00
Glenn Randers-Pehrson
0c440812db [libpng16] Imported from libpng-1.6.26.tar 2016-10-19 19:11:38 -05:00
Glenn Randers-Pehrson
90ea4af4a1 [libpng16] Update CHANGES and ANNOUNCE 2016-09-01 17:28:08 -05:00
John Bowler
f0b453bc3e [libpng16] pngfix zero-length IDAT fix
When an input file contains a zero length IDAT and pngfix is not applying the
IDAT rechunking (--max) option pngfix will go into a loop writing the zero
length IDAT for ever.

This is a fairly minor issue for interactive use; zero length IDAT is very rare,
the problem is obvious (pngfix hangs) and the fix (use --max, or --max=4096
etc), while not obvious, is easy.

For non-interactive use, e.g. trying to automatically repair a PNG that cannot
be read by libpng, there are security consequences:

1) pngfix hangs.  This may permit a DoS attack.
2) When the --out option is used pngfix will just keep writing.  This is a very
likely DoS scenario.

Signed-off-by: John Bowler <jbowler@acm.org>
2016-09-01 07:22:40 -07:00
Glenn Randers-Pehrson
95d2726ecc [libpng16] Update change dates in pngvalid.c and pngfix.c 2016-01-18 09:24:23 -06:00
Glenn Randers-Pehrson
5031c77d85 [libpng16] Bump version to 1.6.22beta01 2016-01-16 08:00:09 -06:00
Glenn Randers-Pehrson
fc0786a442 [libpng16] Imported from libpng-1.6.21.tar 2016-01-15 13:51:06 -06:00
Glenn Randers-Pehrson
ecc022ee5f [libpng16] Bump version to libpng-1.6.21rc02.tar 2016-01-06 13:26:32 -06:00
Glenn Randers-Pehrson
0de0101fdd [libpng16] Bump version to 1.6.21beta01 2015-12-08 22:19:15 -06:00
Glenn Randers-Pehrson
5b6a6f914b [libpng16] Imported from libpng-1.6.20.tar 2015-12-02 22:30:37 -06:00
Glenn Randers-Pehrson
87049cbf84 [libpng16] Update CHANGES, ANNOUNCE, minor editing of contrib/*/*.c 2015-11-25 15:55:01 -06:00
John Bowler
f5778c8fbb Fix error in handling of bad zlib CMINFO field
Signed-off-by: John Bowler <jbowler@acm.org>
2015-11-25 12:59:42 -08:00
John Bowler
c3e7e7d715 [libpng16] tests backported from libpng 1.7
This updates libpng16 with all the test changes from libpng17,
including changes to pngvalid.c to ensure that the original,
distributed, version of contrib/visupng/cexcept.h can be used.

pngvalid contains the correction to the use of SAVE/STORE_
UNKNOWN_CHUNKS; a bug revealed by changes in libpng 1.7.  More
tests contain the --strict option to detect warnings and the
pngvalid-standard test has been corrected so that it does not
turn on progresive-read (there is a separate test which does
that.)

Some signed/unsigned fixes have been made.

Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-15 15:38:52 -07:00
Glenn Randers-Pehrson
8b83ff3704 [libpng16] Change "n bit" to "n-bit" in comments. 2015-08-13 20:57:18 -05:00
Glenn Randers-Pehrson
e6172809bd [libpng16] Imported from libpng-1.6.18.tar 2015-07-22 22:40:52 -05:00
Glenn Randers-Pehrson
b26b51d154 [libpng16] Quieted Coverity issues in pngfix.c, png-fix-itxt.c, pngvalid.c,
pngstest.c, and pngimage.c. Most seem harmless, but png-fix-itxt
would only work with iTXt chunks with length 255 or less.
2015-06-03 16:07:01 -05:00
Glenn Randers-Pehrson
b66de48b3b [libpng16] Changed png_voidcast(), etc., to voidcast(), etc., in
contrib/tools/pngfix.c to avoid confusion with the libpng private macros.
2015-05-30 22:57:33 -05:00
Glenn Randers-Pehrson
218a6fe9e5 [libpng16] Bump version to 1.6.18beta01 2015-03-26 08:55:25 -05:00
Glenn Randers-Pehrson
c98f7fb4e3 [libpng16] Imported from libpng-1.6.17.tar 2015-03-26 08:11:12 -05:00
Glenn Randers-Pehrson
bc27b2f432 [libpng16] Imported from libpng-1.6.17rc02.tar 2015-03-09 09:20:46 -05:00
Glenn Randers-Pehrson
494e75ac83 [libpng16] Fixed some typos in the pngfix usage message. 2015-02-26 10:39:13 -06:00
Glenn Randers-Pehrson
018b4fccb9 [libpng16] Happy New Year! Update copyright year. 2014-12-31 18:45:23 -06:00
John Bowler
6a6eb354ff [libpng16] Removed user limits from pngfix. Also pass NULL pointers to
png_read_row to skip the unnecessary row de-interlace stuff.
2014-12-24 18:54:08 -06:00
Glenn Randers-Pehrson
f43b5e3709 [libpng16] Imported from libpng-1.6.16beta03.tar 2014-12-20 19:21:32 -06:00
Glenn Randers-Pehrson
f1b547a509 [libpng16] Use png_get_libpng_ver(NULL), not PNG_LIBPNG_VER_STRING 2014-11-04 23:33:46 -06:00
Glenn Randers-Pehrson
edb772fd6d [libpng16] Imported from libpng-1.6.14.tar 2014-10-22 19:32:52 -05:00
Glenn Randers-Pehrson
0df3198719 [libpng16] Imported from libpng-1.6.14beta01.tar 2014-09-14 14:23:32 -05:00
Glenn Randers-Pehrson
3a05d2df0f [libpng16] Add "#include <setjmp.h>" to contrib/tools/pngfix.c (John Bowler) 2014-09-11 07:39:24 -05:00
Glenn Randers-Pehrson
de5e34f3ce [libpng16] Add #include <setjmp.h> to contrib/tools/pngfix.c to allow "make" to
complete without setjmp support (bug report by Claudio Fontana)
2014-09-10 21:34:34 -05:00
Glenn Randers-Pehrson
0a3c788b51 [libpng16] Don't build contrib/tools/pngfix.c without setjmp support. 2014-09-10 17:27:53 -05:00
Glenn Randers-Pehrson
ee6050ecb4 [libpng16] Imported from libpng-1.6.11rc02.tar 2014-06-03 22:02:34 -05:00
Glenn Randers-Pehrson
4df37bfa4f [libpng16] Imported from libpng-1.6.10.tar 2014-03-06 12:49:17 -06:00
Glenn Randers-Pehrson
9eec159ab0 [libpng16] Imported from libpng-1.6.10beta01.tar 2014-02-09 13:00:23 -06:00
John Bowler
414d7b5f7d [libpng16] Backport recent changes from libpng-1.7.0beta30 and beta31. 2014-02-06 11:39:25 -06:00
Glenn Randers-Pehrson
3e753eb8b2 [libpng16] Imported from libpng-1.6.9.tar 2014-02-05 22:33:56 -06:00
Glenn Randers-Pehrson
95a197397f [libpng16] Updated copyright year in recently-changed files. 2013-12-31 21:10:13 -06:00
Glenn Randers-Pehrson
e51ba2eff4 [libpng16] Removed #error macro from contrib/tools/pngfix.c (Thomas Klausner). 2013-12-27 20:22:24 -06:00
Glenn Randers-Pehrson
be3977de2c [libpng16] Imported from libpng-1.6.8.tar 2013-12-19 09:11:01 -06:00
John Bowler
81dfd007b2 [libpng16] Tidied up pngfix inits and fixed non-write pngtest. 2013-12-01 15:20:15 -06:00
Glenn Randers-Pehrson
27ae9362d8 [libpng16] Added another "assert()" in pngfix.c 2013-11-23 12:42:43 -06:00
Glenn Randers-Pehrson
88507b4ef9 [libpng16] Avoid a clang scanner warning in pngfix.c 2013-11-23 12:26:00 -06:00
John Bowler
aaf1bb1ae1 [libpng16] Updated "last changed" dates 2013-11-22 15:40:52 -06:00
Glenn Randers-Pehrson
b5596712fc [libpng16] Update contrib/tools/pngfix.c 2013-11-22 15:26:22 -06:00
John Bowler
08b0620202 [libpng16] Fixed #include in filter_neon_intrinsics.c and ctype macros. The
ctype char checking macros take an unsigned char argument, not a signed char.
2013-11-04 13:44:37 -06:00
John Bowler
5b1df53a82 [libpng16] Cleaned up (char*) casts of zlib messages. The latest version of
the Intel C compiler complains about casting a string literal as (char*), so
copied the treatment of z_const from the library code into pngfix.c
2013-10-04 20:13:17 -05:00
Glenn Randers-Pehrson
847e9efb66 [libpng16] Imported from libpng-1.6.3.tar 2013-07-17 19:13:23 -05:00
John Bowler
b4ec1f8451 [libpng16] Unified pngfix.c source with libpng17. 2013-07-02 23:47:57 -05:00
John Bowler
f5f1206778 [libpng16] Fixed undefined behavior in contrib/tools/pngfix.c and added new
strip option. pngfix relied on undefined behavior and even a simple change from
gcc to g++ caused it to fail.  The new strip option 'unsafe' has been
implemented and is the default if --max is given.  Option names have
been clarified, with --strip=transform now stripping the bKGD chunk,
which was stripped previously with --strip=unused.
Added all documented chunk types to pngpriv.h
2013-07-02 23:18:49 -05:00
Glenn Randers-Pehrson
573c9d434f [libpng16] Change "png-fix-too-far-back" to "pngfix" inside pngfix.c
for error messages, etc.
2013-06-27 21:21:26 -05:00