Imported from libpng-1.0.6.tar
diff --git a/png.h b/png.h
index 2c969e2..5aaec69 100644
--- a/png.h
+++ b/png.h
@@ -1,7 +1,7 @@
 
 /* png.h - header file for PNG reference library
  *
- * libpng version 1.0.5s - February 18, 2000
+ * libpng version 1.0.6 - March 21, 2000
  * Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.
  * Copyright (c) 1996, 1997 Andreas Dilger
  * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson
@@ -9,19 +9,150 @@
  * Authors and maintainers:
  *  libpng versions 0.71, May 1995, through 0.89c, May 1996: Guy Schalnat
  *  libpng versions 0.90, December 1996, through 0.96, May 1997: Andreas Dilger
- *  libpng versions 0.97, January 1998, through 1.0.5s - February 18, 2000: Glenn
+ *  libpng versions 0.97, January 1998, through 1.0.6 - March 21, 2000: Glenn
  *  See also "Contributing Authors", below.
  *
+ * Note about libpng version numbers:
+ *
+ *    Due to various miscommunications, unforeseen code incompatibilities
+ *    and occasional factors outside the authors' control, version numbering
+ *    on the library has not always been consistent and straightforward.
+ *    The following table summarizes matters since version 0.89c, which was
+ *    the first widely used release:
+ *
+ *    source                   png.h    png.h   shared-lib
+ *    version                  string     int   version
+ *    -------                  ------   -----  ----------
+ *    0.89c ("1.0 beta 3")     0.89        89  1.0.89
+ *    0.90  ("1.0 beta 4")     0.90        90  0.90  [should have been 2.0.90]
+ *    0.95  ("1.0 beta 5")     0.95        95  0.95  [should have been 2.0.95]
+ *    0.96  ("1.0 beta 6")     0.96        96  0.96  [should have been 2.0.96]
+ *    0.97b ("1.00.97 beta 7") 1.00.97     97  1.0.1 [should have been 2.0.97]
+ *    0.97c                    0.97        97  2.0.97
+ *    0.98                     0.98        98  2.0.98
+ *    0.99                     0.99        98  2.0.99
+ *    0.99a-m                  0.99        99  2.0.99
+ *    1.00                     1.00       100  2.1.0 [100 should be 10000]
+ *    1.0.0                    1.0.0      100  2.1.0 [100 should be 10000]
+ *    1.0.1                    1.0.1    10001  2.1.0
+ *    1.0.1a-e                 1.0.1a-e 10002  2.1.0.1a-e
+ *    1.0.2                    1.0.2    10002  2.1.0.2
+ *    1.0.2a-b                 1.0.2a-b 10003  2.1.0.2a-b
+ *    1.0.3                    1.0.3    10003  2.1.0.3
+ *    1.0.3a-d                 1.0.3a-d 10004  2.1.0.3a-d
+ *    1.0.4                    1.0.4    10004  2.1.0.4
+ *    1.0.4a-f                 1.0.4a-f 10005  2.1.0.4a-f
+ *    1.0.5                    1.0.5    10005  2.1.0.5
+ *    1.0.5a-d                 1.0.5a-d 10006  2.1.0.5a-d
+ *    1.0.5e-r                 1.0.5e-r 10100  2.1.0.5e-r (not compatible)
+ *    1.0.5s-v                 1.0.5s-v 10006  2.1.0.5s-w (compatible)
+ *    1.0.6                    1.0.6    10006  2.1.0.6
+ *    1.3.0                    1.3.0    10300  3.1.3.0
+ *
+ *    Henceforth the source version will match the shared-library minor
+ *    and patch numbers; the shared-library major version number will be
+ *    used for changes in backward compatibility, as it is intended.  The
+ *    PNG_PNGLIB_VER macro, which is not used within libpng but is available
+ *    for applications, is an unsigned integer of the form xyyzz corresponding
+ *    to the source version x.y.z (leading zeros in y and z).  Internal
+ *    png-group beta versions (x.y.z[a-z]) will be given the next higher
+ *    number.
+ *
+ * See libpng.txt or libpng.3 for more information.  The PNG specification
+ * is available as RFC 2083 <ftp://ftp.uu.net/graphics/png/documents/>
+ * and as a W3C Recommendation <http://www.w3.org/TR/REC.png.html>
+ */
+
+/*
+ * COPYRIGHT NOTICE:
+ *
+ * Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.
+ * (libpng versions 0.5, May 1995, through 0.89c, May 1996)
+ * Copyright (c) 1996, 1997 Andreas Dilger
+ * (libpng versions 0.90, December 1996, through 0.96, May 1997)
+ * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson
+ * (libpng versions 0.97, January 1998, through 1.0.6, March 21, 2000)
+ *
+ * For the purposes of this copyright and license, "Contributing Authors"
+ * is defined as the following set of individuals:
+ *
+ *    John Bowler
+ *    Kevin Bracey
+ *    Sam Bushell
+ *    Andreas Dilger
+ *    Magnus Holmgren
+ *    Tom Lane
+ *    Dave Martindale
+ *    Glenn Randers-Pehrson
+ *    Eric S. Raymond
+ *    Greg Roelofs
+ *    Guy Eric Schalnat
+ *    Paul Schmidt
+ *    Tom Tanner
+ *    Willem van Schaik
+ *    Tim Wegner
+ *
+ * The PNG Reference Library is supplied "AS IS".  The Contributing Authors
+ * and Group 42, Inc. disclaim all warranties, expressed or implied,
+ * including, without limitation, the warranties of merchantability and of
+ * fitness for any purpose.  The Contributing Authors and Group 42, Inc.
+ * assume no liability for direct, indirect, incidental, special, exemplary,
+ * or consequential damages, which may result from the use of the PNG
+ * Reference Library, even if advised of the possibility of such damage.
+ *
+ * Permission is hereby granted to use, copy, modify, and distribute this
+ * source code, or portions hereof, for any purpose, without fee, subject
+ * to the following restrictions:
+ *
+ * 1. The origin of this source code must not be misrepresented.
+ *
+ * 2. Altered versions must be plainly marked as such and must not
+ *    be misrepresented as being the original source.
+ *
+ * 3. This Copyright notice may not be removed or altered from any
+ *    source or altered source distribution.
+ *
+ * The Contributing Authors and Group 42, Inc. specifically permit, without
+ * fee, and encourage the use of this source code as a component to
+ * supporting the PNG file format in commercial products.  If you use this
+ * source code in a product, acknowledgment is not required but would be
+ * appreciated.
+ */
+
+/*
+ * A "png_get_copyright" function is available, for convenient use in "about"
+ * boxes and the like:
+ *
+ * printf("%s",png_get_copyright(NULL));
+ *
+ * Also, the PNG logo (in PNG format, of course) is supplied in the
+ * file "pngnow.png".
+ */
+
+/*
+ * Libpng is OSI Certified Open Source Software.  OSI Certified is a
+ * certification mark of the Open Source Initiative.
+ */
+
+/*
+ * The contributing authors would like to thank all those who helped
+ * with testing, bug fixes, and patience.  This wouldn't have been
+ * possible without all of you.
+ *
+ * Thanks to Frank J. T. Wojcik for helping with the documentation.
+ */
+
+/*
  * Y2K compliance in libpng:
  * =========================
  *
- *    February 18, 2000
+ *    March 21, 2000
  *
  *    Since the PNG Development group is an ad-hoc body, we can't make
  *    an official declaration.
  *
  *    This is your unofficial assurance that libpng from version 0.71 and
- *    upward through 1.0.5s are Y2K compliant.  It is my belief that earlier
+ *    upward through 1.0.6 are Y2K compliant.  It is my belief that earlier
  *    versions were also Y2K compliant.
  *
  *    Libpng only has three year fields.  One is a 2-byte unsigned integer
@@ -65,137 +196,6 @@
  *       Glenn Randers-Pehrson
  *       libpng maintainer
  *       PNG Development Group
- *
- * Note about libpng version numbers:
- *
- *    Due to various miscommunications, unforeseen code incompatibilities
- *    and occasional factors outside the authors' control, version numbering
- *    on the library has not always been consistent and straightforward.
- *    The following table summarizes matters since version 0.89c, which was
- *    the first widely used release:
- *
- *    source                   png.h    png.h   shared-lib
- *    version                  string     int   version
- *    -------                  ------   -----  ----------
- *    0.89c ("1.0 beta 3")     0.89        89  1.0.89
- *    0.90  ("1.0 beta 4")     0.90        90  0.90  [should have been 2.0.90]
- *    0.95  ("1.0 beta 5")     0.95        95  0.95  [should have been 2.0.95]
- *    0.96  ("1.0 beta 6")     0.96        96  0.96  [should have been 2.0.96]
- *    0.97b ("1.00.97 beta 7") 1.00.97     97  1.0.1 [should have been 2.0.97]
- *    0.97c                    0.97        97  2.0.97
- *    0.98                     0.98        98  2.0.98
- *    0.99                     0.99        98  2.0.99
- *    0.99a-m                  0.99        99  2.0.99
- *    1.00                     1.00       100  2.1.0 [100 should be 10000]
- *    1.0.0                    1.0.0      100  2.1.0 [100 should be 10000]
- *    1.0.1                    1.0.1    10001  2.1.0
- *    1.0.1a-e                 1.0.1a-e 10002  2.1.0.1a-e
- *    1.0.2                    1.0.2    10002  2.1.0.2
- *    1.0.2a-b                 1.0.2a-b 10003  2.1.0.2a-b
- *    1.0.3                    1.0.3    10003  2.1.0.3
- *    1.0.3a-d                 1.0.3a-d 10004  2.1.0.3a-d
- *    1.0.4                    1.0.4    10004  2.1.0.4
- *    1.0.4a-f                 1.0.4a-f 10005  2.1.0.4a-f
- *    1.0.5                    1.0.5    10005  2.1.0.5
- *    1.0.5a-d                 1.0.5a-d 10006  2.1.0.5a-d
- *    1.0.5e-r                 1.0.5e-r 10100  2.1.0.5e-r (not compatible)
- *    1.0.5s                   1.0.5s   10006  2.1.0.5s   (compatible)
- *    1.3.0                    1.3.0    10300  3.1.3.0
- *
- *    Henceforth the source version will match the shared-library minor
- *    and patch numbers; the shared-library major version number will be
- *    used for changes in backward compatibility, as it is intended.  The
- *    PNG_PNGLIB_VER macro, which is not used within libpng but is available
- *    for applications, is an unsigned integer of the form xyyzz corresponding
- *    to the source version x.y.z (leading zeros in y and z).  Internal
- *    png-group beta versions (x.y.z[a-z]) will be given the next higher
- *    number.
- *
- * See libpng.txt or libpng.3 for more information.  The PNG specification
- * is available as RFC 2083 <ftp://ftp.uu.net/graphics/png/documents/>
- * and as a W3C Recommendation <http://www.w3.org/TR/REC.png.html>
- */
-
-/*
- * COPYRIGHT NOTICE:
- *
- * Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.
- * (libpng versions 0.5, May 1995, through 0.89c, May 1996)
- * Copyright (c) 1996, 1997 Andreas Dilger
- * (libpng versions 0.90, December 1996, through 0.96, May 1997)
- * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson
- * (libpng versions 0.97, January 1998, through 1.0.5s, February 18, 2000)
- *
- * For the purposes of this copyright and license, "Contributing Authors"
- * is defined as the following set of individuals:
- *
- *    John Bowler
- *    Kevin Bracey
- *    Sam Bushell
- *    Andreas Dilger
- *    Magnus Holmgren
- *    Tom Lane
- *    Dave Martindale
- *    Glenn Randers-Pehrson
- *    Eric S. Raymond
- *    Greg Roelofs
- *    Guy Eric Schalnat
- *    Paul Schmidt
- *    Tom Tanner
- *    Willem van Schaik
- *    Tim Wegner
- *
- * The PNG Reference Library is supplied "AS IS".  The Contributing Authors
- * and Group 42, Inc. disclaim all warranties, expressed or implied,
- * including, without limitation, the warranties of merchantability and of
- * fitness for any purpose.  The Contributing Authors and Group 42, Inc.
- * assume no liability for direct, indirect, incidental, special, exemplary,
- * or consequential damages, which may result from the use of the PNG
- * Reference Library, even if advised of the possibility of such damage.
- *
- * Permission is hereby granted to use, copy, modify, and distribute this
- * source code, or portions hereof, for any purpose, without fee, subject
- * to the following restrictions:
- *
- * 1. The origin of this source code must not be
- *     misrepresented.
- *
- * 2. Altered versions must be plainly marked as such
- *    and must not be misrepresented as being the
- *    original source.
- *
- * 3. This Copyright notice may not be removed or
- *    altered from any source or altered source
- *    distribution.
- *
- * The Contributing Authors and Group 42, Inc. specifically permit, without
- * fee, and encourage the use of this source code as a component to
- * supporting the PNG file format in commercial products.  If you use this
- * source code in a product, acknowledgment is not required but would be
- * appreciated.
- */
-
-/*
- * A "png_get_copyright" function is available, for convenient use in "about"
- * boxes and the like:
- *
- * printf("%s",png_get_copyright(NULL));
- *
- * Also, the PNG logo (in PNG format, of course) is supplied in the
- * file "pngnow.png".
- */
-
-/*
- * Libpng is OSI Certified Open Source Software.  OSI Certified is a
- * certification mark of the Open Source Initiative.
- */
-
-/*
- * The contributing authors would like to thank all those who helped
- * with testing, bug fixes, and patience.  This wouldn't have been
- * possible without all of you.
- *
- * Thanks to Frank J. T. Wojcik for helping with the documentation.
  */
 
 #ifndef _PNG_H
