1 /* 2 * COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: 3 * 4 * If you modify libpng you may insert additional notices immediately following 5 * this sentence. 6 * 7 * This code is released under the libpng license. 8 * 9 * libpng versions 1.2.6, August 15, 2004, through 1.6.16, December 22, 2014, are 10 * Copyright (c) 2004, 2006-2014 Glenn Randers-Pehrson, and are 11 * distributed according to the same disclaimer and license as libpng-1.2.5 12 * with the following individual added to the list of Contributing Authors: 13 * 14 * Cosmin Truta 15 * 16 * libpng versions 1.0.7, July 1, 2000, through 1.2.5, October 3, 2002, are 17 * Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are 18 * distributed according to the same disclaimer and license as libpng-1.0.6 19 * with the following individuals added to the list of Contributing Authors: 20 * 21 * Simon-Pierre Cadieux 22 * Eric S. Raymond 23 * Gilles Vollant 24 * 25 * and with the following additions to the disclaimer: 26 * 27 * There is no warranty against interference with your enjoyment of the 28 * library or against infringement. There is no warranty that our 29 * efforts or the library will fulfill any of your particular purposes 30 * or needs. This library is provided with all faults, and the entire 31 * risk of satisfactory quality, performance, accuracy, and effort is with 32 * the user. 33 * 34 * libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are 35 * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson, and are 36 * distributed according to the same disclaimer and license as libpng-0.96, 37 * with the following individuals added to the list of Contributing Authors: 38 * 39 * Tom Lane 40 * Glenn Randers-Pehrson 41 * Willem van Schaik 42 * 43 * libpng versions 0.89, June 1996, through 0.96, May 1997, are 44 * Copyright (c) 1996, 1997 Andreas Dilger 45 * Distributed according to the same disclaimer and license as libpng-0.88, 46 * with the following individuals added to the list of Contributing Authors: 47 * 48 * John Bowler 49 * Kevin Bracey 50 * Sam Bushell 51 * Magnus Holmgren 52 * Greg Roelofs 53 * Tom Tanner 54 * 55 * libpng versions 0.5, May 1995, through 0.88, January 1996, are 56 * Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc. 57 * 58 * For the purposes of this copyright and license, "Contributing Authors" 59 * is defined as the following set of individuals: 60 * 61 * Andreas Dilger 62 * Dave Martindale 63 * Guy Eric Schalnat 64 * Paul Schmidt 65 * Tim Wegner 66 * 67 * The PNG Reference Library is supplied "AS IS". The Contributing Authors 68 * and Group 42, Inc. disclaim all warranties, expressed or implied, 69 * including, without limitation, the warranties of merchantability and of 70 * fitness for any purpose. The Contributing Authors and Group 42, Inc. 71 * assume no liability for direct, indirect, incidental, special, exemplary, 72 * or consequential damages, which may result from the use of the PNG 73 * Reference Library, even if advised of the possibility of such damage. 74 * 75 * Permission is hereby granted to use, copy, modify, and distribute this 76 * source code, or portions hereof, for any purpose, without fee, subject 77 * to the following restrictions: 78 * 79 * 1. The origin of this source code must not be misrepresented. 80 * 81 * 2. Altered versions must be plainly marked as such and must not 82 * be misrepresented as being the original source. 83 * 84 * 3. This Copyright notice may not be removed or altered from 85 * any source or altered source distribution. 86 * 87 * The Contributing Authors and Group 42, Inc. specifically permit, without 88 * fee, and encourage the use of this source code as a component to 89 * supporting the PNG file format in commercial products. If you use this 90 * source code in a product, acknowledgment is not required but would be 91 * appreciated. 92 */ 93 94 /* 95 * A "png_get_copyright" function is available, for convenient use in "about" 96 * boxes and the like: 97 * 98 * printf("%s", png_get_copyright(NULL)); 99 * 100 * Also, the PNG logo (in PNG format, of course) is supplied in the 101 * files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31). 102 */ 103 104 /* 105 * Libpng is OSI Certified Open Source Software. OSI Certified is a 106 * certification mark of the Open Source Initiative. 107 */ 108 109 /* 110 * The contributing authors would like to thank all those who helped 111 * with testing, bug fixes, and patience. This wouldn't have been 112 * possible without all of you. 113 * 114 * Thanks to Frank J. T. Wojcik for helping with the documentation. 115 */ 116 117 /* 118 * Y2K compliance in libpng: 119 * ========================= 120 * 121 * December 22, 2014 122 * 123 * Since the PNG Development group is an ad-hoc body, we can't make 124 * an official declaration. 125 * 126 * This is your unofficial assurance that libpng from version 0.71 and 127 * upward through 1.6.16 are Y2K compliant. It is my belief that 128 * earlier versions were also Y2K compliant. 129 * 130 * Libpng only has two year fields. One is a 2-byte unsigned integer 131 * that will hold years up to 65535. The other, which is deprecated, 132 * holds the date in text format, and will hold years up to 9999. 133 * 134 * The integer is 135 * "png_uint_16 year" in png_time_struct. 136 * 137 * The string is 138 * "char time_buffer[29]" in png_struct. This is no longer used 139 * in libpng-1.6.x and will be removed from libpng-1.7.0. 140 * 141 * There are seven time-related functions: 142 * png.c: png_convert_to_rfc_1123_buffer() in png.c 143 * (formerly png_convert_to_rfc_1123() prior to libpng-1.5.x and 144 * png_convert_to_rfc_1152() in error prior to libpng-0.98) 145 * png_convert_from_struct_tm() in pngwrite.c, called in pngwrite.c 146 * png_convert_from_time_t() in pngwrite.c 147 * png_get_tIME() in pngget.c 148 * png_handle_tIME() in pngrutil.c, called in pngread.c 149 * png_set_tIME() in pngset.c 150 * png_write_tIME() in pngwutil.c, called in pngwrite.c 151 * 152 * All handle dates properly in a Y2K environment. The 153 * png_convert_from_time_t() function calls gmtime() to convert from system 154 * clock time, which returns (year - 1900), which we properly convert to 155 * the full 4-digit year. There is a possibility that libpng applications 156 * are not passing 4-digit years into the png_convert_to_rfc_1123_buffer() 157 * function, or that they are incorrectly passing only a 2-digit year 158 * instead of "year - 1900" into the png_convert_from_struct_tm() function, 159 * but this is not under our control. The libpng documentation has always 160 * stated that it works with 4-digit years, and the APIs have been 161 * documented as such. 162 * 163 * The tIME chunk itself is also Y2K compliant. It uses a 2-byte unsigned 164 * integer to hold the year, and can hold years as large as 65535. 165 * 166 * zlib, upon which libpng depends, is also Y2K compliant. It contains 167 * no date-related code. 168 * 169 * Glenn Randers-Pehrson 170 * libpng maintainer 171 * PNG Development Group 172 */ 173