2012-09-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff 4.0.3 released.

2012-09-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* Makefile.am: Update to Automake 1.12.4

2012-08-19  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* Makefile.in: Update to Automake 1.12.3

	* libtiff{tiff.h, tif_print.c, tif_dirinfo.c, tif_dirread.c}: Add
	some TIFF/FX support in libtiff.  Add the tag definitions to
	tiff.h.  Add the related TIFF field definitions to tif_dirinfo.c,
	and also fixes an error in a comment.  Adds the photometric values
	to tif_print.c, and fixes a bug.  These changes are by Steve
	Underwood.

2012-08-13  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_write.c: Fix bug rewriting image tiles in a
	compressed file: http://trac.osgeo.org/gdal/ticket/4771

2012-08-02  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_dirread.c: report error in case of mismatch value 
	counts for tags (ie. DotRange).

2012-07-26  Tom Lane  <tgl@sss.pgh.pa.us>

	* libtiff/{tiffio.h, tif_dirinfo.c, libtiff.def}: Add six new
 	functions TIFFFieldTag(), TIFFFieldName(), TIFFFieldDataType(),
	TIFFFieldPassCount(), TIFFFieldReadCount(), TIFFFieldWriteCount()
	as external accessors for the opaque type TIFFField.

	* tools/tiffset.c: Make tiffset use the above functions instead of
	relying on library private headers.

2012-07-19  Tom Lane  <tgl@sss.pgh.pa.us>

	* tools/tiff2pdf.c: Fix two places where t2p_error didn't get set
	after a malloc failure.  No crash risk AFAICS, but the program
	might not report exit code 1 as desired.  h/t mancha@mac.hush.com

2012-07-18  Tom Lane  <tgl@sss.pgh.pa.us>

	* tools/tiff2pdf.c: Fail when TIFFSetDirectory() fails.  This
	prevents core dumps or perhaps even arbitrary code execution when
	processing a corrupt input file (CVE-2012-3401).

2012-07-06  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* test/raw_decode.c (main): Test fixes to work with IJG JPEG 7+.
	IJG JPEG 7+ uses a different upsampling algorithm which produces
	different numeric results.

	* libtiff/tif_jpeg.c (JPEGPreDecode): Patch from Even Rouault to
	work with IJG JPEG 7+.

2012-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* test/raw_decode.c: Add changes so that test can run with build
	directory outside of source directory.