@@ -230,7 +230,7 @@
  */
 
 /* Version information for png.h - this should match the version in png.c */
-#define PNG_LIBPNG_VER_STRING "1.0.5s"
+#define PNG_LIBPNG_VER_STRING "1.0.6"
 
 /* Careful here.  At one time, Guy wanted to use 082, but that would be octal.
  * We must not include leading zeros.
@@ -310,26 +310,26 @@
  * The following two structures are used for the in-core representation
  * of sPLT chunks.
  */
-typedef struct png_spalette_entry_struct
+typedef struct png_sPLT_entry_struct
 {
    png_uint_16 red;
    png_uint_16 green;
    png_uint_16 blue;
    png_uint_16 alpha;
    png_uint_16 frequency;
-} png_spalette_entry;
-typedef png_spalette_entry FAR * png_spalette_entryp;
-typedef png_spalette_entry FAR * FAR * png_spalette_entrypp;
+} png_sPLT_entry;
+typedef png_sPLT_entry FAR * png_sPLT_entryp;
+typedef png_sPLT_entry FAR * FAR * png_sPLT_entrypp;
 
-typedef struct png_spalette_struct
+typedef struct png_sPLT_struct
 {
    png_charp name;                /* palette name */
    png_byte depth;                /* depth of palette samples */
-   png_spalette_entryp entries;        /* palette entries */
+   png_sPLT_entryp entries;        /* palette entries */
    png_int_32 nentries;                /* number of palette entries */
-} png_spalette;
-typedef png_spalette FAR * png_spalette_p;
-typedef png_spalette FAR * FAR * png_spalette_pp;
+} png_sPLT_t;
+typedef png_sPLT_t FAR * png_sPLT_tp;
+typedef png_sPLT_t FAR * FAR * png_sPLT_tpp;
 
 #ifdef PNG_TEXT_SUPPORTED
 /* png_text holds the contents of a text/ztxt/itxt chunk in a PNG file,
@@ -635,7 +635,7 @@
 
 #if defined(PNG_sPLT_SUPPORTED)
    /* data on sPLT chunks (there may be more than one). */
