[libpng17] Fixed a large number of instances where PNGCBAPI was omitted from

function definitions.
[libpng17] Added pngimage test program for png_read_png and png_write_png.

This is a work-in-progress; no tests are run automatically at present and
the program by virtue of exhaustively testing all the transforms is
very slow.
[libpng17] Updated documentation about sCAL_s support.
[libpng17] Imported from libpng-1.7.0beta30.tar
[libpng17] Bump version to 1.7.0beta31
[libpng17] Make png_read_png() and png_write_png() prototypes in png.h depend

upon PNG_READ_SUPPORTED and PNG_WRITE_SUPPORTED.
Removed dependence on !PNG_READ_EXPAND_SUPPORTED for calling
png_set_packing() in png_read_png().
[libpng17] Completed full working pngimage test program and added two test

scripts.  Fixed combination of ~alpha with shift. On read invert alpha,
processing occurred after shift processing, which causes the final values to be
outside the range that should be produced by the shift. Reversing the
order on read makes the two transforms work together correctly and mirrors
the order used on write.
[libpng17] Do not read invalid sBIT chunks. Previously libpng only checked sBIT

values on write, so a malicious PNG writer could therefore cause
the read code to return an invalid sBIT chunk, which might lead to
application errors or crashes.  Such chunks are now skipped (with
chunk_benign_error).
[libpng17] Fixed some typos in commentary of pngimage.c
[libpng17] Disabled pngimage tests temporarily.
[libpng17' Restored a line, "c = b;", that was inadvertently deleted from the

PAETH filtering code from libpng-1.7.0beta24/pngrutil.c and reenabled
the pngimage tests.
[libpng17] Deleted the other instance of "c = b;" which is the one that

triggered a scan-build warning in pngrutil.c.
[libpng17] Support builds with unsupported PNG_TRANSFORM_* values.  All of the

PNG_TRANSFORM_* values are always defined in png.h and, because they
are used for both read and write in some cases, it is not reliable
to #if out ones that are totally unsupported. This change adds error
detection in png_read_image() and png_write_image() to do a
png_app_error() if the app requests something that cannot be done
and it adds corresponding code to pngimage.c to handle such options
by not attempting to test them.
[libpng17] Imported from libpng-1.7.0beta31.tar
[libpng17] Bump version to 1.7.0beta32