2012-07-02  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_jpeg.c: Fix handling when writing RGBA jpeg compressed
	imagery (http://trac.osgeo.org/gdal/ticket/4732)

2012-06-20  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_fax3.c: fix memory initialization of runs, only
	partly done.

	* libtiff/tif_pixarlog.c: Make sure tbuf is large enough for one
	full "stride" past the end.

2012-06-19  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_packbits.c: fix read past end of data buffer. 

2012-06-15  Frank Warmerdam  <warmerdam@google.com>

	*  libtiff 4.0.2 released.

	* tools/tif2pdf.c, tools/tifdump.c: avoid unitialized variable
	warnings with clang.

2012-06-15  Tom Lane  <tgl@sss.pgh.pa.us>

	* tools/tiff2pdf.c: Defend against integer overflows while
	calculating required buffer sizes (CVE-2012-2113).

2012-06-12  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_print.c: Be careful about printing corrupt inknames.

	* libtiff/tif_fax3.c: Ensure runs array is initialized to zeros.

2012-06-07  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_print.c: avoid pretty printing other fields when
	we don't have the proper amount and type of data or if the field
	is actually autodefined.

2012-06-05  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_tile.c, libtiff/tif_strip.c: Ensure that illegal
	ycbcrsubsampling values result in a runtime error, not just an
	assertion.

	* tests/custom_dir.c: Add testing of EXIF and custom directory
	reading and writing.

	* libtiff/tif_dir.c, libtiff/tiffio.h: Add TIFFCreateCustomDirectory()
	and TIFFCreateEXIFDirectory() functions.

	* libtiff/tif_dir.c, tif_print.c : Remove FIELD_CUSTOM handling for
	PAGENUMBER, HALFTONEHINTS, and YCBCRSUBSAMPLING.  Implement DOTRANGE
	differently.  This is to avoid using special TIFFGetField/TIFFSetField 
	rules for these fields in non-image directories (like EXIF).

2012-06-04  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_jpeg.c: Remove code for fixing up h_sampling and v_sampling
	in JPEGPreDecode().  If a fixup will be done it needs to be done sooner
	in JPEGFixupTagsSubsampling() or else buffer sized may be wrong.

2012-06-01  Frank Warmerdam  <warmerdam@google.com>

	* tools/tiffinfo.c: Do not try to read image data in EXIF directories.

	* libtiff/tif_getimage.c: added support for _SEPARATED CMYK images.
	http://bugzilla.maptools.org/show_bug.cgi?id=2379

	* libtiff/tif_unix.c: use strerror() to return a more specific error message
	on failed open.
	http://bugzilla.maptools.org/show_bug.cgi?id=2341

	* libtiff/tif_jpeg.c: Fix JPEGDecodeRaw() bugs.
	http://bugzilla.maptools.org/show_bug.cgi?id=2386

	* tests/decode_raw.c, tests/images/quad-tile.jpg.tiff: add limited support
	for testing jpeg in tiff image decoding including the "raw" decode interface.

2012-05-31  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_jpeg.c: avoid overrunning the end of the output buffer in
	JPEGDecodeRaw() - mostly likely to occur when there is confusion about
	sampling values.

	* libtiff/tif_read.c: Make sure tif_rawdatasize is cleared when tif_rawdata is freed.

	* libtiff/tif_getimage.c: Add support for greyscale+alpha c/o Jérémie Laval.
	http://bugzilla.maptools.org/show_bug.cgi?id=2398

2012-05-29  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_dir.c: avoid using specific set/get logic to process fields in custom directories,
	like EXIF directories.  This fixes problems like a tag "320" existing in a custom directory getting
	processed as if it were a colormap when it isn't really.  Damn the wide variety of argument formulations
	to get/set functions for different tags!

	* libtiff/tif_dir.c: Ensure that we keep track of when tif_rawdata
	is a pointer into an mmap()ed file via TIFF_BUFFERMMAP flag.

2012-05-24  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_pixarlog.c: Allocate working buffer one word larger since we "forward
	accumulate" and overwrite the end by one word in at least some cases.

2012-05-23  Frank Warmerdam  <warmerdam@google.com>

	* libtiff/tif_pixarlog.c: avoid accessing out of the lookup arrays for out of range inputs.

	* tools/tiffinfo.c: initialize h=0 to avoid undefined variable for degenerate files.

	* libtiff/tif_ojpeg.c: if OJPEGWriteHeader() fails once do not bother trying again on
	the same image.

	* libtiff/tif_ojpeg.c: make things more resilient in the face of files without
	stripbytecounts or stripoffsets or where loading these fails.

	* libtiff/tif_print.c: be careful about whether min/max values are singular
	or one per sample.

	* libtiff/tif_print.c: Avoid confusion about count size when printing custom fields.
	May affect things like ISOSpeedRatings.

	* libtiff/tif_dir.c: avoid one byte past end of ink names reading
	in some cases.

2012-05-19  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* man/TIFFGetField.3tiff: Correct the 'count' field type in the
	example for how to retreive the value of unsupported tags.

2012-03-30  Frank Warmerdam  <warmerdam@google.com>

	* tif_getimage.c: Fix size overflow (zdi-can-1221,CVE-2012-1173)
	care of Tom Lane @ Red Hat.

2012-02-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff 4.0.1 released.

	* Update automake used to 1.11.3.

	* libtiff/tiffio.h: Use double-underbar syntax in GCC printf
	attribute specification to lessen the risk of accidental macro
	substitution.  Patch from Vincent Torri.

2012-01-31  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_dir.c, libtiff/tif_dirread.c: Extra caution around
	assumption tag fetching is always successful. 

	* libtiff/tif_jpeg.c: Extra caution for case where sp is NULL.

2012-01-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* configure.ac: Add support for using library symbol versioning on
	ELF systems with the GNU linker.  Support is enabled via
	--enable-ld-version-script.  Disabled by default for now until
	there is a decision for how to deploy a libtiff with versioned
	symbols after libtiff 4.0.0 was already released.

2011-12-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff/tif_win32.c: Eliminate some minor 64-bit warnings in

	tif_win32.c.  Patch by Edward Lam.

	* configure.ac: Add libtiff private dependency on -llzma for
	pkg-config.  Patch by Mark Brand.
	Updated Automake to 1.11.2.

2011-12-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff 4.0.0 released.

2011-12-08  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_dirread.c, libtiff/tif_read.c: more cautious checking
	of _TIFFFillStriles() results (#gdal 4372)

2011-12-07  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_dirread.c: fixes to deal with invalid files where
	_TIFFFillStriles() fails, and we try to chop up strips (gdal #4372)

	* libtiff/tif_dirread.c: fix error reporting when there is no 
	tag information struct and name (gdal #4373)

2011-10-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* Update GNU libtool to 2.4.2.

	* tools/tiffsplit.c (tiffcp): TIFFGetField count field should be
	uint32 type for TIFFTAG_JPEGTABLES.  Patch by Christophe
	Deroulers.

2011-06-21  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/libtiff.def: Restore TIFFMergeFieldInfo.

2011-05-31  Jim Meyering  <meyering@redhat.com>

	* libtiff/tif_dirread.c (TIFFFetchStripThing): Free "data" also
	upon failure to allocate "resizeddata".
	* tools/tiff2ps.c (PSDataBW): Zero buffer *after* checking for
	allocation failure, not before.
	* libtiff/tif_ojpeg.c: plug leaks on OJPEG read failure path
	* tools/rgb2ycbcr.c (cvtRaster): unchecked malloc
	* libtiff/tif_jpeg.c, tools/tiff2pdf.c, tools/tiff2ps.c: mark
	NULL-deref and possible overflow
	* tools/tiff2pdf.c: remove decl+set of set-but-not-used local, "written"
	* libtiff/tif_jpeg.c (JPEGInitializeLibJPEG): Remove declaration
	and set of otherwise unused local, data_is_empty.
	* libtiff/tif_jpeg.c (JPEGDecodeRaw) [JPEG_LIB_MK1_OR_12BIT]:
	Diagnose out-of-memory failure and return 0 rather than
	dereferencing NULL.

2011-05-24  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_dirread.c: produce special error message for zero tag
	directories instead of error out on the malloc(0) failure.

2011-05-16  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_dirinfo.c: Restore TIFFMergeFieldInfo() and
	related declarations as they are in active use by libraries
	such as libgeotiff, and work just fine.  (#2315)

2011-04-20  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_dirinfo.c,tiffio.h: Remove the obsolete 
	TIFFMergeFieldInfo/TIFFFindFieldInfo/TIFFFindFieldInfoByName API. 
	http://bugzilla.maptools.org/show_bug.cgi?id=2315

	* libtiff/libtiff.def: add some missing (64bit) APIs.  
	http://bugzilla.maptools.org/show_bug.cgi?id=2316

2011-04-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff 4.0.0beta7 released.

2011-04-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* configure.ac: Should use AC_CANONICAL_HOST since host specifies
	the run-time target whereas target is used to specify the final
	output target if the package is a build tool (like a compiler),
	which libtiff is not.  Resolves libtiff bug 2307 "Use
	AC_CANONICAL_HOST macro".

2011-04-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* configure.ac: Support configuring TIFF_INT64_FORMAT and
	TIFF_UINT64_FORMAT appropriately for MinGW32.

	* tools/tiffdump.c (ReadDirectory): MinGW32 needs to use WIN32
	printf conventions for 64-bit types because it uses the WIN32 CRT.

	* libtiff/{tif_dumpmode.c,tif_luv.c,tif_lzw.c,tif_print.c,
	tif_read.c,tif_strip.c,tif_thunder.c}: MinGW32 needs to use WIN32
	printf conventions for 64-bit types because it uses the WIN32 CRT.

	* tools/tiff2pdf.c (t2p_write_pdf_string): Fix printf syntax not
	understood by WIN32 CRT.

	* libtiff/tif_ojpeg.c: Fixes to compile with MinGW32 GCC.

	* tools/fax2ps.c (main): Use tmpfile() rather than mkstemp() since
	it is much more portable.  Tmpfile is included in ISO/IEC
	9899:1990 and the WIN32 CRT.

2011-03-26  Frank Warmerdam  <warmerdam@pobox.com>

	* tools/tiffset.c: add -d and -sd switches to allow operation on
	a particular directory, not just the first (jef).

2011-03-21  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_thunder.c: Correct potential buffer overflow with 
	thunder encoded files with wrong bitspersample set.  The libtiff 
	development team would like to thank Marin Barbella and TippingPoint's
	Zero Day Initiative for reporting this vulnerability (ZDI-CAN-1004,
	CVE-2011-1167).
	http://bugzilla.maptools.org/show_bug.cgi?id=2300

2011-03-10  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_fax3.h: Fix to last change allowing zero length 
	runs at the start of a scanline - needed for legal cases.

2011-03-02  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_fax3.h: Protect against a fax VL(n) codeword commanding 
	a move left.  Without this, a malicious input file can generate an 
	indefinitely large series of runs without a0 ever reaching the right 
	margin, thus overrunning our buffer of run lengths.  Per CVE-2011-0192.
	This is a modified version of a patch proposed by Drew Yao of Apple 
	Product Security.  It adds an unexpected() report, and disallows the 
	equality case, since emitting a run without increasing a0 still allows 
	buffer overrun.

2011-02-23  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_jpeg.c: avoid divide by zero in degenerate case (#2296)

	* tools/tiff2rgba.c: close source file on error to make leak 
	detection easier.

	* libtiff/tif_getimage.c: avoid leaks if TIFFRGBAImageBegin() fails.

	http://bugzilla.maptools.org/show_bug.cgi?id=2295

2011-02-22  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_lzma.c: Maintain tif_rawcc/tif_rawcp (CHUNKY_STRING_READ
	_SUPPORT)

2011-02-18  Frank Warmerdam  <warmerdam@pobox.com>

	* configure.ac, configure: Added support for --enable-chunky-strip-read
	configure option to enable the experimental feature from a couple 
	months ago for reading big strips in chunks. 

	* configure.ac, tif_read.c, tif_readdir.c, tif_dir.h, tiffiop.h, 
	tif_write.c, tif_print.c, tif_jpeg.c, tif_dirwrite.c, tif_write.c:
	Implement optional support for deferring the load of strip/tile 
	offset and size tags for optimized scanning of directories.  Enabled
	with the --enable-defer-strile-load configure option (DEFER_STRILE_LOAD
	#define in tif_config.h). 

2011-02-11  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_print.c: remove unused variable.

2011-02-09  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_win32.c: avoid error/warning buffer overrun problem
	with non-console (popup message) builds on win32. 

	http://bugzilla.maptools.org/show_bug.cgi?id=2293

2011-01-24  Olivier Paquet  <olivier.paquet@gmail.com>

	* libtiff/{tif_dir.{h,c}, tif_dirinfo.c, tif_dirread.c, tif_dirwrite.c,
	tif_print.c, tiff.h, tiffiop.h} : Added support for
	TIFFTAG_SMINSAMPLEVALUE and TIFFTAG_SMAXSAMPLEVALUE to have different
	values for each sample. Presents the min/max of all samples by default for
	compatibility. TIFFSetField/TIFFGetField can be made to handle those tags
	as arrays by changing the new TIFFTAG_PERSAMPLE pseudo tag.
	http://www.asmail.be/msg0055458208.html

2011-01-06  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_pixarlog.c: Note that tif_rawcc/tif_rawcp are not 
	maintained.  

	* libtiff/tif_zip.c: Maintain tif_rawcc/tif_rawcp when decoding 
	for CHUNKY_STRIP_READ_SUPPORT.

	* libtiff/tif_jpeg.c: ensure that rawcc and rawcp are maintained
	during JPEGPreDecode and JPEGDecode calls.  
	* libtiff/tif_read.c: larger read ahead for CHUNKY_STRIP_READ_SUPPORT, 
	as compression formats like JPEG keep 16 lines interleaved in a sense 
	and might need to touch	quite a bit of data. 
	
	http://trac.osgeo.org/gdal/ticket/3894

2011-01-03  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_jpeg.c: Fix regressions with 2 and 3 band images
	caused by commit on 2010-12-14.  Submitted by e-mail from
	Even Rouault <even.rouault@mines-paris.org>

2010-12-31  Olivier Paquet  <olivier.paquet@gmail.com>

	* libtiff/tif_dirwrite.c: Fixed writing of TIFFTAG_REFERENCEBLACKWHITE.
	http://bugzilla.maptools.org/show_bug.cgi?id=2266

2010-12-23  Andrey Kiselev  <dron@ak4719.spb.edu>

	* tools/tiffcp.c, man/tiffcp.1: Added support for specifying the
	compression level parameter (preset) for Deflate and LZMA encoders,
	e.g "-c lzma:p1" or "-c zip:p9".

	* libtiff/tif_lzma.c: Properly set the LZMA2 compression level
	(preset) in LZMAVSetField().

2010-12-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff/Makefile.am (libtiff_la_SOURCES): Added tif_lzma.c to
	Makefile.

2010-12-14  Andrey Kiselev  <dron@ak4719.spb.edu>

	* configure.ac, libtiff/{tif_codec.c, tif_config.h.in, tiff.h,
	tiffiop.h, tif_lzma.c}, tools/tiffcp.c, man/tiffcp.1: Implement a new
	TIFF compression scheme LZMA reserving a new value 34925 for
	Compression tag. As per
	bug http://bugzilla.maptools.org/show_bug.cgi?id=2221

2010-12-14  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_dirread.c: tolerate some cases where
	FIELD_COLORMAP is missing
	http://bugzilla.maptools.org/show_bug.cgi?id=2189

2010-12-14  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_read.c: change read_ahead to tmsize_t
	http://bugzilla.maptools.org/show_bug.cgi?id=2222

2010-12-14  Lee Howard <faxguy@howardsilvan.com>

	* configure.ac, libtiff/Makefile.am: Build tif_win32.c on
	Windows except on Cygwin
	http://bugzilla.maptools.org/show_bug.cgi?id=2224

2010-12-14  Lee Howard <faxguy@howardsilvan.com>

	* tools/gif2tiff.c: fix buffer overrun
	http://bugzilla.maptools.org/show_bug.cgi?id=2270

2010-12-14  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_jpeg.c: reduce usage of JCS_UNKNOWN in order
	to improve compatibility with various viewers
	submitted by e-mail from Dwight Kelly <dkelly@apago.com>

2010-12-13  Lee Howard <faxguy@howardsilvan.com>

	* tools/fax2ps.c: be consistent with page-numbering
	http://bugzilla.maptools.org/show_bug.cgi?id=2225

2010-12-13  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_color.c: prevent crash in handling bad TIFFs
	resolves CVE-2010-2595
	http://bugzilla.maptools.org/show_bug.cgi?id=2208

2010-12-13  Lee Howard <faxguy@howardsilvan.com>

	* tools/tiffcrop.c: new release by Richard Nolde
	http://bugzilla.maptools.org/show_bug.cgi?id=2004

2010-12-12  Lee Howard <faxguy@howardsilvan.com>

	* tools/tiff2pdf.c: fix colors for images with RGBA 
	interleaved data
	http://bugzilla.maptools.org/show_bug.cgi?id=2250

2010-12-12  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_dirread.c: fix for Zeiss LSM and Canon CR2 files
	http://bugzilla.maptools.org/show_bug.cgi?id=2164

2010-12-11  Lee Howard <faxguy@howardsilvan.com>

	* tools/tiff2pdf.c: remove invalid duplication for Lab
	http://bugzilla.maptools.org/show_bug.cgi?id=2162

2010-12-11  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_jpeg.c: fix use of clumplines calculation
	http://bugzilla.maptools.org/show_bug.cgi?id=2149

2010-12-11  Lee Howard <faxguy@howardsilvan.com>

	* tools/fax2ps.c: replace unsafe tmpfile() with mkstemp()
	http://bugzilla.maptools.org/show_bug.cgi?id=2118

2010-12-11  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_ojpeg.c, libtiff/tif_pixarlog.c,
	  libtiff/tif_zip.c: fix build errors for VC6
	http://bugzilla.maptools.org/show_bug.cgi?id=2105

2010-12-11  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_stream.cxx: warnings cleanup
	http://bugzilla.maptools.org/show_bug.cgi?id=2091
	* libtiff/tif_dirread.c: warnings cleanup
	http://bugzilla.maptools.org/show_bug.cgi?id=2092

2010-12-11  Lee Howard <faxguy@howardsilvan.com>

	* tools/tiff2pdf.c: add fill-page option
	http://bugzilla.maptools.org/show_bug.cgi?id=2051

2010-12-11  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_dirread.c: modify warnings
	http://bugzilla.maptools.org/show_bug.cgi?id=2016

2010-12-11  Lee Howard <faxguy@howardsilvan.com>

	* libtiff/tif_ojpeg.c: fix buffer overflow on problem data
        http://bugzilla.maptools.org/show_bug.cgi?id=1999

2010-12-11  Lee Howard <faxguy@howardsilvan.com>

	* tools/tiffinfoce.c: strip byte counts are uint64* now

2010-12-11  Lee Howard <faxguy@howardsilvan.com>

        * libtiff/tif_ojpeg.c: fix crash when reading a TIFF with a zero
        or missing byte-count tag
        * tools/tiffsplit.c: abort when reading a TIFF without a byte-count
        per http://bugzilla.maptools.org/show_bug.cgi?id=1996

2010-12-08  Lee Howard <faxguy@howardsilvan.com>

        * libtiff/tif_dirread.c: fix crash when reading a badly-constructed
        TIFF per http://bugzilla.maptools.org/show_bug.cgi?id=1994

2010-12-06  Lee Howard <faxguy@howardsilvan.com>

        * libtiff/tif_open.c: Fix mode check before opening a file.
        http://bugzilla.maptools.org/show_bug.cgi?id=1906

2010-11-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff-4.pc.in: Added libtiff pkg-config .pc file support.
	Patch by Vincent Torri.

2010-10-21  Frank Warmerdam  <warmerdam@pobox.com>

	* tools/tiffinfo.c: avoid direct reference to _TIFFerrorHandler.
	
	* libtiff/tif_config.vc.h: define snprintf to _snprintf for tiff2pdf.

	* libtiff/libtiff.def: export _TIFFCheckMalloc for tools.

2010-09-25  Lee Howard <faxguy@howardsilvan.com>

	* tools/tiff2ps.c: improvements and enhancements from Richard Nolde
	with additional command line options for Document Title,
	Document Creator, and Page Orientation

2010-07-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* tools/tiffcrop.c: Patch from Richard Nolde to avoid a
	potentially unterminated buffer due to using an exceptionally long
	file name.

2010-07-08  Andrey Kiselev  <dron@ak4719.spb.edu>

	* tools/tiff2pdf.c: Fixed ID buffer filling in
	t2p_write_pdf_trailer(), thanks to Dmitry V. Levin.

2010-07-07  Andrey Kiselev  <dron@ak4719.spb.edu>

	* libtiff/tif_dirread.c: Really reset the tag count in CheckDirCount()
	to expected value as the warning message suggests. As per bug
	http://bugzilla.maptools.org/show_bug.cgi?id=1963

2010-07-06  Andrey Kiselev  <dron@ak4719.spb.edu>

	* tools/tiffset.c: Properly handle TIFFTAG_PAGENUMBER,
	TIFFTAG_HALFTONEHINTS, TIFFTAG_YCBCRSUBSAMPLING, TIFFTAG_DOTRANGE
	which should be set by value.

	* libtiff/tif_dirinfo.c: Don't use assertions in _TIFFFieldWithTag()
	and _TIFFFieldWithName() if the tag is not found in the tag table.
	This should be normal situation and returned NULL value should be
	properly handled by the caller.

2010-07-02  Andrey Kiselev  <dron@ak4719.spb.edu>

	* libtiff/tif_getimage.c: Avoid wrong math du to the signed/unsigned
	integer type conversions. As per bug
	http://bugzilla.maptools.org/show_bug.cgi?id=2207

	* tools/{tiff2bw.c, thumbnail.c, pal2rgb.c}: Fix the count for
	WhitePoint tag as per bug
	http://bugzilla.maptools.org/show_bug.cgi?id=2042

	* libtiff/tif_getimage.c: Check the number of samples per pixel when
	working with YCbCr image in PickContigCase(). As per bug
	http://bugzilla.maptools.org/show_bug.cgi?id=2216

	* libtiff/tif_dir.c: Set the bogus post-decoding hook when processing
	TIFFTAG_BITSPERSAMPLE in _TIFFVSetField() for the case of 8 bit when
	we don't need any post-processing. That helps to reset the hook if we
	previously set this field to some other value and the hook was
	initialized accordingly. As per bug
	http://bugzilla.maptools.org/show_bug.cgi?id=2035

2010-07-01  Andrey Kiselev  <dron@ak4719.spb.edu>

	* tools/tiffgt.c: Properly check the raster buffer allocations for
	integer overflows. As per bug
	http://bugzilla.maptools.org/show_bug.cgi?id=2108

	* m4/acinclude.m4: Update GL/GLU/GLUt/Pthread macros from the
	upstream.

	* libtiff/{tif_aux.c, tif_strip.c, tif_tile.c, tiffiop.h}: Move
	multiply_32() and multiply_64() functions into tif_aux.c file and
	rename them into _TIFFMultiply32() and _TIFFMultiply64() respectively.

2010-06-30  Andrey Kiselev  <dron@ak4719.spb.edu>

	* tools/tiff2pdf.c: Better generation of ID field in
	t2p_write_pdf_trailer(). Get rid of GCC aliasing warnings.

	* tools/tiff2pdf.c: Fixed computation of the tile buffer size when
	converting JPEG encoded tiles.

	* tools/tiff2pdf.c: Better handling of string fields, use static
	string buffers instead of dynamically allocated, use strncpy() instead
	of strcpy(), control the string lengths.

2010-06-25  Andrey Kiselev  <dron@ak4719.spb.edu>

	* tools/tiffcp.c: Initialize buffer arrays with zero to avoid
	referencing to uninitialized memory in some cases (e.g. when tile size
	set bigger than the image size).

2010-06-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* tools/tiffcrop.c: Patch from Richard Nolde. Reject YCbCr
	subsampled data since tiffcrop currently doesn't support it.  Fix
	JPEG support.

2010-06-13  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_dirinfo.c: Fix invocation of tag compare function (#2201)

	* tools/tiff2pdf.c: Fix assorted bugs in tiff2pdf: missing "return" 
	in t2p_read_tiff_size() causes t2p->tiff_datasize to be set entirely 
	wrong for COMPRESSION_JPEG case, resulting in memory stomp if actual 
	size is larger.  Also, there are a bunch of places that try to 
	memset() a malloc'd buffer before checking for malloc failure, which 
	would result in core dump if there actually were a failure. (#2211)

2010-06-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff/tiffiop.h (TIFFSafeMultiply): Need more castings to
	avoid compiler warnings if parameter types are not sign
	consistent.

	* libtiff 4.0.0alpha6 released.

	* tools/tiffcrop.c: Applied patch from Richard Nolde: Corrected
	European page size dimensions.  Added an option to allow the user
	to specify a custom page size on the command line.  Fix the case
	where a page size specified with a fractional part was being
	coerced to an integer by retyping the variables that define the
	paper size.

	* html/index.html: Update for the 3.9.3 release.

	* tools/tiffcp.c (tiffcp): Applied Tom Lane's patch to reject
	YCbCr subsampled data since tiffcp currently doesn't support it.
	http://bugzilla.maptools.org/show_bug.cgi?id=2097

	* Update libtool to version 2.2.10.

2010-06-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff/tiffiop.h (TIFFSafeMultiply): Work properly if
	multiplier is zero.

2010-06-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff/tif_fax3.c (Fax3SetupState): Yesterday's fix for
	CVE-2010-1411 was not complete.

	* libtiff/tiffiop.h (TIFFSafeMultiply): New macro to safely
	multiply two integers.  Returns zero if there is an integer
	overflow.

	* tools/tiffcp.c (main): tiffcp should not leak memory if an error
	is reported when reading the input file.

2010-06-08  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* Update libtool to version 2.2.8.

	* libtiff/tif_fax3.c (Fax3SetupState): Avoid under-allocation of
	buffer due to integer overflow in TIFFroundup() and several other
	potential overflows.  In conjunction with the fix to TIFFhowmany(),
	fixes CVE-2010-1411.

	* libtiff/tiffiop.h (TIFFhowmany): Return zero if parameters would
	result in an integer overflow. This causes TIFFroundup() to also
	return zero if there would be an integer overflow.

	* contrib: Add an emacs formatting mode footer to all source files
	so that emacs can be effectively used.

2010-06-03  Oliver Chen Feng <scip8183@gmail.com>

	* libtiff/tools/tiffcp.c: add a new option -x to force merged tiff
	file PAGENUMBER value in sequence for users who care the page
	sequence, this will also prevent tiff2pdf from creating pdf file from
	the merged tiff file with wrong page sequence.

2010-05-08  Olivier Paquet  <olivier.paquet@gmail.com>

	* libtiff/tif_dirread.c: Restored TIFFReadDirEntryFloat function in order
	to add missing TIFF_SETGET_FLOAT case to TIFFFetchNormalTag.
	* libtiff/tif_dirinfo.c: Use correct set_field_type for
	TIFFTAG_PIXAR_FOVCOT so it is readable again (regression from 3.9.2).
	http://bugzilla.maptools.org/show_bug.cgi?id=2192

2010-05-07  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_jpeg.c: Ensure that quality is always set in 
	JPEGPreEncode(), not just when we want to output local tables.  
	Otherwise the quality used during compression may not be right and
	might not match the tables in the tables tag.   This bug only occurs
	when seeking between directories in the midst of writing blocks.
	http://trac.osgeo.org/gdal/ticket/3539
	
2010-05-06  Andrey Kiselev  <dron@ak4719.spb.edu>

	* html/man/TIFFGetField.3tiff.html, html/man/TIFFSetField.3tiff.html:
	Regenerated from the source.

2010-05-05  Olivier Paquet  <olivier.paquet@gmail.com>

	* libtiff/tif_print.c: Fixed printing of TIFFTAG_REFERENCEBLACKWHITE which
	had stopped working. Also made it always print 6 floats instead of
	2*SamplesPerPixel.
	http://bugzilla.maptools.org/show_bug.cgi?id=2191
	http://bugzilla.maptools.org/show_bug.cgi?id=2186
	* man/TIFFGetField.3tiff, man/TIFFSetField.3tiff: Fixed doc to reflect the
	fact that libtiff considers TIFFTAG_REFERENCEBLACKWHITE to be 6 floats.

2010-05-05  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_jpeg.c: Fix to use memcmp(), not memcpy() when checking
	if the jpeg table was written.  This is a fix for the last fix on 04-21.

2010-04-21  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_jpeg.c: avoid preparing jpeg tables everytime 
	JPEGSetupEncode() is called if the tables already seem to be 
	established.  This prevents spurious updates and rewriting of 
	directories with jpegtables when doing updates to existing images.
	http://trac.osgeo.org/gdal/ticket/3539

2010-04-20  Olivier Paquet  <olivier.paquet@gmail.com>

	* libtiff/tif_dirinfo.c: Use correct set_field_type for
	TIFFTAG_PIXAR_IMAGEFULLWIDTH, TIFFTAG_PIXAR_IMAGEFULLLENGTH,
	TIFFTAG_PIXAR_MATRIX_WORLDTOSCREEN and TIFFTAG_PIXAR_MATRIX_WORLDTOCAMERA.
	They were unreadable with TIFF_SETGET_UNDEFINED, a regression from 3.9.2.
	http://bugzilla.maptools.org/show_bug.cgi?id=2139

2010-04-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff/tif_dir.c (_TIFFVSetField): Add a special error case for
	when the tag count value is zero.  Error handling is still a
	regression since in 3.9.2, empty tags are skipped (with a warning)
	rather than returning a hard error and refusing to read the file.

	* tools/ppm2tiff.c (main): While case for parsing comment line
	requires extra parenthesis to work as expected.  Reported by
	Thomas Sinclair.

2010-04-02  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_read.c (primarily): Add support for 
	CHUNKY_STRIP_READ_SUPPORT where large strips are
	read in chunks for applications using TIFFReadScanline().
	This is intended to make it more practical work with very
	large compressed one-strip files.   Feature is off by default.
	Enable by defining CHUNK_STRIP_READ_SUPPORT as a macro.
	http://trac.osgeo.org/gdal/ticket/3514

2010-03-31  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_flush.c: Use TIFFRewriteDirectory() when flushing
	directories so previously placed directories will be migrated to
	the end of file if needed.

2010-03-30  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_lzw.c: change type of dec_bitsleft field to uint64
	to support operating on strips/tiles of more than 256MB.
	http://trac.osgeo.org/gdal/ticket/3512

2010-03-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff/tif_aux.c (_TIFFCheckRealloc): Improve error message so
	that it is clearly a memory allocation error message, and also
	includes the size of the allocation request.

2010-02-22  Lee Howard  <faxguy@howardsilvan.com>

	* libtiff/tif_jpeg.c: Do not generate a JPEGTables tag when creating
	the JPEG TIFF as is is not required in order to prevent it from 
	being unused and filled with invalid data.  (Leave it to be 
	generated by later activity.)
	http://bugzilla.maptools.org/show_bug.cgi?id=2135
	* tools/tiff2pdf.c: Write the JPEG SOI headers into the TIFF strip 
	data rather than skipping them.  This fixes the ability to view in
	Acrobat Reader, Evince, and Ghostscript.
	http://bugzilla.maptools.org/show_bug.cgi?id=2135
	* libtiff/tif_fax3.c: Don't return error on badly-terminated MMR
	strips.
	http://bugzilla.maptools.org/show_bug.cgi?id=2029

2009-12-03  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_jpeg.c: Made JPEGDecodeRaw() check for buffer overruns.
	Made so that when working with downsampled images a stub function 
	reporting an error is used for tif_decoderow.  We cannot meaningfully
	support reading scanlines in this situation.  (#1936)

	* libtiff/tif_jpeg.c: Ensure that tif_scanlinesize is computed after
	resetting of the upsampling values (gdal:#3259).
	http://bugzilla.maptools.org/show_bug.cgi?id=1936

2009-11-30  Frank Warmerdam  <warmerdam@pobox.com>

	* contrib/dbs/tiff-grayscale.c, contrib/tif-palette.c, 
	tools/ras2tiff.c: Fix resource leaks on error.
	http://bugzilla.maptools.org/show_bug.cgi?id=2121

	* libtiff/tif_{aux.c,dir.c,dir.h,dirinfo.c}: Return to handling 
	TIFFTAG_REFERENCEBLACKWHITE as a field in the TIFF directory instead
	of as a custom(generic) field to avoid a potential reentrancy problem.
	http://bugzilla.maptools.org/show_bug.cgi?id=2125
	
	* libtiff/tif_color.c, libtiff/tif_getimage.c, libtiff/tiffio.h,
	man/TIFFcolor.3tiff: Make TIFFDisplay argument in TIFFCIELabToRGBInit 
	const, and display_sRGB static and const.
	http://bugzilla.maptools.org/show_bug.cgi?id=2124

2009-11-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff 4.0.0alpha5 released.

2009-11-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* tools/tiffcrop.c: Updated tiffcrop from Richard Nolde.  This
	version has undergone substantial testing with arbitrary sample
	bit depths.  Also eliminates GCC compilation warnings.

2009-11-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* port/libport.h: Add extern declarations for getopt standard
	globals.

2009-10-31  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff/tif_lzw.c (LZWDecode, LZWDecodeCompat): Fix warnings
	noticed in 64-bit build of libtiff with Visual Studio 2005.
	Resolves "Bug 2067 - Visual Studio 2005 64-bit warnings in
	tif_lzw.c", http://bugzilla.maptools.org/show_bug.cgi?id=2067

	* libtiff/tif_pixarlog.c (PixarLogEncode): Fix non-important
	warning noticed in Visual Studio 2005 build. Resolves "Bug 2068 -
	Visual Studio 2005 64-bit warning in tif_pixarlog.c",
	http://bugzilla.maptools.org/show_bug.cgi?id=2068

2009-10-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff/tif_dirread.c: Eliminate GCC "dereferencing type-punned
	pointer" warnings.

2009-10-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* html/tools.html: Add manual page links, and a summary
	description of tiffcrop.

2009-10-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* configure.ac: x86_64 should use the same fill order as i386.

2009-09-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* tools/tiffcrop.c, man/tiffcrop.1: New tiffcrop from Richard
	Nolde.  Major updates to add significant functionality for reading
	and writing tile based images with bit depths not a multiple of 8
	which cannot be handled by tiffcp.

2009-09-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff/tif_ojpeg.c (OJPEGWriteHeaderInfo): IJG JPEG 7 needs
	do_fancy_upsampling=FALSE in order to read raw data.  Resolves
	"Bug 2090 - OJPEG crash with libjpeg v7".
	http://bugzilla.maptools.org/show_bug.cgi?id=2090

2009-09-03  Frank Warmerdam  <warmerdam@pobox.com>

	* libtiff/tif_getimage.c: Fixed error recognition handling in RGBA
	interface when stoponerror is set. 
	http://bugzilla.maptools.org/show_bug.cgi?id=2071

2009-08-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* tools/{tiffcrop.c,tiffgt.c}: Applied patch from Oden Eriksson to
	fix build with gcc when using the "-Wformat
	-Werror=format-security" flags.

2009-08-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* test/{bmp2tiff_palette.sh, bmp2tiff_rgb.sh, gif2tiff.sh,
	ppm2tiff_pbm.sh, ppm2tiff_pgm.sh, ppm2tiff_ppm.sh}: Additional
	utilities tests.

2009-08-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* tools/tiffinfo.c: tiffinfo should return error status to the
	caller.  Register a private error callback to accomplish that.

	* test/Makefile.am (TIFFIMAGES): Add test images in BMP, GIF, and
	PNM formats so that we will be able to test more of the tools.
	While adding these test images I notice that bmp2tiff and gif2tiff
	only support ancient versions of their respective formats.

2009-08-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* libtiff 4.0.0alpha4 released.

	* HOWTO-RELEASE: Improved release instructions.

2009-08-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

	* man/{TIFFClose.3tiff,raw2tiff.1,tiffcmp.1,tiffsplit.1}: Applied
	fixes for "Bug 2023 - nroff errors in manual pages".
	http://bugzilla.maptools.org/show_bug.cgi?id=2023

	* tools/{rgb2ycbcr.c, tiff2rgba.c}: Applied fixes for "Bug 2079 -
	CVE-2009-2347 libtiff: integer overflows in various inter-color
	space conversion tools".
	http://bugzilla.maptools.org/show_bug.cgi?id=2079

	* libtiff/tif_print.c (TIFFPrintDirectory): Apply fix from Jay
	Berkenbilt for "Bug 2024 - possible null pointer dereference with