-   png_spalette_p splt_palettes;
+   png_sPLT_tp splt_palettes;
    png_uint_32 splt_palettes_num;
 #endif
 
@@ -1039,9 +1039,9 @@
 
 #if defined(PNG_READ_RGB_TO_GRAY_SUPPORTED)
    png_byte rgb_to_gray_status;
-   png_byte rgb_to_gray_red_coeff;
-   png_byte rgb_to_gray_green_coeff;
-   png_byte rgb_to_gray_blue_coeff;
+   png_uint_16 rgb_to_gray_red_coeff;
+   png_uint_16 rgb_to_gray_green_coeff;
+   png_uint_16 rgb_to_gray_blue_coeff;
 #endif
 
 #if defined(PNG_READ_EMPTY_PLTE_SUPPORTED) || \
@@ -1056,9 +1056,9 @@
 };
 
 /* This prevents a compiler error in png_get_copyright() in png.c if png.c
-and png.h are both at * version 1.0.5s
+and png.h are both at * version 1.0.6
  */
-typedef png_structp version_1_0_5s;
+typedef png_structp version_1_0_6;
 
 typedef png_struct FAR * FAR * png_structpp;
 
@@ -1179,6 +1179,8 @@
 extern PNG_EXPORT(void,png_set_rgb_to_gray) PNGARG((png_structp png_ptr,
    int error_action, double red, double green ));
 #endif
+extern PNG_EXPORT(void,png_set_rgb_to_gray_fixed) PNGARG((png_structp png_ptr,
+   int error_action, png_fixed_point red, png_fixed_point green ));
 extern PNG_EXPORT(png_byte,png_get_rgb_to_gray_status) PNGARG((png_structp
    png_ptr));
 #endif
@@ -1887,12 +1889,12 @@
 
 #if defined(PNG_READ_sPLT_SUPPORTED)
 extern PNG_EXPORT(png_uint_32,png_get_sPLT) PNGARG((png_structp png_ptr,
-   png_infop info_ptr, png_spalette_pp entries));
+   png_infop info_ptr, png_sPLT_tpp entries));
 #endif
 
 #if defined(PNG_sPLT_SUPPORTED)
 extern PNG_EXPORT(void,png_set_sPLT) PNGARG((png_structp png_ptr,
-   png_infop info_ptr, png_spalette_p entries, int nentries));
+   png_infop info_ptr, png_sPLT_tp entries, int nentries));
 #endif
 
 #if defined(PNG_TEXT_SUPPORTED)
@@ -2029,7 +2031,7 @@
 extern PNG_EXPORT(png_charp,png_get_libpng_ver) PNGARG((png_structp png_ptr));
 
 #define PNG_HEADER_VERSION_STRING \
-   " libpng version 1.0.5s - February 18, 2000 (header)\n"
+   " libpng version 1.0.6 - March 21, 2000 (header)\n"
 
 #ifdef PNG_READ_COMPOSITE_NODIV_SUPPORTED
 /* With these routines we avoid an integer divide, which will be slower on
@@ -2083,7 +2085,6 @@
 /* Various modes of operation.  Note that after an init, mode is set to
  * zero automatically when the structure is created.
  */
-#define PNG_BEFORE_IHDR             0x00
 #define PNG_HAVE_IHDR               0x01
 #define PNG_HAVE_PLTE               0x02
 #define PNG_HAVE_IDAT               0x04
@@ -2404,7 +2405,7 @@
 
 #if defined(PNG_WRITE_sPLT_SUPPORTED)
 PNG_EXTERN void png_write_sPLT PNGARG((png_structp png_ptr,
-   png_spalette_p palette));
+   png_sPLT_tp palette));
 #endif
 
 #if defined(PNG_WRITE_tRNS_SUPPORTED)