12019-11-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2
3	libtiff 4.1.0 released.
4
5	Added a step for updating the legacy ChangeLog file.
6
7	Ignore emacs temporary files (ending with tilde character).
8
9	Added release summary page for the 4.1.0 release.
10
11	Fix Cmake HAVE_GETOPT for systems which declare getopt in stdio.h. Fix utility baked-in getopt prototype which appears when HAVE_GETOPT is not defined.
12
13	Fax2tiff.sh needs to remove its output file in advance. Syntax changes so that bash is not required.
14
152019-10-26  Even Rouault  <even.rouault@spatialys.com>
16
17	tif_jpeg.c: extra cast to silence Coverity warning. GDAL CID 1406475.
18
192019-10-23  Even Rouault  <even.rouault@spatialys.com>
20
21	tif_jpeg.c: fix warning added by previous commit (on 32bit builds)
22
232019-10-23  Even Rouault  <even.rouault@spatialys.com>
24
25	Merge branch 'coverity-fixes' into 'master'
26	Coverity fixes
27
28	See merge request libtiff/libtiff!94
29
302019-10-22  Timothy Lyanguzov  <timothy.lyanguzov@sap.com>
31
32	Use 64-bit calculations correctly.
33
34	Fix size calculation to use 64-bit tmsize_t correctly.
35
36	Make bytesperclumpline calculations using tmsize_t type.
37
382019-10-03  Even Rouault  <even.rouault@spatialys.com>
39
40	tif_read: align code of TIFFReadRawStrip() and TIFFReadRawTile() that differed for non good reason. Non-functional change normally. (fixes GitLab #162)
41
422019-10-01  Even Rouault  <even.rouault@spatialys.com>
43
44	HTML: update for GitLab issues.
45
462019-09-29  Even Rouault  <even.rouault@spatialys.com>
47
48	html/v3.5.6-beta.html: redact URL of defunct web site.
49
50	Website: update links to mailing list.
51
522019-09-17  Even Rouault  <even.rouault@spatialys.com>
53
54	TIFFReadAndRealloc(): avoid too large memory allocation attempts. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=17244
55
562019-09-03  Even Rouault  <even.rouault@spatialys.com>
57
58	ByteCountLooksBad and EstimateStripByteCounts: avoid unsigned integer overflows. Fixes https://oss-fuzz.com/testcase-detail/5686156066291712 and https://oss-fuzz.com/testcase-detail/6332499206078464
59
602019-09-02  Even Rouault  <even.rouault@spatialys.com>
61
62	tif_ojpeg.c: avoid relying on isTiled macro being wrapped in ()
63
64	tif_ojpeg.c: avoid use of uninitialized memory on edge/broken file. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16844
65
66	tiff_read_rgba_fuzzer.cc: add a -DSTANDALONE mode for easier reproduction of oss-fuzz reports
67
682019-09-01  Even Rouault  <even.rouault@spatialys.com>
69
70	tif_dirread.c: allocChoppedUpStripArrays(). avoid unsigned integer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16846
71
722019-08-27  Even Rouault  <even.rouault@spatialys.com>
73
74	tif_ojpeg.c: avoid unsigned integer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16793
75
762019-08-26  Even Rouault  <even.rouault@spatialys.com>
77
78	TIFFReadDirEntryData(): rewrite to avoid unsigned integer overflow (not a bug). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16792
79
80	TIFFFetchDirectory(): fix invalid cast from uint64 to tmsize_t. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16784
81
822019-08-25  Even Rouault  <even.rouault@spatialys.com>
83
84	JPEG: avoid use of unintialized memory on corrupted files.
85	Follow-up of cf3ce6fab894414a336546f62adc57f02590a22c
86	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16602
87	Credit to OSS Fuzz
88
892019-08-23  Even Rouault  <even.rouault@spatialys.com>
90
91	_TIFFPartialReadStripArray(): avoid unsigned integer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16685
92
93	OJPEGWriteHeaderInfo(): avoid unsigned integer overflow on strile dimensions close to UINT32_MAX. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16683
94
95	TIFFFillStrip(): avoid harmless unsigned integer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16653
96
97	EstimateStripByteCounts(): avoid unsigned integer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16643&
98
99	tif_ojpeg: avoid unsigned integer overflow (probably not a bug). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16635
100
101	tif_thunder: avoid unsigned integer overflow (not a bug). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16632
102
1032019-08-22  Even Rouault  <even.rouault@spatialys.com>
104
105	_TIFFMultiply32() / _TIFFMultiply64(): avoid relying on unsigned integer overflow (not a bug)
106
107	EstimateStripByteCounts(): avoid unsigned integer overflow.
108
1092019-08-21  Even Rouault  <even.rouault@spatialys.com>
110
111	EstimateStripByteCounts(): avoid unsigned integer overflow.
112
1132019-08-20  Even Rouault  <even.rouault@spatialys.com>
114
115	EstimateStripByteCounts(): avoid harmless unsigned integer overflow.
116
117	_TIFFPartialReadStripArray(): avoid triggering unsigned integer overflow with -fsanitize=unsigned-integer-overflow (not a bug, this is well defined by itself)
118
1192019-08-18  Even Rouault  <even.rouault@spatialys.com>
120
121	tiff2ps: fix use of wrong data type that caused issues (/Height being written as 0) on 64-bit big endian platforms
122
1232019-08-16  Even Rouault  <even.rouault@spatialys.com>
124
125	setByteArray(): fix previous commit.
126
127	setByteArray(): avoid potential signed integer overflow. Pointed by Hendra Gunadi. No actual problem known (which does not mean there wouldn't be any. Particularly on 32bit builds)
128
1292019-08-15  Even Rouault  <even.rouault@spatialys.com>
130
131	RGBA interface: fix integer overflow potentially causing write heap buffer overflow, especially on 32 bit builds. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16443. Credit to OSS Fuzz
132
1332019-08-14  Even Rouault  <even.rouault@spatialys.com>
134
135	Merge branch 'fix_integer_overflow' into 'master'
136	Fix integer overflow in _TIFFCheckMalloc() and other implementation-defined behaviour (CVE-2019-14973)
137
138	See merge request libtiff/libtiff!90
139
1402019-08-13  Even Rouault  <even.rouault@spatialys.com>
141
142	Fix integer overflow in _TIFFCheckMalloc() and other implementation-defined behaviour (CVE-2019-14973)
143	_TIFFCheckMalloc()/_TIFFCheckRealloc() used a unsafe way to detect overflow
144	in the multiplication of nmemb and elem_size (which are of type tmsize_t, thus
145	signed), which was especially easily triggered on 32-bit builds (with recent
146	enough compilers that assume that signed multiplication cannot overflow, since
147	this is undefined behaviour by the C standard). The original issue which lead to
148	this fix was trigged from tif_fax3.c
149
150	There were also unsafe (implementation defied), and broken in practice on 64bit
151	builds, ways of checking that a uint64 fits of a (signed) tmsize_t by doing
152	(uint64)(tmsize_t)uint64_var != uint64_var comparisons. Those have no known
153	at that time exploits, but are better to fix in a more bullet-proof way.
154	Or similarly use of (int64)uint64_var <= 0.
155
1562019-08-12  Even Rouault  <even.rouault@spatialys.com>
157
158	TIFFClientOpen(): fix memory leak if one of the required callbacks is not provided. Fixed Coverity GDAL CID 1404110
159
160	OJPEGReadBufferFill(): avoid very long processing time on corrupted files. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16400. master only
161
1622019-08-10  Even Rouault  <even.rouault@spatialys.com>
163
164	oss-fuzz/tiff_read_rgba_fuzzer.cc: fix wrong env variable value in previous commit
165
166	oss-fuzz/tiff_read_rgba_fuzzer.cc: avoid issue with libjpeg-turbo and MSAN
167
168	OJPEG: fix integer division by zero on corrupted subsampling factors. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=15824. Credit to OSS Fuzz
169
170	Merge branch 'ossfuzz_i386'
171
172	contrib/oss-fuzz/build.sh: fix for i386 build of jbigkit, and use $LIB_FUZZING_ENGINE
173
1742019-08-10  Even Rouault  <even.rouault@spatialys.com>
175
176	Merge branch 'patch-1' into 'master'
177	fix two tiny typos
178
179	See merge request libtiff/libtiff!89
180
1812019-08-10  Reto Kromer  <rk@reto.ch>
182
183	fix two tiny typos.
184
1852019-08-09  Even Rouault  <even.rouault@spatialys.com>
186
187	Merge branch 'patch-1' into 'master'
188	fix a typo in man page
189
190	See merge request libtiff/libtiff!88
191
1922019-08-09  Reto Kromer  <rk@reto.ch>
193
194	fix typo.
195
1962019-08-04  Even Rouault  <even.rouault@spatialys.com>
197
198	Merge branch 'TIFFTAGID_Zero_reading_IGNORE' into 'master'
199	Suppressed Reading of Tiff tags with ID = 0 (like GPSVERSIONID) corrected.
200
201	See merge request libtiff/libtiff!77
202
2032019-08-04  Su Laus  <sulau@freenet.de>
204
205	Reading of Tiff tags with ID = 0 (like GPSVERSIONID) corrected.
206	  IGNORE placeholder in tif_dirread.c is now replaced by a field dir_ignore in the TIFFDirEntry structure
207
208	  Currently, in tif_dirread.c a special IGNORE value for the tif tags is defined
209	  in order to flag status preventing already processed tags from further processing.
210	  This irrational behaviour prevents reading of custom tags with id code 0 - like tag GPSVERSIONID from EXIF 2.31 definition.
211
212	  An additional field 'tdir_ignore' is now added to the TIFFDirEntry structure and code is changed
213	  to allow tags with id code 0 to be read correctly.
214
215	  This change was already proposed as pending improvement in tif_dirread.c around line 32.
216
217	    Reference is also made to:
218		- Discussion in https://gitlab.com/libtiff/libtiff/merge_requests/39
219		- http://bugzilla.maptools.org/show_bug.cgi?id=2540
220
221	Comments and indention adapted.
222
223	Preparation to rebase onto master
224
2252019-07-16  Even Rouault  <even.rouault@spatialys.com>
226
227	Merge branch 'cmake_amd64' into 'master'
228	CMakeLists.txt: properly set value of HOST_FILLORDER to LSB2MSB for Windows CMake builds
229
230	See merge request libtiff/libtiff!87
231
2322019-07-15  Even Rouault  <even.rouault@spatialys.com>
233
234	CMakeLists.txt: properly set value of HOST_FILLORDER to LSB2MSB for Windows CMake builds
235	As can be seen in https://ci.appveyor.com/project/rleigh-codelibre/libtiff-didfs/builds/25846668/job/ory5w098j8wcij9x
236	log, the HOST_FILLORDER is not properly set:
237
238	[00:02:58] -- CMAKE_HOST_SYSTEM_PROCESSOR set to AMD64
239	[00:02:58] -- HOST_FILLORDER set to FILLORDER_MSB2LSB
240
241	Ther reason is that we match the "amd64.*" lowercase string whereas
242	CMAKE_HOST_SYSTEM_PROCESSOR is set to AMD64 uppercase.
243
2442019-07-09  Even Rouault  <even.rouault@spatialys.com>
245
246	TIFFWriteCheck(): call TIFFForceStrileArrayWriting() when needed (should have gone with eaeca6274ae71cdfaeb9f673b6fb0f3cfc0e6ce5) (master only)
247
2482019-07-09  Even Rouault  <even.rouault@spatialys.com>
249
250	Merge branch 'fix_chromium_925269' into 'master'
251	OJPEG: avoid use of unintialized memory on corrupted files
252
253	See merge request libtiff/libtiff!86
254
2552019-07-05  Even Rouault  <even.rouault@spatialys.com>
256
257	OJPEG: avoid use of unintialized memory on corrupted files.
258	Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=925269
259	Patch from Lei Zhang with little adaptations.
260
2612019-06-29  Even Rouault  <even.rouault@spatialys.com>
262
263	Merge branch 'fix-division-by-zero' into 'master'
264	Return infinite distance when denominator is zero.
265
266	See merge request libtiff/libtiff!85
267
2682019-06-29  Dirk Lemstra  <dirk@lemstra.org>
269
270	Return infinite distance when denominator is zero.
271
2722019-06-29  Even Rouault  <even.rouault@spatialys.com>
273
274	Merge branch 'typetests' into 'master'
275	Add test to check that libtiff types have the correct size
276
277	See merge request libtiff/libtiff!57
278
2792019-05-31  Thomas Bernard  <miniupnp@free.fr>
280
281	make TIFF_SSIZE_T the same bitwidth as TIFF_SIZE_T.
282	it was previously the same bitwidth as unsigned char *
283	Pointers can be larger than size_t.
284
2852019-05-31  Thomas Bernard  <miniupnp@free.fr>
286
287	Add test to check that libtiff types have the correct size.
288	in configure/CMakeList.txt :
289
290	- TIFF_INT8_T/TIFF_UINT8_T is signed/unsigned char
291	sizeof(char)==1 in C standard
292	- TIFF_INT16_T/TIFF_UINT16_T is signed/unsigned short
293	sizeof(short)>=2 in C standard
294	- TIFF_INT32_T/TIFF_UINT32_T is defined so its sizeof() is 4
295
296	- TIFF_INT64_T/TIFF_UINT64_T is defined so its sizeof() is 8
297
298	- TIFF_SIZE_T is defined so it has same sizeof() than size_t
299
300	- TIFF_SSIZE_T is defined so it has same sizeof() than unsigned char *
301
3022019-05-29  Even Rouault  <even.rouault@spatialys.com>
303
304	Merge branch 'defer_strile_writing' into 'master'
305	Add TIFFDeferStrileArrayWriting() and TIFFForceStrileArrayWriting()
306
307	See merge request libtiff/libtiff!82
308
3092019-05-29  Even Rouault  <even.rouault@spatialys.com>
310
311	Merge branch 'TIFFReadFromUserBuffer' into 'master'
312	Add TIFFReadFromUserBuffer()
313
314	See merge request libtiff/libtiff!81
315
3162019-05-26  Even Rouault  <even.rouault@spatialys.com>
317
318	Fix vulnerability in 'D' (DeferStrileLoad) mode (master only) (fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14908)
319
3202019-05-25  Even Rouault  <even.rouault@spatialys.com>
321
322	Replace 'stripped' by 'striped' in error messages.
323
3242019-05-25  Even Rouault  <even.rouault@spatialys.com>
325
326	Add TIFFDeferStrileArrayWriting() and TIFFForceStrileArrayWriting()
327	Those advanced writing functions must be used in a particular sequence
328	to make their intended effect. Their aim is to control when/where
329	the [Strip/Tile][Offsets/ByteCounts] arrays are written into the file.
330
331	The purpose of this is to generate 'cloud-optimized geotiff' files where
332	the first KB of the file only contain the IFD entries without the potentially
333	large strile arrays. Those are written afterwards.
334
335	The typical sequence of calls is:
336	TIFFOpen()
337	[ TIFFCreateDirectory(tif) ]
338	Set fields with calls to TIFFSetField(tif, ...)
339	TIFFDeferStrileArrayWriting(tif)
340	TIFFWriteCheck(tif, ...)
341	 TIFFWriteDirectory(tif)
342	 ... potentially create other directories and come back to the above directory
343	TIFFForceStrileArrayWriting(tif): emit the arrays at the end of file
344
345	See test/defer_strile_writing.c for a practical example.
346
3472019-05-24  Even Rouault  <even.rouault@spatialys.com>
348
349	Fix vulnerability introduced by defer strile loading (master only)
350	Found on GDAL with https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14894
351	Disabling the TIFF_DEFERSTRILELOAD bit in ChopupStripArray() was a
352	bad idea since when using TIFFReadDirectory() to reload the directory again
353	would lead to a different value of td_rowsperstrip, which could confuse
354	readers if they relied on the value found initially.
355
356	Fix typo in error message (master only)
357
3582019-05-22  Even Rouault  <even.rouault@spatialys.com>
359
360	Add TIFFReadFromUserBuffer()
361	This function replaces the use of TIFFReadEncodedStrip()/TIFFReadEncodedTile()
362	when the user can provide the buffer for the input data, for example when
363	he wants to avoid libtiff to read the strile offset/count values from the
364	[Strip|Tile][Offsets/ByteCounts] array.
365
366	libtiff.def: add missing new symbols.
367
368	test/defer_strile_loading.c: fix warning with Visual C++
369
370	_TIFFRewriteField(): fix for bigtiff case (master only)
371	116cf67f4c59196605abdb244657c3070c4310af made StripByteCount/TileByteCount to
372	always be rewritten as TIFF_LONG8.
373
3742019-05-21  Even Rouault  <even.rouault@spatialys.com>
375
376	Merge branch 'ondemand_strile_offbytecount_loading' into 'master'
377	Make defer strile offset/bytecount loading available at runtime
378
379	See merge request libtiff/libtiff!79
380
3812019-05-21  Even Rouault  <even.rouault@spatialys.com>
382
383	Merge branch 'bigtiff_write_bytecount_on_long_when_possible' into 'master'
384	Create TileByteCounts/StripByteCounts tag with SHORT (ClassicTIFF/BigTIFF) or  LONG (BigTIFF) type when possible
385
386	See merge request libtiff/libtiff!78
387
3882019-05-21  Even Rouault  <even.rouault@spatialys.com>
389
390	Merge branch 'html_link' into 'master'
391	libtiff.html, bigtiffpr.html: absolute => relative link
392
393	See merge request libtiff/libtiff!80
394
3952019-05-14  Thomas Bernard  <miniupnp@free.fr>
396
397	libtiff.html, bigtiffpr.html: absolute => relative link.
398
3992019-05-10  Even Rouault  <even.rouault@spatialys.com>
400
401	Make defer strile offset/bytecount loading available at runtime.
402	... and add per-strile offset/bytecount loading capabilities.
403
404	Part of this commit makes the behaviour that was previously met when
405	libtiff was compiled with -DDEFER_STRILE_LOAD available for default builds
406	when specifying the new 'D' (Deferred) TIFFOpen() flag. In that mode, the [Tile/Strip][ByteCounts/Offsets]
407	arrays are only loaded when first accessed. This can speed-up the opening
408	of files stored on the network when just metadata retrieval is needed.
409	This mode has been used for years by the GDAL library when compiled with
410	its embeded libtiff copy.
411
412	To avoid potential out-of-tree code (typically codecs) that would use
413	the td_stripbytecount and td_stripoffset array inconditionnaly assuming they
414	have been loaded, those have been suffixed with _p (for protected). The
415	use of the new functions mentionned below is then recommended.
416
417	Another addition of this commit is the capability of loading only the
418	values of the offset/bytecount of the strile of interest instead of the
419	whole array. This is enabled with the new 'O' (Ondemand) flag of TIFFOpen()
420	(which implies 'D'). That behaviour has also been used by GDAL, which hacked
421	into the td_stripoffset/td_stripbytecount arrays directly. The new code
422	added in the _TIFFFetchStrileValue() and _TIFFPartialReadStripArray() internal
423	functions is mostly a port of what was in GDAL GTiff driver previously.
424
425	Related to that, the public TIFFGetStrileOffset[WithErr]() and TIFFGetStrileByteCount[WithErr]()
426	functions have been added to API. They are of particular interest when
427	using sparse files (with offset == bytecount == 0) and you want to detect
428	if a strile is present or not without decompressing the data, or updating
429	an existing sparse file.
430	They will also be used to enable a future enhancement where client code can entirely
431	skip bytecount loading in some situtations
432
433	A new test/defer_strile_loading.c test has been added to test the above
434	capabilities.
435
4362019-05-10  Even Rouault  <even.rouault@spatialys.com>
437
438	Creation: use SHORT type when possible for StripByteCounts/TileByteCounts
439	This follows the same logic as previous commit.
440
4412019-05-09  Even Rouault  <even.rouault@spatialys.com>
442
443	BigTIFF creation: write TileByteCounts/StripByteCounts tag with LONG when possible
444	In most situations of BigTIFF file, the tile/strip sizes are of reasonable size,
445	that is they fit on a 4-byte LONG. So in that case, use LONG instead of LONG8
446	to save some space. For uncompressed file, it is easy to detect such situations
447	by checking at the TIFFTileSize64()/TIFFStripSize64() return. For compressed file,
448	we must take into account the fact that compression may sometimes result in
449	larger compressed data. So we allow this optimization only for a few select
450	compression times, and take a huge security margin (10x factor). We also only
451	apply this optimization on multi-strip files, so as to allow easy on-the-fly
452	growing of single-strip files whose strip size could grow above the 4GB threshold.
453
454	This change is compatible with the BigTIFF specification. According to
455	https://www.awaresystems.be/imaging/tiff/bigtiff.html:
456	"The StripOffsets, StripByteCounts, TileOffsets, and TileByteCounts tags are
457	allowed to have the datatype TIFF_LONG8 in BigTIFF. Old datatypes TIFF_LONG,
458	and TIFF_SHORT where allowed in the TIFF 6.0 specification, are still valid in BigTIFF, too. "
459	On a practical point of view, this is also compatible on reading/writing of
460	older libtiff 4.X versions.
461
462	The only glitch I found, which is rather minor, is when using such a BigTIFF
463	file with TileByteCounts/StripByteCounts written with TIFF_LONG, and updating
464	it with an older libtiff 4.X version with a change in the
465	[Tile/Strip][ByteCounts/Offsets] array. In that case the _TIFFRewriteField()
466	function will rewrite the directory and array with TIFF_LONG8, instead of updating
467	the existing array (this is an issue fixed by this commit). The file will
468	still be valid however, hence the minor severity of this.
469
4702019-05-08  Even Rouault  <even.rouault@spatialys.com>
471
472	Merge branch 'bug2799' into 'master'
473	fix fax2tiff
474
475	See merge request libtiff/libtiff!55
476
4772019-05-08  Even Rouault  <even.rouault@spatialys.com>
478
479	Merge branch 'bug_2829' into 'master'
480	WIN32: use tif_win32.c when building with CMake
481
482	See merge request libtiff/libtiff!75
483
4842019-05-06  Even Rouault  <even.rouault@spatialys.com>
485
486	Merge branch 'FILESOURCE_SCENETYPE_reading' into 'master'
487	Reading error for FileSource and SceneType tags corrected.
488
489	See merge request libtiff/libtiff!76
490
4912019-05-06  Su Laus  <sulau@freenet.de>
492
493	Reading error for FileSource and SceneType tags corrected.
494	EXIF tags FILESOURCE and SCENETYPE are defined as TIFF_UNDEFINED and field_readcount==1!
495	There is a bug in TIFFReadDirEntryByte() preventing to read correctly type TIFF_UNDEFINED fields with field_readcount==1
496	Upgrade of TIFFReadDirEntryByte() with added TIFF_UNDEFINED switch-entry allows libtiff to read those tags correctly.
497
4982019-04-25  Thomas Bernard  <miniupnp@free.fr>
499
500	WIN32: use tif_win32.c when building with CMake.
501	see http://bugzilla.maptools.org/show_bug.cgi?id=2829
502
503	the top CMakeLists.txt defines
504	win32_io and USE_WIN32_FILEIO
505
506	WIN32_IO is defined nowhere in CMake (only in automake things)
507
5082019-04-25  Even Rouault  <even.rouault@spatialys.com>
509
510	Merge branch 'gitlab_pages' into 'master'
511	Advertise https://libtiff.gitlab.io/libtiff/ as mirror
512
513	See merge request libtiff/libtiff!70
514
5152019-04-25  Even Rouault  <even.rouault@spatialys.com>
516
517	Merge branch 'bug_2844' into 'master'
518	tiff2ps.c: PSDataColorContig(): avoid heap buffer overrun
519
520	See merge request libtiff/libtiff!69
521
5222019-04-25  Even Rouault  <even.rouault@spatialys.com>
523
524	Merge branch 'issue_2785' into 'master'
525	tiff2pdf.c: don't call t2p_tile_collapse_left() for Ycbcr
526
527	See merge request libtiff/libtiff!64
528
5292019-04-11  Even Rouault  <even.rouault@spatialys.com>
530
531	Merge branch 'fix_gdal_1439' into 'master'
532	TIFFWriteEncodedStrip/TIFFWriteEncodedTile: fix rewriting of LZW-compressed data
533
534	See merge request libtiff/libtiff!74
535
5362019-04-11  Even Rouault  <even.rouault@spatialys.com>
537
538	TIFFWriteEncodedStrip/TIFFWriteEncodedTile: fix rewriting of LZW-compressed data
539	Fixes https://github.com/OSGeo/gdal/issues/1439
540
541	When rewriting a LZW tile/strip whose existing size is very close to a multiple of
542	1024 bytes (and larger than 8192 bytes) with compressed data that is larger,
543	the new data was not placed at the end of the file, causing corruption.
544
5452019-04-08  Even Rouault  <even.rouault@spatialys.com>
546
547	Merge branch 'bug2848' into 'master'
548	tif_luv.c: LogLuvSetupEncode() error must return 0
549
550	See merge request libtiff/libtiff!72
551
5522019-04-03  Thomas Bernard  <miniupnp@free.fr>
553
554	build/gitlab-ci: fix typo.
555
556	show test-suite.log in gitlab-ci.
557	useful when build fails
558
559	Add output check for tiff2ps.
560	note : the reference files have been generated in master branch
561
5622019-03-23  Even Rouault  <even.rouault@spatialys.com>
563
564	tif_read.c: potentially fix false positive from Coverity Scan. CID 1400288
565
566	tif_read.c: potentially fix false positive from Coverity Scan. CID 1400271
567
568	tif_zip.c: remove dead code. CID 1400360.
569
570	tif_webp.c: remove false positive warning about dereference before null check. CID 1400255
571
572	tif_pixarlog.c: remove dead code. CID 1400342.
573
574	tif_pixarlog.c: avoid false positive Coverity Scan warnings about overflow. CID 1400300 and 1400367
575
576	tif_lzw.c: silence CoverityScan false positive. CID 1400355.
577
578	tif_luv.c: silence CoverityScan false positive. CID 1400231, 1400251, 1400254, 1400272, 1400318, 1400356
579
580	TryChopUpUncompressedBigTiff(): avoid potential division by zero. master only. GDAL Coverity CID 1400263
581
5822019-03-22  Thomas Bernard  <miniupnp@free.fr>
583
584	tif_luv.c: LogLuvSetupEncode() error must return 0.
585	see http://bugzilla.maptools.org/show_bug.cgi?id=2848
586
587	if wrongly returning 1, the processing of incorrect file continues,
588	which causes problems.
589
5902019-03-22  Thomas Bernard  <miniupnp@free.fr>
591
592	add a test for fax2tiff tool.
593
5942019-02-28  Thomas Bernard  <miniupnp@free.fr>
595
596	tiff2pdf.c: don't call t2p_tile_collapse_left() when buffer size is wrong
597	see http://bugzilla.maptools.org/show_bug.cgi?id=2785
598
599	Advertise https://libtiff.gitlab.io/libtiff/ as mirror.
600	I'm put it above the maptools.org mirror because
601	Even Rouault believe at some point it will be completely removed
602
6032019-02-28  Even Rouault  <even.rouault@spatialys.com>
604
605	Merge branch 'bug_2826' into 'master'
606	tiff2pdf.c: check colormap pointers when loading CMYK with colormap
607
608	See merge request libtiff/libtiff!65
609
6102019-02-28  Thomas Bernard  <miniupnp@free.fr>
611
612	tiff2pdf.c: check colormap pointers.
613	Avoid access to non initialized pointers
614	http://bugzilla.maptools.org/show_bug.cgi?id=2826
615
6162019-02-27  Even Rouault  <even.rouault@spatialys.com>
617
618	Merge branch 'fix_warnings' into 'master'
619	tiff2ps.c: fix warning caused by integer promotion
620
621	See merge request libtiff/libtiff!68
622
6232019-02-23  Thomas Bernard  <miniupnp@free.fr>
624
625	PSDataColorContig(): avoid heap buffer overrun.
626	fixes http://bugzilla.maptools.org/show_bug.cgi?id=2844
627	each iteration of the loop read nc bytes
628
6292019-02-22  Thomas Bernard  <miniupnp@free.fr>
630
631	tiff2ps.c: fix warning caused by integer promotion.
632	uint8 value is promoted to int in (value << 24) so -fsanitize
633	yield runtime errors :
634	tiff2ps.c:2969:33: runtime error: left shift of 246 by 24 places cannot be represented in type 'int'
635
6362019-02-22  Even Rouault  <even.rouault@spatialys.com>
637
638	Merge branch 'large_strile_improvements' into 'master'
639	Large strile support improvements
640
641	See merge request libtiff/libtiff!63
642
6432019-02-21  Even Rouault  <even.rouault@spatialys.com>
644
645	Merge branch 'gitlab-pages' into 'master'
646	ci: Add pages job
647
648	See merge request libtiff/libtiff!45
649
6502019-02-19  Even Rouault  <even.rouault@spatialys.com>
651
652	Merge branch 'issue_2833' into 'master'
653	tiffcp.c: check that (Tile Width)*(Samples/Pixel) do no overflow
654
655	See merge request libtiff/libtiff!60
656
6572019-02-19  Even Rouault  <even.rouault@spatialys.com>
658
659	Merge branch 'issue_2831' into 'master'
660	tiffcrop.c: fix invertImage() for bps 2 and 4
661
662	See merge request libtiff/libtiff!61
663
6642019-02-19  Even Rouault  <even.rouault@spatialys.com>
665
666	Merge branch 'issue_2842' into 'master'
667	move _TIFFClampDoubleToFloat() to tif_aux.c
668
669	See merge request libtiff/libtiff!62
670
6712019-02-19  Even Rouault  <even.rouault@spatialys.com>
672
673	tif_zip.c: allow reading and writing strips/tiles with more than 4 GB of compressed or uncompressed data
674
675	tif_dirread.c: when strip chopping is enabled, extend this mechanism to multi-strip uncompressed files with strips larger than 2GB to expose them as strips of ~500 MB
676
6772019-02-19  Even Rouault  <even.rouault@spatialys.com>
678
679	Merge branch 'size_t_typo' into 'master'
680	CMakeLists.txt: fix TIFF_SIZE_T
681
682	See merge request libtiff/libtiff!59
683
6842019-02-12  Thomas Bernard  <miniupnp@free.fr>
685
686	move _TIFFClampDoubleToFloat() to tif_aux.c.
687	the same function was declared in tif_dir.c and tif_dirwrite.c
688
689	see http://bugzilla.maptools.org/show_bug.cgi?id=2842
690
6912019-02-11  Thomas Bernard  <miniupnp@free.fr>
692
693	tiffcrop.c: fix invertImage() for bps 2 and 4.
694	too much bytes were processed, causing a heap buffer overrun
695	    http://bugzilla.maptools.org/show_bug.cgi?id=2831
696	the loop counter must be
697	    for (col = 0; col < width; col += 8 / bps)
698
699	Also the values were not properly calculated. It should be
700	255-x, 15-x, 3-x for bps 8, 4, 2.
701
702	But anyway it is easyer to invert all bits as 255-x = ~x, etc.
703	(substracting from a binary number composed of all 1 is like inverting
704	the bits)
705
7062019-02-11  Thomas Bernard  <miniupnp@free.fr>
707
708	tiffcp.c: use INT_MAX.
709
710	check that (Tile Width)*(Samples/Pixel) do no overflow.
711	fixes bug 2833
712
7132019-02-03  Thomas Bernard  <miniupnp@free.fr>
714
715	CMakeLists.txt: fix TIFF_SIZE_T.
716
7172019-02-02  Even Rouault  <even.rouault@spatialys.com>
718
719	Merge branch 'master' into 'master'
720	Fix for simple memory leak that was assigned CVE-2019-6128.
721
722	See merge request libtiff/libtiff!50
723
7242019-02-02  Even Rouault  <even.rouault@spatialys.com>
725
726	Merge branch 'bug2835' into 'master'
727	tiff2ps: fix heap-buffer-overflow
728
729	See merge request libtiff/libtiff!53
730
7312019-02-02  Even Rouault  <even.rouault@spatialys.com>
732
733	Fix warning (use of uninitialized value) added per d0a842c5dbad2609aed43c701a12ed12461d3405 (fixes https://gitlab.com/libtiff/libtiff/merge_requests/54#note_137742985)
734
7352019-02-02  Yuri Aksenov  <yuri.aksenov@gmail.com>
736
737	fix fax2tiff.
738	see http://bugzilla.maptools.org/show_bug.cgi?id=2799
739	fixes d9bc8472e72549f29c0062c1cbd3d56f279f3be2
740
7412019-02-02  Even Rouault  <even.rouault@spatialys.com>
742
743	Merge branch 'tiffcrop' into 'master'
744	tiffcrop: shut up clang warnings
745
746	See merge request libtiff/libtiff!52
747
7482019-02-01  Even Rouault  <even.rouault@spatialys.com>
749
750	Merge branch 'bug2833' into 'master'
751	TIFFWriteDirectoryTagTransferfunction() : fix NULL dereferencing
752
753	See merge request libtiff/libtiff!54
754
7552019-02-01  Even Rouault  <even.rouault@spatialys.com>
756
757	Merge branch 'gitignore' into 'master'
758	add test/ files to .gitignore
759
760	See merge request libtiff/libtiff!56
761
7622019-02-01  Even Rouault  <even.rouault@spatialys.com>
763
764	Merge branch 'master' into 'master'
765	tif_dir: unset transferfunction field if necessary (CVE-2018-19210)
766
767	See merge request libtiff/libtiff!47
768
7692019-01-29  Thomas Bernard  <miniupnp@free.fr>
770
771	add test/ files to .gitignore.
772
7732019-01-29  Thomas Bernard  <miniupnp@free.fr>
774
775	TIFFWriteDirectoryTagTransferfunction() : fix NULL dereferencing.
776	http://bugzilla.maptools.org/show_bug.cgi?id=2833
777
778	we must check the pointer is not NULL before memcmp() the memory
779
7802019-01-29  Thomas Bernard  <miniupnp@free.fr>
781
782	tiff2ps: fix heap-buffer-overflow.
783	http://bugzilla.maptools.org/show_bug.cgi?id=2834
784
785	usually the test (i < byte_count) is OK because the byte_count is divisible by samplesperpixel.
786	But if that is not the case, (i + ncomps) < byte_count should be used, or
787	maybe (i + samplesperpixel) <= byte_count
788
7892019-01-28  Thomas Bernard  <miniupnp@free.fr>
790
791	tiffcrop: shut up clang warnings.
792	make the out filename building a bit more simple
793	and remove the use of strcat()
794
7952019-01-23  Scott Gayou  <github.scott@gmail.com>
796
797	Fix for simple memory leak that was assigned CVE-2019-6128.
798	pal2rgb failed to free memory on a few errors. This was reported
799	here: http://bugzilla.maptools.org/show_bug.cgi?id=2836.
800
8012019-01-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
802
803	Fix tiff2ps error regarding "Inconsistent value of es" by allowing es to be zero. Problem was reported to the tiff mailing list by Julian H. Stacey on January 5, 2019.
804
8052018-12-13  Hugo Lefeuvre  <hle@debian.org>
806
807	tif_dir: unset transferfunction field if necessary.
808	The number of entries in the transfer table is determined as following:
809
810	(td->td_samplesperpixel - td->td_extrasamples) > 1 ? 3 : 1
811
812	This means that whenever td->td_samplesperpixel or td->td_extrasamples are
813	modified we also need to make sure that the number of required entries in
814	the transfer table didn't change.
815
816	If it changed and the number of entries is higher than before we should
817	invalidate the transfer table field and free previously allocated values.
818	In the other case there's nothing to do, additional tf entries won't harm
819	and properly written code will just ignore them since spp - es < 1.
820
821	For instance this situation might happen when reading an OJPEG compressed
822	image with missing SamplesPerPixel tag. In this case the SamplesPerPixel
823	field might be updated after setting the transfer table.
824
825	see http://bugzilla.maptools.org/show_bug.cgi?id=2500
826
827	This commit addresses CVE-2018-19210.
828
8292018-12-08  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
830
831	Do not attempt to re-sync zip stream after reported data error from inflate().
832
8332018-12-07  Even Rouault  <even.rouault@spatialys.com>
834
835	Merge branch 'resource-leaks' into 'master'
836	Fix two resource leaks
837
838	See merge request libtiff/libtiff!43
839
8402018-12-07  Even Rouault  <even.rouault@spatialys.com>
841
842	Merge branch 'build-jbig' into 'master'
843	add jbig support to the fuzzer
844
845	See merge request libtiff/libtiff!42
846
8472018-12-01  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
848
849	tiffcrop.c: Avoid new clang warning about tools/tiffcrop.c "size argument in 'strncat' call appears to be size of the source".
850
8512018-11-28  Even Rouault  <even.rouault@spatialys.com>
852
853	Merge branch 'webp_memleak' into 'master'
854	fixed mem leak in webp compression
855
856	See merge request libtiff/libtiff!48
857
8582018-11-28  Norman Barker  <norman.barker@mapbox.com>
859
860	fixed mem leak in webp compression.
861
8622018-11-20  Even Rouault  <even.rouault@spatialys.com>
863
864	Merge branch 'lossless_webp' into 'master'
865	fixed lossless webp compression config
866
867	See merge request libtiff/libtiff!46
868
8692018-11-20  Norman Barker  <norman.barker@mapbox.com>
870
871	fixed lossless webp compression config.
872
8732018-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
874
875	snprintf porting fix for Visual Studio 2003.
876
8772018-11-18  Roger Leigh  <rleigh@codelibre.net>
878
879	ci: Add pages job.
880
8812018-11-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
882
883	Change references from defunct ftp site to https site.
884
8852018-11-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
886
887	* configure.ac: libtiff 4.0.10 released.
888
889	Change COMPRESSION_ZSTD to 50000 and COMPRESSION_WEBP to 50001.
890
8912018-11-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
892
893	Added preliminary release notes for release 4.0.10.
894
8952018-11-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
896
897	tiff2pdf: Eliminate compiler warning about snprintf output truncation when formatting pdf_datetime.
898
8992018-11-03  Olivier Paquet  <olivier.paquet@gmail.com>
900
901	Merge branch 'no_tif_platform_console' into 'master'
902	Remove builtin support for GUI warning and error message boxes
903
904	See merge request libtiff/libtiff!24
905
9062018-11-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
907
908	tiffcrop.c: Eliminate compiler warning about snprintf output truncation when formatting filenum.
909
910	TWebPVGetField(): Add apparently missing break statement impacting TIFFTAG_WEBP_LOSSLESS.
911
912	Eliminate compiler warnings about duplicate definitions of streq/strneq macros.
913
914	Ignore generated files.
915
916	Remove and ignore files which are a product of autogen.sh.
917
9182018-11-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
919
920	Fix TIFFErrorExt() formatting of size_t type for 32-bit compiles.
921
9222018-10-30  Even Rouault  <even.rouault@spatialys.com>
923
924	tiff2bw: avoid null pointer dereference in case of out of memory situation. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2819 / CVE-2018-18661
925
926	tiffio.h: fix comment.
927
9282018-10-26  Even Rouault  <even.rouault@spatialys.com>
929
930	Merge branch 'header2' into 'master'
931	Fix 725279bd: Standalone tif_predict.h: tiff.h should be tiffiop.h
932
933	See merge request libtiff/libtiff!41
934
9352018-10-26  Kurt Schwehr  <schwehr@google.com>
936
937	Fix 725279bd: Standalone tif_predict.h: tiff.h should be tiffiop.h.
938
9392018-10-25  Even Rouault  <even.rouault@spatialys.com>
940
941	Merge branch 'headers' into 'master'
942	Add includes to headers to allow them to stand alone.
943
944	See merge request libtiff/libtiff!40
945
9462018-10-24  Kurt Schwehr  <schwehr@google.com>
947
948	Add includes to headers to allow them to stand alone.
949	This allows compilers that can do header stand alone header parsing
950	to process libtiff.
951
9522018-10-18  Even Rouault  <even.rouault@spatialys.com>
953
954	LZMAPreEncode: emit verbose error if lzma_stream_encoder() fails (typically because not enough memory available)
955
9562018-10-17  Even Rouault  <even.rouault@spatialys.com>
957
958	tif_webp.c: fix previous commit that broke scanline decoding.
959
960	tif_webp.c: fix potential read outside libwebp buffer on corrupted images
961
9622018-10-14  Even Rouault  <even.rouault@spatialys.com>
963
964	Merge branch 'jbig_decode_overflow' into 'master'
965	JBIG: fix potential out-of-bounds write in JBIGDecode()
966
967	See merge request libtiff/libtiff!38
968
9692018-10-14  Even Rouault  <even.rouault@spatialys.com>
970
971	JBIG: fix potential out-of-bounds write in JBIGDecode()
972	JBIGDecode doesn't check if the user provided buffer is large enough
973	to store the JBIG decoded image, which can potentially cause out-of-bounds
974	write in the buffer.
975	This issue was reported and analyzed by Thomas Dullien.
976
977	Also fixes a (harmless) potential use of uninitialized memory when
978	tif->tif_rawsize > tif->tif_rawcc
979
980	And in case libtiff is compiled with CHUNKY_STRIP_READ_SUPPORT, make sure
981	that whole strip data is provided to JBIGDecode()
982
9832018-10-05  Even Rouault  <even.rouault@spatialys.com>
984
985	tif_webp.c: fix scanline reading/writing.
986
987	WEBP codec: initialize nSamples in TWebPSetupDecode() and TWebPSetupEncode()
988
9892018-10-05  Even Rouault  <even.rouault@spatialys.com>
990
991	Merge branch 'tif_webp' into 'master'
992	webp support
993
994	See merge request libtiff/libtiff!32
995
9962018-10-05  Norman Barker  <norman.barker@mapbox.com>
997
998	webp in tiff.
999
10002018-09-17  Even Rouault  <even.rouault@spatialys.com>
1001
1002	Merge branch 'master' into 'master'
1003	fix three potential vulnerabilities.
1004
1005	See merge request libtiff/libtiff!33
1006
10072018-09-08  Young_X  <YangX92@hotmail.com>
1008
1009	fix out-of-bound read on some tiled images.
1010
1011	avoid potential int32 overflows in multiply_ms()
1012
1013	only read/write TIFFTAG_GROUP3OPTIONS or TIFFTAG_GROUP4OPTIONS if compression is COMPRESSION_CCITTFAX3 or COMPRESSION_CCITTFAX4
1014
10152018-08-15  Even Rouault  <even.rouault@spatialys.com>
1016
1017	TIFFSetupStrips(): avoid potential uint32 overflow on 32-bit systems with large number of strips. Probably relates to http://bugzilla.maptools.org/show_bug.cgi?id=2788 / CVE-2018-10779
1018
10192018-08-07  Even Rouault  <even.rouault@spatialys.com>
1020
1021	ZSTD: fix flush issue that can cause endless loop in ZSTDEncode()
1022	Fixes https://github.com/OSGeo/gdal/issues/833
1023
10242018-08-07  Even Rouault  <even.rouault@spatialys.com>
1025
1026	Merge branch 'fix_bug_2800' into 'master'
1027	Fix libtiff 4.0.8 regression when reading LZW-compressed strips with scanline API
1028
1029	See merge request libtiff/libtiff!31
1030
10312018-08-07  Even Rouault  <even.rouault@spatialys.com>
1032
1033	Fix libtiff 4.0.8 regression when reading LZW-compressed strips with scanline API
1034	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2800
1035
10362018-07-05  Even Rouault  <even.rouault@spatialys.com>
1037
1038	Add tag and pseudo-tag definitions for ESRI LERC codec (out of tree codec whose source is at https://github.com/OSGeo/gdal/blob/master/gdal/frmts/gtiff/tif_lerc.c)
1039
10402018-07-02  Even Rouault  <even.rouault@spatialys.com>
1041
1042	Fix TIFFTAG_ZSTD_LEVEL pseudo tag value to be > 65536, and the next one in the series
1043
10442018-05-25  Stefan Weil  <sw@weilnetz.de>
1045
1046	Remove builtin support for GUI warning and error message boxes.
1047	Now warnings always go to the console by default unless applications
1048	define their own warning and error handlers.
1049
1050	GUI applications (and Windows CE) are required to define such handlers.
1051
10522018-05-12  Even Rouault  <even.rouault@spatialys.com>
1053
1054	LZWDecodeCompat(): fix potential index-out-of-bounds write. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2780 / CVE-2018-8905
1055	The fix consists in using the similar code LZWDecode() to validate we
1056	don't write outside of the output buffer.
1057
1058	TIFFFetchNormalTag(): avoid (probably false positive) clang-tidy clang-analyzer-core.NullDereference warnings
1059
1060	TIFFWriteDirectorySec: avoid assertion. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2795. CVE-2018-10963
1061
10622018-05-04  Even Rouault  <even.rouault@spatialys.com>
1063
1064	tif_color.c: fix code comment.
1065
10662018-04-17  Even Rouault  <even.rouault@mines-paris.org>
1067
1068	Merge branch 'fuzzer-fix' into 'master'
1069	remove a pointless multiplication and a variable that's not necessary
1070
1071	See merge request libtiff/libtiff!29
1072
10732018-04-17  Paul Kehrer  <paul.l.kehrer@gmail.com>
1074
1075	remove a pointless multiplication and a variable that's not necessary.
1076
10772018-04-17  Even Rouault  <even.rouault@mines-paris.org>
1078
1079	Merge branch 'ossfuzz' into 'master'
1080	move oss-fuzz build script and fuzzer into libtiff tree
1081
1082	See merge request libtiff/libtiff!28
1083
10842018-04-17  Paul Kehrer  <paul.l.kehrer@gmail.com>
1085
1086	move oss-fuzz build script and fuzzer into libtiff tree.
1087
10882018-04-14  Even Rouault  <even.rouault@spatialys.com>
1089
1090	_TIFFGetMaxColorChannels: update for LOGLUV, ITULAB and ICCLAB that have 3 color channels
1091
10922018-04-12  Even Rouault  <even.rouault@spatialys.com>
1093
1094	Fix MSVC warning.
1095
10962018-04-12  Even Rouault  <even.rouault@mines-paris.org>
1097
1098	Merge branch 'master' into 'master'
1099	Fix NULL pointer dereference in TIFFPrintDirectory (bugzilla 2778/CVE-2018-7456)
1100
1101	See merge request libtiff/libtiff!27
1102
11032018-04-11  Hugo Lefeuvre  <hle@debian.org>
1104
1105	Fix NULL pointer dereference in TIFFPrintDirectory.
1106	The TIFFPrintDirectory function relies on the following assumptions,
1107	supposed to be guaranteed by the specification:
1108
1109	(a) A Transfer Function field is only present if the TIFF file has
1110	    photometric type < 3.
1111
1112	(b) If SamplesPerPixel > Color Channels, then the ExtraSamples field
1113	    has count SamplesPerPixel - (Color Channels) and contains
1114	    information about supplementary channels.
1115
1116	While respect of (a) and (b) are essential for the well functioning of
1117	TIFFPrintDirectory, no checks are realized neither by the callee nor
1118	by TIFFPrintDirectory itself. Hence, following scenarios might happen
1119	and trigger the NULL pointer dereference:
1120
1121	(1) TIFF File of photometric type 4 or more has illegal Transfer
1122	    Function field.
1123
1124	(2) TIFF File has photometric type 3 or less and defines a
1125	    SamplesPerPixel field such that SamplesPerPixel > Color Channels
1126	    without defining all extra samples in the ExtraSamples fields.
1127
1128	In this patch, we address both issues with respect of the following
1129	principles:
1130
1131	(A) In the case of (1), the defined transfer table should be printed
1132	    safely even if it isn't 'legal'. This allows us to avoid expensive
1133	    checks in TIFFPrintDirectory. Also, it is quite possible that
1134	    an alternative photometric type would be developed (not part of the
1135	    standard) and would allow definition of Transfer Table. We want
1136	    libtiff to be able to handle this scenario out of the box.
1137
1138	(B) In the case of (2), the transfer table should be printed at its
1139	    right size, that is if TIFF file has photometric type Palette
1140	    then the transfer table should have one row and not three, even
1141	    if two extra samples are declared.
1142
1143	In order to fulfill (A) we simply add a new 'i < 3' end condition to
1144	the broken TIFFPrintDirectory loop. This makes sure that in any case
1145	where (b) would be respected but not (a), everything stays fine.
1146
1147	(B) is fulfilled by the loop condition
1148	'i < td->td_samplesperpixel - td->td_extrasamples'. This is enough as
1149	long as (b) is respected.
1150
1151	Naturally, we also make sure (b) is respected. This is done in the
1152	TIFFReadDirectory function by making sure any non-color channel is
1153	counted in ExtraSamples.
1154
1155	This commit addresses CVE-2018-7456.
1156
11572018-03-27  Even Rouault  <even.rouault@mines-paris.org>
1158
1159	Merge branch 'tiffset-long8' into 'master'
1160	tiffset: Add support for LONG8, SLONG8 and IFD8 field types
1161
1162	See merge request libtiff/libtiff!25
1163
11642018-03-26  Roger Leigh  <rleigh@codelibre.net>
1165
1166	port: Clean up NetBSD sources and headers to build standalone.
1167
11682018-03-23  Roger Leigh  <rleigh@dundee.ac.uk>
1169
1170	port: Add strtol, strtoll and strtoull.
1171	Also update strtoul.  All use the same implementation from NetBSD libc.
1172
1173	tiffset: Add support for LONG8, SLONG8 and IFD8 field types.
1174
11752018-03-17  Even Rouault  <even.rouault@spatialys.com>
1176
1177	ChopUpSingleUncompressedStrip: avoid memory exhaustion (CVE-2017-11613)
1178	Rework fix done in 3719385a3fac5cfb20b487619a5f08abbf967cf8 to work in more
1179	cases like https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=6979.
1180	Credit to OSS Fuzz
1181
1182	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2724
1183
11842018-03-13  Even Rouault  <even.rouault@spatialys.com>
1185
1186	libtiff/tif_luv.c: rewrite loops in a more readable way (to avoid false positive reports like http://bugzilla.maptools.org/show_bug.cgi?id=2779)
1187
11882018-03-13  Even Rouault  <even.rouault@mines-paris.org>
1189
1190	Merge branch 'avoid_memory_exhaustion_in_ChopUpSingleUncompressedStrip' into 'master'
1191	ChopUpSingleUncompressedStrip: avoid memory exhaustion (CVE-2017-11613)
1192
1193	See merge request libtiff/libtiff!26
1194
11952018-03-11  Even Rouault  <even.rouault@spatialys.com>
1196
1197	ChopUpSingleUncompressedStrip: avoid memory exhaustion (CVE-2017-11613)
1198	In ChopUpSingleUncompressedStrip(), if the computed number of strips is big
1199	enough and we are in read only mode, validate that the file size is consistent
1200	with that number of strips to avoid useless attempts at allocating a lot of
1201	memory for the td_stripbytecount and td_stripoffset arrays.
1202
1203	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2724
1204
12052018-03-10  Even Rouault  <even.rouault@spatialys.com>
1206
1207	Typo fix in comment.
1208
12092018-03-03  Even Rouault  <even.rouault@spatialys.com>
1210
1211	Avoid warning with gcc 8 (partially revert 647b0e8c11ee11896f319b92cf110775f538d75c)
1212
12132018-02-25  Even Rouault  <even.rouault@mines-paris.org>
1214
1215	Merge branch 'typos' into 'master'
1216	Fix some typos
1217
1218	See merge request libtiff/libtiff!23
1219
12202018-02-24  Stefan Weil  <sw@weilnetz.de>
1221
1222	Fix some typos.
1223	Most of them were found by codespell.
1224
12252018-02-14  Even Rouault  <even.rouault@spatialys.com>
1226
1227	Typo fix in comment.
1228
1229	Merge branch 'zstd'
1230
1231	Add warning about COMPRESSION_ZSTD not being officialy registered.
1232
12332018-02-14  Even Rouault  <even.rouault@mines-paris.org>
1234
1235	Merge branch 'bug2772' into 'master'
1236	Fix for bug 2772
1237
1238	See merge request libtiff/libtiff!20
1239
12402018-02-12  Nathan Baker  <nathanb@lenovo-chrome.com>
1241
1242	Fix for bug 2772.
1243	It is possible to craft a TIFF document where the IFD list is circular,
1244	leading to an infinite loop while traversing the chain. The libtiff
1245	directory reader has a failsafe that will break out of this loop after
1246	reading 65535 directory entries, but it will continue processing,
1247	consuming time and resources to process what is essentially a bogus TIFF
1248	document.
1249
1250	This change fixes the above behavior by breaking out of processing when
1251	a TIFF document has >= 65535 directories and terminating with an error.
1252
12532018-02-09  Even Rouault  <even.rouault@mines-paris.org>
1254
1255	Merge branch 'libtiff-as-subdirectory-fixes' into 'master'
1256	Prefer target_include_directories
1257
1258	See merge request libtiff/libtiff!12
1259
12602018-02-06  Even Rouault  <even.rouault@mines-paris.org>
1261
1262	Merge branch 'cmake-cleanups' into 'master'
1263	Cmake cleanups
1264
1265	See merge request libtiff/libtiff!11
1266
12672018-02-06  Even Rouault  <even.rouault@mines-paris.org>
1268
1269	Merge branch 'check-right-cxx-variable' into 'master'
1270	Check right cxx variable
1271
1272	See merge request libtiff/libtiff!19
1273
12742018-02-06  Even Rouault  <even.rouault@mines-paris.org>
1275
1276	Merge branch 'dont-leak-stream-open' into 'master'
1277	Fix a memory leak in TIFFStreamOpen
1278
1279	See merge request libtiff/libtiff!17
1280
12812018-02-06  Ben Boeckel  <ben.boeckel@kitware.com>
1282
1283	cmake: check CXX_SUPPORT.
1284	This variable is set in response to the `cxx` cache variable; use it
1285	instead.
1286
12872018-02-04  Olivier Paquet  <olivier.paquet@gmail.com>
1288
1289	Merge branch 'warnings' into 'master'
1290	Fix all compiler warnings for default build
1291
1292	See merge request libtiff/libtiff!16
1293
12942018-02-04  Nathan Baker  <elitebadger@gmail.com>
1295
1296	Fix all compiler warnings for default build.
1297
12982018-01-30  Paul Kehrer  <paul.l.kehrer@gmail.com>
1299
1300	tabs are hard.
1301
13022018-01-29  Paul Kehrer  <paul.l.kehrer@gmail.com>
1303
1304	use hard tabs like the rest of the project.
1305
1306	Fix a memory leak in TIFFStreamOpen.
1307	TIFFStreamOpen allocates a new tiff{o,i}s_data, but if TIFFClientOpen
1308	fails then that struct is leaked. Delete it if the returned TIFF * is
1309	null.
1310
13112018-01-29  Kevin Funk  <kfunk@kde.org>
1312
1313	Bump minimum required CMake version to v2.8.11.
1314	Because we use the BUILD_INTERFACE generator expression
1315
13162018-01-27  Even Rouault  <even.rouault@mines-paris.org>
1317
1318	Merge branch 'patch-1' into 'master'
1319	Update CMakeLists.txt for build fix on Windows
1320
1321	See merge request libtiff/libtiff!14
1322
13232018-01-27  Even Rouault  <even.rouault@mines-paris.org>
1324
1325	Merge branch 'patch-2' into 'master'
1326	Update tiffgt.c for build fix on Windows
1327
1328	See merge request libtiff/libtiff!13
1329
13302018-01-25  Olivier Paquet  <olivier.paquet@gmail.com>
1331
1332	Merge branch 'bug2750' into 'master'
1333	Add workaround to pal2rgb buffer overflow.
1334
1335	See merge request libtiff/libtiff!15
1336
13372018-01-25  Nathan Baker  <elitebadger@gmail.com>
1338
1339	Add workaround to pal2rgb buffer overflow.
1340
13412018-01-23  Andrea  <andrea@andreaplanet.com>
1342
1343	Update tiffgt.c for build fix on Windows.
1344
1345	Update CMakeLists.txt for build fix on Windows.
1346
13472018-01-15  Even Rouault  <even.rouault@mines-paris.org>
1348
1349	Merge branch 'has-attribute-check' into 'master'
1350	tiffiop: use __has_attribute to detect the no_sanitize attribute
1351
1352	See merge request libtiff/libtiff!10
1353
13542018-01-15  Ben Boeckel  <ben.boeckel@kitware.com>
1355
1356	cmake: avoid setting hard-coded variables in the cache.
1357
1358	cmake: avoid an unnecessary intermediate variable.
1359
1360	cmake: avoid an unnecessary intermediate variable.
1361
1362	cmake: avoid tautological logic.
1363
1364	cmake: use check_symbol_exists.
1365	This accounts for symbols being provided by macros.
1366
1367	cmake: remove unused configure checks.
1368
13692018-01-12  Kevin Funk  <kfunk@kde.org>
1370
1371	Prefer target_include_directories.
1372	When libtiff is included in a super project via a simple
1373	`add_subdirectory(libtiff)`, this way the `tiff` library target has all
1374	the necessary information to build against it.
1375
1376	Note: The BUILD_INTERFACE generator expression feature requires at least
1377	CMake v2.8.11 if I'm correct.
1378
13792018-01-09  Ben Boeckel  <ben.boeckel@kitware.com>
1380
1381	tiffiop: use __has_attribute to detect the no_sanitize attribute.
1382
13832017-12-31  Even Rouault  <even.rouault@spatialys.com>
1384
1385	man/TIFFquery.3tiff: remove reference to non-existing TIFFReadStrip() function in TIFFIsByteSwapped() documentation. Patch by Eric Piel. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2763
1386
1387	libtiff/tif_dir.c: _TIFFVGetField(): fix heap out-of-bounds access when requesting TIFFTAG_NUMBEROFINKS on a EXIF directory. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2765. Reported by Google Autofuzz project
1388
1389	libtiff/tif_print.c: TIFFPrintDirectory(): fix null pointer dereference on corrupted file. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2770
1390
13912017-12-21  Even Rouault  <even.rouault@spatialys.com>
1392
1393	Add libzstd to gitlab-ci.
1394
13952017-12-21  Even Rouault  <even.rouault@spatialys.com>
1396
1397	Add ZSTD compression codec.
1398	From https://github.com/facebook/zstd
1399	"Zstandard, or zstd as short version, is a fast lossless compression
1400	algorithm, targeting real-time compression scenarios at zlib-level
1401	and better compression ratios. It's backed by a very fast entropy stage,
1402	provided by Huff0 and FSE library."
1403
1404	We require libzstd >= 1.0.0 so as to be able to use streaming compression
1405	and decompression methods.
1406
1407	The default compression level we have selected is 9 (range goes from 1 to 22),
1408	which experimentally offers equivalent or better compression ratio than
1409	the default deflate/ZIP level of 6, and much faster compression.
1410
1411	For example on a 6600x4400 16bit image, tiffcp -c zip runs in 10.7 seconds,
1412	while tiffcp -c zstd runs in 5.3 seconds. Decompression time for zip is
1413	840 ms, and for zstd 650 ms. File size is 42735936 for zip, and
1414	42586822 for zstd. Similar findings on other images.
1415
1416	On a 25894x16701 16bit image,
1417
1418	                Compression time     Decompression time     File size
1419
1420	ZSTD                 35 s                   3.2 s          399 700 498
1421	ZIP/Deflate       1m 20 s                   4.9 s          419 622 336
1422
14232017-12-10  Even Rouault  <even.rouault@mines-paris.org>
1424
1425	Merge branch 'fix_cve-2017-9935' into 'master'
1426	Fix CVE-2017-9935
1427
1428	See merge request libtiff/libtiff!7
1429
14302017-12-10  Brian May  <brian@linuxpenguins.xyz>
1431
1432	tiff2pdf: Fix apparent incorrect type for transfer table.
1433	The standard says the transfer table contains unsigned 16 bit values,
1434	I have no idea why we refer to them as floats.
1435
14362017-12-10  Brian May  <brian@linuxpenguins.xyz>
1437
1438	tiff2pdf: Fix CVE-2017-9935.
1439	Fix for http://bugzilla.maptools.org/show_bug.cgi?id=2704
1440
1441	This vulnerability - at least for the supplied test case - is because we
1442	assume that a tiff will only have one transfer function that is the same
1443	for all pages. This is not required by the TIFF standards.
1444
1445	We than read the transfer function for every page.  Depending on the
1446	transfer function, we allocate either 2 or 4 bytes to the XREF buffer.
1447	We allocate this memory after we read in the transfer function for the
1448	page.
1449
1450	For the first exploit - POC1, this file has 3 pages. For the first page
1451	we allocate 2 extra extra XREF entries. Then for the next page 2 more
1452	entries. Then for the last page the transfer function changes and we
1453	allocate 4 more entries.
1454
1455	When we read the file into memory, we assume we have 4 bytes extra for
1456	each and every page (as per the last transfer function we read). Which
1457	is not correct, we only have 2 bytes extra for the first 2 pages. As a
1458	result, we end up writing past the end of the buffer.
1459
1460	There are also some related issues that this also fixes. For example,
1461	TIFFGetField can return uninitalized pointer values, and the logic to
1462	detect a N=3 vs N=1 transfer function seemed rather strange.
1463
1464	It is also strange that we declare the transfer functions to be of type
1465	float, when the standard says they are unsigned 16 bit values. This is
1466	fixed in another patch.
1467
1468	This patch will check to ensure that the N value for every transfer
1469	function is the same for every page. If this changes, we abort with an
1470	error. In theory, we should perhaps check that the transfer function
1471	itself is identical for every page, however we don't do that due to the
1472	confusion of the type of the data in the transfer function.
1473
14742017-12-10  Even Rouault  <even.rouault@mines-paris.org>
1475
1476	Merge branch 'undef-warn-fixes' into 'master'
1477	Fix a couple of harmless but annoying -Wundef warnings
1478
1479	See merge request libtiff/libtiff!8
1480
14812017-12-07  Vadim Zeitlin  <vadim@zeitlins.org>
1482
1483	Remove tests for undefined SIZEOF_VOIDP.
1484	As configure never uses AC_CHECK_SIZEOF(void*), this symbol is never
1485	defined and so it doesn't make sense to test it in the code, this just
1486	results in -Wundef warnings if they're enabled.
1487
1488	Avoid harmless -Wundef warnings for __clang_major__
1489	Check that we're using Clang before checking its version.
1490
14912017-12-02  Even Rouault  <even.rouault@mines-paris.org>
1492
1493	Merge branch 'remove_autogenerated_files' into 'master'
1494	Remove autogenerated files
1495
1496	See merge request libtiff/libtiff!5
1497
14982017-12-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
1499
1500	Merge branch 'tif_config_h_includes' into 'master'
1501	'tif_config.h' or 'tiffiop.h' must be included before any system header.
1502
1503	See merge request libtiff/libtiff!6
1504
15052017-12-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
1506
1507	'tif_config.h' or 'tiffio.h' must be included before any system header.
1508
15092017-12-01  Even Rouault  <even.rouault@spatialys.com>
1510
1511	.gitignore: add patterns for build from root.
1512
1513	Remove remaining .cvsignore files.
1514
1515	Remove autoconf/automake generated files, and add them to .gitignore.
1516
15172017-12-01  Olivier Paquet  <olivier.paquet@gmail.com>
1518
1519	Merge branch 'makedistcheck' into 'master'
1520	build/gitlab-ci and build/travis-ci: add a 'make dist' step in autoconf_build()…
1521
1522	See merge request libtiff/libtiff!4
1523
15242017-12-01  Even Rouault  <even.rouault@spatialys.com>
1525
1526	build/gitlab-ci and build/travis-ci: add a 'make dist' step in autoconf_build() target, to check we are release-ready
1527
15282017-12-01  Even Rouault  <even.rouault@mines-paris.org>
1529
1530	Merge branch 'git_updates' into 'master'
1531	CVS to Git updates
1532
1533	See merge request libtiff/libtiff!2
1534
15352017-12-01  Even Rouault  <even.rouault@spatialys.com>
1536
1537	HOWTO-RELEASE: update to use signed tags.
1538
1539	README.md: use markdown syntax for hyperlinks.
1540
15412017-11-30  Even Rouault  <even.rouault@spatialys.com>
1542
1543	Add .gitignore.
1544
1545	Regenerate autoconf files.
1546
1547	Makefile.am: update to reflect removal of README.vms and README -> README.md
1548
1549	Remove all $Id and $Headers comments with CVS versions.
1550
1551	HOWTO-RELEASE: update for git.
1552
1553	Remove outdated .cvsignore.
1554
1555	Remove outdated commit script.
1556
1557	Remove README.vms.
1558
1559	Rename README as README.md, and update content.
1560
1561	html/index.html: reflect change from CVS to gitlab.
1562
15632017-11-30  Olivier Paquet  <olivier.paquet@gmail.com>
1564
1565	Merge branch 'test-ci' into 'master'
1566	Update CI configuration
1567
1568	See merge request libtiff/libtiff!1
1569
15702017-11-23  Roger Leigh  <rleigh@codelibre.net>
1571
1572	appveyor: Correct path for git clone and skip artefact archival.
1573
15742017-11-22  Roger Leigh  <rleigh@codelibre.net>
1575
1576	travis-ci: Remove unused matrix exclusion.
1577
1578	Add gitlab-ci build support.
1579
15802017-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
1581
1582	* configure.ac: libtiff 4.0.9 released.
1583
1584	* html/v4.0.9.html: Add HTML file to document changes in libtiff
1585	v4.0.9.
1586
15872017-11-17  Even Rouault <even.rouault at spatialys.com>
1588
1589	* libtiff/tif_aux.c, tif_getimage.c, tif_read.c: typo fixes in
1590	comments.
1591
15922017-11-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
1593
1594	* test/Makefile.am: Add some tests for tiff2bw.
1595
15962017-11-01  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
1597
1598	* tools/tiff2bw.c (main): Free memory allocated in the tiff2bw
1599	program.  This is in response to the report associated with
1600	CVE-2017-16232 but does not solve the extremely high memory usage
1601	with the associated POC file.
1602
16032017-10-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
1604
1605	* tools/tiff2pdf.c (t2p_sample_realize_palette): Fix possible
1606	arithmetic overflow in bounds checking code and eliminate
1607	comparison between signed and unsigned type.
1608
1609	* tools/fax2tiff.c (_FAX_Client_Data): Pass FAX_Client_Data as the
1610	client data.  This client data is not used at all at the moment,
1611	but it makes the most sense.  Issue that the value of
1612	client_data.fd was passed where a pointer is expected was reported
1613	via email by Gerald Schade on Sun, 29 Oct 2017.
1614
16152017-10-23  Even Rouault <even.rouault at spatialys.com>
1616
1617	* libtiff/tif_getimage.c: avoid floating point division by zero in
1618	initCIELabConversion()
1619	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3733
1620	Credit to OSS Fuzz
1621
16222017-10-17  Even Rouault <even.rouault at spatialys.com>
1623
1624	* libtiff/tif_jpeg.c: add compatibility with libjpeg-turbo 1.5.2 that
1625	honours max_memory_to_use > 0.
1626	Cf https://github.com/libjpeg-turbo/libjpeg-turbo/issues/162
1627
16282017-10-10  Even Rouault <even.rouault at spatialys.com>
1629
1630	* nmake.opt: support a DEBUG=1 option, so as to adjust OPTFLAGS and use
1631	/MDd runtime in debug mode.
1632
16332017-10-01  Even Rouault <even.rouault at spatialys.com>
1634
1635	* tools/tiffset.c: fix setting a single value for the ExtraSamples tag
1636	(and other tags with variable number of values).
1637	So 'tiffset -s ExtraSamples 1 X'. This only worked
1638	when setting 2 or more values, but not just one.
1639
16402017-09-29  Even Rouault <even.rouault at spatialys.com>
1641
1642	* libtiff/libtiff.def: add TIFFReadRGBAStripExt and TIFFReadRGBATileExt
1643	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2735
1644
16452017-09-09  Even Rouault <even.rouault at spatialys.com>
1646
1647	* libtiff/tif_dirread.c: add NULL check to avoid likely false positive
1648	null-pointer dereference warning by CLang Static Analyzer.
1649
16502017-09-07  Even Rouault <even.rouault at spatialys.com>
1651
1652	* libtiff/tiffiop.h, tif_aux.c: redirect SeekOK() macro to a _TIFFSeekoK()
1653	function that checks if the offset is not bigger than INT64_MAX, so as
1654	to avoid a -1 error return code of TIFFSeekFile() to match a required
1655	seek to UINT64_MAX/-1.
1656	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2726
1657	Adapted from proposal by Nicolas Ruff.
1658
16592017-08-29  Even Rouault <even.rouault at spatialys.com>
1660
1661	* libtiff/tif_jpeg.c: accept reading the last strip of a JPEG compressed
1662	file if the codestream height is larger than the truncated height of the
1663	strip. Emit a warning in this situation since this is non compliant.
1664
16652017-08-28  Even Rouault <even.rouault at spatialys.com>
1666
1667	* test/Makefile.am: add missing reference to images/quad-lzw-compat.tiff
1668	to fix "make distcheck". Patch by Roger Leigh
1669
16702017-08-23  Even Rouault <even.rouault at spatialys.com>
1671
1672	* libtiff/tif_dirwrite.c: replace assertion to tag value not fitting
1673	on uint32 when selecting the value of SubIFD tag by runtime check
1674	(in TIFFWriteDirectoryTagSubifd()).
1675	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2728
1676	Reported by team OWL337
1677
16782017-08-23  Even Rouault <even.rouault at spatialys.com>
1679
1680	* libtiff/tif_dirwrite.c: replace assertion related to not finding the
1681	SubIFD tag by runtime check (in TIFFWriteDirectorySec())
1682	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2727
1683	Reported by team OWL337
1684
16852017-07-24  Even Rouault <even.rouault at spatialys.com>
1686
1687	* libtiff/tif_luv.c: further reduce memory requirements for temporary
1688	buffer when RowsPerStrip >= image_length in LogLuvInitState() and
1689	LogL16InitState().
1690	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2700
1691	Credit to OSS Fuzz
1692
16932017-07-24  Even Rouault <even.rouault at spatialys.com>
1694
1695	* libtiff/tif_getimage.c: fix fromskew computation when to-be-skipped
1696	pixel number is not a multiple of the horizontal subsampling, and
1697	also in some other cases. Impact putcontig8bitYCbCr44tile,
1698	putcontig8bitYCbCr42tile, putcontig8bitYCbCr41tile,
1699	putcontig8bitYCbCr21tile and putcontig8bitYCbCr12tile
1700	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2637 (discovered
1701	by Agostino Sarubbo)
1702	and https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2691 (credit
1703	to OSS Fuzz)
1704
17052017-07-24  Even Rouault <even.rouault at spatialys.com>
1706
1707	* libtiff/tif_getimage.c: gtTileContig() and gtTileSeparate():
1708	properly break from loops on error when stoponerr is set, instead
1709	of going on iterating on row based loop.
1710
17112017-07-18  Even Rouault <even.rouault at spatialys.com>
1712
1713	* libtiff/tif_luv.c: LogLuvInitState(): avoid excessive memory
1714	allocation when RowsPerStrip tag is missing.
1715	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2683
1716	Credit to OSS-Fuzz
1717
17182017-07-15  Even Rouault <even.rouault at spatialys.com>
1719
1720	* libtiff/tif_read.c: add protection against excessive memory
1721	allocation attempts in TIFFReadDirEntryArray() on short files.
1722	Effective for mmap'ed case. And non-mmap'ed case, but restricted
1723	to 64bit builds.
1724	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2675
1725
17262017-07-15  Even Rouault <even.rouault at spatialys.com>
1727
1728	* libtiff/tif_read.c: in TIFFFetchStripThing(), only grow the
1729	arrays that hold StripOffsets/StripByteCounts, when they are smaller
1730	than the expected number of striles, up to 1 million striles, and
1731	error out beyond. Can be tweaked by setting the environment variable
1732	LIBTIFF_STRILE_ARRAY_MAX_RESIZE_COUNT.
1733	This partially goes against a change added on 2002-12-17 to accept
1734	those arrays of wrong sizes, but is needed to avoid denial of services.
1735	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2350
1736	Credit to OSS Fuzz
1737
17382017-07-15  Even Rouault <even.rouault at spatialys.com>
1739
1740	* libtiff/tif_read.c: TIFFFillStrip() / TIFFFillTile().
1741	Complementary fix for http://bugzilla.maptools.org/show_bug.cgi?id=2708
1742	in the isMapped() case, so as to avoid excessive memory allocation
1743	when we need a temporary buffer but the file is truncated.
1744
17452017-07-15  Even Rouault <even.rouault at spatialys.com>
1746
1747	* tools/tiff2pdf.c: prevent heap buffer overflow write in "Raw"
1748	mode on PlanarConfig=Contig input images.
1749	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2715
1750	Reported by team OWL337
1751
17522017-07-11  Even Rouault <even.rouault at spatialys.com>
1753
1754	* libtiff/tif_dir.c: avoid potential null pointer dereference in
1755	_TIFFVGetField() on corrupted TIFFTAG_NUMBEROFINKS tag instance.
1756	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2713
1757
17582017-07-11  Even Rouault <even.rouault at spatialys.com>
1759
1760	* libtiff/tif_lzw.c: fix potential out-of-buffer read on 1-byte LZW
1761	strips. Crashing issue only on memory mapped files, where the strip
1762	offset is the last byte of the file, and the file size is a multiple
1763	of one page size on the CPU architecture (typically 4096). Credit
1764	to myself :-)
1765
17662017-07-11  Even Rouault <even.rouault at spatialys.com>
1767
1768	* test/tiffcp-lzw-compat.sh, test/images/quad-lzw-compat.tiff: new files
1769	to test old-style LZW decompression
1770	* test/common.sh, Makefile.am, CMakeList.txt: updated with above
1771
17722017-07-11  Even Rouault <even.rouault at spatialys.com>
1773
1774	* refresh autoconf/make stuff with what is on Ubuntu 16.04 (minor changes)
1775
17762017-07-11  Even Rouault <even.rouault at spatialys.com>
1777
1778	* libtiff/tif_lzw.c: fix 4.0.8 regression in the decoding of old-style LZW
1779	compressed files.
1780
17812017-07-10  Even Rouault <even.rouault at spatialys.com>
1782
1783	* libtiff/tif_pixarlog.c: avoid excessive memory allocation on decoding
1784	when RowsPerStrip tag is not defined (and thus td_rowsperstrip == UINT_MAX)
1785	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2554
1786	Credit to OSS Fuzz
1787
17882017-07-04  Even Rouault <even.rouault at spatialys.com>
1789
1790	* libtiff/tif_read.c, tiffiop.h: add a _TIFFReadEncodedTileAndAllocBuffer()
1791	and _TIFFReadTileAndAllocBuffer() variants of TIFFReadEncodedTile() and
1792	TIFFReadTile() that allocates the decoded buffer only after a first
1793	successful TIFFFillTile(). This avoids excessive memory allocation
1794	on corrupted files.
1795	* libtiff/tif_getimage.c: use _TIFFReadTileAndAllocBuffer().
1796	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2470
1797	Credit to OSS Fuzz.
1798
17992017-07-04  Even Rouault <even.rouault at spatialys.com>
1800
1801	* libtiff/tif_error.c, tif_warning.c: correctly use va_list when both
1802	an old-style and new-style warning/error handlers are installed.
1803	Patch by Paavo Helde (sent on the mailing list)
1804
18052017-07-02  Even Rouault <even.rouault at spatialys.com>
1806
1807	* libtiff/tif_read.c: TIFFStartTile(): set tif_rawcc to
1808	tif_rawdataloaded when it is set. Similarly to TIFFStartStrip().
1809	This issue was revealed by the change of 2017-06-30 in TIFFFileTile(),
1810	limiting the number of bytes read. But it could probably have been hit
1811	too in CHUNKY_STRIP_READ_SUPPORT mode previously ?
1812	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2454
1813	Credit to OSS Fuzz
1814
18152017-06-30  Even Rouault <even.rouault at spatialys.com>
1816
1817	* man: update documentation regarding SubIFD tag and
1818	TIFFSetSubDirectory() data type.
1819	Patch by Eric Piel
1820	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2671
1821
18222017-06-30  Even Rouault <even.rouault at spatialys.com>
1823
1824	* libtiff/tif_dirwrite.c: in TIFFWriteDirectoryTagCheckedXXXX()
1825	functions associated with LONG8/SLONG8 data type, replace assertion that
1826	the file is BigTIFF, by a non-fatal error.
1827	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2712
1828	Reported by team OWL337
1829
18302017-06-30  Even Rouault <even.rouault at spatialys.com>
1831
1832	* libtiff/tif_read.c, tiffiop.h: add a _TIFFReadEncodedStripAndAllocBuffer()
1833	function, variant of TIFFReadEncodedStrip() that allocates the
1834	decoded buffer only after a first successful TIFFFillStrip(). This avoids
1835	excessive memory allocation on corrupted files.
1836	* libtiff/tif_getimage.c: use _TIFFReadEncodedStripAndAllocBuffer().
1837	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2708 and
1838	https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2433 .
1839	Credit to OSS Fuzz
1840
18412017-06-30  Even Rouault <even.rouault at spatialys.com>
1842
1843	* libtiff/tif_read.c: TIFFFillTile(): add limitation to the number
1844	of bytes read in case td_stripbytecount[strip] is bigger than
1845	reasonable, so as to avoid excessive memory allocation (similarly to
1846	what was done for TIFFFileStrip() on 2017-05-10)
1847
18482017-06-29  Even Rouault <even.rouault at spatialys.com>
1849
1850	* libtiff/tiffiop.h, libtiff/tif_jpeg.c, libtiff/tif_jpeg_12.c,
1851	libtiff/tif_read.c: make TIFFReadScanline() works in
1852	CHUNKY_STRIP_READ_SUPPORT mode with JPEG stream with multiple scans.
1853	Also make configurable through a LIBTIFF_JPEG_MAX_ALLOWED_SCAN_NUMBER
1854	environment variable the maximum number of scans allowed. Defaults to
1855	100.
1856
18572017-06-27  Even Rouault <even.rouault at spatialys.com>
1858
1859	* libtiff/tif_dirread.c: in TIFFReadDirEntryFloat(), check that a
1860	double value can fit in a float before casting. Patch by Nicolas RUFF
1861
18622017-06-26  Even Rouault <even.rouault at spatialys.com>
1863
1864	* libtiff/tif_jbig.c: fix memory leak in error code path of JBIGDecode()
1865	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2706
1866	Reported by team OWL337
1867
18682017-06-24  Even Rouault <even.rouault at spatialys.com>
1869
1870	* libtiff/tif_jpeg.c: error out at decoding time if anticipated libjpeg
1871	memory allocation is above 100 MB. libjpeg in case of multiple scans,
1872	which is allowed even in baseline JPEG, if components are spread over several
1873	scans and not interleavedin a single one, needs to allocate memory (or
1874	backing store) for the whole strip/tile.
1875	See http://www.libjpeg-turbo.org/pmwiki/uploads/About/TwoIssueswiththeJPEGStandard.pdf
1876	This limitation may be overriden by setting the
1877	LIBTIFF_ALLOW_LARGE_LIBJPEG_MEM_ALLOC environment variable, or recompiling
1878	libtiff with a custom value of TIFF_LIBJPEG_LARGEST_MEM_ALLOC macro.
1879
18802017-06-24  Even Rouault <even.rouault at spatialys.com>
1881
1882	* libtiff/tif_jpeg.c: add anti-denial of service measure to avoid excessive
1883	CPU consumption on progressive JPEGs with a huge number of scans.
1884	See http://www.libjpeg-turbo.org/pmwiki/uploads/About/TwoIssueswiththeJPEGStandard.pdf
1885	Note: only affects libtiff since 2014-12-29 where support of non-baseline JPEG
1886	was added.
1887
18882017-06-18  Even Rouault <even.rouault at spatialys.com>
1889
1890	* libtiff/tiffiop.h: add TIFF_NOSANITIZE_UNSIGNED_INT_OVERFLOW macro to
1891	disable CLang warnings raised by -fsanitize=undefined,unsigned-integer-overflow
1892	* libtiff/tif_predict.c: decorate legitimate functions where unsigned int
1893	overflow occur with TIFF_NOSANITIZE_UNSIGNED_INT_OVERFLOW
1894	* libtiff/tif_dirread.c: avoid unsigned int overflow in EstimateStripByteCounts()
1895	and BYTECOUNTLOOKSBAD when file is too short.
1896	* libtiff/tif_jpeg.c: avoid (harmless) unsigned int overflow on tiled images.
1897	* libtiff/tif_fax3.c: avoid unsigned int overflow in Fax3Encode2DRow(). Could
1898	potentially be a bug with huge rows.
1899	* libtiff/tif_getimage.c: avoid many (harmless) unsigned int overflows.
1900
19012017-06-12  Even Rouault <even.rouault at spatialys.com>
1902
1903	* libtiff/tif_dirread.c: TIFFFetchStripThing(): limit the number of items
1904	read in StripOffsets/StripByteCounts tags to the number of strips to avoid
1905	excessive memory allocation.
1906	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2215
1907	Credit to OSS Fuzz
1908
19092017-06-12  Even Rouault <even.rouault at spatialys.com>
1910
1911	* libtiff/tif_dirread.c: fix regression of libtiff 4.0.8 in
1912	ChopUpSingleUncompressedStrip() regarding update of newly single-strip
1913	uncompressed files whose bytecount is 0. Before the change of 2016-12-03,
1914	the condition bytecount==0 used to trigger an early exit/disabling of
1915	strip chop. Re-introduce that in update mode. Otherwise this cause
1916	later incorrect setting for the value of StripByCounts/StripOffsets.
1917	( https://trac.osgeo.org/gdal/ticket/6924 )
1918
19192017-06-10  Even Rouault <even.rouault at spatialys.com>
1920
1921	* .appveyor.yml, .travis.yml, build/travis-ci: apply patches
1922	0001-ci-Travis-script-improvements.patch and
1923	0002-ci-Invoke-helper-script-via-shell.patch by Roger Leigh
1924	(sent to mailing list)
1925
19262017-06-08  Even Rouault <even.rouault at spatialys.com>
1927
1928	* .travis.yml, build/travis-ci: new files from
1929	0001-ci-Add-Travis-support-for-Linux-builds-with-Autoconf.patch by
1930	Roger Leigh (sent to mailing list on 2017-06-08)
1931	This patch adds support for the Travis-CI service.
1932
1933	* .appveyor.yml: new file from
1934	0002-ci-Add-AppVeyor-support.patch by Roger Leigh (sent to mailing
1935	list on 2017-06-08)
1936	This patch adds a .appveyor.yml file to the top-level.  This allows
1937	one to opt in to having a branch built on Windows with Cygwin,
1938	MinGW and MSVC automatically when a branch is pushed to GitHub,
1939	GitLab, BitBucket or any other supported git hosting service.
1940
1941	* CMakeLists.txt, test/CMakeLists.txt, test/TiffTestCommon.cmake: apply
1942	patch 0001-cmake-Improve-Cygwin-and-MingGW-test-support.patch from Roger
1943	Leigh (sent to mailing list on 2017-06-08)
1944	This patch makes the CMake build system support running the tests
1945	with MinGW or Cygwin.
1946
19472017-06-08  Even Rouault <even.rouault at spatialys.com>
1948
1949	* libtiff/tif_swab.c: if DISABLE_CHECK_TIFFSWABMACROS is defined, do not do
1950	the #ifdef TIFFSwabXXX checks. Make it easier for GDAL to rename the symbols
1951	of its internal libtiff copy.
1952
19532017-06-01  Even Rouault <even.rouault at spatialys.com>
1954
1955	* libtiff/tif_dirinfo.c, tif_dirread.c: add _TIFFCheckFieldIsValidForCodec(),
1956	and use it in TIFFReadDirectory() so as to ignore fields whose tag is a
1957	codec-specified tag but this codec is not enabled. This avoids TIFFGetField()
1958	to behave differently depending on whether the codec is enabled or not, and
1959	thus can avoid stack based buffer overflows in a number of TIFF utilities
1960	such as tiffsplit, tiffcmp, thumbnail, etc.
1961	Patch derived from 0063-Handle-properly-CODEC-specific-tags.patch
1962	(http://bugzilla.maptools.org/show_bug.cgi?id=2580) by Raphaël Hertzog.
1963	Fixes:
1964	http://bugzilla.maptools.org/show_bug.cgi?id=2580
1965	http://bugzilla.maptools.org/show_bug.cgi?id=2693
1966	http://bugzilla.maptools.org/show_bug.cgi?id=2625 (CVE-2016-10095)
1967	http://bugzilla.maptools.org/show_bug.cgi?id=2564 (CVE-2015-7554)
1968	http://bugzilla.maptools.org/show_bug.cgi?id=2561 (CVE-2016-5318)
1969	http://bugzilla.maptools.org/show_bug.cgi?id=2499 (CVE-2014-8128)
1970	http://bugzilla.maptools.org/show_bug.cgi?id=2441
1971	http://bugzilla.maptools.org/show_bug.cgi?id=2433
1972
19732017-05-29  Even Rouault <even.rouault at spatialys.com>
1974
1975	* libtiff/tif_getimage.c: initYCbCrConversion(): stricter validation for
1976	refBlackWhite coefficients values. To avoid invalid float->int32 conversion
1977	(when refBlackWhite[0] == 2147483648.f)
1978	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1907
1979	Credit to OSS Fuzz
1980
19812017-05-29  Even Rouault <even.rouault at spatialys.com>
1982
1983	* libtiff/tif_color.c: TIFFYCbCrToRGBInit(): stricter clamping to avoid
1984	int32 overflow in TIFFYCbCrtoRGB().
1985	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1844
1986	Credit to OSS Fuzz
1987
19882017-05-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
1989
1990	* configure.ac: libtiff 4.0.8 released.
1991
1992	* html/v4.0.8.html: Add description of changes targeting the 4.0.8
1993	release.
1994
19952017-05-20 Even Rouault <even.rouault at spatialys.com>
1996
1997	* libtiff/tif_getimage.c: initYCbCrConversion(): stricter validation for
1998	refBlackWhite coefficients values. To avoid invalid float->int32 conversion.
1999	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1718
2000	Credit to OSS Fuzz
2001
20022017-05-18 Even Rouault <even.rouault at spatialys.com>
2003
2004	* libtiff/tif_getimage.c: initYCbCrConversion(): check luma[1] is not zero
2005	to avoid division by zero.
2006	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1665
2007	Credit to OSS Fuzz
2008
20092017-05-17 Even Rouault <even.rouault at spatialys.com>
2010
2011	* libtiff/tif_read.c: _TIFFVSetField(): fix outside range cast of double to
2012	float.
2013	Credit to Google Autofuzz project
2014
20152017-05-17 Even Rouault <even.rouault at spatialys.com>
2016
2017	* libtiff/tif_getimage.c: initYCbCrConversion(): add basic validation of
2018	luma and refBlackWhite coefficients (just check they are not NaN for now),
2019	to avoid potential float to int overflows.
2020	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1663
2021	Credit to OSS Fuzz
2022
20232017-05-17 Even Rouault <even.rouault at spatialys.com>
2024
2025	* libtiff/tif_pixarlog.c: PixarLogDecode(): resync tif_rawcp with
2026	next_in and tif_rawcc with avail_in at beginning and end of function,
2027	similarly to what is done in LZWDecode(). Likely needed so that it
2028	works properly with latest chnges in tif_read.c in CHUNKY_STRIP_READ_SUPPORT
2029	mode. But untested...
2030
20312017-05-17 Even Rouault <even.rouault at spatialys.com>
2032
2033	* libtiff/tif_lzw.c: update dec_bitsleft at beginning of LZWDecode(),
2034	and update tif_rawcc at end of LZWDecode(). This is needed to properly
2035	work with the latest chnges in tif_read.c in CHUNKY_STRIP_READ_SUPPORT
2036	mode.
2037
20382017-05-14 Even Rouault <even.rouault at spatialys.com>
2039
2040	* libtiff/tif_luv.c: LogL16InitState(): avoid excessive memory
2041	allocation when RowsPerStrip tag is missing.
2042	Credit to OSS-Fuzz (locally run, on GDAL)
2043
20442017-05-14 Even Rouault <even.rouault at spatialys.com>
2045
2046	* libtiff/tif_packbits.c: fix out-of-buffer read in PackBitsDecode()
2047	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1563
2048	Credit to OSS-Fuzz
2049
20502017-05-13 Even Rouault <even.rouault at spatialys.com>
2051
2052	* libtiff/tif_pixarlog.c, tif_luv.c: avoid potential int32
2053	overflows in multiply_ms() and add_ms().
2054	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1558
2055	Credit to OSS-Fuzz
2056
20572017-05-13 Even Rouault <even.rouault at spatialys.com>
2058
2059	* libtiff/tif_color.c: avoid potential int32 overflow in
2060	TIFFYCbCrToRGBInit()
2061	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1533
2062	Credit to OSS-Fuzz
2063
20642017-05-13 Even Rouault <even.rouault at spatialys.com>
2065
2066	* libtiff/tif_read.c: update tif_rawcc in CHUNKY_STRIP_READ_SUPPORT
2067	mode with tif_rawdataloaded when calling TIFFStartStrip() or
2068	TIFFFillStripPartial(). This avoids reading beyond tif_rawdata
2069	when bytecount > tif_rawdatasize.
2070	Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1545.
2071	Credit to OSS-Fuzz
2072
20732017-05-12 Even Rouault <even.rouault at spatialys.com>
2074
2075	* libtiff/tif_read.c: TIFFFillStripPartial():
2076	avoid excessive memory allocation in case of shorten files.
2077	Only effective on 64 bit builds.
2078	Credit to OSS-Fuzz (locally run, on GDAL)
2079
20802017-05-12 Even Rouault <even.rouault at spatialys.com>
2081
2082	* libtiff/tif_read.c: TIFFFillStripPartial() / TIFFSeek(),
2083	avoid potential integer overflows with read_ahead in
2084	CHUNKY_STRIP_READ_SUPPORT mode. Should
2085	especially occur on 32 bit platforms.
2086
20872017-05-10 Even Rouault <even.rouault at spatialys.com>
2088
2089	* libtiff/tif_read.c: TIFFFillStrip() and TIFFFillTile():
2090	avoid excessive memory allocation in case of shorten files.
2091	Only effective on 64 bit builds and non-mapped cases.
2092	Credit to OSS-Fuzz (locally run, on GDAL)
2093
20942017-05-10 Even Rouault <even.rouault at spatialys.com>
2095
2096	* libtiff/tif_zip.c, tif_pixarlog.c, tif_predict.c: fix memory
2097	leak when the underlying codec (ZIP, PixarLog) succeeds its
2098	setupdecode() method, but PredictorSetup fails.
2099	Credit to OSS-Fuzz (locally run, on GDAL)
2100
21012017-05-10 Even Rouault <even.rouault at spatialys.com>
2102
2103	* libtiff/tif_read.c: TIFFFillStrip(): add limitation to the number
2104	of bytes read in case td_stripbytecount[strip] is bigger than
2105	reasonable, so as to avoid excessive memory allocation.
2106
21072017-04-28 Even Rouault <even.rouault at spatialys.com>
2108
2109	* tools/tiff2bw.c: close TIFF handle in error code path.
2110	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2677
2111
21122017-04-27 Even Rouault <even.rouault at spatialys.com>
2113
2114	* litiff/tif_fax3.c: avoid crash in Fax3Close() on empty file.
2115	Patch by Alan Coopersmith  + complement by myself.
2116	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2673
2117	* tools/fax2tiff.c: emit appropriate message if the input file is
2118	empty. Patch by Alan Coopersmith.
2119	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2672
2120
21212017-04-27 Even Rouault <even.rouault at spatialys.com>
2122
2123	* libtiff/tif_ojpeg.c: fix potential memory leak in
2124	OJPEGReadHeaderInfoSecTablesQTable, OJPEGReadHeaderInfoSecTablesDcTable
2125	and OJPEGReadHeaderInfoSecTablesAcTable
2126	Patch by Nicolás Peña.
2127	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2670
2128
21292017-04-27 Even Rouault <even.rouault at spatialys.com>
2130
2131	* libtiff/tif_dirread.c: fix memory leak in non DEFER_STRILE_LOAD
2132	mode (ie default) when there is both a StripOffsets and
2133	TileOffsets tag, or a StripByteCounts and TileByteCounts
2134	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2689
2135	* tools/tiff2ps.c: call TIFFClose() in error code paths.
2136
21372017-02-25 Even Rouault <even.rouault at spatialys.com>
2138
2139	* libtiff/tif_fax3.c, tif_predict.c, tif_getimage.c: fix GCC 7
2140	-Wimplicit-fallthrough warnings.
2141
21422017-02-18 Even Rouault <even.rouault at spatialys.com>
2143
2144	* libtiff/tif_pixarlog.c: fix memory leak in error code path of
2145	PixarLogSetupDecode(). Patch by Nicolás Peña.
2146	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2665
2147
21482017-02-18 Even Rouault <even.rouault at spatialys.com>
2149
2150	* libtiff/tif_lzw.c: in LZWPostEncode(), increase, if necessary, the
2151	code bit-width after flushing the remaining code and before emitting
2152	the EOI code.
2153	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=1982
2154
21552017-01-31 Even Rouault <even.rouault at spatialys.com>
2156
2157	* libtiff/tif_jpeg.c: only run JPEGFixupTagsSubsampling() if the
2158	YCbCrSubsampling tag is not explicitly present. This helps a bit to reduce
2159	the I/O amount when te tag is present (especially on cloud hosted files).
2160
21612017-01-14 Even Rouault <even.rouault at spatialys.com>
2162
2163	* tools/raw2tiff.c: avoid integer division by zero.
2164	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2631
2165
21662017-01-12 Even Rouault <even.rouault at spatialys.com>
2167
2168	* libtiff/tif_ojpeg.c: fix leak in OJPEGReadHeaderInfoSecTablesQTable,
2169	OJPEGReadHeaderInfoSecTablesDcTable and OJPEGReadHeaderInfoSecTablesAcTable
2170	when read fails.
2171	Patch by Nicolás Peña.
2172	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2659
2173
21742017-01-11 Even Rouault <even.rouault at spatialys.com>
2175
2176	* libtiff/tif_luv.c, tif_lzw.c, tif_packbits.c: return 0 in Encode
2177	functions instead of -1 when TIFFFlushData1() fails.
2178	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2130
2179
21802017-01-11 Even Rouault <even.rouault at spatialys.com>
2181
2182	* tools/tiffcp.c: error out cleanly in cpContig2SeparateByRow and
2183	cpSeparate2ContigByRow if BitsPerSample != 8 to avoid heap based overflow.
2184	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2656 and
2185	http://bugzilla.maptools.org/show_bug.cgi?id=2657
2186
21872017-01-11 Even Rouault <even.rouault at spatialys.com>
2188
2189	* libtiff/tiffio.h, tif_unix.c, tif_win32.c, tif_vms.c: add _TIFFcalloc()
2190
2191	* libtiff/tif_read.c: TIFFReadBufferSetup(): use _TIFFcalloc() to zero
2192	initialize tif_rawdata.
2193	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2651
2194
21952017-01-11 Even Rouault <even.rouault at spatialys.com>
2196
2197	* libtiff/tif_getimage.c: add explicit uint32 cast in putagreytile to
2198	avoid UndefinedBehaviorSanitizer warning.
2199	Patch by Nicolás Peña.
2200	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2658
2201
22022017-01-11 Even Rouault <even.rouault at spatialys.com>
2203
2204	* libtiff/tif_read.c: avoid potential undefined behaviour on signed integer
2205	addition in TIFFReadRawStrip1() in isMapped() case.
2206	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2650
2207
22082017-01-11 Even Rouault <even.rouault at spatialys.com>
2209
2210	* libtiff/tif_jpeg.c: validate BitsPerSample in JPEGSetupEncode() to avoid
2211	undefined behaviour caused by invalid shift exponent.
2212	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2648
2213
22142017-01-11 Even Rouault <even.rouault at spatialys.com>
2215
2216	* libtiff/tif_dir.c, tif_dirread.c, tif_dirwrite.c: implement various clampings
2217	of double to other data types to avoid undefined behaviour if the output range
2218	isn't big enough to hold the input value.
2219	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2643
2220	http://bugzilla.maptools.org/show_bug.cgi?id=2642
2221	http://bugzilla.maptools.org/show_bug.cgi?id=2646
2222	http://bugzilla.maptools.org/show_bug.cgi?id=2647
2223
22242017-01-11 Even Rouault <even.rouault at spatialys.com>
2225
2226	* libtiff/tif_dirread.c: avoid division by floating point 0 in
2227	TIFFReadDirEntryCheckedRational() and TIFFReadDirEntryCheckedSrational(),
2228	and return 0 in that case (instead of infinity as before presumably)
2229	Apparently some sanitizers do not like those divisions by zero.
2230	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2644
2231
22322017-01-11 Even Rouault <even.rouault at spatialys.com>
2233
2234	* libtiff/tif_dirwrite.c: in TIFFWriteDirectoryTagCheckedRational, replace
2235	assertion by runtime check to error out if passed value is strictly
2236	negative.
2237	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2535
2238
2239	* tools/tiffcrop.c: remove extraneous TIFFClose() in error code path, that
2240	caused double free.
2241	Related to http://bugzilla.maptools.org/show_bug.cgi?id=2535
2242
22432017-01-11 Even Rouault <even.rouault at spatialys.com>
2244
2245	* libtiff/tif_jpeg.c: avoid integer division by zero in
2246	JPEGSetupEncode() when horizontal or vertical sampling is set to 0.
2247	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2653
2248
22492017-01-03 Even Rouault <even.rouault at spatialys.com>
2250
2251	* libtiff/tif_jpeg.c: increase libjpeg max memory usable to
2252	10 MB instead of libjpeg 1MB default. This helps when creating files
2253	with "big" tile, without using libjpeg temporary files.
2254	Related to https://trac.osgeo.org/gdal/ticket/6757
2255
22562016-12-20 Even Rouault <even.rouault at spatialys.com>
2257
2258	* tools/tiff2pdf.c: avoid potential heap-based overflow in
2259	t2p_readwrite_pdf_image_tile().
2260	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2640
2261
22622016-12-20 Even Rouault <even.rouault at spatialys.com>
2263
2264	* tools/tiff2pdf.c: avoid potential invalid memory read in
2265	t2p_writeproc.
2266	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2639
2267
22682016-12-20 Even Rouault <even.rouault at spatialys.com>
2269
2270	* tools/tiff2pdf.c: fix wrong usage of memcpy() that can trigger
2271	unspecified behaviour.
2272	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2638
2273
22742016-12-18 Even Rouault <even.rouault at spatialys.com>
2275
2276	* libtiff/tif_getimage.c: fix potential memory leaks in error code
2277	path of TIFFRGBAImageBegin().
2278	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2627
2279
22802016-12-18 Even Rouault <even.rouault at spatialys.com>
2281
2282	* tools/tiff2pdf.c: prevent heap-based buffer overflow in -j mode
2283	on a paletted image. Note: this fix errors out before the overflow
2284	happens. There could probably be a better fix.
2285	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2635
2286
22872016-12-17 Even Rouault <even.rouault at spatialys.com>
2288
2289	* libtiff/tiffio.h, libtiff/tif_getimage.c: add TIFFReadRGBAStripExt()
2290	and TIFFReadRGBATileExt() variants of the functions without ext, with
2291	an extra argument to control the stop_on_error behaviour.
2292
22932016-12-17 Even Rouault <even.rouault at spatialys.com>
2294
2295	* tools/tiff2ps.c: fix 2 heap-based buffer overflows (in PSDataBW
2296	and PSDataColorContig). Reported by Agostino Sarubbo.
2297	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2633 and
2298	http://bugzilla.maptools.org/show_bug.cgi?id=2634.
2299
23002016-12-13 Even Rouault <even.rouault at spatialys.com>
2301
2302	* libtiff/tif_fax3.h: revert change done on 2016-01-09 that made
2303	Param member of TIFFFaxTabEnt structure a uint16 to reduce size of
2304	the binary. It happens that the Hylafax software uses the tables that
2305	follow this typedef (TIFFFaxMainTable, TIFFFaxWhiteTable,
2306	TIFFFaxBlackTable), although they are not in a public libtiff header.
2307	Raised by Lee Howard.
2308	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2636
2309
23102016-12-04 Even Rouault <even.rouault at spatialys.com>
2311
2312	* html/man/Makefile.am: remove thumbnail.1.html and rgb2ycbcr.1.html
2313	from installed pages since the corresponding utilities are no longer
2314	installed. Reported by Havard Eidnes
2315	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2606
2316
23172016-12-03 Even Rouault <even.rouault at spatialys.com>
2318
2319	* libtiff/tif_write.c: fix misleading indentation as warned by GCC.
2320
23212016-12-03 Even Rouault <even.rouault at spatialys.com>
2322
2323	* tools/tiffcp.c: replace assert( (bps % 8) == 0 ) by a non assert check.
2324	Reported by Agostino Sarubbo.
2325	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2605
2326
23272016-12-03 Even Rouault <even.rouault at spatialys.com>
2328
2329	* tools/tiffcp.c: fix uint32 underflow/overflow that can cause heap-based
2330	buffer overflow.
2331	Reported by Agostino Sarubbo.
2332	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2610
2333
23342016-12-03 Even Rouault <even.rouault at spatialys.com>
2335
2336	* tools/tiffcp.c: avoid potential division by zero is BitsPerSamples tag is
2337	missing.
2338	Reported by Agostino Sarubbo.
2339	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2607
2340
23412016-12-03 Even Rouault <even.rouault at spatialys.com>
2342
2343	* man/Makefile.am: remove thumbnail.1 and rgb2ycbcr.1 from installed man
2344	pages since the corresponding utilities are no longer installed.
2345	Reported by Havard Eidnes
2346	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2606
2347
23482016-12-03 Even Rouault <even.rouault at spatialys.com>
2349
2350	* tools/tif_dir.c: when TIFFGetField(, TIFFTAG_NUMBEROFINKS, ) is called,
2351	limit the return number of inks to SamplesPerPixel, so that code that parses
2352	ink names doesn't go past the end of the buffer.
2353	Reported by Agostino Sarubbo.
2354	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2599
2355
23562016-12-03 Even Rouault <even.rouault at spatialys.com>
2357
2358	* tools/tiffcp.c: avoid potential division by zero is BitsPerSamples tag is
2359	missing.
2360	Reported by Agostino Sarubbo.
2361	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2597
2362
23632016-12-03 Even Rouault <even.rouault at spatialys.com>
2364
2365	* tools/tiffinfo.c: fix null pointer dereference in -r mode when the image has
2366	no StripByteCount tag.
2367	Reported by Agostino Sarubbo.
2368	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2594
2369
23702016-12-03 Even Rouault <even.rouault at spatialys.com>
2371
2372	* tools/tiffcrop.c: fix integer division by zero when BitsPerSample is missing.
2373	Reported by Agostino Sarubbo.
2374	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2619
2375
23762016-12-03 Even Rouault <even.rouault at spatialys.com>
2377
2378	* tools/tiffcrop.c: add 3 extra bytes at end of strip buffer in
2379	readSeparateStripsIntoBuffer() to avoid read outside of heap allocated buffer.
2380	Reported by Agostino Sarubbo.
2381	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2621
2382
23832016-12-03 Even Rouault <even.rouault at spatialys.com>
2384
2385	* tools/tiffcrop.c: fix readContigStripsIntoBuffer() in -i (ignore) mode so
2386	that the output buffer is correctly incremented to avoid write outside bounds.
2387	Reported by Agostino Sarubbo.
2388	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2620
2389
23902016-12-03 Even Rouault <even.rouault at spatialys.com>
2391
2392	* libtiff/tif_ojpeg.c: make OJPEGDecode() early exit in case of failure in
2393	OJPEGPreDecode(). This will avoid a divide by zero, and potential other issues.
2394	Reported by Agostino Sarubbo.
2395	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2611
2396
23972016-12-03 Even Rouault <even.rouault at spatialys.com>
2398
2399	* libtiff/tif_dirread.c: modify ChopUpSingleUncompressedStrip() to
2400	instanciate compute ntrips as TIFFhowmany_32(td->td_imagelength, rowsperstrip),
2401	instead of a logic based on the total size of data. Which is faulty is
2402	the total size of data is not sufficient to fill the whole image, and thus
2403	results in reading outside of the StripByCounts/StripOffsets arrays when
2404	using TIFFReadScanline().
2405	Reported by Agostino Sarubbo.
2406	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2608.
2407
2408	* libtiff/tif_strip.c: revert the change in TIFFNumberOfStrips() done
2409	for http://bugzilla.maptools.org/show_bug.cgi?id=2587 / CVE-2016-9273 since
2410	the above change is a better fix that makes it unnecessary.
2411
24122016-12-03 Even Rouault <even.rouault at spatialys.com>
2413
2414	* libtiff/tif_pixarlog.c, libtiff/tif_luv.c: fix heap-based buffer
2415	overflow on generation of PixarLog / LUV compressed files, with
2416	ColorMap, TransferFunction attached and nasty plays with bitspersample.
2417	The fix for LUV has not been tested, but suffers from the same kind
2418	of issue of PixarLog.
2419	Reported by Agostino Sarubbo.
2420	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2604
2421
24222016-12-02 Even Rouault <even.rouault at spatialys.com>
2423
2424	* tools/tiffcp.c: avoid uint32 underflow in cpDecodedStrips that
2425	can cause various issues, such as buffer overflows in the library.
2426	Reported by Agostino Sarubbo.
2427	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2598
2428
24292016-12-02 Even Rouault <even.rouault at spatialys.com>
2430
2431	* libtiff/tif_read.c, libtiff/tiffiop.h: fix uint32 overflow in
2432	TIFFReadEncodedStrip() that caused an integer division by zero.
2433	Reported by Agostino Sarubbo.
2434	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2596
2435
24362016-11-20 Even Rouault <even.rouault at spatialys.com>
2437
2438	* libtiff/tif_getimage.c, libtiff/tif_open.c: add parenthesis to
2439	fix cppcheck clarifyCalculation warnings
2440	* libtiff/tif_predict.c, libtiff/tif_print.c: fix printf unsigned
2441	vs signed formatting (cppcheck invalidPrintfArgType_uint warnings)
2442
24432016-11-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2444
2445	* tools/fax2tiff.c (main): Applied patch by Jörg Ahrens to fix
2446	passing client data for Win32 builds using tif_win32.c
2447	(USE_WIN32_FILEIO defined) for file I/O.  Patch was provided via
2448	email on November 20, 2016.
2449
24502016-11-19  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2451
2452	* libtiff 4.0.7 released.
2453
2454	* configure.ac: Update for 4.0.7 release.
2455
2456	* tools/tiffdump.c (ReadDirectory): Remove uint32 cast to
2457	_TIFFmalloc() argument which resulted in Coverity report.  Added
2458	more mutiplication overflow checks.
2459
24602016-11-18 Even Rouault <even.rouault at spatialys.com>
2461
2462	* tools/tiffcrop.c: Fix memory leak in (recent) error code path.
2463	Fixes Coverity 1394415.
2464
24652016-11-17  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2466
2467	* libtiff/tif_getimage.c: Fix some benign warnings which appear in
2468	64-bit compilation under Microsoft Visual Studio of the form
2469	"Arithmetic overflow: 32-bit value is shifted, then cast to 64-bit
2470	value.  Results might not be an expected value.".  Problem was
2471	reported on November 16, 2016 on the tiff mailing list.
2472
24732016-11-16 Even Rouault <even.rouault at spatialys.com>
2474
2475	* libtiff/tif_dirread.c: in TIFFFetchNormalTag(), do not dereference
2476	NULL pointer when values of tags with TIFF_SETGET_C16_ASCII / TIFF_SETGET_C32_ASCII
2477	access are 0-byte arrays.
2478	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2593 (regression introduced
2479	by previous fix done on 2016-11-11 for CVE-2016-9297).
2480	Reported by Henri Salo. Assigned as CVE-2016-9448
2481
24822016-11-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2483
2484	* tools/tiffinfo.c (TIFFReadContigTileData): Fix signed/unsigned
2485	comparison warning.
2486	(TIFFReadSeparateTileData): Fix signed/unsigned comparison
2487	warning.
2488
2489	* tools/tiffcrop.c (readContigTilesIntoBuffer): Fix
2490	signed/unsigned comparison warning.
2491
2492	* html/v4.0.7.html: Add a file to document the pending 4.0.7
2493	release.
2494
24952016-11-11 Even Rouault <even.rouault at spatialys.com>
2496
2497	* tools/tiff2pdf.c: avoid undefined behaviour related to overlapping
2498	of source and destination buffer in memcpy() call in
2499	t2p_sample_rgbaa_to_rgb()
2500	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2577
2501
25022016-11-11 Even Rouault <even.rouault at spatialys.com>
2503
2504	* tools/tiff2pdf.c: fix potential integer overflows on 32 bit builds
2505	in t2p_read_tiff_size()
2506	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2576
2507
25082016-11-11 Even Rouault <even.rouault at spatialys.com>
2509
2510	* libtiff/tif_aux.c: fix crash in TIFFVGetFieldDefaulted()
2511	when requesting Predictor tag and that the zip/lzw codec is not
2512	configured.
2513	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2591
2514
25152016-11-11 Even Rouault <even.rouault at spatialys.com>
2516
2517	* libtiff/tif_dirread.c: in TIFFFetchNormalTag(), make sure that
2518	values of tags with TIFF_SETGET_C16_ASCII / TIFF_SETGET_C32_ASCII
2519	access are null terminated, to avoid potential read outside buffer
2520	in _TIFFPrintField().
2521	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2590 (CVE-2016-9297)
2522
25232016-11-11 Even Rouault <even.rouault at spatialys.com>
2524
2525	* libtiff/tif_dirread.c: reject images with OJPEG compression that
2526	have no TileOffsets/StripOffsets tag, when OJPEG compression is
2527	disabled. Prevent null pointer dereference in TIFFReadRawStrip1()
2528	and other functions that expect td_stripbytecount to be non NULL.
2529	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2585
2530
25312016-11-11 Even Rouault <even.rouault at spatialys.com>
2532
2533	* tools/tiffcrop.c: fix multiple uint32 overflows in
2534	writeBufferToSeparateStrips(), writeBufferToContigTiles() and
2535	writeBufferToSeparateTiles() that could cause heap buffer overflows.
2536	Reported by Henri Salo from Nixu Corporation.
2537	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2592 (CVE-2016-9532)
2538
25392016-11-10 Even Rouault <even.rouault at spatialys.com>
2540
2541	* libtiff/tif_strip.c: make TIFFNumberOfStrips() return the td->td_nstrips
2542	value when it is non-zero, instead of recomputing it. This is needed in
2543	TIFF_STRIPCHOP mode where td_nstrips is modified. Fixes a read outsize of
2544	array in tiffsplit (or other utilities using TIFFNumberOfStrips()).
2545	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2587 (CVE-2016-9273)
2546
25472016-11-04 Even Rouault <even.rouault at spatialys.com>
2548
2549	* libtiff/tif_predic.c: fix memory leaks in error code paths added in
2550	previous commit (fix for MSVR 35105)
2551
25522016-10-31 Even Rouault <even.rouault at spatialys.com>
2553
2554	* libtiff/tif_predict.h, libtiff/tif_predict.c:
2555	Replace assertions by runtime checks to avoid assertions in debug mode,
2556	or buffer overflows in release mode. Can happen when dealing with
2557	unusual tile size like YCbCr with subsampling. Reported as MSVR 35105
2558	by Axel Souchet	& Vishal Chauhan from the MSRC Vulnerabilities & Mitigations
2559	team.
2560
25612016-10-26 Even Rouault <even.rouault at spatialys.com>
2562
2563	* tools/fax2tiff.c: fix segfault when specifying -r without
2564	argument. Patch by Yuriy M. Kaminskiy.
2565	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2572
2566
25672016-10-25 Even Rouault <even.rouault at spatialys.com>
2568
2569	* libtiff/tif_dir.c: discard values of SMinSampleValue and
2570	SMaxSampleValue when they have been read and the value of
2571	SamplesPerPixel is changed afterwards (like when reading a
2572	OJPEG compressed image with a missing SamplesPerPixel tag,
2573	and whose photometric is RGB or YCbCr, forcing SamplesPerPixel
2574	being 3). Otherwise when rewriting the directory (for example
2575	with tiffset, we will expect 3 values whereas the array had been
2576	allocated with just one), thus causing a out of bound read access.
2577	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2500
2578	(CVE-2014-8127, duplicate: CVE-2016-3658)
2579
2580	* libtiff/tif_dirwrite.c: avoid null pointer dereference on td_stripoffset
2581	when writing directory, if FIELD_STRIPOFFSETS was artificially set
2582	for a hack case	in OJPEG case.
2583	Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2500
2584	(CVE-2014-8127, duplicate: CVE-2016-3658)
2585
25862016-10-25 Even Rouault <even.rouault at spatialys.com>
2587
2588	* tools/tiffinfo.c: fix out-of-bound read on some tiled images.
2589	(http://bugzilla.maptools.org/show_bug.cgi?id=2517)
2590
2591	* libtiff/tif_compress.c: make TIFFNoDecode() return 0 to indicate an
2592	error and make upper level read routines treat it accordingly.
2593	(linked to the test case of http://bugzilla.maptools.org/show_bug.cgi?id=2517)
2594
25952016-10-14 Even Rouault <even.rouault at spatialys.com>
2596
2597	* tools/tiffcrop.c: fix out-of-bound read of up to 3 bytes in
2598	readContigTilesIntoBuffer(). Reported as MSVR 35092 by Axel Souchet
2599	& Vishal Chauhan from the MSRC Vulnerabilities & Mitigations team.
2600
26012016-10-09 Even Rouault <even.rouault at spatialys.com>
2602
2603	* tools/tiff2pdf.c: fix write buffer overflow of 2 bytes on JPEG
2604	compressed images. Reported by Tyler Bohan of Cisco Talos as
2605	TALOS-CAN-0187 / CVE-2016-5652.
2606	Also prevents writing 2 extra uninitialized bytes to the file stream.
2607
26082016-10-08 Even Rouault <even.rouault at spatialys.com>
2609
2610	* tools/tiffcp.c: fix out-of-bounds write on tiled images with odd
2611	tile width vs image width. Reported as MSVR 35103
2612	by Axel Souchet and Vishal Chauhan from the MSRC Vulnerabilities &
2613	Mitigations team.
2614
26152016-10-08 Even Rouault <even.rouault at spatialys.com>
2616
2617	* tools/tiff2pdf.c: fix read -largely- outsize of buffer in
2618	t2p_readwrite_pdf_image_tile(), causing crash, when reading a
2619	JPEG compressed image with TIFFTAG_JPEGTABLES length being one.
2620	Reported as MSVR 35101 by Axel Souchet and Vishal Chauhan from
2621	the MSRC Vulnerabilities & Mitigations team. CVE-2016-9453
2622
26232016-10-08 Even Rouault <even.rouault at spatialys.com>
2624
2625	* tools/tiffcp.c: fix read of undefined variable in case of missing
2626	required tags. Found on test case of MSVR 35100.
2627	* tools/tiffcrop.c: fix read of undefined buffer in
2628	readContigStripsIntoBuffer() due to uint16 overflow. Probably not a
2629	security issue but I can be wrong. Reported as MSVR 35100 by Axel
2630	Souchet from the MSRC Vulnerabilities & Mitigations team.
2631
26322016-09-25  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2633
2634	* html: Change as many remotesensing.org broken links to a working
2635	URL as possible.
2636
26372016-09-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2638
2639	* libtiff/tif_getimage.c (TIFFRGBAImageOK): Reject attempts to
2640	read floating point images.
2641
2642	* libtiff/tif_predict.c (PredictorSetup): Enforce bits-per-sample
2643	requirements of floating point predictor (3).  Fixes CVE-2016-3622
2644	"Divide By Zero in the tiff2rgba tool."
2645
26462016-09-23 Even Rouault <even.rouault at spatialys.com>
2647
2648	* tools/tiffcrop.c: fix various out-of-bounds write vulnerabilities
2649	in heap or stack allocated buffers. Reported as MSVR 35093,
2650	MSVR 35096 and MSVR 35097. Discovered by Axel Souchet and Vishal
2651	Chauhan from the MSRC Vulnerabilities & Mitigations team.
2652	* tools/tiff2pdf.c: fix out-of-bounds write vulnerabilities in
2653	heap allocate buffer in t2p_process_jpeg_strip(). Reported as MSVR
2654	35098. Discovered by Axel Souchet and Vishal Chauhan from the MSRC
2655	Vulnerabilities & Mitigations team.
2656	* libtiff/tif_pixarlog.c: fix out-of-bounds write vulnerabilities
2657	in heap allocated buffers. Reported as MSVR 35094. Discovered by
2658	Axel Souchet and Vishal Chauhan from the MSRC Vulnerabilities &
2659	Mitigations team.
2660	* libtiff/tif_write.c: fix issue in error code path of TIFFFlushData1()
2661	that didn't reset the tif_rawcc and tif_rawcp members. I'm not
2662	completely sure if that could happen in practice outside of the odd
2663	behaviour of t2p_seekproc() of tiff2pdf). The report points that a
2664	better fix could be to check the return value of TIFFFlushData1() in
2665	places where it isn't done currently, but it seems this patch is enough.
2666	Reported as MSVR 35095. Discovered by Axel Souchet & Vishal Chauhan &
2667	Suha Can from the MSRC Vulnerabilities & Mitigations team.
2668
26692016-09-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2670
2671	* html/man/index.html: Comment out links to documentation for
2672	abandoned utilities.
2673
26742016-09-17 Even Rouault <even.rouault at spatialys.com>
2675
2676	* libtiff/tif_lzma.c: typo fix in comment
2677
26782016-09-04 Even Rouault <even.rouault at spatialys.com>
2679
2680	* libtiff/*.c: fix warnings raised by clang 3.9 -Wcomma
2681
26822016-09-03 Even Rouault <even.rouault at spatialys.com>
2683
2684	* libtiff/tif_dirwrite.c, libtiff/tif_color.c: fix warnings raised
2685	by GCC 5 / clang -Wfloat-conversion
2686
26872016-08-16 Even Rouault <even.rouault at spatialys.com>
2688
2689	* tools/tiffcrop.c: fix C99'ism.
2690
26912016-08-15 Even Rouault <even.rouault at spatialys.com>
2692
2693	* tools/tiff2bw.c: fix weight computation that could result of color
2694	value overflow (no security implication). Fix bugzilla #2550.
2695	Patch by Frank Freudenberg.
2696
26972016-08-15 Even Rouault <even.rouault at spatialys.com>
2698
2699	* tools/rgb2ycbcr.c: validate values of -v and -h parameters to
2700	avoid potential divide by zero. Fixes CVE-2016-3623 (bugzilla #2569)
2701
27022016-08-15 Even Rouault <even.rouault at spatialys.com>
2703
2704	* tools/tiffcrop.c: Fix out-of-bounds write in loadImage().
2705	From patch libtiff-CVE-2016-3991.patch from
2706	libtiff-4.0.3-25.el7_2.src.rpm by Nikola Forro (bugzilla #2543)
2707
27082016-08-15 Even Rouault <even.rouault at spatialys.com>
2709
2710	* libtiff/tif_pixarlog.c: Fix write buffer overflow in PixarLogEncode
2711	if more input samples are provided than expected by PixarLogSetupEncode.
2712	Idea based on libtiff-CVE-2016-3990.patch from
2713	libtiff-4.0.3-25.el7_2.src.rpm by Nikola Forro, but with different and
2714	simpler check. (bugzilla #2544)
2715
27162016-08-15 Even Rouault <even.rouault at spatialys.com>
2717
2718	* tools/tiff2rgba.c: Fix integer overflow in size of allocated
2719	buffer, when -b mode is enabled, that could result in out-of-bounds
2720	write. Based initially on patch tiff-CVE-2016-3945.patch from
2721	libtiff-4.0.3-25.el7_2.src.rpm by Nikola Forro, with correction for
2722	invalid tests that rejected valid files. (bugzilla #2545)
2723
27242016-07-11 Even Rouault <even.rouault at spatialys.com>
2725
2726	* tools/tiffcrop.c: Avoid access outside of stack allocated array
2727	on a tiled separate TIFF with more than 8 samples per pixel.
2728	Reported by Kaixiang Zhang of the Cloud Security Team, Qihoo 360
2729	(CVE-2016-5321 / CVE-2016-5323 , bugzilla #2558 / #2559)
2730
27312016-07-10 Even Rouault <even.rouault at spatialys.com>
2732
2733	* libtiff/tif_read.c: Fix out-of-bounds read on
2734	memory-mapped files in TIFFReadRawStrip1() and TIFFReadRawTile1()
2735	when stripoffset is beyond tmsize_t max value (reported by
2736	Mathias Svensson)
2737
27382016-07-10 Even Rouault <even.rouault at spatialys.com>
2739
2740	* tools/tiffdump.c: fix a few misaligned 64-bit reads warned
2741	by -fsanitize
2742
27432016-07-03 Even Rouault <even.rouault at spatialys.com>
2744
2745	* libtiff/tif_read.c: make TIFFReadEncodedStrip() and
2746	TIFFReadEncodedTile() directly use user provided buffer when
2747	no compression (and other conditions) to save a memcpy().
2748
2749	* libtiff/tif_write.c: make TIFFWriteEncodedStrip() and
2750	TIFFWriteEncodedTile() directly use user provided buffer when
2751	no compression to save a memcpy().
2752
27532016-07-01  Even Rouault <even.rouault at spatialys.com>
2754
2755	* libtiff/tif_luv.c: validate that for COMPRESSION_SGILOG and
2756	PHOTOMETRIC_LOGL, there is only one sample per pixel. Avoid
2757	potential invalid memory write on corrupted/unexpected images when
2758	using the TIFFRGBAImageBegin() interface (reported by
2759	Clay Wood)
2760
27612016-06-28  Even Rouault <even.rouault at spatialys.com>
2762
2763	* libtiff/tif_pixarlog.c: fix potential buffer write overrun in
2764	PixarLogDecode() on corrupted/unexpected images (reported by Mathias Svensson)
2765	(CVE-2016-5875)
2766
27672016-06-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2768
2769	* libtiff/libtiff.def: Added _TIFFMultiply32 and _TIFFMultiply64
2770	to libtiff.def
2771
27722016-06-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2773
2774	* tools/Makefile.am: The libtiff tools bmp2tiff, gif2tiff,
2775	ras2tiff, sgi2tiff, sgisv, and ycbcr are completely removed from
2776	the distribution.  The libtiff tools rgb2ycbcr and thumbnail are
2777	only built in the build tree for testing.  Old files are put in
2778	new 'archive' subdirectory of the source repository, but not in
2779	distribution archives.  These changes are made in order to lessen
2780	the maintenance burden.
2781
27822016-05-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2783
2784	* libtiff/tif_config.vc.h (HAVE_SNPRINTF): Add a '1' to the
2785	HAVE_SNPRINTF definition.'
2786
27872016-05-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2788
2789	* libtiff/tif_config.vc.h (HAVE_SNPRINTF): Applied patch by Edward
2790	Lam to define HAVE_SNPRINTF for Visual Studio 2015.
2791
27922016-04-27  Even Rouault <even.rouault at spatialys.com>
2793
2794	* libtiff/tif_dirread.c: when compiled with DEFER_STRILE_LOAD,
2795	fix regression, introduced on 2014-12-23, when reading a one-strip
2796	file without a StripByteCounts tag. GDAL #6490
2797
27982016-04-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2799
2800	* html/bugs.html: Replace Andrey Kiselev with Bob Friesenhahn for
2801	purposes of security issue reporting.
2802
28032016-01-23  Even Rouault <even.rouault at spatialys.com>
2804
2805	* libtiff/*: upstream typo fixes (mostly contributed by Kurt Schwehr)
2806	coming from GDAL internal libtiff
2807
28082016-01-09  Even Rouault <even.rouault at spatialys.com>
2809
2810	* libtiff/tif_fax3.h: make Param member of TIFFFaxTabEnt structure
2811	a uint16 to reduce size of the binary.
2812
28132016-01-03  Even Rouault <even.rouault at spatialys.com>
2814
2815	* libtiff/tif_read.c, tif_dirread.c: fix indentation issues raised
2816	by GCC 6 -Wmisleading-indentation
2817
28182015-12-27  Even Rouault <even.rouault at spatialys.com>
2819
2820	* libtiff/tif_pixarlog.c: avoid zlib error messages to pass a NULL
2821	string to %s formatter, which is undefined behaviour in sprintf().
2822
28232015-12-27  Even Rouault <even.rouault at spatialys.com>
2824
2825	* libtiff/tif_next.c: fix potential out-of-bound write in NeXTDecode()
2826	triggered by http://lcamtuf.coredump.cx/afl/vulns/libtiff5.tif
2827	(bugzilla #2508)
2828
28292015-12-27  Even Rouault <even.rouault at spatialys.com>
2830
2831	* libtiff/tif_luv.c: fix potential out-of-bound writes in decode
2832	functions in non debug builds by replacing assert()s by regular if
2833	checks (bugzilla #2522).
2834	Fix potential out-of-bound reads in case of short input data.
2835
28362015-12-26  Even Rouault <even.rouault at spatialys.com>
2837
2838	* libtiff/tif_getimage.c: fix out-of-bound reads in TIFFRGBAImage
2839	interface in case of unsupported values of SamplesPerPixel/ExtraSamples
2840	for LogLUV / CIELab. Add explicit call to TIFFRGBAImageOK() in
2841	TIFFRGBAImageBegin(). Fix CVE-2015-8665 reported by limingxing and
2842	CVE-2015-8683 reported by zzf of Alibaba.
2843
28442015-12-21  Even Rouault <even.rouault at spatialys.com>
2845
2846	* libtiff/tif_dirread.c: workaround false positive warning of Clang Static
2847	Analyzer about null pointer dereference in TIFFCheckDirOffset().
2848
28492015-12-19  Even Rouault <even.rouault at spatialys.com>
2850
2851	* libtiff/tif_fax3.c: remove dead assignment in Fax3PutEOLgdal(). Found
2852	by Clang Static Analyzer
2853
28542015-12-18  Even Rouault <even.rouault at spatialys.com>
2855
2856	* libtiff/tif_dirwrite.c: fix truncation to 32 bit of file offsets in
2857	TIFFLinkDirectory() and TIFFWriteDirectorySec() when aligning directory
2858	offsets on a even offset (affects BigTIFF). This was a regression of the
2859	changeset of 2015-10-19.
2860
28612015-12-12  Even Rouault <even.rouault at spatialys.com>
2862
2863	* libtiff/tif_write.c: TIFFWriteEncodedStrip() and TIFFWriteEncodedTile()
2864	should return -1 in case of failure of tif_encodestrip() as documented
2865	* libtiff/tif_dumpmode.c: DumpModeEncode() should return 0 in case of
2866	failure so that the above mentionned functions detect the error.
2867
28682015-12-06  Even Rouault <even.rouault at spatialys.com>
2869
2870	* libtiff/uvcode.h: const'ify uv_code array
2871
28722015-12-06  Even Rouault <even.rouault at spatialys.com>
2873
2874	* libtiff/tif_dirinfo.c: const'ify tiffFields, exifFields,
2875	tiffFieldArray and exifFieldArray arrays
2876
28772015-12-06  Even Rouault <even.rouault at spatialys.com>
2878
2879	* libtiff/tif_print.c: constify photoNames and orientNames arrays
2880
28812015-12-06  Even Rouault <even.rouault at spatialys.com>
2882
2883	* libtiff/tif_close.c, libtiff/tif_extension.c : rename link
2884	variable to avoid -Wshadow warnings
2885
28862015-11-22  Even Rouault <even.rouault at spatialys.com>
2887
2888	* libtiff/*.c: fix typos in comments (patch by Kurt Schwehr)
2889
28902015-11-22  Even Rouault <even.rouault at spatialys.com>
2891
2892	* libtiff/*.c: fix MSVC warnings related to cast shortening and
2893	assignment within conditional expression
2894
28952015-11-18  Even Rouault <even.rouault at spatialys.com>
2896
2897	* libtiff/*.c: fix clang -Wshorten-64-to-32 warnings
2898
28992015-11-18  Even Rouault <even.rouault at spatialys.com>
2900
2901	* libtiff/tif_dirread.c: initialize double* data at line 3693 to NULL
2902	to please MSVC 2013
2903
29042015-11-17  Even Rouault <even.rouault at spatialys.com>
2905
2906	* libtiff/tif_dirread.c: prevent reading ColorMap or TransferFunction
2907	if BitsPerPixel > 24, so as to avoid huge memory allocation and file
2908	read attempts
2909
29102015-11-02  Even Rouault <even.rouault at spatialys.com>
2911
2912	* libtiff/tif_dirread.c: remove duplicated assignment (reported by
2913	Clang static analyzer)
2914
29152015-10-28  Even Rouault <even.rouault at spatialys.com>
2916
2917	* libtiff/tif_dir.c, libtiff/tif_dirinfo.c, libtiff/tif_compress.c,
2918	libtiff/tif_jpeg_12.c: suppress warnings about 'no previous
2919	declaration/prototype'
2920
29212015-10-19  Even Rouault <even.rouault at spatialys.com>
2922
2923	* libtiff/tiffiop.h, libtiff/tif_dirwrite.c: suffix constants by U to fix
2924	'warning: negative integer implicitly converted to unsigned type' warning
2925	(part of -Wconversion)
2926
29272015-10-17  Even Rouault <even.rouault at spatialys.com>
2928
2929	* libtiff/tif_dir.c, libtiff/tif_dirread.c, libtiff/tif_getimage.c,
2930	  libtiff/tif_print.c: fix -Wshadow warnings (only in libtiff/)
2931
29322015-09-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2933
2934	* libtiff 4.0.6 released.
2935
2936	* html/v4.0.6.html: Added release notes for 4.0.6.
2937
29382015-09-06  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2939
2940	* tools/tiffgt.c: Silence glut API deprecation warnings on MacOS
2941	X.  Patch by Roger Leigh.
2942
2943	* Makefile.am: Added a 'coverity' rule to assist with Coverity
2944	submissions.
2945
2946	* tools/tiff2pdf.c: Fix compiler warning about unused function
2947	when JPEG is not available.
2948
2949	* tools/fax2ps.c (main): Detect failure to write to temporary
2950	file.
2951
29522015-09-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2953
2954	* libtiff/tif_dirread.c (TIFFReadDirEntryCheckRangeSlongSlong8):
2955	Change implementation so that it does not sometimes overflow the
2956	range of a 32-bit int and to avoid a signed vs unsigned compare
2957	compiler warning.
2958	(TIFF_INT64_MAX): Avoid use of platform-specific large constants.
2959	(TIFF_UINT32_MAX): Avoid use of platform-specific large constants.
2960
29612015-09-01  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2962
2963	* Makefile.am (distcheck-hook), configure.ac: Applied patches by
2964	Roger Leigh (via tiff mailing list on 2015-09-01) to fix issue
2965	with BSD make and to make use of cmake in 'distcheck' target
2966	conditional on if cmake is available.
2967
2968	* CMakeLists.txt, Makefile.am, configure.ac: Applied patches by
2969	Roger Leigh (via tiff mailing list on 2015-09-01).
2970
2971	CMake build is now included in 'distcheck' target.
2972
2973	Builds with CMake 2.8.9 and newer.
2974
2975	Tar is now resquested to use POSIX PAX format.
2976
29772015-08-31  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2978
2979	* CMakeLists.txt, libtiff/test/Makefile.am: Applied patches by
2980	Roger Leigh (via tiff mailing list on 2015-08-31.
2981
2982	CMake reads all version information directly from configure.ac to
2983	avoid duplication of values.  This basically greps over the file
2984	for the LIBTIFF_* variables, then translates them to the form
2985	needed for cmake. This includes the release version and libtool
2986	shared library version information.
2987
2988	Make shared/static library building configurable.  Currently it
2989	always builds shared libraries, with static libs having a _static
2990	suffix (copying zlib, but it means it's got a non-standard name).
2991	CMake has a -DBUILD_SHARED_LIBS=ON|OFF option to select one or the
2992	other, which is now used instead.  There's now a single "tiff"
2993	target to build either shared or static as required, and all the
2994	tests and tools are linked with this. Note: the Windows tests fail
2995	when linked with a static libtiff (says: libtiff.dll not found).
2996	Not really a regression since this was not tested up to this
2997	point, and it's likely the unit tests haven't (ever?) been run on
2998	Windows with a static libtiff, so there's some additional
2999	portability issue here to address.  Works fine on UNIX systems,
3000	and fine on Windows with the default to build a DLL.
3001
3002	Add a missing file which wasn't being distributed, causing unit
3003	tests to fail.  Note that "find . -name '*.cmake'" lists all the
3004	CMake files which need distributing in addition to all the
3005	CMakeLists.txt files (which now are distributed).
3006
30072015-08-31  Even Rouault <even.rouault at spatialys.com>
3008
3009	* libtiff/tif_predict.c: pedantic change to add explicit masking
3010	with 0xff before casting to uchar in floating-point horizontal
3011	differencing and accumulation routines.
3012
30132015-08-31  Even Rouault <even.rouault at spatialys.com>
3014
3015	* libtiff/tif_predict.c: fix generation of output with 16 bit
3016	or 32 bit integer, when byte swapping is needed, in
3017	horizontal predictor (#2521). Also fixes decoding when there is
3018	a single pixel to code (unlikely case...) and byte swapping is
3019	involved.
3020
30212015-08-30  Even Rouault <even.rouault at spatialys.com>
3022
3023	* libtiff/tif_lzw.c: make nextdata a unsigned type to avoid
3024	undefined behaviour with shifts (gcc -fsanitize=shift)
3025
30262015-08-30  Even Rouault <even.rouault at spatialys.com>
3027
3028	* libtiff/tif_fax3.c, libtiff/tif_lzw.c, libtiff/tif_predict.c:
3029	add explicit masking with 0xff before casting
3030	to unsigned char (make icc -check=conversions happy)
3031
3032	* libtiff/tif_predict.c: operate on unsigned datatypes when
3033	computing/applying differences to avoid undefined behaviour of
3034	signed types (C standard compliance)
3035
30362015-08-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3037
3038	* configure.ac: libtiff 4.0.5 released.
3039
30402015-08-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3041
3042	* CMakeLists.txt: Applied patch by Roger Leigh (via tiff mailing
3043	list on 2015-08-29) to add ld-version-script option to cmake build
3044	to match autoconf.  Note: defaults to 'on' to be ABI-compatible by
3045	default with common Linux distribution builds.  Note that the
3046	autoconf configure script defaults to 'off'.
3047
3048	* html/build.html: Applied patch by Roger Leigh (via tiff mailing
3049	list on 2015-08-29) to describe how to use CMake to build libtiff.
3050
30512015-08-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3052
3053	* html/v4.0.5.html: Added HTML file describing the changes which
3054	will appear in the 4.0.5 release.
3055
30562015-08-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3057
3058	* libtiff/tiffiop.h: For MinGW comiles, make sure that build
3059	supports necessary __MSVCRT_VERSION__ (at least at least 0x800).
3060	Otherwise large files can not be supported for POSIX-style I/O.
3061
3062	* tools/fax2tiff.c (main): Eliminate a compiler warning in 64-bit
3063	builds about cast to thandle_t.
3064
3065	* test/rewrite_tag.c (main): Does not require any arguments.
3066
30672015-08-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3068
3069	* tools/CMakeLists.txt, port/snprintf.c: Patch by Roger Leigh to
3070	fix build issues when using Cmake due to Windows large file
3071	changes.
3072
30732015-08-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3074
3075	* libtiff/tiffiop.h: First cut at supporting large files under
3076	Microsoft Windows using tif_unix.c and the libtiff tools.  This
3077	only works if the Windows CDK is new enough to support the APIs
3078	used (Visual C++ 2005 or later).  Support for large files is not
3079	actually tested yet.
3080
30812015-08-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3082
3083	* libtiff/tif_jpeg.c: Applied patch by Räisä Olli to assure that
3084	client_data is initialized to a known value, and to report an
3085	error on two memory allocation failures.
3086
30872015-08-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3088
3089	* CMakeLists.txt: Applied patch by Roger Leigh to fix libtiffxx
3090	symbol versioning.  Patch was mailed to libtiff list on Thu, 13
3091	Aug 2015.
3092
30932015-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3094
3095	* cmake: Add d suffix to debug libraries with MSVC.  Patch #3 of 3
3096	by Roger Leigh posted to tiff list on Wed, 1 Jul 2015 15:58:20
3097	+0100.
3098
3099	* cmake: Add extra warning flags.  Patch #2 of 3 by Roger Leigh
3100	posted to tiff list on Wed, 1 Jul 2015 15:58:20 +0100.
3101
3102	* cmake: Correct snprintf fallback for VS2015.  Patch #1 of 3 by
3103	Roger Leigh posted to tiff list on Wed, 1 Jul 2015 15:58:20 +0100.
3104
31052015-06-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3106
3107	* CMakeLists.txt: Add CMake patchset by Roger Leigh as posted to
3108	libtiff mailing list on Mon, 22 Jun 2015 21:21:01 +0100. Several
3109	corrections to ensure that the autotools build still works were
3110	added by me.  I have not yet tested the build using 'cmake' or
3111	MSVC with 'nmake'.
3112
31132015-06-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3114
3115	* test/Makefile.am: tiff2rgba-quad-tile.jpg.sh depends on the JPEG
3116	library so only execute if JPEG is available.
3117
3118	* libtiff 4.0.4 released.
3119
3120	* configure.ac: Add a HAVE_FOO Automake conditional for each
3121	add-on library.
3122
3123	* test/Makefile.am (JPEG_DEPENDENT_CHECK_PROG): raw_decode
3124	requires JPEG support to compile.  Use Automake conditional to
3125	only include it when JPEG support is available.
3126
3127	* html/build.html: Try to improve the nmake-based VC++ build
3128	description.
3129
3130	* libtiff/tiffconf.vc.h: Build fixes based on testing.
3131
3132	* libtiff/tif_config.vc.h: Build fixes based on testing.
3133
3134	* libtiff/libtiff.def: TIFFRasterScanline does not exist so remove
3135	export for it.
3136
31372015-06-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3138
3139	* libtiff/tif_config.vc.h: Make adjustments to match the new
3140	definitions that configure produces, including for WIN64.  Still
3141	needs to be tested.
3142
3143	* configure.ac: For 64-bit MinGW, fix SSIZE_FORMAT formatting
3144	specifier.  64-bit MinGW supports 'long long' but support for
3145	'lld' is not assured by the run-time DLLs and so GCC warns.
3146	Add TIFF_SIZE_T and TIFF_SIZE_FORMAT to provide a type definition
3147	and printf format specifier to deal with printing values of
3148	'size_t' type.  In particular, this was necessary for WIN64.
3149	Added a configure test for if the system headers provide 'optarg'
3150	(normal case) and block out the many explicit 'extern' statements
3151	in the utilities.  This was found to be necessary under Windows
3152	when getopt is in a DLL and the symbols are already imported with
3153	dllimport via standard header files.
3154
3155	* test/raw_decode.c (XMD_H): Avoid conflicting typedefs for INT32
3156	and boolean in MinGW build due to including jpeglib.h.
3157
3158	* test/rewrite_tag.c (main): Fix problem with location of variable
3159	declaration.
3160
3161	* libtiff/libtiff.def: Added exports for TIFFGetConfiguredCODECs,
3162	TIFFReadRGBAImageOriented, TIFFSetCompressionScheme,
3163	TIFFSwabArrayOfTriples, TIFFVGetFieldDefaulted, _TIFFCheckRealloc,
3164	TIFFRasterScanline, TIFFSetErrorHandlerExt,
3165	TIFFSetWarningHandlerExt, TIFFNumberOfDirectories,
3166	TIFFCreateCustomDirectory, TIFFCreateEXIFDirectory,
3167	TIFFWriteCustomDirectory, _TIFFRewriteField as recommended by
3168	Roger Leigh and justified by use in libtiff tests, documentation,
3169	and changelog notes.  Also sorted symbol list and removed
3170	duplicate entries.
3171
31722015-06-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3173
3174	* libtiff/tif_getimage.c: Fix four Coverity issues related to
3175	unintended sign extension.
3176
31772015-06-16  Even Rouault <even.rouault at spatialys.com>
3178
3179	* libtiff/tif_unix.c: fix compilation with MSVC (fix by Jeff McKenna)
3180
31812015-06-14  Lee Howard  <faxguy@howardsilvan.com>
3182
3183	* libtiff/tif_unix.c: contribution from Vadim Zeitlin on
3184	Bugzilla Bug #2510 fixes several harmless but still annoying
3185	warnings
3186
3187	* configure: contribution from Ludolf Holzheid on Bugzilla
3188	Bug #2498.  Adds an option to select the file I/O style on
3189	Windows hosts.
3190
3191	* libtiff/tif_getimage.c: contribution from Gary Cramblitt
3192	on Bugzilla Bug #2409.  Correct reading of certain tiled TIFFs.
3193
3194	* configure, configure.ac: contribution from Marcos H. Woehrmann
3195	on Bugzilla Bug #2405.  Correct shell equality operator.
3196
3197	* tools/tiffgt.c (raster_draw): contribution from Jay Berkenbilt
3198	on Bugzilla Bug #2401.  Appropriately call glFlush().
3199
3200	* tools/tiff2pdf.c: change ColorTransform from "0" to "1"
3201	following Bugzilla Bug #2150.
3202
32032015-06-13  Lee Howard  <faxguy@howardsilvan.com>
3204
3205	* libtiff/tif_lzw.c: contribution from Andy Cave - decode
3206	files that contain consecutive CODE_CLEAR codes.
3207
3208	* tools/tiff2pdf.c: contribution from Antti S. Lankila on
3209	Bugzilla Bug #2078. Suppress initial output of the header.
3210
3211	* tools/tiff2pdf.c: contribution from Yuriy M. Kaminskiy -
3212	Take care in using the return value from snprintf().
3213
3214	* tools/tiffcrop.c: contribution from Eduardo Robles Elvira -
3215	correctly copy the compression tag from the source TIFF.
3216
3217	* tools/tiff2ps.c: contribution from Eduardo Robles Elvira -
3218	correct sizing and scaling problems with output document.
3219
32202015-06-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3221
3222	* libtiff/tif_jpeg.c (JPEGDecode): Split JPEGDecode() into two
3223	clean implementations in order to avoid pre-processor hell.  Only
3224	one of the implementations is used in a given build.
3225
32262015-06-08  Even Rouault <even.rouault at spatialys.com>
3227
3228	* libtiff/tif_jpeg.c: Fix compilation in BITS_IN_JSAMPLE == 12
3229	case
3230
32312015-06-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3232
3233	* libtiff/tif_write.c (TIFFWriteEncodedStrip): Fix Coverity 715975
3234	"Division or modulo by zero".
3235	(TIFFWriteEncodedTile): Fix Coverity 715976 and 715977 "Division
3236	or modulo by zero".
3237	(TIFFWriteRawStrip): Fix Coverity 715978 "Division or modulo by
3238	zero".
3239	(TIFFWriteScanline): Fix Coverity 715979 "Division or modulo by
3240	zero".
3241
3242	* libtiff/tif_read.c (TIFFStartTile): Fix Coverity 715973 and
3243	715974 "Division or modulo by zero".
3244
32452015-05-31  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3246
3247	* libtiff/tif_dir.c (TIFFNumberOfDirectories): Quiet Coverity
3248	1134470 "Logically dead code" by making the roll-over check
3249	explicit.
3250
3251	* libtiff/tif_luv.c (LogLuvDecodeTile): Fix Coverity 991227
3252	"Division or modulo by zero".
3253	(LogLuvDecodeStrip): Fix Coverity 991239 "Division or modulo by
3254	zero".
3255	(LogLuvEncodeStrip): Fix Coverity 991240 "Division or modulo by
3256	zero".
3257	(LogLuvEncodeTile): Fix Coverity 991241 "Division or modulo by
3258	zero".
3259
3260	* libtiff/tif_dirread.c (TIFFReadDirEntryDoubleArray): Fix
3261	Coverity 298626 "Logically dead code".
3262	(TIFFReadDirEntryFloatArray): Fix Coverity 298627 "Logically dead
3263	code".
3264	(TIFFReadDirEntryIfd8Array): Fix Coverity 298628 "Logically dead
3265	code".
3266	(TIFFReadDirEntrySlong8Array): Fix Coverity 298629 "Logically dead
3267	code"
3268
3269	* libtiff/tif_dir.c (TIFFNumberOfDirectories): Don't depend on ++
3270	operator precedenc in evaluation.  Might quench Coverity 1134470
3271	"Logically dead code".
3272
3273	* libtiff/tif_jpeg.c (JPEGDecode): Fix Coverity 602597 "Operands
3274	don't affect result".  This change uses ifdefs to include
3275	applicable code based on properties of libjpeg.  Still needs to be
3276	re-tested with 12-bit "6b" and "MK1".
3277
32782015-05-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3279
3280	* libtiff/tif_dirwrite.c (_TIFFRewriteField): Fix Coverity 1024310
3281	"Resource leak".
3282
3283	* libtiff/tif_ojpeg.c (OJPEGReadHeaderInfoSecStreamDht): Fix
3284	Coverity 601720 "Resource leak".
3285
3286	* libtiff/tif_jpeg.c (JPEGCleanup): Fix Coverity 298624
3287	"Dereference before null check".
3288
3289	* libtiff/tif_ojpeg.c (OJPEGReadBufferFill): Fix Coverity 603400
3290	"Missing break in switch".
3291
3292	* contrib/addtiffo/tif_overview.c (TIFF_DownSample): Check buffer
3293	size calculation for overflow.
3294
3295	* contrib/addtiffo/addtiffo.c (main): Possibly address Coverity
3296	1024226 "Untrusted value as argument".
3297
3298	* tools/gif2tiff.c (readgifimage): Fix Coverity 1024222 "Untrusted
3299	value as argument".
3300	(checksignature): Fix Coverity 1024894 "Ignoring number of bytes
3301	read".
3302	(readextension): Fix Coverity 1024893 "Ignoring number of bytes
3303	read".
3304	(readgifimage): Fix Coverity 1024890 "Ignoring number of bytes
3305	read".
3306	(readraster): Fix Coverity 1024891 "Ignoring number of bytes
3307	read".
3308	(readgifimage): Fix Coverity 1024892 "Ignoring number of bytes
3309	read".
3310
3311	* tools/tiff2pdf.c (t2p_readwrite_pdf_image): Fix Coverity 1024181
3312	"Structurally dead code".
3313
3314	* tools/raw2tiff.c (main): Fix Coverity 1024887 "Unchecked return
3315	value from library".
3316	(guessSize): Fix Coverity 1024888 "Unchecked return value from
3317	library".
3318	(guessSize): Fix Coverity 1214162 "Ignoring number of bytes read".
3319	(guessSize): Fix Coverity 1024889 "Unchecked return value from
3320	library".
3321
3322	* tools/tiff2pdf.c (t2p_readwrite_pdf_image): Fix Coverity 298621
3323	"Resource leak".
3324	(t2p_readwrite_pdf_image): Fix Coverity 1024181 "Structurally dead
3325	code".
3326	(t2p_write_pdf): Fix Coverity 1227690 "Unused value".
3327
33282015-05-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3329
3330	* contrib/iptcutil/iptcutil.c (formatIPTC): Fix Coverity 1024468
3331	"Infinite loop".
3332	(formatIPTC): Fix Coverity 1024727 "Truncated stdio return value".
3333	(formatIPTC): Fix Coverity 1214240 "Untrusted loop bound".
3334
33352015-05-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3336
3337	* contrib/addtiffo/tif_ovrcache.c (TIFFCreateOvrCache): Fix
3338	Coverity 298615 "Resource leak".
3339	(TIFFGetOvrBlock): Fix Coverity 1024649 "Unintended sign
3340	extension".
3341
3342	* tools/bmp2tiff.c (main): Fix Coverity 1024225 "Untrusted value
3343	as argument".
3344	(main): Fix Coverity 1024678 "Unchecked return value from
3345	library".
3346	(main): Fix Coverity 1024679 "Unchecked return value from
3347	library".
3348	(main): Fix Coverity 1214160 "Ignoring number of bytes read".
3349
3350	* contrib/addtiffo/tif_ovrcache.c (TIFFCreateOvrCache): Fix
3351	Coverity 298615 "Resource leak".
3352
3353	* tools/tiffcp.c: Fix Coverity 1024306, 1024307, 1024308, 1024309
3354	"Resource leak".
3355
3356	* tools/tiffsplit.c (cpTiles): Fix Coverity 1024304 "Resource
3357	leak".
3358	(cpStrips): Fix Coverity 1024305 "Resource leak".
3359
33602015-05-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3361
3362	* tools/ras2tiff.c: Fix Sun Raster header definition to be safe
3363	for 64-bit systems.  Add some header validations.  Should fix many
3364	Coverity issues.
3365	(main): Fix Coverity 1301206: "Integer handling issues  (BAD_SHIFT)".
3366	(main): Quiet Coverity 1024223 "Untrusted value as argument".
3367
3368	* tools/tiffmedian.c (GetInputLine): Fix Coverity 1024795 "Nesting
3369	level does not match indentation".
3370	(get_histogram): Quiet Coverity 1024386 "Out-of-bounds read".
3371	This was a benign mis-diagnosis but added code to enforce against
3372	buffer overflow.
3373
3374	* tools/tiffcrop.c (ROTATE_ANY): Fix Coverity 1294542 "Logical
3375	vs. bitwise operator".
3376	(readContigStripsIntoBuffer): Fix Coverity 1024545 "Division or
3377	modulo by zero".
3378	(readContigTilesIntoBuffer): Fix Coverity 1024586 "Logically dead
3379	code".
3380	(writeSingleSection): Fix Coverity 1024796 "Nesting level does not
3381	match indentation".
3382	(writeCroppedImage): Fix Coverity 1024797 "Nesting level does not
3383	match indentation".
3384	(loadImage): Fix Coverity 1299741 "Dereference before null check".
3385	(loadImage): Fix Coverity 1299740 "Out-of-bounds write".
3386
33872015-03-02  Even Rouault  <even.rouault@spatialys.com>
3388
3389	* tools/tiffdither.c: check memory allocations to avoid writing to
3390	NULL pointer. Also check multiplication overflow. Fixes #2501,
3391	CVE-2014-8128. Derived from patch by Petr Gajdos.
3392
33932015-01-26  Even Rouault  <even.rouault@spatialys.com>
3394
3395	* add html/v4.0.4beta.html under version control
3396	* HOWTO-RELEASE: write that cvs add html/vX.X.html must be used
3397
33982015-01-26  Even Rouault  <even.rouault@spatialys.com>
3399
3400	* libtiff 4.0.4beta released
3401
34022015-01-26  Even Rouault  <even.rouault@spatialys.com>
3403
3404	* automake: updated to 1.15
3405	* libtool: updated to 2.4.5
3406
34072015-01-22  Even Rouault  <even.rouault@spatialys.com>
3408
3409	* tools/tiff2pdf.c: Fix two crashes (oCERT-2014-013)
3410
34112015-01-05  Frank Warmerdam  <warmerdam@pobox.com>
3412
3413	* html/bugs.html: remove note about needing to email the tiff mailing
3414	list administrator about being approved for membership, this appears
3415	not to be true.
3416
34172015-01-05  Olivier Paquet  <olivier.paquet@gmail.com>
3418
3419	* tools/tiff2pdf.c: Fixed unsigned integer addition overflow detection.
3420
34212015-01-03  Even Rouault  <even.rouault@spatialys.com>
3422
3423	* libtiff/tif_dirread.c: in TIFFCheckDirOffset(), avoid uint16 overflow
3424	when reading more than 65535 directories, and effectively error out when
3425	reaching that limit.
3426
34272014-12-29  Even Rouault  <even.rouault@spatialys.com>
3428
3429	* libtiff/tif_jpeg.c: in JPEGFixupTags(), recognize SOF2, SOF9 and SOF10
3430	markers to avoid emitting a warning (even if, according to the TechNote,
3431	there are admittedly unusual/not recommended or even forbidden variants, but
3432	they do work well with libjpeg for SOF2, and with libjpeg-turbo for SOF2,
3433	SOF9 and SOF10).
3434	Define in_color_space and input_components to the right values in
3435	JPEGSetupEncode(), before calling jpeg_set_defaults(), as specified by
3436	libjpeg API documentation, so as to be compatible with mozjpeg library.
3437	Note: the default settings of mozjpeg will produce progressive scans, which
3438	is forbidden by the TechNote.
3439
34402014-12-29  Even Rouault  <even.rouault@spatialys.com>
3441
3442	* libtiff/tif_getimage.c: move test on vertical value of YCbCr subsampling.
3443	to avoid buffer leak (fix previous fix, found by Coverity scan)
3444
34452014-12-29  Even Rouault  <even.rouault@spatialys.com>
3446
3447	* libtiff/tif_next.c: add new tests to check that we don't read outside of
3448	the compressed input stream buffer.
3449
3450	* libtiff/tif_getimage.c: in OJPEG case, fix checks on strile width/height
3451    in the putcontig8bitYCbCr42tile, putcontig8bitYCbCr41tile and
3452    putcontig8bitYCbCr21tile cases.
3453
34542014-12-27  Even Rouault  <even.rouault@spatialys.com>
3455
3456	* libtiff/tif_dir.c: in TIFFDefaultDirectory(), reset any already existing
3457	extented tags installed by user code through the extender mechaninm before
3458	calling the extender callback (GDAL #5054)
3459
34602014-12-26  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3461
3462	* tools/tiffcrop.c: Fix warnings about variables set but not used.
3463
3464	* contrib/iptcutil/iptcutil.c: Fix warnings about variables set
3465	but not used.
3466
3467	* tools/tiffgt.c: Fix warnings about unused parameters.
3468
3469	* libtiff/tif_stream.cxx: Fix warnings about unused parameters.
3470
34712014-12-25  Even Rouault  <even.rouault@spatialys.com>
3472
3473	* libtiff/tif_getimage.c, libtiff/tif_ojpeg.c, libtiff/tif_zip.c: fix
3474	various typos found by Debian lintian tool (GDAL #5756)
3475
34762014-12-24  Even Rouault  <even.rouault@spatialys.com>
3477
3478	* libtiff/tif_getimage.c: avoid divide by zero on invalid YCbCr subsampling.
3479	http://bugzilla.maptools.org/show_bug.cgi?id=2235
3480
34812014-12-24  Even Rouault  <even.rouault@spatialys.com>
3482
3483	* tools/tiff2pdf.c: fix buffer overflow on some YCbCr JPEG compressed images.
3484	http://bugzilla.maptools.org/show_bug.cgi?id=2445
3485
34862014-12-24  Even Rouault  <even.rouault@spatialys.com>
3487
3488	* tools/tiff2pdf.c: fix buffer overflow on YCbCr JPEG compressed image.
3489	Derived from patch by Petr Gajdos,
3490	http://bugzilla.maptools.org/show_bug.cgi?id=2443
3491
34922014-12-23  Even Rouault  <even.rouault@spatialys.com>
3493
3494	* libtiff/tif_dirread.c: In EstimateStripByteCounts(), check return code
3495	of _TIFFFillStriles(). This solves crashing bug on corrupted
3496	images generated by afl.
3497
34982014-12-23  Even Rouault  <even.rouault@spatialys.com>
3499
3500	* libtiff/tif_read.c: fix several invalid comparisons of a uint64 value with
3501	<= 0 by casting it to int64 first. This solves crashing bug on corrupted
3502	images generated by afl.
3503
35042014-12-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3505
3506	* tools/tiffdump.c: Guard against arithmetic overflow when
3507	calculating allocation buffer sizes.
3508
35092014-12-21  Even Rouault  <even.rouault@spatialys.com>
3510
3511	* tools/tiff2bw.c: when Photometric=RGB, the utility only works if
3512	SamplesPerPixel = 3. Enforce that
3513	http://bugzilla.maptools.org/show_bug.cgi?id=2485 (CVE-2014-8127)
3514
35152014-12-21  Even Rouault  <even.rouault@spatialys.com>
3516
3517	* tools/pal2rgb.c, tools/thumbnail.c: fix crash by disabling TIFFTAG_INKNAMES
3518	copying. The right fix would be to properly copy it, but not worth the burden
3519	for those esoteric utilities.
3520	http://bugzilla.maptools.org/show_bug.cgi?id=2484 (CVE-2014-8127)
3521
35222014-12-21  Even Rouault  <even.rouault@spatialys.com>
3523
3524	* tools/thumbnail.c: fix out-of-buffer write
3525	http://bugzilla.maptools.org/show_bug.cgi?id=2489 (CVE-2014-8128)
3526
35272014-12-21  Even Rouault  <even.rouault@spatialys.com>
3528
3529	* tools/thumbnail.c, tools/tiffcmp.c: only read/write TIFFTAG_GROUP3OPTIONS
3530	or TIFFTAG_GROUP4OPTIONS if compression is COMPRESSION_CCITTFAX3 or
3531	COMPRESSION_CCITTFAX4
3532	http://bugzilla.maptools.org/show_bug.cgi?id=2493 (CVE-2014-8128)
3533
35342014-12-21  Even Rouault  <even.rouault@spatialys.com>
3535
3536	* libtiff/tif_next.c: check that BitsPerSample = 2. Fixes
3537	http://bugzilla.maptools.org/show_bug.cgi?id=2487 (CVE-2014-8129)
3538
35392014-12-21  Even Rouault  <even.rouault@spatialys.com>
3540
3541	* tools/tiff2pdf.c: check return code of TIFFGetField() when reading
3542	TIFFTAG_SAMPLESPERPIXEL
3543
35442014-12-21  Even Rouault  <even.rouault@spatialys.com>
3545
3546	* tools/tiffcp.c: fix crash when converting YCbCr JPEG-compressed to none.
3547	Based on patch by Tomasz Buchert (http://bugzilla.maptools.org/show_bug.cgi?id=2480)
3548	Description: fix for Debian bug #741451
3549	tiffcp crashes when converting JPEG-encoded TIFF to a different
3550	encoding (like none or lzw). For example this will probably fail:
3551	tiffcp -c none jpeg_encoded_file.tif output.tif
3552	The reason is that when the input file contains JPEG data,
3553	the tiffcp code forces conversion to RGB space. However,
3554	the output normally inherits YCbCr subsampling parameters
3555	from the input, which leads to a smaller working buffer
3556	than necessary. The buffer is subsequently overrun inside
3557	cpStripToTile() (called from writeBufferToContigTiles).
3558	Note that the resulting TIFF file would be scrambled even
3559	if tiffcp wouldn't crash, since the output file would contain
3560	RGB data intepreted as subsampled YCbCr values.
3561	This patch fixes the problem by forcing RGB space on the output
3562	TIF if the input is JPEG-encoded and output is *not* JPEG-encoded.
3563	Author: Tomasz Buchert <tomasz.buchert@inria.fr>
3564
35652014-12-21  Even Rouault  <even.rouault@spatialys.com>
3566
3567	Fix various crasher bugs on fuzzed images.
3568	* libtiff/tif_dir.c: TIFFSetField(): refuse to set negative values for
3569	TIFFTAG_XRESOLUTION and TIFFTAG_YRESOLUTION that cause asserts when writing
3570	the directory
3571	* libtiff/tif_dirread.c: TIFFReadDirectory(): refuse to read ColorMap or
3572	TransferFunction if BitsPerSample has not yet been read, otherwise reading
3573	it later will cause user code to crash if BitsPerSample > 1
3574	* libtiff/tif_getimage.c: TIFFRGBAImageOK(): return FALSE if LOGLUV with
3575	SamplesPerPixel != 3, or if CIELAB with SamplesPerPixel != 3 or BitsPerSample != 8
3576	* libtiff/tif_next.c: in the "run mode", use tilewidth for tiled images
3577	instead of imagewidth to avoid crash
3578	* tools/bmp2tiff.c: fix crash due to int overflow related to input BMP dimensions
3579	* tools/tiff2pdf.c: fix crash due to invalid tile count (should likely be checked by
3580	libtiff too). Detect invalid settings of BitsPerSample/SamplesPerPixel for CIELAB / ITULAB
3581	* tools/tiffcrop.c: fix crash due to invalid TileWidth/TileHeight
3582	* tools/tiffdump.c: fix crash due to overflow of entry count.
3583
35842014-12-15  Even Rouault  <even.rouault@spatialys.com>
3585
3586	* libtiff/tif_jpeg.c: Fix regression introduced on 2010-05-07 that caused
3587	all tiles/strips to include quantization tables even when the jpegtablesmode
3588	had the JPEGTABLESMODE_QUANT bit set.
3589	Also add explicit removal of Huffman tables when jpegtablesmode has the
3590	JPEGTABLESMODE_HUFF bit set, which avoids Huffman tables to be emitted in the
3591	first tile/strip (only useful in update scenarios. create-only was
3592	fine)
3593
35942014-12-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3595
3596	* tools/tiff2pdf.c: Assure that memory size calculations for
3597	_TIFFmalloc() do not overflow the range of tmsize_t.
3598
35992014-12-07  Even Rouault  <even.rouault@spatialys.com>
3600
3601	* tools/thumbnail.c, tools/tiffcrop.c: "fix" heap read over-run found with
3602	Valgrind and Address Sanitizer on test suite
3603
36042014-12-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3605
3606	* tools/tiff2pdf.c (t2p_read_tiff_init): TIFFTAG_TRANSFERFUNCTION
3607	tag can return one channel, with the other two channels set to
3608	NULL.  The tiff2pdf code was expecting that other two channels
3609	were duplicate pointers in the case where there is only one
3610	channel.  Detect this condition in order to avoid a crash, and
3611	presumably perform correctly with just one channel.
3612
36132014-12-06  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3614
3615	* tools/tiffdump.c: Fix double-free bug.
3616
36172014-11-27  Even Rouault  <even.rouault@spatialys.com>
3618
3619	* libtiff/tif_config.vc.h: no longer use "#define snprintf _snprintf" with
3620	Visual Studio 2015 aka VC 14 aka MSVC 1900
3621
36222014-11-20  Even Rouault  <even.rouault@spatialys.com>
3623
3624	* libtiff/tif_lzw.c: prevent potential null dereference of
3625	sp->dec_codetab in LZWPreDecode (bug #2459)
3626
3627	* libtiff/tif_read.c: in TIFFReadBufferSetup(), avoid passing -1 size
3628	to TIFFmalloc() if passed user buffer size is 0 (bug #2459)
3629
3630	* libtiff/tif_ojpeg.c: make Coverity happier (not a bug, #2459)
3631
3632	* libtiff/tif_dir.c: in _TIFFVGetField() and _TIFFVSetField(), make
3633	Coverity happier (not a bug, #2459)
3634
3635	* libtiff/tif_dirread.c: in TIFFFetchNormalTag(), make Coverity happier
3636	(not a bug, #2459)
3637
3638	* tools/tiff2pdf.c: close PDF file (bug #2479)
3639
3640	* tools/fax2ps.c: check malloc()/realloc() result (bug #2470)
3641
3642	* tools/tiffdump.c: detect cycle in TIFF directory chaining (bug #2463)
3643	and avoid passing a NULL pointer to read() if seek() failed before (bug #2459)
3644
3645	* tools/tiffcrop.c: fix segfault if bad value passed to -Z option
3646	(bug #2459) and add missing va_end in dump_info (#2459)
3647
3648	* tools/gif2tif.c: apply patch for CVE-2013-4243 (#2451)
3649
36502014-11-20  Even Rouault  <even.rouault@spatialys.com>
3651	* libtiff/tif_jpeg.c: fix segfault in JPEGFixupTagsSubsampling() on
3652	corrupted image where tif->tif_dir.td_stripoffset == NULL (bug #2471)
3653
36542014-11-20  Even Rouault  <even.rouault@spatialys.com>
3655	* automake: updated to 1.14.1
3656	* libtool: updated to 2.4.3
3657	* HOWTO-RELEASE: small update about autotools building order
3658
36592014-10-20  Olivier Paquet  <olivier.paquet@gmail.com>
3660	* tools/tiff2pdf.c: Preserve input file directory order when pages
3661	are tagged with the same page number.
3662
36632014-08-31  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3664
3665	* libtiff/tif_dirread.c (TIFFReadDirEntryOutputErr): Incorrect
3666	count for tag should be a warning rather than an error since
3667	errors terminate processing.
3668
36692014-06-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3670
3671	* tools/tiff2rgba.c (]): Fixed tiff2rgba usage message in that zip
3672	was wrongly described.  Fix suggested by Miguel Medalha.
3673
36742014-05-06  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3675
3676	* libtiff/tif_dirinfo.c (TIFFField) : Fix data type for
3677	TIFFTAG_GLOBALPARAMETERSIFD tag.  Patch by Steve Underwood.
3678	Reviewed and forwarded by Lee Howard.
3679
36802013-11-30  Frank Warmerdam  <warmerdam@pobox.com>
3681
3682	* libtiff/tif_dir.c: fix last fix for TIFFNumberOfDirectories()
3683
36842013-10-21  Frank Warmerdam  <warmerdam@pobox.com>
3685
3686	* libtiff/tif_dir.c: generate error in case of directory count
3687	overflow.
3688
36892013-10-01  Frank Warmerdam  <warmerdam@pobox.com>
3690
3691	* libtiff/tiff.h, libtiff/tif_dirinfo.c: add definitions for
3692	TIFF/EP CFARepeatPatternDim and CFAPattern tags (bug #2457)
3693
36942013-09-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3695
3696	* libtiff/tif_dir.c (TIFFAdvanceDirectory): If nextdir is found to
3697	be defective, then set it to zero before returning error in order
3698	to terminate processing of truncated TIFF.  Issue found and fix
3699	suggested by Richard Nolde.
3700
37012013-08-14  Frank Warmerdam  <warmerdam@pobox.com>
3702
3703	* tools/gif2tiff.c: fix possible OOB write (#2452, CVE-2013-4244)
3704
37052013-08-13  Frank Warmerdam  <warmerdam@pobox.com>
3706
3707	* tools/gif2tiff.c: Be more careful about corrupt or
3708	hostile input files (#2450, CVE-2013-4231)
3709
3710	* tools/tiff2pdf.c: terminate after failure of allocating
3711	ycbcr buffer (bug #2449, CVE-2013-4232)
3712
37132013-07-09  Frank Warmerdam  <warmerdam@google.com>
3714
3715	* tools/tiffinfo.c: Default various values fetched with
3716	TIFFGetField() to avoid being uninitialized.
3717
37182013-05-02  Tom Lane  <tgl@sss.pgh.pa.us>
3719
3720	* tools/tiff2pdf.c: Rewrite JPEG marker parsing in
3721	t2p_process_jpeg_strip to be at least marginally competent.  The
3722	approach is still fundamentally flawed, but at least now it won't
3723	stomp all over memory when given bogus input.  Fixes CVE-2013-1960.
3724
37252013-05-02  Tom Lane  <tgl@sss.pgh.pa.us>
3726
3727	* contrib/dbs/xtiff/xtiff.c, libtiff/tif_codec.c,
3728 	libtiff/tif_dirinfo.c, tools/rgb2ycbcr.c, tools/tiff2bw.c,
3729 	tools/tiff2pdf.c, tools/tiff2ps.c, tools/tiffcrop.c,
3730 	tools/tiffdither.c: Enlarge some fixed-size buffers that weren't
3731 	large enough, and eliminate substantially all uses of sprintf(buf,
3732 	...)  in favor of using snprintf(buf, sizeof(buf), ...), so as to
3733 	protect against overflow of fixed-size buffers.  This responds in
3734 	particular to CVE-2013-1961 concerning overflow in tiff2pdf.c's
3735 	t2p_write_pdf_page(), but in general it seems like a good idea to
3736 	deprecate use of sprintf().
3737
37382013-03-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3739
3740	* configure.ac: Applied patch by Brad Smith to improve pkg-config
3741	static linking by adding -lm to Libs.private when needed.
3742
37432013-03-05  Tom Lane  <tgl@sss.pgh.pa.us>
3744
3745	* html/man/tiff2ps.1.html, html/man/tiffcp.1.html,
3746 	html/man/tiffdither.1.html, man/tiff2ps.1, man/tiffcp.1,
3747 	man/tiffdither.1, tools/tiff2ps.c, tools/tiffcp.c,
3748 	tools/tiffdither.c: Sync tool usage printouts and man pages with
3749 	reality (quite a few options had escaped being documented in one
3750 	or both places).  Per an old report from Miroslav Vadkerti.
3751
37522013-01-25  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3753
3754	* tools/tiff2ps.c:Fix bug in auto rotate option code. Once a
3755	rotation angle was set by the auto rotate check, it was retained
3756	for all pages that followed instead ofa being retested for each
3757	page.  Patch by Richard Nolde.
3758
37592013-01-18  Frank Warmerdam  <warmerdam@google.com>
3760
3761	* libtiff/tif_write.c: tmsize_t related casting warning fixed for
3762	64bit linux.
3763
3764	* libtiff/tif_read.c: uint64/tmsize_t change for MSVC warnings.
3765	http://bugzilla.maptools.org/show_bug.cgi?id=2427
3766
37672012-12-20  Tom Lane  <tgl@sss.pgh.pa.us>
3768
3769	* test/raw_decode.c: Relax raw_decode's pixel-value checks so that
3770	it will pass with more versions of libjpeg.  (There are at least
3771	three in active use now, and JPEG_LIB_VERSION doesn't tell us
3772	enough to uniquely identify expected results.)
3773
37742012-12-12  Tom Lane  <tgl@sss.pgh.pa.us>
3775
3776	* libtiff/tif_print.c: Fix TIFFPrintDirectory's handling of
3777	field_passcount fields: it had the TIFF_VARIABLE and
3778	TIFF_VARIABLE2 cases backwards.
3779
37802012-12-10  Tom Lane  <tgl@sss.pgh.pa.us>
3781
3782	* tools/ppm2tiff.c: Improve previous patch for CVE-2012-4564:
3783 	check the linebytes calculation too, get the max() calculation
3784 	straight, avoid redundant error messages, check for malloc
3785 	failure.
3786
37872012-12-10  Tom Lane  <tgl@sss.pgh.pa.us>
3788
3789	* libtiff/tif_pixarlog.c: Improve previous patch for CVE-2012-4447
3790 	(to enlarge tbuf for possible partial stride at end) so that
3791 	overflow in the integer addition is detected.  Per gripe from
3792 	Huzaifa Sidhpurwala.
3793
37942012-12-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3795
3796	* tools/tiffset.c: tiffset now supports a -u option to unset a
3797	tag.  Patch by Zach Baker. See
3798	http://bugzilla.maptools.org/show_bug.cgi?id=2419
3799
38002012-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3801
3802	* automake: Update Automake to 1.12.5 release.
3803
3804	* libtiff/tif_{unix,vms,win32}.c (_TIFFmalloc): ANSI C does not
3805	require malloc() to return NULL pointer if requested allocation
3806	size is zero.  Assure that _TIFFmalloc does.
3807
38082012-11-01  Frank Warmerdam  <warmerdam@pobox.com>
3809
3810	* tools/ppm2tiff.c: avoid zero size buffer vulnerability.
3811	CVE-2012-4564 - Thanks to Huzaifa Sidhpurwala of the
3812	Red Hat Security Response team for the fix.
3813
38142012-10-18  Frank Warmerdam  <warmerdam@google.com>
3815
3816	* tif_zip.c: Avoid crash on NULL error messages.
3817
38182012-09-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3819
3820	* libtiff 4.0.3 released.
3821
38222012-09-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3823
3824	* Makefile.am: Update to Automake 1.12.4
3825
38262012-08-19  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3827
3828	* Makefile.in: Update to Automake 1.12.3
3829
3830	* libtiff{tiff.h, tif_print.c, tif_dirinfo.c, tif_dirread.c}: Add
3831	some TIFF/FX support in libtiff.  Add the tag definitions to
3832	tiff.h.  Add the related TIFF field definitions to tif_dirinfo.c,
3833	and also fixes an error in a comment.  Adds the photometric values
3834	to tif_print.c, and fixes a bug.  These changes are by Steve
3835	Underwood.
3836
38372012-08-13  Frank Warmerdam  <warmerdam@google.com>
3838
3839	* libtiff/tif_write.c: Fix bug rewriting image tiles in a
3840	compressed file: http://trac.osgeo.org/gdal/ticket/4771
3841
38422012-08-02  Frank Warmerdam  <warmerdam@google.com>
3843
3844	* libtiff/tif_dirread.c: report error in case of mismatch value
3845	counts for tags (ie. DotRange).
3846
38472012-07-26  Tom Lane  <tgl@sss.pgh.pa.us>
3848
3849	* libtiff/{tiffio.h, tif_dirinfo.c, libtiff.def}: Add six new
3850 	functions TIFFFieldTag(), TIFFFieldName(), TIFFFieldDataType(),
3851	TIFFFieldPassCount(), TIFFFieldReadCount(), TIFFFieldWriteCount()
3852	as external accessors for the opaque type TIFFField.
3853
3854	* tools/tiffset.c: Make tiffset use the above functions instead of
3855	relying on library private headers.
3856
38572012-07-19  Tom Lane  <tgl@sss.pgh.pa.us>
3858
3859	* tools/tiff2pdf.c: Fix two places where t2p_error didn't get set
3860	after a malloc failure.  No crash risk AFAICS, but the program
3861	might not report exit code 1 as desired.  h/t mancha@mac.hush.com
3862
38632012-07-18  Tom Lane  <tgl@sss.pgh.pa.us>
3864
3865	* tools/tiff2pdf.c: Fail when TIFFSetDirectory() fails.  This
3866	prevents core dumps or perhaps even arbitrary code execution when
3867	processing a corrupt input file (CVE-2012-3401).
3868
38692012-07-06  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3870
3871	* test/raw_decode.c (main): Test fixes to work with IJG JPEG 7+.
3872	IJG JPEG 7+ uses a different upsampling algorithm which produces
3873	different numeric results.
3874
3875	* libtiff/tif_jpeg.c (JPEGPreDecode): Patch from Even Rouault to
3876	work with IJG JPEG 7+.
3877
38782012-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3879
3880	* test/raw_decode.c: Add changes so that test can run with build
3881	directory outside of source directory.
3882
38832012-07-02  Frank Warmerdam  <warmerdam@google.com>
3884
3885	* libtiff/tif_jpeg.c: Fix handling when writing RGBA jpeg compressed
3886	imagery (http://trac.osgeo.org/gdal/ticket/4732)
3887
38882012-06-20  Frank Warmerdam  <warmerdam@google.com>
3889
3890	* libtiff/tif_fax3.c: fix memory initialization of runs, only
3891	partly done.
3892
3893	* libtiff/tif_pixarlog.c: Make sure tbuf is large enough for one
3894	full "stride" past the end.
3895
38962012-06-19  Frank Warmerdam  <warmerdam@google.com>
3897
3898	* libtiff/tif_packbits.c: fix read past end of data buffer.
3899
39002012-06-15  Frank Warmerdam  <warmerdam@google.com>
3901
3902	*  libtiff 4.0.2 released.
3903
3904	* tools/tif2pdf.c, tools/tifdump.c: avoid unitialized variable
3905	warnings with clang.
3906
39072012-06-15  Tom Lane  <tgl@sss.pgh.pa.us>
3908
3909	* tools/tiff2pdf.c: Defend against integer overflows while
3910	calculating required buffer sizes (CVE-2012-2113).
3911
39122012-06-12  Frank Warmerdam  <warmerdam@google.com>
3913
3914	* libtiff/tif_print.c: Be careful about printing corrupt inknames.
3915
3916	* libtiff/tif_fax3.c: Ensure runs array is initialized to zeros.
3917
39182012-06-07  Frank Warmerdam  <warmerdam@google.com>
3919
3920	* libtiff/tif_print.c: avoid pretty printing other fields when
3921	we don't have the proper amount and type of data or if the field
3922	is actually autodefined.
3923
39242012-06-05  Frank Warmerdam  <warmerdam@google.com>
3925
3926	* libtiff/tif_tile.c, libtiff/tif_strip.c: Ensure that illegal
3927	ycbcrsubsampling values result in a runtime error, not just an
3928	assertion.
3929
3930	* tests/custom_dir.c: Add testing of EXIF and custom directory
3931	reading and writing.
3932
3933	* libtiff/tif_dir.c, libtiff/tiffio.h: Add TIFFCreateCustomDirectory()
3934	and TIFFCreateEXIFDirectory() functions.
3935
3936	* libtiff/tif_dir.c, tif_print.c : Remove FIELD_CUSTOM handling for
3937	PAGENUMBER, HALFTONEHINTS, and YCBCRSUBSAMPLING.  Implement DOTRANGE
3938	differently.  This is to avoid using special TIFFGetField/TIFFSetField
3939	rules for these fields in non-image directories (like EXIF).
3940
39412012-06-04  Frank Warmerdam  <warmerdam@google.com>
3942
3943	* libtiff/tif_jpeg.c: Remove code for fixing up h_sampling and v_sampling
3944	in JPEGPreDecode().  If a fixup will be done it needs to be done sooner
3945	in JPEGFixupTagsSubsampling() or else buffer sized may be wrong.
3946
39472012-06-01  Frank Warmerdam  <warmerdam@google.com>
3948
3949	* tools/tiffinfo.c: Do not try to read image data in EXIF directories.
3950
3951	* libtiff/tif_getimage.c: added support for _SEPARATED CMYK images.
3952	http://bugzilla.maptools.org/show_bug.cgi?id=2379
3953
3954	* libtiff/tif_unix.c: use strerror() to return a more specific error message
3955	on failed open.
3956	http://bugzilla.maptools.org/show_bug.cgi?id=2341
3957
3958	* libtiff/tif_jpeg.c: Fix JPEGDecodeRaw() bugs.
3959	http://bugzilla.maptools.org/show_bug.cgi?id=2386
3960
3961	* tests/decode_raw.c, tests/images/quad-tile.jpg.tiff: add limited support
3962	for testing jpeg in tiff image decoding including the "raw" decode interface.
3963
39642012-05-31  Frank Warmerdam  <warmerdam@google.com>
3965
3966	* libtiff/tif_jpeg.c: avoid overrunning the end of the output buffer in
3967	JPEGDecodeRaw() - mostly likely to occur when there is confusion about
3968	sampling values.
3969
3970	* libtiff/tif_read.c: Make sure tif_rawdatasize is cleared when tif_rawdata is freed.
3971
3972	* libtiff/tif_getimage.c: Add support for greyscale+alpha c/o Jérémie Laval.
3973	http://bugzilla.maptools.org/show_bug.cgi?id=2398
3974
39752012-05-29  Frank Warmerdam  <warmerdam@google.com>
3976
3977	* libtiff/tif_dir.c: avoid using specific set/get logic to process fields in custom directories,
3978	like EXIF directories.  This fixes problems like a tag "320" existing in a custom directory getting
3979	processed as if it were a colormap when it isn't really.  Damn the wide variety of argument formulations
3980	to get/set functions for different tags!
3981
3982	* libtiff/tif_dir.c: Ensure that we keep track of when tif_rawdata
3983	is a pointer into an mmap()ed file via TIFF_BUFFERMMAP flag.
3984
39852012-05-24  Frank Warmerdam  <warmerdam@google.com>
3986
3987	* libtiff/tif_pixarlog.c: Allocate working buffer one word larger since we "forward
3988	accumulate" and overwrite the end by one word in at least some cases.
3989
39902012-05-23  Frank Warmerdam  <warmerdam@google.com>
3991
3992	* libtiff/tif_pixarlog.c: avoid accessing out of the lookup arrays for out of range inputs.
3993
3994	* tools/tiffinfo.c: initialize h=0 to avoid undefined variable for degenerate files.
3995
3996	* libtiff/tif_ojpeg.c: if OJPEGWriteHeader() fails once do not bother trying again on
3997	the same image.
3998
3999	* libtiff/tif_ojpeg.c: make things more resilient in the face of files without
4000	stripbytecounts or stripoffsets or where loading these fails.
4001
4002	* libtiff/tif_print.c: be careful about whether min/max values are singular
4003	or one per sample.
4004
4005	* libtiff/tif_print.c: Avoid confusion about count size when printing custom fields.
4006	May affect things like ISOSpeedRatings.
4007
4008	* libtiff/tif_dir.c: avoid one byte past end of ink names reading
4009	in some cases.
4010
40112012-05-19  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4012
4013	* man/TIFFGetField.3tiff: Correct the 'count' field type in the
4014	example for how to retrieve the value of unsupported tags.
4015
40162012-03-30  Frank Warmerdam  <warmerdam@google.com>
4017
4018	* tif_getimage.c: Fix size overflow (zdi-can-1221,CVE-2012-1173)
4019	care of Tom Lane @ Red Hat.
4020
40212012-02-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4022
4023	* libtiff 4.0.1 released.
4024
4025	* Update automake used to 1.11.3.
4026
4027	* libtiff/tiffio.h: Use double-underbar syntax in GCC printf
4028	attribute specification to lessen the risk of accidental macro
4029	substitution.  Patch from Vincent Torri.
4030
40312012-01-31  Frank Warmerdam  <warmerdam@pobox.com>
4032
4033	* libtiff/tif_dir.c, libtiff/tif_dirread.c: Extra caution around
4034	assumption tag fetching is always successful.
4035
4036	* libtiff/tif_jpeg.c: Extra caution for case where sp is NULL.
4037
40382012-01-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4039
4040	* configure.ac: Add support for using library symbol versioning on
4041	ELF systems with the GNU linker.  Support is enabled via
4042	--enable-ld-version-script.  Disabled by default for now until
4043	there is a decision for how to deploy a libtiff with versioned
4044	symbols after libtiff 4.0.0 was already released.
4045
40462011-12-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4047
4048	* libtiff/tif_win32.c: Eliminate some minor 64-bit warnings in
4049
4050	tif_win32.c.  Patch by Edward Lam.
4051
4052	* configure.ac: Add libtiff private dependency on -llzma for
4053	pkg-config.  Patch by Mark Brand.
4054	Updated Automake to 1.11.2.
4055
40562011-12-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4057
4058	* libtiff 4.0.0 released.
4059
40602011-12-08  Frank Warmerdam  <warmerdam@pobox.com>
4061
4062	* libtiff/tif_dirread.c, libtiff/tif_read.c: more cautious checking
4063	of _TIFFFillStriles() results (#gdal 4372)
4064
40652011-12-07  Frank Warmerdam  <warmerdam@pobox.com>
4066
4067	* libtiff/tif_dirread.c: fixes to deal with invalid files where
4068	_TIFFFillStriles() fails, and we try to chop up strips (gdal #4372)
4069
4070	* libtiff/tif_dirread.c: fix error reporting when there is no
4071	tag information struct and name (gdal #4373)
4072
40732011-10-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4074
4075	* Update GNU libtool to 2.4.2.
4076
4077	* tools/tiffsplit.c (tiffcp): TIFFGetField count field should be
4078	uint32 type for TIFFTAG_JPEGTABLES.  Patch by Christophe
4079	Deroulers.
4080
40812011-06-21  Frank Warmerdam  <warmerdam@pobox.com>
4082
4083	* libtiff/libtiff.def: Restore TIFFMergeFieldInfo.
4084
40852011-05-31  Jim Meyering  <meyering@redhat.com>
4086
4087	* libtiff/tif_dirread.c (TIFFFetchStripThing): Free "data" also
4088	upon failure to allocate "resizeddata".
4089	* tools/tiff2ps.c (PSDataBW): Zero buffer *after* checking for
4090	allocation failure, not before.
4091	* libtiff/tif_ojpeg.c: plug leaks on OJPEG read failure path
4092	* tools/rgb2ycbcr.c (cvtRaster): unchecked malloc
4093	* libtiff/tif_jpeg.c, tools/tiff2pdf.c, tools/tiff2ps.c: mark
4094	NULL-deref and possible overflow
4095	* tools/tiff2pdf.c: remove decl+set of set-but-not-used local, "written"
4096	* libtiff/tif_jpeg.c (JPEGInitializeLibJPEG): Remove declaration
4097	and set of otherwise unused local, data_is_empty.
4098	* libtiff/tif_jpeg.c (JPEGDecodeRaw) [JPEG_LIB_MK1_OR_12BIT]:
4099	Diagnose out-of-memory failure and return 0 rather than
4100	dereferencing NULL.
4101
41022011-05-24  Frank Warmerdam  <warmerdam@pobox.com>
4103
4104	* libtiff/tif_dirread.c: produce special error message for zero tag
4105	directories instead of error out on the malloc(0) failure.
4106
41072011-05-16  Frank Warmerdam  <warmerdam@pobox.com>
4108
4109	* libtiff/tif_dirinfo.c: Restore TIFFMergeFieldInfo() and
4110	related declarations as they are in active use by libraries
4111	such as libgeotiff, and work just fine.  (#2315)
4112
41132011-04-20  Frank Warmerdam  <warmerdam@pobox.com>
4114
4115	* libtiff/tif_dirinfo.c,tiffio.h: Remove the obsolete
4116	TIFFMergeFieldInfo/TIFFFindFieldInfo/TIFFFindFieldInfoByName API.
4117	http://bugzilla.maptools.org/show_bug.cgi?id=2315
4118
4119	* libtiff/libtiff.def: add some missing (64bit) APIs.
4120	http://bugzilla.maptools.org/show_bug.cgi?id=2316
4121
41222011-04-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4123
4124	* libtiff 4.0.0beta7 released.
4125
41262011-04-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4127
4128	* configure.ac: Should use AC_CANONICAL_HOST since host specifies
4129	the run-time target whereas target is used to specify the final
4130	output target if the package is a build tool (like a compiler),
4131	which libtiff is not.  Resolves libtiff bug 2307 "Use
4132	AC_CANONICAL_HOST macro".
4133
41342011-04-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4135
4136	* configure.ac: Support configuring TIFF_INT64_FORMAT and
4137	TIFF_UINT64_FORMAT appropriately for MinGW32.
4138
4139	* tools/tiffdump.c (ReadDirectory): MinGW32 needs to use WIN32
4140	printf conventions for 64-bit types because it uses the WIN32 CRT.
4141
4142	* libtiff/{tif_dumpmode.c,tif_luv.c,tif_lzw.c,tif_print.c,
4143	tif_read.c,tif_strip.c,tif_thunder.c}: MinGW32 needs to use WIN32
4144	printf conventions for 64-bit types because it uses the WIN32 CRT.
4145
4146	* tools/tiff2pdf.c (t2p_write_pdf_string): Fix printf syntax not
4147	understood by WIN32 CRT.
4148
4149	* libtiff/tif_ojpeg.c: Fixes to compile with MinGW32 GCC.
4150
4151	* tools/fax2ps.c (main): Use tmpfile() rather than mkstemp() since
4152	it is much more portable.  Tmpfile is included in ISO/IEC
4153	9899:1990 and the WIN32 CRT.
4154
41552011-03-26  Frank Warmerdam  <warmerdam@pobox.com>
4156
4157	* tools/tiffset.c: add -d and -sd switches to allow operation on
4158	a particular directory, not just the first (jef).
4159
41602011-03-21  Frank Warmerdam  <warmerdam@pobox.com>
4161
4162	* libtiff/tif_thunder.c: Correct potential buffer overflow with
4163	thunder encoded files with wrong bitspersample set.  The libtiff
4164	development team would like to thank Marin Barbella and TippingPoint's
4165	Zero Day Initiative for reporting this vulnerability (ZDI-CAN-1004,
4166	CVE-2011-1167).
4167	http://bugzilla.maptools.org/show_bug.cgi?id=2300
4168
41692011-03-10  Frank Warmerdam  <warmerdam@pobox.com>
4170
4171	* libtiff/tif_fax3.h: Fix to last change allowing zero length
4172	runs at the start of a scanline - needed for legal cases.
4173
41742011-03-02  Frank Warmerdam  <warmerdam@pobox.com>
4175
4176	* libtiff/tif_fax3.h: Protect against a fax VL(n) codeword commanding
4177	a move left.  Without this, a malicious input file can generate an
4178	indefinitely large series of runs without a0 ever reaching the right
4179	margin, thus overrunning our buffer of run lengths.  Per CVE-2011-0192.
4180	This is a modified version of a patch proposed by Drew Yao of Apple
4181	Product Security.  It adds an unexpected() report, and disallows the
4182	equality case, since emitting a run without increasing a0 still allows
4183	buffer overrun.
4184
41852011-02-23  Frank Warmerdam  <warmerdam@pobox.com>
4186
4187	* libtiff/tif_jpeg.c: avoid divide by zero in degenerate case (#2296)
4188
4189	* tools/tiff2rgba.c: close source file on error to make leak
4190	detection easier.
4191
4192	* libtiff/tif_getimage.c: avoid leaks if TIFFRGBAImageBegin() fails.
4193
4194	http://bugzilla.maptools.org/show_bug.cgi?id=2295
4195
41962011-02-22  Frank Warmerdam  <warmerdam@pobox.com>
4197
4198	* libtiff/tif_lzma.c: Maintain tif_rawcc/tif_rawcp (CHUNKY_STRING_READ
4199	_SUPPORT)
4200
42012011-02-18  Frank Warmerdam  <warmerdam@pobox.com>
4202
4203	* configure.ac, configure: Added support for --enable-chunky-strip-read
4204	configure option to enable the experimental feature from a couple
4205	months ago for reading big strips in chunks.
4206
4207	* configure.ac, tif_read.c, tif_readdir.c, tif_dir.h, tiffiop.h,
4208	tif_write.c, tif_print.c, tif_jpeg.c, tif_dirwrite.c, tif_write.c:
4209	Implement optional support for deferring the load of strip/tile
4210	offset and size tags for optimized scanning of directories.  Enabled
4211	with the --enable-defer-strile-load configure option (DEFER_STRILE_LOAD
4212	#define in tif_config.h).
4213
42142011-02-11  Frank Warmerdam  <warmerdam@pobox.com>
4215
4216	* libtiff/tif_print.c: remove unused variable.
4217
42182011-02-09  Frank Warmerdam  <warmerdam@pobox.com>
4219
4220	* libtiff/tif_win32.c: avoid error/warning buffer overrun problem
4221	with non-console (popup message) builds on win32.
4222
4223	http://bugzilla.maptools.org/show_bug.cgi?id=2293
4224
42252011-01-24  Olivier Paquet  <olivier.paquet@gmail.com>
4226
4227	* libtiff/{tif_dir.{h,c}, tif_dirinfo.c, tif_dirread.c, tif_dirwrite.c,
4228	tif_print.c, tiff.h, tiffiop.h} : Added support for
4229	TIFFTAG_SMINSAMPLEVALUE and TIFFTAG_SMAXSAMPLEVALUE to have different
4230	values for each sample. Presents the min/max of all samples by default for
4231	compatibility. TIFFSetField/TIFFGetField can be made to handle those tags
4232	as arrays by changing the new TIFFTAG_PERSAMPLE pseudo tag.
4233	http://www.asmail.be/msg0055458208.html
4234
42352011-01-06  Frank Warmerdam  <warmerdam@pobox.com>
4236
4237	* libtiff/tif_pixarlog.c: Note that tif_rawcc/tif_rawcp are not
4238	maintained.
4239
4240	* libtiff/tif_zip.c: Maintain tif_rawcc/tif_rawcp when decoding
4241	for CHUNKY_STRIP_READ_SUPPORT.
4242
4243	* libtiff/tif_jpeg.c: ensure that rawcc and rawcp are maintained
4244	during JPEGPreDecode and JPEGDecode calls.
4245	* libtiff/tif_read.c: larger read ahead for CHUNKY_STRIP_READ_SUPPORT,
4246	as compression formats like JPEG keep 16 lines interleaved in a sense
4247	and might need to touch	quite a bit of data.
4248
4249	http://trac.osgeo.org/gdal/ticket/3894
4250
42512011-01-03  Lee Howard <faxguy@howardsilvan.com>
4252
4253	* libtiff/tif_jpeg.c: Fix regressions with 2 and 3 band images
4254	caused by commit on 2010-12-14.  Submitted by e-mail from
4255	Even Rouault <even.rouault@mines-paris.org>
4256
42572010-12-31  Olivier Paquet  <olivier.paquet@gmail.com>
4258
4259	* libtiff/tif_dirwrite.c: Fixed writing of TIFFTAG_REFERENCEBLACKWHITE.
4260	http://bugzilla.maptools.org/show_bug.cgi?id=2266
4261
42622010-12-23  Andrey Kiselev  <dron@ak4719.spb.edu>
4263
4264	* tools/tiffcp.c, man/tiffcp.1: Added support for specifying the
4265	compression level parameter (preset) for Deflate and LZMA encoders,
4266	e.g "-c lzma:p1" or "-c zip:p9".
4267
4268	* libtiff/tif_lzma.c: Properly set the LZMA2 compression level
4269	(preset) in LZMAVSetField().
4270
42712010-12-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4272
4273	* libtiff/Makefile.am (libtiff_la_SOURCES): Added tif_lzma.c to
4274	Makefile.
4275
42762010-12-14  Andrey Kiselev  <dron@ak4719.spb.edu>
4277
4278	* configure.ac, libtiff/{tif_codec.c, tif_config.h.in, tiff.h,
4279	tiffiop.h, tif_lzma.c}, tools/tiffcp.c, man/tiffcp.1: Implement a new
4280	TIFF compression scheme LZMA reserving a new value 34925 for
4281	Compression tag. As per
4282	bug http://bugzilla.maptools.org/show_bug.cgi?id=2221
4283
42842010-12-14  Lee Howard <faxguy@howardsilvan.com>
4285
4286	* libtiff/tif_dirread.c: tolerate some cases where
4287	FIELD_COLORMAP is missing
4288	http://bugzilla.maptools.org/show_bug.cgi?id=2189
4289
42902010-12-14  Lee Howard <faxguy@howardsilvan.com>
4291
4292	* libtiff/tif_read.c: change read_ahead to tmsize_t
4293	http://bugzilla.maptools.org/show_bug.cgi?id=2222
4294
42952010-12-14  Lee Howard <faxguy@howardsilvan.com>
4296
4297	* configure.ac, libtiff/Makefile.am: Build tif_win32.c on
4298	Windows except on Cygwin
4299	http://bugzilla.maptools.org/show_bug.cgi?id=2224
4300
43012010-12-14  Lee Howard <faxguy@howardsilvan.com>
4302
4303	* tools/gif2tiff.c: fix buffer overrun
4304	http://bugzilla.maptools.org/show_bug.cgi?id=2270
4305
43062010-12-14  Lee Howard <faxguy@howardsilvan.com>
4307
4308	* libtiff/tif_jpeg.c: reduce usage of JCS_UNKNOWN in order
4309	to improve compatibility with various viewers
4310	submitted by e-mail from Dwight Kelly <dkelly@apago.com>
4311
43122010-12-13  Lee Howard <faxguy@howardsilvan.com>
4313
4314	* tools/fax2ps.c: be consistent with page-numbering
4315	http://bugzilla.maptools.org/show_bug.cgi?id=2225
4316
43172010-12-13  Lee Howard <faxguy@howardsilvan.com>
4318
4319	* libtiff/tif_color.c: prevent crash in handling bad TIFFs
4320	resolves CVE-2010-2595
4321	http://bugzilla.maptools.org/show_bug.cgi?id=2208
4322
43232010-12-13  Lee Howard <faxguy@howardsilvan.com>
4324
4325	* tools/tiffcrop.c: new release by Richard Nolde
4326	http://bugzilla.maptools.org/show_bug.cgi?id=2004
4327
43282010-12-12  Lee Howard <faxguy@howardsilvan.com>
4329
4330	* tools/tiff2pdf.c: fix colors for images with RGBA
4331	interleaved data
4332	http://bugzilla.maptools.org/show_bug.cgi?id=2250
4333
43342010-12-12  Lee Howard <faxguy@howardsilvan.com>
4335
4336	* libtiff/tif_dirread.c: fix for Zeiss LSM and Canon CR2 files
4337	http://bugzilla.maptools.org/show_bug.cgi?id=2164
4338
43392010-12-11  Lee Howard <faxguy@howardsilvan.com>
4340
4341	* tools/tiff2pdf.c: remove invalid duplication for Lab
4342	http://bugzilla.maptools.org/show_bug.cgi?id=2162
4343
43442010-12-11  Lee Howard <faxguy@howardsilvan.com>
4345
4346	* libtiff/tif_jpeg.c: fix use of clumplines calculation
4347	http://bugzilla.maptools.org/show_bug.cgi?id=2149
4348
43492010-12-11  Lee Howard <faxguy@howardsilvan.com>
4350
4351	* tools/fax2ps.c: replace unsafe tmpfile() with mkstemp()
4352	http://bugzilla.maptools.org/show_bug.cgi?id=2118
4353
43542010-12-11  Lee Howard <faxguy@howardsilvan.com>
4355
4356	* libtiff/tif_ojpeg.c, libtiff/tif_pixarlog.c,
4357	  libtiff/tif_zip.c: fix build errors for VC6
4358	http://bugzilla.maptools.org/show_bug.cgi?id=2105
4359
43602010-12-11  Lee Howard <faxguy@howardsilvan.com>
4361
4362	* libtiff/tif_stream.cxx: warnings cleanup
4363	http://bugzilla.maptools.org/show_bug.cgi?id=2091
4364	* libtiff/tif_dirread.c: warnings cleanup
4365	http://bugzilla.maptools.org/show_bug.cgi?id=2092
4366
43672010-12-11  Lee Howard <faxguy@howardsilvan.com>
4368
4369	* tools/tiff2pdf.c: add fill-page option
4370	http://bugzilla.maptools.org/show_bug.cgi?id=2051
4371
43722010-12-11  Lee Howard <faxguy@howardsilvan.com>
4373
4374	* libtiff/tif_dirread.c: modify warnings
4375	http://bugzilla.maptools.org/show_bug.cgi?id=2016
4376
43772010-12-11  Lee Howard <faxguy@howardsilvan.com>
4378
4379	* libtiff/tif_ojpeg.c: fix buffer overflow on problem data
4380        http://bugzilla.maptools.org/show_bug.cgi?id=1999
4381
43822010-12-11  Lee Howard <faxguy@howardsilvan.com>
4383
4384	* tools/tiffinfoce.c: strip byte counts are uint64* now
4385
43862010-12-11  Lee Howard <faxguy@howardsilvan.com>
4387
4388        * libtiff/tif_ojpeg.c: fix crash when reading a TIFF with a zero
4389        or missing byte-count tag
4390        * tools/tiffsplit.c: abort when reading a TIFF without a byte-count
4391        per http://bugzilla.maptools.org/show_bug.cgi?id=1996
4392
43932010-12-08  Lee Howard <faxguy@howardsilvan.com>
4394
4395        * libtiff/tif_dirread.c: fix crash when reading a badly-constructed
4396        TIFF per http://bugzilla.maptools.org/show_bug.cgi?id=1994
4397
43982010-12-06  Lee Howard <faxguy@howardsilvan.com>
4399
4400        * libtiff/tif_open.c: Fix mode check before opening a file.
4401        http://bugzilla.maptools.org/show_bug.cgi?id=1906
4402
44032010-11-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4404
4405	* libtiff-4.pc.in: Added libtiff pkg-config .pc file support.
4406	Patch by Vincent Torri.
4407
44082010-10-21  Frank Warmerdam  <warmerdam@pobox.com>
4409
4410	* tools/tiffinfo.c: avoid direct reference to _TIFFerrorHandler.
4411
4412	* libtiff/tif_config.vc.h: define snprintf to _snprintf for tiff2pdf.
4413
4414	* libtiff/libtiff.def: export _TIFFCheckMalloc for tools.
4415
44162010-09-25  Lee Howard <faxguy@howardsilvan.com>
4417
4418	* tools/tiff2ps.c: improvements and enhancements from Richard Nolde
4419	with additional command line options for Document Title,
4420	Document Creator, and Page Orientation
4421
44222010-07-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4423
4424	* tools/tiffcrop.c: Patch from Richard Nolde to avoid a
4425	potentially unterminated buffer due to using an exceptionally long
4426	file name.
4427
44282010-07-08  Andrey Kiselev  <dron@ak4719.spb.edu>
4429
4430	* tools/tiff2pdf.c: Fixed ID buffer filling in
4431	t2p_write_pdf_trailer(), thanks to Dmitry V. Levin.
4432
44332010-07-07  Andrey Kiselev  <dron@ak4719.spb.edu>
4434
4435	* libtiff/tif_dirread.c: Really reset the tag count in CheckDirCount()
4436	to expected value as the warning message suggests. As per bug
4437	http://bugzilla.maptools.org/show_bug.cgi?id=1963
4438
44392010-07-06  Andrey Kiselev  <dron@ak4719.spb.edu>
4440
4441	* tools/tiffset.c: Properly handle TIFFTAG_PAGENUMBER,
4442	TIFFTAG_HALFTONEHINTS, TIFFTAG_YCBCRSUBSAMPLING, TIFFTAG_DOTRANGE
4443	which should be set by value.
4444
4445	* libtiff/tif_dirinfo.c: Don't use assertions in _TIFFFieldWithTag()
4446	and _TIFFFieldWithName() if the tag is not found in the tag table.
4447	This should be normal situation and returned NULL value should be
4448	properly handled by the caller.
4449
44502010-07-02  Andrey Kiselev  <dron@ak4719.spb.edu>
4451
4452	* libtiff/tif_getimage.c: Avoid wrong math du to the signed/unsigned
4453	integer type conversions. As per bug
4454	http://bugzilla.maptools.org/show_bug.cgi?id=2207
4455
4456	* tools/{tiff2bw.c, thumbnail.c, pal2rgb.c}: Fix the count for
4457	WhitePoint tag as per bug
4458	http://bugzilla.maptools.org/show_bug.cgi?id=2042
4459
4460	* libtiff/tif_getimage.c: Check the number of samples per pixel when
4461	working with YCbCr image in PickContigCase(). As per bug
4462	http://bugzilla.maptools.org/show_bug.cgi?id=2216
4463
4464	* libtiff/tif_dir.c: Set the bogus post-decoding hook when processing
4465	TIFFTAG_BITSPERSAMPLE in _TIFFVSetField() for the case of 8 bit when
4466	we don't need any post-processing. That helps to reset the hook if we
4467	previously set this field to some other value and the hook was
4468	initialized accordingly. As per bug
4469	http://bugzilla.maptools.org/show_bug.cgi?id=2035
4470
44712010-07-01  Andrey Kiselev  <dron@ak4719.spb.edu>
4472
4473	* tools/tiffgt.c: Properly check the raster buffer allocations for
4474	integer overflows. As per bug
4475	http://bugzilla.maptools.org/show_bug.cgi?id=2108
4476
4477	* m4/acinclude.m4: Update GL/GLU/GLUt/Pthread macros from the
4478	upstream.
4479
4480	* libtiff/{tif_aux.c, tif_strip.c, tif_tile.c, tiffiop.h}: Move
4481	multiply_32() and multiply_64() functions into tif_aux.c file and
4482	rename them into _TIFFMultiply32() and _TIFFMultiply64() respectively.
4483
44842010-06-30  Andrey Kiselev  <dron@ak4719.spb.edu>
4485
4486	* tools/tiff2pdf.c: Better generation of ID field in
4487	t2p_write_pdf_trailer(). Get rid of GCC aliasing warnings.
4488
4489	* tools/tiff2pdf.c: Fixed computation of the tile buffer size when
4490	converting JPEG encoded tiles.
4491
4492	* tools/tiff2pdf.c: Better handling of string fields, use static
4493	string buffers instead of dynamically allocated, use strncpy() instead
4494	of strcpy(), control the string lengths.
4495
44962010-06-25  Andrey Kiselev  <dron@ak4719.spb.edu>
4497
4498	* tools/tiffcp.c: Initialize buffer arrays with zero to avoid
4499	referencing to uninitialized memory in some cases (e.g. when tile size
4500	set bigger than the image size).
4501
45022010-06-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4503
4504	* tools/tiffcrop.c: Patch from Richard Nolde. Reject YCbCr
4505	subsampled data since tiffcrop currently doesn't support it.  Fix
4506	JPEG support.
4507
45082010-06-13  Frank Warmerdam  <warmerdam@pobox.com>
4509
4510	* libtiff/tif_dirinfo.c: Fix invocation of tag compare function (#2201)
4511
4512	* tools/tiff2pdf.c: Fix assorted bugs in tiff2pdf: missing "return"
4513	in t2p_read_tiff_size() causes t2p->tiff_datasize to be set entirely
4514	wrong for COMPRESSION_JPEG case, resulting in memory stomp if actual
4515	size is larger.  Also, there are a bunch of places that try to
4516	memset() a malloc'd buffer before checking for malloc failure, which
4517	would result in core dump if there actually were a failure. (#2211)
4518
45192010-06-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4520
4521	* libtiff/tiffiop.h (TIFFSafeMultiply): Need more castings to
4522	avoid compiler warnings if parameter types are not sign
4523	consistent.
4524
4525	* libtiff 4.0.0alpha6 released.
4526
4527	* tools/tiffcrop.c: Applied patch from Richard Nolde: Corrected
4528	European page size dimensions.  Added an option to allow the user
4529	to specify a custom page size on the command line.  Fix the case
4530	where a page size specified with a fractional part was being
4531	coerced to an integer by retyping the variables that define the
4532	paper size.
4533
4534	* html/index.html: Update for the 3.9.3 release.
4535
4536	* tools/tiffcp.c (tiffcp): Applied Tom Lane's patch to reject
4537	YCbCr subsampled data since tiffcp currently doesn't support it.
4538	http://bugzilla.maptools.org/show_bug.cgi?id=2097
4539
4540	* Update libtool to version 2.2.10.
4541
45422010-06-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4543
4544	* libtiff/tiffiop.h (TIFFSafeMultiply): Work properly if
4545	multiplier is zero.
4546
45472010-06-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4548
4549	* libtiff/tif_fax3.c (Fax3SetupState): Yesterday's fix for
4550	CVE-2010-1411 was not complete.
4551
4552	* libtiff/tiffiop.h (TIFFSafeMultiply): New macro to safely
4553	multiply two integers.  Returns zero if there is an integer
4554	overflow.
4555
4556	* tools/tiffcp.c (main): tiffcp should not leak memory if an error
4557	is reported when reading the input file.
4558
45592010-06-08  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4560
4561	* Update libtool to version 2.2.8.
4562
4563	* libtiff/tif_fax3.c (Fax3SetupState): Avoid under-allocation of
4564	buffer due to integer overflow in TIFFroundup() and several other
4565	potential overflows.  In conjunction with the fix to TIFFhowmany(),
4566	fixes CVE-2010-1411.
4567
4568	* libtiff/tiffiop.h (TIFFhowmany): Return zero if parameters would
4569	result in an integer overflow. This causes TIFFroundup() to also
4570	return zero if there would be an integer overflow.
4571
4572	* contrib: Add an emacs formatting mode footer to all source files
4573	so that emacs can be effectively used.
4574
45752010-06-03  Oliver Chen Feng <scip8183@gmail.com>
4576
4577	* libtiff/tools/tiffcp.c: add a new option -x to force merged tiff
4578	file PAGENUMBER value in sequence for users who care the page
4579	sequence, this will also prevent tiff2pdf from creating pdf file from
4580	the merged tiff file with wrong page sequence.
4581
45822010-05-08  Olivier Paquet  <olivier.paquet@gmail.com>
4583
4584	* libtiff/tif_dirread.c: Restored TIFFReadDirEntryFloat function in order
4585	to add missing TIFF_SETGET_FLOAT case to TIFFFetchNormalTag.
4586	* libtiff/tif_dirinfo.c: Use correct set_field_type for
4587	TIFFTAG_PIXAR_FOVCOT so it is readable again (regression from 3.9.2).
4588	http://bugzilla.maptools.org/show_bug.cgi?id=2192
4589
45902010-05-07  Frank Warmerdam  <warmerdam@pobox.com>
4591
4592	* libtiff/tif_jpeg.c: Ensure that quality is always set in
4593	JPEGPreEncode(), not just when we want to output local tables.
4594	Otherwise the quality used during compression may not be right and
4595	might not match the tables in the tables tag.   This bug only occurs
4596	when seeking between directories in the midst of writing blocks.
4597	http://trac.osgeo.org/gdal/ticket/3539
4598
45992010-05-06  Andrey Kiselev  <dron@ak4719.spb.edu>
4600
4601	* html/man/TIFFGetField.3tiff.html, html/man/TIFFSetField.3tiff.html:
4602	Regenerated from the source.
4603
46042010-05-05  Olivier Paquet  <olivier.paquet@gmail.com>
4605
4606	* libtiff/tif_print.c: Fixed printing of TIFFTAG_REFERENCEBLACKWHITE which
4607	had stopped working. Also made it always print 6 floats instead of
4608	2*SamplesPerPixel.
4609	http://bugzilla.maptools.org/show_bug.cgi?id=2191
4610	http://bugzilla.maptools.org/show_bug.cgi?id=2186
4611	* man/TIFFGetField.3tiff, man/TIFFSetField.3tiff: Fixed doc to reflect the
4612	fact that libtiff considers TIFFTAG_REFERENCEBLACKWHITE to be 6 floats.
4613
46142010-05-05  Frank Warmerdam  <warmerdam@pobox.com>
4615
4616	* libtiff/tif_jpeg.c: Fix to use memcmp(), not memcpy() when checking
4617	if the jpeg table was written.  This is a fix for the last fix on 04-21.
4618
46192010-04-21  Frank Warmerdam  <warmerdam@pobox.com>
4620
4621	* libtiff/tif_jpeg.c: avoid preparing jpeg tables every time
4622	JPEGSetupEncode() is called if the tables already seem to be
4623	established.  This prevents spurious updates and rewriting of
4624	directories with jpegtables when doing updates to existing images.
4625	http://trac.osgeo.org/gdal/ticket/3539
4626
46272010-04-20  Olivier Paquet  <olivier.paquet@gmail.com>
4628
4629	* libtiff/tif_dirinfo.c: Use correct set_field_type for
4630	TIFFTAG_PIXAR_IMAGEFULLWIDTH, TIFFTAG_PIXAR_IMAGEFULLLENGTH,
4631	TIFFTAG_PIXAR_MATRIX_WORLDTOSCREEN and TIFFTAG_PIXAR_MATRIX_WORLDTOCAMERA.
4632	They were unreadable with TIFF_SETGET_UNDEFINED, a regression from 3.9.2.
4633	http://bugzilla.maptools.org/show_bug.cgi?id=2139
4634
46352010-04-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4636
4637	* libtiff/tif_dir.c (_TIFFVSetField): Add a special error case for
4638	when the tag count value is zero.  Error handling is still a
4639	regression since in 3.9.2, empty tags are skipped (with a warning)
4640	rather than returning a hard error and refusing to read the file.
4641
4642	* tools/ppm2tiff.c (main): While case for parsing comment line
4643	requires extra parenthesis to work as expected.  Reported by
4644	Thomas Sinclair.
4645
46462010-04-02  Frank Warmerdam  <warmerdam@pobox.com>
4647
4648	* libtiff/tif_read.c (primarily): Add support for
4649	CHUNKY_STRIP_READ_SUPPORT where large strips are
4650	read in chunks for applications using TIFFReadScanline().
4651	This is intended to make it more practical work with very
4652	large compressed one-strip files.   Feature is off by default.
4653	Enable by defining CHUNK_STRIP_READ_SUPPORT as a macro.
4654	http://trac.osgeo.org/gdal/ticket/3514
4655
46562010-03-31  Frank Warmerdam  <warmerdam@pobox.com>
4657
4658	* libtiff/tif_flush.c: Use TIFFRewriteDirectory() when flushing
4659	directories so previously placed directories will be migrated to
4660	the end of file if needed.
4661
46622010-03-30  Frank Warmerdam  <warmerdam@pobox.com>
4663
4664	* libtiff/tif_lzw.c: change type of dec_bitsleft field to uint64
4665	to support operating on strips/tiles of more than 256MB.
4666	http://trac.osgeo.org/gdal/ticket/3512
4667
46682010-03-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4669
4670	* libtiff/tif_aux.c (_TIFFCheckRealloc): Improve error message so
4671	that it is clearly a memory allocation error message, and also
4672	includes the size of the allocation request.
4673
46742010-02-22  Lee Howard  <faxguy@howardsilvan.com>
4675
4676	* libtiff/tif_jpeg.c: Do not generate a JPEGTables tag when creating
4677	the JPEG TIFF as is is not required in order to prevent it from
4678	being unused and filled with invalid data.  (Leave it to be
4679	generated by later activity.)
4680	http://bugzilla.maptools.org/show_bug.cgi?id=2135
4681	* tools/tiff2pdf.c: Write the JPEG SOI headers into the TIFF strip
4682	data rather than skipping them.  This fixes the ability to view in
4683	Acrobat Reader, Evince, and Ghostscript.
4684	http://bugzilla.maptools.org/show_bug.cgi?id=2135
4685	* libtiff/tif_fax3.c: Don't return error on badly-terminated MMR
4686	strips.
4687	http://bugzilla.maptools.org/show_bug.cgi?id=2029
4688
46892009-12-03  Frank Warmerdam  <warmerdam@pobox.com>
4690
4691	* libtiff/tif_jpeg.c: Made JPEGDecodeRaw() check for buffer overruns.
4692	Made so that when working with downsampled images a stub function
4693	reporting an error is used for tif_decoderow.  We cannot meaningfully
4694	support reading scanlines in this situation.  (#1936)
4695
4696	* libtiff/tif_jpeg.c: Ensure that tif_scanlinesize is computed after
4697	resetting of the upsampling values (gdal:#3259).
4698	http://bugzilla.maptools.org/show_bug.cgi?id=1936
4699
47002009-11-30  Frank Warmerdam  <warmerdam@pobox.com>
4701
4702	* contrib/dbs/tiff-grayscale.c, contrib/tif-palette.c,
4703	tools/ras2tiff.c: Fix resource leaks on error.
4704	http://bugzilla.maptools.org/show_bug.cgi?id=2121
4705
4706	* libtiff/tif_{aux.c,dir.c,dir.h,dirinfo.c}: Return to handling
4707	TIFFTAG_REFERENCEBLACKWHITE as a field in the TIFF directory instead
4708	of as a custom(generic) field to avoid a potential reentrancy problem.
4709	http://bugzilla.maptools.org/show_bug.cgi?id=2125
4710
4711	* libtiff/tif_color.c, libtiff/tif_getimage.c, libtiff/tiffio.h,
4712	man/TIFFcolor.3tiff: Make TIFFDisplay argument in TIFFCIELabToRGBInit
4713	const, and display_sRGB static and const.
4714	http://bugzilla.maptools.org/show_bug.cgi?id=2124
4715
47162009-11-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4717
4718	* libtiff 4.0.0alpha5 released.
4719
47202009-11-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4721
4722	* tools/tiffcrop.c: Updated tiffcrop from Richard Nolde.  This
4723	version has undergone substantial testing with arbitrary sample
4724	bit depths.  Also eliminates GCC compilation warnings.
4725
47262009-11-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4727
4728	* port/libport.h: Add extern declarations for getopt standard
4729	globals.
4730
47312009-10-31  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4732
4733	* libtiff/tif_lzw.c (LZWDecode, LZWDecodeCompat): Fix warnings
4734	noticed in 64-bit build of libtiff with Visual Studio 2005.
4735	Resolves "Bug 2067 - Visual Studio 2005 64-bit warnings in
4736	tif_lzw.c", http://bugzilla.maptools.org/show_bug.cgi?id=2067
4737
4738	* libtiff/tif_pixarlog.c (PixarLogEncode): Fix non-important
4739	warning noticed in Visual Studio 2005 build. Resolves "Bug 2068 -
4740	Visual Studio 2005 64-bit warning in tif_pixarlog.c",
4741	http://bugzilla.maptools.org/show_bug.cgi?id=2068
4742
47432009-10-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4744
4745	* libtiff/tif_dirread.c: Eliminate GCC "dereferencing type-punned
4746	pointer" warnings.
4747
47482009-10-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4749
4750	* html/tools.html: Add manual page links, and a summary
4751	description of tiffcrop.
4752
47532009-10-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4754
4755	* configure.ac: x86_64 should use the same fill order as i386.
4756
47572009-09-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4758
4759	* tools/tiffcrop.c, man/tiffcrop.1: New tiffcrop from Richard
4760	Nolde.  Major updates to add significant functionality for reading
4761	and writing tile based images with bit depths not a multiple of 8
4762	which cannot be handled by tiffcp.
4763
47642009-09-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4765
4766	* libtiff/tif_ojpeg.c (OJPEGWriteHeaderInfo): IJG JPEG 7 needs
4767	do_fancy_upsampling=FALSE in order to read raw data.  Resolves
4768	"Bug 2090 - OJPEG crash with libjpeg v7".
4769	http://bugzilla.maptools.org/show_bug.cgi?id=2090
4770
47712009-09-03  Frank Warmerdam  <warmerdam@pobox.com>
4772
4773	* libtiff/tif_getimage.c: Fixed error recognition handling in RGBA
4774	interface when stoponerror is set.
4775	http://bugzilla.maptools.org/show_bug.cgi?id=2071
4776
47772009-08-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4778
4779	* tools/{tiffcrop.c,tiffgt.c}: Applied patch from Oden Eriksson to
4780	fix build with gcc when using the "-Wformat
4781	-Werror=format-security" flags.
4782
47832009-08-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4784
4785	* test/{bmp2tiff_palette.sh, bmp2tiff_rgb.sh, gif2tiff.sh,
4786	ppm2tiff_pbm.sh, ppm2tiff_pgm.sh, ppm2tiff_ppm.sh}: Additional
4787	utilities tests.
4788
47892009-08-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4790
4791	* tools/tiffinfo.c: tiffinfo should return error status to the
4792	caller.  Register a private error callback to accomplish that.
4793
4794	* test/Makefile.am (TIFFIMAGES): Add test images in BMP, GIF, and
4795	PNM formats so that we will be able to test more of the tools.
4796	While adding these test images I notice that bmp2tiff and gif2tiff
4797	only support ancient versions of their respective formats.
4798
47992009-08-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4800
4801	* libtiff 4.0.0alpha4 released.
4802
4803	* HOWTO-RELEASE: Improved release instructions.
4804
48052009-08-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4806
4807	* man/{TIFFClose.3tiff,raw2tiff.1,tiffcmp.1,tiffsplit.1}: Applied
4808	fixes for "Bug 2023 - nroff errors in manual pages".
4809	http://bugzilla.maptools.org/show_bug.cgi?id=2023
4810
4811	* tools/{rgb2ycbcr.c, tiff2rgba.c}: Applied fixes for "Bug 2079 -
4812	CVE-2009-2347 libtiff: integer overflows in various inter-color
4813	space conversion tools".
4814	http://bugzilla.maptools.org/show_bug.cgi?id=2079
4815
4816	* libtiff/tif_print.c (TIFFPrintDirectory): Apply fix from Jay
4817	Berkenbilt for "Bug 2024 - possible null pointer dereference with
4818	one-line fix".
4819	http://bugzilla.maptools.org/show_bug.cgi?id=2024
4820
4821	* libtiff/tif_dirread.c (TIFFReadCustomDirectory): Apply patch
4822	from Jay Berkenbilt for "Bug 1895 - logic error in tif_dirread.c:
4823	segfault after setting tdir_tag = IGNORE".
4824	http://bugzilla.maptools.org/show_bug.cgi?id=1895
4825
48262009-08-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4827
4828	* test/Makefile.am, test/tiffcrop*.sh: Split previously existing
4829	tiffcrop.sh into a collection of many specific tests.  Re-wrote
4830	all of the existing tests to be based on some simple shell
4831	functions.  Make distcheck works again.
4832
4833	Export certain variables (MAKE, MAKEFLAGS, MEMCHECK) to tests and
4834	added 'memcheck' and 'ptrcheck' targets to make it easy to run the
4835	tests under valgrind.
4836
48372009-08-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4838
4839	* test/tiffcp-logluv.sh: Fix test so that it works with a VPATH
4840	build.
4841
4842	* test/Makefile.am (AUTOMAKE_OPTIONS): Colorized tests was not
4843	actually activated since it needed to be enabled in this
4844	Makefile.am.  Also activated parallel-tests mode since it offers
4845	useful features such as per-test .log files and a summary test
4846	report .log file.
4847
48482009-08-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4849
4850	* configure.ac: Updated autotools.  Autoconf 2.64, Automake 1.11,
4851	libtool 2.2.6.  Enabled support for silent build rules
4852	(--enable-silent-rules or 'make V=0') and colorized tests.
4853
4854	* html/{index.html, v3.9.0.html}: Update for 3.9.0 release.
4855
48562009-06-30  Frank Warmerdam  <warmerdam@pobox.com>
4857
4858	* tests/tiffcp-logluv.sh: minimal testing of sgilog compression.
4859
4860	* tools/tiffcp.c: add -c sgilog support.
4861
4862	* libtiff/tif_luv.c: correct return codes from encoderow to be
4863	1 on success instead of zero.
4864	http://bugzilla.maptools.org/show_bug.cgi?id=2069
4865
4866	* libtiff/tif_lzw.c: back out patch from #2065 and apply patch from
4867	#1085 for a better underflow fix that errors properly.
4868	http://bugzilla.maptools.org/show_bug.cgi?id=2065
4869	http://bugzilla.maptools.org/show_bug.cgi?id=1985
4870
48712009-06-26  Frank Warmerdam  <warmerdam@pobox.com>
4872
4873	* libtiff/tif_strip.c: Remove an inappropriate assertion that often
4874	fails on oddly sized 12bit jpeg compressed ycbcr images.
4875
48762009-06-22  Frank Warmerdam  <warmerdam@pobox.com>
4877
4878	* libtiff/tif_lzw.c: Fix buffer underflow bug.
4879	http://bugzilla.maptools.org/show_bug.cgi?id=2065
4880
48812009-06-21  Frank Warmerdam  <warmerdam@pobox.com>
4882
4883	* configure.ac, libtiff/tif_jpeg.c, libtiff/tif_jpeg_12.c: add support
4884	for dual mode 8/12 bit jpeg support.
4885
48862009-06-03  Frank Warmerdam  <warmerdam@pobox.com>
4887
4888	* libtiff/tif_write.c: do not override the planar configuration to be
4889	contig for one sample files if planar configuration is already set.
4890	http://bugzilla.maptools.org/show_bug.cgi?id=2057
4891
48922009-06-02  Frank Warmerdam  <warmerdam@pobox.com>
4893
4894	* libtiff/libtiff.def: Add TIFFUnsetField.
4895
48962009-05-03  Frank Warmerdam  <warmerdam@pobox.com>
4897
4898	* libtiff/{tif_jpeg.c,tif_ojpeg.c,tif_getimage.c}: Fixed various
4899	error reports to use "%s" as format string.
4900	http://trac.osgeo.org/gdal/ticket/2976
4901
49022009-03-12  Frank Warmerdam  <warmerdam@pobox.com>
4903
4904	* libtiff/{tif_fax3.c,tif_jpeg.c,tif_ojpeg.c}: Fix printdir chaining
4905	for some codecs (#2020).
4906
49072009-02-12  Frank Warmerdam  <warmerdam@pobox.com>
4908
4909	* libtiff/tif_luv.c: Fix handling of tiled logluv images.
4910	http://bugzilla.maptools.org/show_bug.cgi?id=2005
4911
49122009-02-09  Frank Warmerdam  <warmerdam@pobox.com>
4913
4914	* libtiff/tif_dirread.c: Improve allocation safety when allocated
4915	buffer for large tags.  (#1998)  Related to (#1993)
4916
49172009-02-06  Frank Warmerdam  <warmerdam@pobox.com>
4918
4919	* tools/tiffcrop.c: Don't default image->res_unit to INCH.  Now the
4920	test suite should pass.
4921
49222009-02-05  Frank Warmerdam  <warmerdam@pobox.com>
4923
4924	* libtiff/tif_dirread.c: Re-incorporated a sanity check on tag size,
4925	but at the 2GB boundary to avoid overflow on 32bit systems.
4926	http://bugzilla.maptools.org/show_bug.cgi?id=1993
4927
4928	* libtiff/tif_dirread.c: Remove some assertions that blow due to
4929	corrupt files rather than in response to library internal
4930	inconsistencies.
4931	http://bugzilla.maptools.org/show_bug.cgi?id=1995
4932	http://bugzilla.maptools.org/show_bug.cgi?id=1991
4933
4934	* libtiff/tif_dirread.c: Fixed testing for failed result from
4935	TIFFReadDirectoryFindFieldInfo().
4936	http://bugzilla.maptools.org/show_bug.cgi?id=1992
4937
49382009-01-23  Frank Warmerdam  <warmerdam@pobox.com>
4939
4940	* libtiff/tif_predict.c: Add support for 32bit integer horz. predictors.
4941	http://bugzilla.maptools.org/show_bug.cgi?id=1911
4942
4943	* libtiff/tif_dirwrite.c: Fix byte swapping of next directory offset.
4944
4945	http://bugzilla.maptools.org/show_bug.cgi?id=1924
4946
4947	* tools/tiffcrop.c: initialize xres/yres values.
4948
4949	* test/*.sh - default ${srcdir} to local directory.
4950
4951	* test/common.sh - start verbose mode after common settings.
4952
4953	* libtiff/tif_dirinfo.c: Replace lfind() with local equivalent to
4954	avoid type mismatches on different platforms.
4955	http://bugzilla.maptools.org/show_bug.cgi?id=1889
4956
49572009-01-22  Frank Warmerdam  <warmerdam@pobox.com>
4958
4959	* tools/{fax2tiff.c,thumbnail.c,tiff2pdf.c,tiff2ps.c,tiffdump.c,
4960	tiffsplit.c}: avoid warnings, mostly 32bit/64bit casting issues.
4961
4962	* port,tools: Introduce libport.h, and include in tools if NEED_LIBPORT
4963	defined, primarily to reduce prototype warnings on windows.
4964
4965	* libtiff/tif_dirinfo.c,tif_dirread.c: Avoid warnings
4966	about unused parameters, and uninitialized variables.
4967
49682009-01-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4969
4970	* test/common.sh: Execute tests like 'make VERBOSE=TRUE check' in
4971	order to trace full execution detail while executing the test suite.
4972
49732009-01-20  Frank Warmerdam  <warmerdam@pobox.com>
4974
4975	* tools/tiffsplit.c: fix sampleformat to be shortv instead of longv.
4976
49772009-01-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4978
4979	* test/Makefile.am (CLEANFILES): Make sure that test output files
4980	are removed by 'make clean'
4981
4982	* Update autotools for 4.0.0 beta3
4983
4984	* 4.0.0 beta3 produced.
4985
49862009-01-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4987
4988	* test/tiffcrop.sh: New test script for tiffcrop from Richard
4989	Nolde.
4990
4991	* tools/tiff2ps.c: Remove spurious message to stderr.
4992
49932009-01-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4994
4995	* tools/tiff2ps.c: Incorporated significant functionality update
4996	from Richard Nolde.  In particular, support for rotating the image
4997	by 90, 180, 270, and 'auto' has been added.
4998
4999	* man/tiffcrop.1: Incorporated documentation updates from Richard
5000	Nolde.
5001
5002	* tools/tiffcrop.c: Incorporated significant functionality update
5003	from Richard Nolde.
5004
50052008-12-31  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5006
5007	* libtiff/tiffio.h: GCC will now validate format specifications
5008	for TIFFError(), TIFFErrorExt(), TIFFWarning(), and
5009	TIFFWarningExt() in order to reveal bugs.
5010
5011	* Many fixes throughout to work better as a 64-bit build.
5012
50132008-12-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5014
5015	* tools/{tiff2pdf.c, tiff2ps.c, tiffinfo.c}: Offset and length
5016	tags now require 64-bit parameter rather than 32-bit.
5017
5018	* libtiff/tif_dirread.c: Fixed issues with unaligned access to
5019	64-bit values.
5020
5021	* tools/thumbnail.c: Eliminate crash noticed while running test
5022	suite.
5023
50242008-12-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5025
5026	* libtiff/tif_ojpeg.c (OJPEGLibjpegJpegSourceMgrFillInputBuffer):
5027	Initialize stack variables to avoid compiler warning.
5028
5029	* tools/tiffinfoce.c (main): Use toff_t for offset type when
5030	retrieving offset of EXIF IFD.
5031
5032	* libtiff/tiffio.h: Undeprecate toff_t and restore its use in the
5033	TIFFClientOpen() callback and other external function definitions.
5034
5035	* tools/tiffinfo.c (main): Offset to EXIF IFD requires a 64-bit
5036	type now.  Fixes crash when dumping files containing an EXIF IFD.
5037
5038	* m4/libtool.m4: Update to libtool 2.2.6.
5039
50402008-12-21  Frank Warmerdam  <warmerdam@pobox.com>
5041
5042	* libtiff/tif_dir.c, tiffio.h: Introduce TIFFUnsetField() function.
5043
5044	* libtiff/tif_jpeg.c: Avoid errors if the application writes a full
5045	strip for the last partial strip in a jpeg compressed file.
5046	http://bugzilla.maptools.org/show_bug.cgi?id=1981
5047
50482008-10-29  Frank Warmerdam  <warmerdam@pobox.com>
5049
5050	* libtiff/tif_flush.c: Make sure that BEENWRITING is cleared when
5051	we take the shortcut to only update the strip/tile offsets in place.
5052	http://trac.osgeo.org/gdal/ticket/2621
5053
50542008-10-21  Andrey Kiselev  <dron@ak4719.spb.edu>
5055
5056	* libtiff/tif_jbig.c: Support the JBIG-KIT 2.0 (compatibility with
5057	the older versions retained).
5058
50592008-10-09  Frank Warmerdam  <warmerdam@pobox.com>
5060
5061	* libtiff/tif_jpeg.c: Add #ifdefs for changes needed if using
5062	IPP enabled version of libjpeg from Intel.
5063	http://bugzilla.maptools.org/show_bug.cgi?id=1951
5064
50652008-09-05  Andrey Kiselev  <dron@ak4719.spb.edu>
5066
5067	* tools/tiffsplit.c: Use byte counts of proper size (uint64).
5068	Required for libtiff 4.0.
5069
5070	* tools/tiffsplit.c: Use dynamically allocated array instead of static
5071	when constructing output file names.
5072
50732008-09-03  Andrey Kiselev  <dron@ak4719.spb.edu>
5074
5075	* tools/tiffsplit.c: Get rid of unsafe strcpy()/strcat() calls when
5076	doing the filename/path construction.
5077
5078	* tools/tiff2pdf.c: More appropriate format string in
5079	t2p_write_pdf_string(); avoid signed/unsigned mismatch.
5080
5081	* libtiff/tif_lzw.c: Properly zero out the codetable. As per bug
5082
5083	http://bugzilla.maptools.org/show_bug.cgi?id=1929
5084
5085	* libtiff/tif_lzw.c: Properly zero out the string table. Fixes
5086	CVE-2008-2327 security issue.
5087
50882008-09-01  Frank Warmerdam  <warmerdam@pobox.com>
5089
5090	* libtiff/tif_dirread.c: Avoid unused TIFFReadDirEntryFloat() function.
5091
5092	* libtiff/tif_dirwrite.c: modified to write IFDs as either IFD8 or IFD
5093	depending on whether the file is bigtiff or classic tiff.
5094	http://bugzilla.maptools.org/show_bug.cgi?id=1917
5095
50962008-08-12  Edward Lam  <edward@sidefx.com>
5097
5098	* tools/tiffdump.c: When compiling for Microsoft Windows, apply
5099	consistent (__int64) casting when testing if _lseeki64 has
5100	successfully sought as requested.  This is necessary for large
5101	file support to work since off_t is only 32-bit.
5102
51032008-07-29  Frank Warmerdam  <warmerdam@pobox.com>
5104
5105	* tif_strip.c: Replace assertions related to samplesperpixel != 3 or
5106	the subsampling values not being 1, 2 or 4 (for jpeg compressed images)
5107	with control logic to return runtime errors (c/o Even Rouault) (#1927).
5108
51092008-06-17  Frank Warmerdam  <warmerdam@pobox.com>
5110
5111	* tools/tiffcrop.c: Fix some portability problems.
5112
5113	* libtiff/tif_ojpeg.c: Use same jpeg/win32 boolean/FAR hacks as are
5114	used in tif_jpeg.c.
5115
5116	* libtiff/tif_win32.c: Ensure TIFFOpenW() uses same FILE_SHARE flags
5117	as TIFFOpen().
5118
51192008-06-01  Frank Warmerdam  <warmerdam@pobox.com>
5120
5121	* libtiff/tif_dirwrite.c: Fix alignment problems affecting architectures
5122	like Sparc/Solaris.
5123	http://bugzilla.maptools.org/show_bug.cgi?id=1892
5124
51252008-05-27  Frank Warmerdam  <warmerdam@pobox.com>
5126
5127	* libtiff.def: Add TIFFFindField
5128	http://bugzilla.maptools.org/show_bug.cgi?id=1891
5129
51302008-05-26  Frank Warmerdam  <warmerdam@pobox.com>
5131
5132	* tif_config.*.h, tiffconf.*.h: Remove SIZEOF_LONG definition, unused.
5133
5134	* li2008-04-15  Andrey Kiselev  <dron@ak4719.spb.edu>
5135
5136btiff/tif_win32.c: Replace custom Win32 memory api with generic
5137	POSIX one.  No apparent value to use of GlobalAlloc() in the modern
5138	age.  http://bugzilla.maptools.org/show_bug.cgi?id=1885
5139
5140	* libtiff/tiffconf.vc.h: Added JBIG_SUPPORT and MDI_SUPPORT items
5141	in windows version (care of Edward Lam).
5142
51432008-05-24  Frank Warmerdam  <warmerdam@pobox.com>
5144
5145	* tif_codec.c: Avoid NULL pointer dereferencing for exotic
5146	compression codec codes.
5147
5148	* tif_dirwrite.c: fix potential memory leak.
5149
5150	* tif_dirread.c: Fix unchecked malloc result.
5151
51522008-05-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5153
5154	* test {tiff2pdf.sh tiff2ps-EPS1.sh tiff2ps-PS1.sh tiff2ps-PS2.sh
5155	tiff2ps-PS3.sh tiffcp-g3-1d-fill.sh tiffcp-g3-1d.sh
5156	tiffcp-g3-2d-fill.sh tiffcp-g3-2d.sh tiffcp-g3.sh tiffcp-g4.sh
5157	tiffcp-split-join.sh tiffcp-split.sh tiffcp-thumbnail.sh
5158	tiffdump.sh tiffinfo.sh}: Added more test scripts based on
5159	suggestions from Lee Howard posted to the tiff list on 13 Sep
5160	2007.
5161
51622008-05-23  Frank Warmerdam  <warmerdam@pobox.com>
5163
5164	* libtiff/tif_fax3.c: Add an assert in an effort to detect a
5165	possible runtime problem reported by coverity.
5166
5167	* contrib/iptcutil/iptcutil.c: Fixed memory leak of str.
5168
5169	* tools/tiffcrop.c, man/tiffcrop.1: Major update from Richard Nolde.
5170	http://bugzilla.maptools.org/show_bug.cgi?id=1888
5171
5172	* tools/tiffdither.c: remove dead onestrip code.  avoid memory leak.
5173
5174	* tools/rgb2ycbcr.c: fix memory leak of raster buffer.
5175
5176	* tools/tiffcp.c: Simplify inknames code to avoid pointless test.
5177	Cleanup scanline allocation to avoid coverity warning.
5178
5179	* tools/thumbnail.c: Check for TIFFOpen() failure.
5180
51812008-05-18  Frank Warmerdam  <warmerdam@pobox.com>
5182
5183	* libtiff/tif_dirinfo.c: Use TIFF_SETGET_ASCII for PIXAR_TEXTUREFORMAT
5184	and PIXAR_WRAPMODES instead of TIFF_SETGET_UNDEFINED.  Not exactly clear
5185	why this is needed.
5186
51872008-05-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5188
5189	* Makefile.am (ACLOCAL_AMFLAGS): Libtool 2.2.4 does not like
5190	"ACLOCAL_AMFLAGS=-I ./m4".  It wants "ACLOCAL_AMFLAGS=-I m4".
5191
51922008-04-15  Andrey Kiselev  <dron@ak4719.spb.edu>
5193
5194	* test/: Test suite updated. Everything is passed now.
5195
5196	* libtiff/tif_dirinfo.c: Fixed description of the
5197	TIFFTAG_NUMBEROFINKS tag.
5198
51992008-04-14  Andrey Kiselev  <dron@ak4719.spb.edu>
5200
5201	* libtiff/{tif_dirread.c, tif_dirwrite.c, tiffiop.h}:
5202	Get rid of some of "dereferencing type-punned" warnings by converting
5203	tdir_offset field of TIFFDirEntry structure into union.
5204
52052008-04-10  Andrey Kiselev  <dron@ak4719.spb.edu>
5206
5207	* libtiff/{tif_flush.c, tif_dirwrite.c, tiffio.h, tiffiop.h}:
5208	TIFFRewriteField() renamed into _TIFFRewriteField() and moved out
5209	from the public interface. Type of its 'count' parameter changed
5210	from uint32 to tmsize_t.
5211
5212	* /libtiff/tiffiop.h: Make tif_nfields and tif_nfieldscompat fields
5213	of the tiff structure have the size_t type instead of uint32.
5214
52152008-04-09  Andrey Kiselev  <dron@ak4719.spb.edu>
5216
5217	* tools/tiffdump.c: Added support for MSVS 6.0.
5218
5219	* libtiff/tif_dirread.c: Use custom functions _TIFFUInt64ToFloat()
5220	and _TIFFUInt64ToDouble() to convert 64-bit integers into floating
5221	point values on MSVS 6.0 platform.
5222
52232008-03-14  Frank Warmerdam  <warmerdam@pobox.com>
5224
5225	* tif_dirread.c: Removed sanity checks on tags larger than 4MB in
5226	TIFFReadDirEntryArray() since they are interfering with seemingly
5227	legitimate files.  http://trac.osgeo.org/gdal/ticket/2005
5228
52292008-02-09  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5230
5231	* tif_dirread.c: Added handling for the case of number of values for
5232	PageNumber tag different from 2 (previously resulted in an assert
5233	indicating lack of handling and was forgotten about)
5234
52352008-02-01  Frank Warmerdam  <warmerdam@pobox.com>
5236
5237	* libtiff/tif_jpeg.c: Do not try to fixup subsampling tags based on
5238	the actual jpeg data stream if the first strip/tile has zero size.
5239	This is the case when GDAL creates a new file with zero sizes, closes
5240	and reopens it.
5241
52422008-01-07  Frank Warmerdam  <warmerdam@pobox.com>
5243
5244	* tools/tiff2ps.c: fix up 64bit issues (from Edward Lam).
5245
52462008-01-01  Frank Warmerdam  <warmerdam@pobox.com>
5247
5248	* libtiff/tif_dirwrite.c: #ifdef out lots of unused functions.
5249
5250	* Makefile.vc, libtiff/Makefile.vc, tools/Makefile.vc: Improve clean
5251	targets.
5252
5253	* tools/tiffinfo.c, tools/tiffcmp.c, tools/gif2tiff.c, tools/bmp2tiff.c
5254	tools/tiff2pdf.c: Fix 64-bit warnings when compiling under MSVC 2005
5255	(x64).
5256
5257	* tools/tiffset.c: Changes to reflect the fact that TIFFFieldWithTag()
5258	and TIFFFieldWithName() now return TIFFField pointers instead of
5259	TIFFFieldInfo pointers.
5260
5261	* tools/tiffdump.c: Added ssize_t typedef on Windows since it doesn't
5262	exist. This makes it compile again on Windows
5263
5264	* tif_aux.c, tif_getimage.c, tif_next.c, tif_predict.c, tif_win32.c,
5265	tiffconf.vc.h: Various 64bit fixes from Edward Lam identified on win64.
5266
5267	* test/rewrite_tag.c: New test for TIFFRewriteField().
5268
52692007-12-31  Frank Warmerdam  <warmerdam@pobox.com>
5270
5271	* tif_dirwrite.c: Added TIFFRewriteField().  This new function
5272	rewrites one field "on disk" updating an existing directory
5273	entry.  Lots of limitations still...
5274
5275	* tiffiop.h, tif_write.c, tif_dirread.c, tif_flush.c: Keep track of
5276	TIFF_DIRTYSTRIP separately from TIFF_DIRTYDIRECT to indicate that
5277	the strip offset/size values are dirty but nothing else about the
5278	directory is dirty.  In flush handle "just stripmaps dirty" as a
5279	special case that just rewrites these values without otherwise
5280	modifying the directory on disk using TIFFRewriteField().
5281
5282	We also modify logic so that in update mode the directory is not
5283	marked dirty on read, but only when something is changed.  This
5284	means we need to keep track of updates to the stripmap stuff in
5285	TIFFAppendToStrip().
5286
52872007-12-10  Frank Warmerdam  <warmerdam@pobox.com>
5288
5289	* tif_jpeg.c: Improve ability to switch between encoding and decoding
5290	in the jpeg code (gdal bug #2033).
5291
52922007-11-23  Frank Warmerdam  <warmerdam@pobox.com>
5293
5294	* tif_dir.c, tif_dirread.c, tif_dirwrite.c, tif_read.c, tif_write.c,
5295	tiffiop.h: Added TIFF_BUF4WRITE flag to indicate if contents of the
5296	rawcp/rawcc buffer are for writing and thus may require flushing.
5297	Necessary to distinguish whether they need to be written to disk when
5298	in mixed read/write mode and doing a mixture of writing followed by
5299	reading.  http://trac.osgeo.org/gdal/ticket/1758
5300
53012007-11-23  Andrey Kiselev  <dron@ak4719.spb.edu>
5302
5303	* configure.com, libtiff/tif_vms.c: Better OpenVMS support. Patches
5304	from Alexey Chupahin.
5305
53062007-11-02  Frank Warmerdam  <warmerdam@pobox.com>
5307
5308	* tif_write.c: Rip out the fancy logic in TIFFAppendToStrip() for
5309	establishing if an existing tile can be rewritten to the same location
5310	by comparing the current size to all the other blocks in the same
5311	directory.  This is dangerous in many situations and can easily
5312	corrupt a file.  (observed in esoteric GDAL situation that's hard to
5313	document).  This change involves leaving the stripbytecount[] values
5314	unaltered till TIFFAppendToStrip().  Now we only write a block back
5315	to the same location it used to be at if the new data is the same
5316	size or smaller - otherwise we move it to the end of file.
5317
5318	* tif_dirwrite.c: Try to avoid writing out a full readbuffer of tile
5319	data when writing the directory just because we have BEENWRITING at
5320	some point in the past.  This was causing odd junk to be written out
5321	in a tile of data when a single tile had an interleaving of reading
5322	and writing with reading last.  (highlighted by gdal
5323	autotest/gcore/tif_write.py test 7.
5324
5325	* tif_predict.c: use working buffer in PredictorEncodeTile to avoid
5326	modifying callers buffer.
5327	http://trac.osgeo.org/gdal/ticket/1965
5328
5329	* tif_predict.c/h: more fixes related to last item, keeping a
5330	distinct pfunc for encode and decode cases as these were getting
5331	mixed up sometimes.
5332	http://trac.osgeo.org/gdal/ticket/1948
5333
53342007-11-01  Frank Warmerdam  <warmerdam@pobox.com>
5335
5336	* tif_predict.c/h, tif_lzw.c, tif_zip.c: Improvements so that
5337	predictor based encoding and decoding works in read-write update
5338	mode properly.
5339	http://trac.osgeo.org/gdal/ticket/1948
5340
53412007-10-24  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5342
5343	* tif_dirread.c: Fixed problem with bogus file triggering
5344	assert(td->td_planarconfig == PLANARCONFIG_CONTIG) in
5345	ChopUpSingleUncompressedStrip
5346
53472007-10-22  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5348
5349	* tif_jpeg.c: Resolved buffer incrementation bug that lead to faulty images
5350	at best, access violation at worst, when subsampled JPEG compressed imagery
5351	is decoded without the JPEG_COLORMODE feature
5352
53532007-10-11  Frank Warmerdam  <warmerdam@pobox.com>
5354
5355	* html/index.html: Update "people responsible" section.
5356
53572007-10-05  Frank Warmerdam  <warmerdam@pobox.com>
5358
5359	* tools/tiff2pdf.c: Fix problem with alpha setting in some cases
5360	as reported on the mailing list.
5361
53622007-10-01  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5363
5364	* changed some more incorrect %lud printf flags to %lu
5365
53662007-09-29  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5367
5368	* tif_dirread.c: Strip chopping interfered badly with uncompressed
5369	subsampled images because it tried to divide subsampled rowblocks,
5370	leading to all sorts of errors throughout the library for these
5371	images. Fixed by making strip chopping divide in row counts that
5372	are a multiple of vertical subsampling value.
5373
53742007-09-28  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5375
5376	* tif_dirread.c: Logical cast working around compiler warning
5377
5378	* tif_read.c: Correction of some error flags and parameter lists
5379
53802007-09-27  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5381
5382	* tif_dirread.c: Made calculation of td_maxsamplevalue more robust
5383	when dealing with large bitspersample values, shutting up purification
5384	tools that warn about truncation, though it remains incorrect and
5385	indicates a conceptual problem there.
5386
5387	* tif_open.c: Moved early exit in case of 'h' flag (to disable reading
5388	of first IFD) to proper place because it badly interfered with memory
5389	mapping, resulting in mapping flag even with dummy mapping functions
5390	that returned 0 whilst at the same time the mapping tif_size wasn't
5391	set, thus resulting in continuous incorrect beyond-eof errors.
5392
53932007-09-24  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5394
5395	* tif_dirinfo.c: Fixed (MSVC) compiler reports about
5396	inconsistent use of const in tiffFields and exifFields definition
5397
53982007-09-20  Frank Warmerdam  <warmerdam@pobox.com>
5399
5400	* tif_dirwrite.c: Always write tile/strip offsets and sizes
5401	using LONG8 type when output format is BigTIFF.  The
5402	TIFFWriteDirectoryTagLongLong8Array() function was restructured
5403	accordingly.
5404
5405	* tif_dirread.c: Improvements to error reporting text in
5406	TIFFFetchDirectory().
5407
54082007-09-19  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5409
5410	* test/images: Added a small collection of test images for use by
5411	test programs and scripts.
5412	* test/tiffinfo.sh: A trivial example test script.
5413	* test/common.sh: Added small script for setting the environment
5414	used by script-based tests.
5415
54162007-08-24  Frank Warmerdam  <warmerdam@pobox.com>
5417
5418	* tif_dirwrite.c: Write the tif_nextdiroff value instead of a fixed
5419	zero when writing directory contents to preserve the ability to
5420	rewrite directories in place, even in the middle of a directory
5421	chain.
5422
5423	* tif_dirinfo.c:  _TIFFMergeFields() now only merges in field
5424	definitions that are missing.  Existing definitions are silently
5425	ignored.
5426
5427	* tif_dirread.c: Add runtime error for fields for which no definition
5428	is found (in addition to an assert for developers) in
5429	TIFFFetchNormalTag().  Not sure if this is needed, but it seems
5430	prudent.
5431
54322007-08-10  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5433
5434	* libtiff/tif_getimage.c: removed SubsamplingHor and SubsamplingVer
5435	from _TIFFRGBAImage structure to revert unwanted ABI change.
5436
54372007-08-10  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5438
5439	* libtiff/tif_win32.c: use SetFilePointer instead of
5440	SetFilePointerEx, as per bug
5441
5442	http://bugzilla.remotesensing.org/show_bug.cgi?id=1580
5443
54442007-07-19  Andrey Kiselev  <dron@ak4719.spb.edu>
5445
5446	* libtiff/tif_stream.cxx: Put all callback functions declarations
5447	inside extern "C" block.
5448
5449	* libtiff/{tif_lzw.c, tif_luv.c, tif_dumpmode.c, tif_print.c,
5450	tif_read.c, tif_strip.c, tif_thunder.c}: Use "%I64d" printf()
5451	formatter instead of "%lld" with MSVC compiler.
5452
5453	* libtiff/{tiffiop.h, tif_aux.c}:  Added _TIFFUInt64ToFloat() and
5454	_TIFFUInt64ToDouble() functions.
5455
54562007-07-18  Andrey Kiselev  <dron@ak4719.spb.edu>
5457
5458	* libtiff/tif_dirread.c: Handle the case of MSVC 6 when using 64-bit
5459	integer constants.
5460
5461	* libtiff/{Makefile.am, Makefile.v}: Do not distribute tiffconf.h,
5462	remove tif_config.h/tiffconf.h during cleaning. As per bug
5463
5464	http://bugzilla.remotesensing.org/show_bug.cgi?id=1573
5465
5466	* libtiff/tif_unix.c: Do not use O_LARGEFILE. As per bug
5467
5468	http://bugzilla.remotesensing.org/show_bug.cgi?id=1577
5469
54702007-07-13  Andrey Kiselev  <dron@ak4719.spb.edu>
5471
5472	* libtiff 4.0.0alpha released.
5473
54742007-07-12  Andrey Kiselev  <dron@ak4719.spb.edu>
5475
5476	* tools/tiff2pdf.c: Added missed extern optind as per bug
5477
5478	http://bugzilla.remotesensing.org/show_bug.cgi?id=1567
5479
5480	* libtiff/{tif_close.c, tif_dirinfo.c, tiffiop.c, tif_dirread.c,
5481	tif_dir.h, tif_dir.c, tiffio.h}: Transition to the new-style tag
5482	extending scheme completed.
5483
54842007-07-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5485
5486	* libtiff/tif_stream.cxx: Adapt to use toff_t again.  Update to
5487	use standard C++ library size types and attempt to detect overflow
5488	cases.
5489
54902007-07-08  Andrey Kiselev  <dron@ak4719.spb.edu>
5491
5492	* libtiff/{tif_jpeg.c, tif_dir.h, tif_dir.c, tif_dirinfo.c, tiffio.h,
5493	tif_ojpeg.c, tif_print.c, tif_fax3.c, tif_dirread.c}: More work on new
5494	tag extending scheme. Use the new scheme everywhere.
5495
5496	* libtiff/{tif_zip.c, tif_predict.c, tif_pixarlog.c, tif_luv.c,
5497	tif_fax3.c, tif_dirread.c, tif_dirwrite.c, tif_close.c, tif_ojpeg.c,
5498	tif_jpeg.c, tif_dirinfo.c, tif_dir.h, tiffio.h, tiffiop.h}:
5499	TIFFFIeldInfo structure replaced with TIFFField structure.
5500	TIFFFieldInfo retained for the backward compatibility.
5501
55022007-07-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5503
5504	* tools/tiff2pdf.c: Fix a compile problem when JPEG_SUPPORT is not
5505	defined.
5506
55072007-07-04  Andrey Kiselev  <dron@ak4719.spb.edu>
5508
5509	* libtiff/{tif_dir.c, tiff.h, tiffio.h, libtiff.def}: Unused
5510	TIFFReassignTagToIgnore() function and TIFFIgnoreSense enumeration
5511	removed.
5512
5513	* libtiff/{tif_dirinfo.c, tif_fax3.c, tif_jbig.c, tif_jpeg.c}: Move
5514	tags TIFFTAG_FAXRECVPARAMS, TIFFTAG_FAXSUBADDRESS,
5515	TIFFTAG_FAXRECVTIME and TIFFTAG_FAXDCS to the common tag directory.
5516	These tags are not codec-specific and relate to image content, so
5517	process them as other normal tags.
5518
5519	* libtiff/{tiffio.h, tif_dir.h}: TIFFTagValue structure moved from the
5520	public tiffio.h to private tif_dir.h.
5521
5522	* contrib/{acorn, mac-cw, mac-mpw}: Removed as unmaintained and
5523	outdated.
5524
55252007-07-03  Andrey Kiselev  <dron@ak4719.spb.edu>
5526
5527	* libtiff{tif_acorn.c, tif_apple.c, tif_atari.c, tif_msdos.c,
5528	tif_win3.c}: Obsoleted portability stuff removed.
5529
5530	* tools/tiff2ps.c:  Added support 16-bit images as per bug
5531
5532	http://bugzilla.remotesensing.org/show_bug.cgi?id=1566
5533
5534	Patch from William Bader.
5535
5536	* tools/tiff2pdf.c: Fix for TIFFTAG_JPEGTABLES tag fetching and
5537	significant upgrade of the whole utility as per bug
5538
5539	http://bugzilla.remotesensing.org/show_bug.cgi?id=1560
5540
5541	Now we don't need tiffiop.h in tiff2pdf anymore and will open output
5542	PDF file using TIFFClientOpen() machinery as it is implemented
5543	by Leon Bottou.
5544
55452007-06-26  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5546
5547	* configure.ac: Fix typo when substituting value for unsigned 8 bit type.
5548	Added support for a TIFF_PTRDIFF_T type to use when doing pointer arithmetic.
5549	Added support for a TIFF_SSIZE_T in order to return memory sizes but still
5550	allow returning -1 for errors.
5551	* libtiff/tiffconf.vc.h: Add porting type defintions for WIN32.
5552
55532007-06-25  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5554
5555	* port/strtoull.c: New porting function in case strtoull() is not
5556	available on the target system.
5557	* configure.ac: Add configure support for determining sized types
5558	in a portable way and performing necessary substitutions in
5559	tif_config.h and tiffconf.h.  Updated tiff.h to use the new
5560	definitions.
5561
55622007-04-27  Andrey Kiselev  <dron@ak4719.spb.edu>
5563
5564	* tools/tiff2pdf.c: Check the tmpfile() return status as per bug
5565
5566	http://bugzilla.remotesensing.org/show_bug.cgi?id=154
5567
55682007-04-07  Andrey Kiselev  <dron@ak4719.spb.edu>
5569
5570	* libtiff/{tif_dir.h, tif_dirread.c, tif_dirinfo.c, tif_jpeg.c,
5571	tif_fax3.c, tif_jbig.c, tif_luv.c, tif_ojpeg.c, tif_pixarlog.c,
5572	tif_predict.c, tif_zip.c}: Finally fix bug
5573
5574	http://bugzilla.remotesensing.org/show_bug.cgi?id=1274
5575
5576	by introducing _TIFFMergeFieldInfo() returning integer error status
5577	instead of void in case of problems with field merging (e.g., if the
5578	field with such a tag already registered). TIFFMergeFieldInfo() in
5579	public API remains void. Use _TIFFMergeFieldInfo() everywhere and
5580	check returned value.
5581
55822007-04-07  Frank Warmerdam  <warmerdam@pobox.com>
5583
5584	* contrib/addtiffo/tif_overview.c: Fix problems with odd sized output
5585	blocks in TIFF_DownSample_Subsampled() (bug 1542).
5586
55872007-04-06  Frank Warmerdam  <warmerdam@pobox.com>
5588
5589	* libtiff/tif_jpeg.c: Changed JPEGInitializeLibJPEG() so that it
5590	will convert from decompressor to compressor or compress to decompress
5591	if required by the force arguments.  This works around a problem in
5592	where the JPEGFixupTestSubsampling() may cause a decompressor to
5593	be setup on a directory when later a compressor is required with the
5594	force flag set.  Occurs with the addtiffo program for instance.
5595
55962007-04-06  Andrey Kiselev  <dron@ak4719.spb.edu>
5597
5598	* tools/tiffcrop.c, man/tiffcrop.1: Significant update in
5599	functionality from Richard Nolde. As per bug
5600
5601	http://bugzilla.remotesensing.org/show_bug.cgi?id=1525
5602
56032007-03-28  Frank Warmerdam  <warmerdam@pobox.com>
5604
5605	* libtiff/tif_fax3.c: "inline static" -> "static inline" for IRIC CC.
5606
56072007-03-17  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5608
5609	* start of BigTIFF upgrade - CVS HEAD unstable until further notice
5610
56112007-03-07  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5612
5613	* libtiff/tif_getimage.c: workaround for 'Fractional scanline' error reading
5614	OJPEG images with rowsperstrip that is not a multiple of vertical subsampling
5615	factor. This bug is mentioned in:
5616	http://bugzilla.remotesensing.org/show_bug.cgi?id=1390
5617	http://www.asmail.be/msg0054766825.html
5618
56192007-03-07  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5620
5621	* libtiff/tif_win32.c: made inclusion of windows.h unconditional
5622
5623	* libtiff/tif_win32.c: replaced preprocessor indication for consiously
5624	unused arguments by standard C indication for the same
5625
56262007-02-27  Andrey Kiselev  <dron@ak4719.spb.edu>
5627
5628	* libtiff/tif_dirread.c: Use uint32 type instead of tsize_t in byte
5629	counters in TIFFFetchData(). Should finally fix the issue
5630
5631	http://bugzilla.remotesensing.org/show_bug.cgi?id=890
5632
56332007-02-24  Andrey Kiselev  <dron@ak4719.spb.edu>
5634
5635	* tools/tiffset.c: Properly handle tags with TIFF_VARIABLE writecount.
5636	As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1350
5637
5638	* libtiff/tif_dirread.c: Added special function to handle
5639	SubjectDistance EXIF tag as per bug
5640
5641	http://bugzilla.remotesensing.org/show_bug.cgi?id=1362
5642
5643	* tools/tiff2pdf.c: Do not assume inches when the resolution units
5644	do not specified. As per bug
5645
5646	http://bugzilla.remotesensing.org/show_bug.cgi?id=1366
5647
5648	* tools/{tiffcp.c, tiffcrop.c}: Do not change RowsPerStrip value if
5649	it was set as infinite. As per bug
5650
5651	http://bugzilla.remotesensing.org/show_bug.cgi?id=1368
5652
5653	* tools/tiffcrop.c, man/tiffcrop.1: New tiffcrop utility contributed
5654	by Richard Nolde. As per bug
5655
5656	http://bugzilla.remotesensing.org/show_bug.cgi?id=1383
5657
56582007-02-22  Andrey Kiselev  <dron@ak4719.spb.edu>
5659
5660	* libtiff/tif_dir.c: Workaround for incorrect TIFFs with
5661	ExtraSamples == 999 produced by Corel Draw. As per bug
5662
5663	http://bugzilla.remotesensing.org/show_bug.cgi?id=1490
5664
5665	* libtiff/{tif_dirread.c, tif_read.c}: Type of the byte counters
5666	changed from tsize_t to uint32 to be able to work with data arrays
5667	larger than 2GB. Fixes bug
5668
5669	http://bugzilla.remotesensing.org/show_bug.cgi?id=890
5670
5671	Idea submitted by Matt Hancher.
5672
56732007-01-31  Andrey Kiselev  <dron@ak4719.spb.edu>
5674
5675	* tools/tif2rgba.c: This utility does not work properly on big-endian
5676	architectures. It was fixed including the bug
5677
5678	http://bugzilla.remotesensing.org/show_bug.cgi?id=1149
5679
56802007-01-15  Mateusz Loskot <mateusz@loskot.net>
5681
5682	* Submitted libtiff port for Windows CE platform
5683	* libtiff/tif_config.wince.h: Added configuration header for WinCE.
5684	* libtiff/tiffconf.wince.h: Ported old configuration header for WinCE.
5685	* libtiff/tif_wince.c: Added WinCE-specific implementation of some
5686	functons from tif_win32.c.
5687	* libtiff/tif_win32.c: Disabled some functions already reimplemented in tif_wince.c.
5688	* libtiff/tiffiop.h, port/lfind.c: Added conditional include of some
5689	standard header files for Windows CE build.
5690	* tools/tiffinfoce.c: Ported tiffinfo utility for Windows CE.
5691
56922006-11-19  Frank Warmerdam  <warmerdam@pobox.com>
5693
5694	* libtiff/tif_write.c: TIFFAppendToStrip() - clear sorted flag if
5695	we move a strip.
5696	http://bugzilla.remotesensing.org/show_bug.cgi?id=1359
5697
56982006-10-13  Andrey Kiselev  <dron@ak4719.spb.edu>
5699
5700	* libtiff/tif_dir.c: More fixes for vulnerabilities, reported
5701	in Gentoo bug ():
5702
5703	http://bugs.gentoo.org/show_bug.cgi?id=142383
5704
5705	* libtiff/contrib/dbs/xtiff/xtiff.c: Make xtiff utility compilable.
5706	Though it is still far from the state of being working and useful.
5707
57082006-10-12  Andrey Kiselev  <dron@ak4719.spb.edu>
5709
5710	* libtiff/tif_fax3.c: Save the state of printdir codec dependent
5711	method.
5712
5713	* libtiff/tif_jpeg.c: Save the state of printdir codec dependent method
5714	as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1273
5715
5716	* libtiff/tif_win32.c: Fixed problem with offset value manipulation
5717	as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1322
5718
5719	* libtiff/{tif_read.c, tif_jpeg.c, tif_dir.c}: More fixes for
5720	vulnerabilities, reported in Gentoo bug ():
5721
5722	http://bugs.gentoo.org/show_bug.cgi?id=142383
5723
57242006-09-28  Andrey Kiselev  <dron@ak4719.spb.edu>
5725
5726	* libtiff/{tif_fax3.c, tif_next.c, tif_pixarlog.c}: Fixed multiple
5727	vulnerabilities, as per	Gentoo bug ():
5728
5729	http://bugs.gentoo.org/show_bug.cgi?id=142383
5730
57312006-09-27  Frank Warmerdam  <warmerdam@pobox.com>
5732
5733	* libtiff/tif_lzw.c, libtiff/tif_zip.c: Fixed problems with mixing
5734	encoding and decoding on the same read-write TIFF handle.  The LZW
5735	code can now maintain encode and decode state at the same time. The
5736	ZIP code will switch back and forth as needed.
5737	http://bugzilla.remotesensing.org/show_bug.cgi?id=757
5738
57392006-09-20  Frank Warmerdam  <warmerdam@pobox.com>
5740
5741	* libtiff: Rename config.h.vc and tif_config.h.vc to config.vc.h and
5742	tif_config.vc.h for easier identification by folks using an IDE.
5743
57442006-07-25  Frank Warmerdam  <warmerdam@pobox.com>
5745
5746	* tif_msdos.c: Avoid handle leak for failed opens.  c/o Thierry Pierron
5747
57482006-07-19  Frank Warmerdam  <warmerdam@pobox.com>
5749
5750	* tif_dirwrite.c: take care not to flush out buffer of strip/tile
5751	data in _TIFFWriteDirectory if TIFF_BEENWRITING not set.  Relates
5752	to bug report by Peng Gao with black strip at bottom of images.
5753
57542006-07-12  Frank Warmerdam  <warmerdam@pobox.com>
5755
5756	* tif_dirwrite.c: make sure to use uint32 for wordcount in
5757	TIFFWriteNormanTag if writecount is VARIABLE2 for ASCII fields.
5758	It already seems to have been done for other field types.  Needed
5759	for "tiffset" on files with geotiff ascii text.
5760
57612006-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5762
5763	* {configure.ac, libtiff/tif_config.h.vc, libtiff/tif_jbig.c}
5764	(JBIGDecode): jbg_newlen is not available in older JBIG-KIT and
5765	its use does not appear to be required, so use it only when it is
5766	available.
5767
57682006-06-24  Andrey Kiselev  <dron@ak4719.spb.edu>
5769
5770	* libtiff/tif_dirinfo.c: Added missed EXIF tag ColorSpace (40961).
5771
5772	* libtiff/tif_dirread.c: Move IFD fetching code in the separate
5773	function TIFFFetchDirectory() avoiding code duplication in
5774	TIFFReadDirectory() and TIFFReadCustomDirectory().
5775
57762006-06-19  Frank Warmerdam  <warmerdam@pobox.com>
5777
5778	* tools/tiff2pdf.c: Fix handling of -q values.
5779	http://bugzilla.remotesensing.org/show_bug.cgi?id=587
5780
57812006-06-17  Frank Warmerdam  <warmerdam@pobox.com>
5782
5783	* tif_readdir.c: Added case in EstimateStripByteCounts() for tiled
5784	files.  Modified TIFFReadDirectory() to not invoke
5785	EstimateStripByteCounts() for case where entry 0 and 1 are unequal
5786	but one of them is zero.
5787	  http://bugzilla.remotesensing.org/show_bug.cgi?id=1204
5788
57892006-06-08  Andrey Kiselev  <dron@ak4719.spb.edu>
5790
5791	* libtiff/{tif_open.c, tif_dirread.c, tiffiop.h}: Move IFD looping
5792	checking code in the separate function TIFFCheckDirOffset().
5793
5794	* libtiff/tif_aux.c: Added _TIFFCheckRealloc() function.
5795
5796	* tools/tiffcmp.c: Fixed floating point comparison logic as per bug
5797
5798	http://bugzilla.remotesensing.org/show_bug.cgi?id=1191
5799
5800	* libtiff/tif_fax3.c: Fixed problems in fax decoder as per bug
5801
5802	http://bugzilla.remotesensing.org/show_bug.cgi?id=1194
5803
5804	* tools/tiff2pdf.c: Fixed buffer overflow condition in
5805	t2p_write_pdf_string() as per bug
5806
5807	http://bugzilla.remotesensing.org/show_bug.cgi?id=1196
5808
58092006-06-07  Andrey Kiselev  <dron@ak4719.spb.edu>
5810
5811	* {configure, configure.ac, libtiff/tif_jbig.c, tools/tiffcp.c}: Added
5812	support for JBIG compression scheme (34661 code) contributed by Lee
5813	Howard. As per bug
5814
5815	http://bugzilla.remotesensing.org/show_bug.cgi?id=896
5816
5817	* configure, configure.ac: OJPEG support enabled by default.
5818
5819	* contrib/ojpeg/: Removed. New OJPEG support does not need this patch.
5820
58212006-06-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5822
5823	* libtiff/{tif_dirinfo.c, tif_print.c} : Fix crash in
5824	TIFFPrintDirectory().  Joris Van Damme authored the fix.
5825
58262006-04-21  Andrey Kiselev  <dron@ak4719.spb.edu>
5827
5828	* tools/tiff2pdf.c: Unified line ending characters (always use '\n')
5829	as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1163
5830
5831	* README.vms, Makefile.am, configure.com, libtiff/{Makefile.am,
5832	tif_config.h-vms, tif_stream.cxx, tif_vms.c, tiffconf.h-vms}:
5833	Added support for OpenVMS by Alexey Chupahin, elvis_75@mail.ru.
5834
58352006-04-20  Andrey Kiselev  <dron@ak4719.spb.edu>
5836
5837	* tools/{fax2ps.c, fax2tiff.c, ppm2tiff.c, ras2tiff.c, tiff2pdf.c}:
5838	Properly set the binary mode for stdin stream as per bug
5839	http://bugzilla.remotesensing.org/show_bug.cgi?id=1141
5840
5841	* man/{bmp2tiff.1, fax2ps.1, fax2tiff.1, gif2tiff.1, ras2tiff.1,
5842	raw2tiff.1, rgb2ycbcr.1, sgi2tiff.1, tiff2bw.1, tiff2pdf.1, tiff2ps.1,
5843	tiff2rgba.1, tiffcmp.1, tiffcp.1, tiffdither.1,	tiffdump.1, tiffgt.1,
5844	tiffset.1}: Improvements in page formatting as per bug
5845	http://bugzilla.remotesensing.org/show_bug.cgi?id=1140
5846
5847	* html/tools.html, html/man/Makefile.am, tools/tiff2pdf.c: Fixed
5848	typos as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1139
5849
58502006-04-18  Frank Warmerdam  <warmerdam@pobox.com>
5851
5852	* nmake.opt: use /EHsc for VS2005 compatibility.  Also define
5853	_CRT_SECURE_NO_DEPRECATE to avoid noise on VS2005.
5854
58552006-04-12  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5856
5857	* libtiff/tif_getimage.c: Added support for planarconfig separate
5858	non-subsampled YCbCr (i.e. separate YCbCr with subsampling [1,1])
5859
58602006-04-11  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5861
5862	* libtiff/tif_getimage.c: Revision of all RGB(A) put routines
5863	- Conversion of unassociated alpha to associated alpha now done with
5864	  more performant LUT, and calculation more correct
5865	- Conversion of 16bit data to 8bit data now done with
5866	  more performant LUT, and calculation more correct
5867	- Bugfix of handling of 16bit RGB with unassociated alpha
5868
58692006-04-11  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5870
5871	* libtiff/tif_getimage.c:
5872	- When there is no alpha, gtTileSeparate and gtStripSeparate allocated
5873	  buffer for alpha strile and filled it, only to never read it back.
5874	  Removed allocation and fill.
5875	- Minor rename of vars in gtTileSeparate and gtStripSeparate
5876	  anticipating planned functionality extension
5877
58782006-04-08  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5879
5880	* libtiff/tif_getimage.c: renamed pickTileContigCase to PickContigCase
5881	and pickTileSeparateCase to PickSeparateCase as both work on strips as
5882	well
5883
5884	* libtiff/tif_getimage.c: moved img->get selection from
5885	TIFFRGBAImageBegin into PickContigCase and PickSeparateCase to create
5886	logical hook for planned functionality extension
5887
58882006-04-08  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5889
5890	* libtiff/tif_ojpeg.c: resolved memory leak that was a consequence
5891	of inappropriate use of jpeg_abort instead of jpeg_destroy
5892
58932006-04-07  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5894
5895	* libtiff/tif_getimage.c: replaced usage of TIFFScanlineSize in
5896	gtStripContig with TIFFNewScanlineSize so as to fix buggy behaviour
5897	on subsampled images - this ought to get sorted when we feel brave
5898	enough to replace TIFFScanlineSize altogether
5899
5900	* libtiff/tif_ojpeg.c: fixed bug in OJPEGReadSkip
5901
59022006-04-04  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5903
5904	* libtiff/tiffio.h: added new type tstrile_t
5905
5906	* libtiff/tif_dir.h: changed types of td_stripsperimage and td_nstrips
5907	to new tstrile_t, types of td_stripoffset and td_stripbytecount to
5908	toff_t*
5909
5910	* libtiff/tif_ojpeg.c: totally new implementation
5911
5912	* libtiff/tif_dirread.c: added several hacks to suit new support of
5913	OJPEG
5914
5915	* libtiff/tif_getimage.c: removed TIFFTAG_JPEGCOLORMODE handling
5916	of OJPEG images in favor of tif_getimage.c native handling of
5917	YCbCr and desubsampling
5918
59192006-03-29  Frank Warmerdam  <warmerdam@pobox.com>
5920
5921	* libtiff/tif_jpeg.c: JPEGVSetField() so that altering the photometric
5922	interpretation causes the "upsampled" flag to be recomputed.  Fixes
5923	peculiar bug where photometric flag had to be set before jpegcolormode
5924	flag.
5925
59262006-03-25  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5927
5928	* libtiff/tif_jpeg.c: strip size related bugfix in encode raw
5929
5930	* libtiff/tif_strip.c: temporarilly added two new versions of
5931	TIFFScanlineSize
5932	  - TIFFNewScanlineSize: proposed new version, after all related
5933	    issues and side-effects are sorted out
5934	  - TIFFOldScanlineSize: old version, from prior to 2006-03-21 change
5935	This needs further sorting out.
5936
59372006-03-25  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5938
5939	* contrib/addtiffo/tif_ovrcache.c: bugfix to correctly pass size
5940	of last truncated strip data to TIFFWriteEncodedStrip
5941
59422006-03-25  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5943
5944	* libtiff/{tif_jpeg.c, tif_strip.c}: bugfix of tif_jpeg decode raw
5945
59462006-03-25  Joris Van Damme  <joris.at.lebbeke@skynet.be>
5947
5948	* libtiff/tif_getimage.c: bugfix/rewrite of putcontig8bitYCbCr22tile
5949
5950	* libtiff/tif_getimage.c: added putcontig8bitYCbCr12tile
5951
5952	* libtiff/tif_read.c: added support for new TIFF_NOREADRAW flag to
5953	prepare	the path for new tif_ojpeg.c
5954
59552006-03-23  Andrey Kiselev  <dron@ak4719.spb.edu>
5956
5957	* libtiff 3.8.2 released.
5958
5959	* tools/Makefile.am: Use runtime paths linker flags when rpath
5960	option enabled.
5961
59622006-03-21  Andrey Kiselev  <dron@ak4719.spb.edu>
5963
5964	* libtiff/libtiff.def: Added missed exports as per bug
5965	http://bugzilla.remotesensing.org/attachment.cgi?id=337
5966
5967	* contrib/addtiffo/Makefile.vc, libtiff/Makefile.vc, port/Makefile.vc,
5968	tools/Makefile.vc: Makefiles improvements as per bug
5969	http://bugzilla.remotesensing.org/show_bug.cgi?id=1128
5970
5971	* nmake.opt libtiff/{tif_config.h.vc, tif_unix.c, tiffio.h},
5972	tools/{fax2ps.c, fax2tiff.c, tiff2pdf.c}: Fixed win32 I/O functions
5973	usage as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1127
5974
5975	* libtiff/tif_strip.c: Take subsampling in account when calculating
5976	TIFFScanlineSize().
5977
5978	* tools/tiffcp.c: Do not set RowsPerStrip bigger than image length.
5979
59802006-03-17  Andrey Kiselev  <dron@ak4719.spb.edu>
5981
5982	* tools/fax2tiff.c: Fixed wrong TIFFerror() invocations as per bug
5983	http://bugzilla.remotesensing.org/show_bug.cgi?id=1125
5984
5985	* tools/fax2ps.c: Fixed reading the input stream from stdin as per bug
5986	http://bugzilla.remotesensing.org/show_bug.cgi?id=1124
5987
59882006-03-16  Andrey Kiselev  <dron@ak4719.spb.edu>
5989
5990	* libtiff/tiffiop.h: Added decalration for
5991	_TIFFSetDefaultCompressionState().
5992
5993	* libtiff/{tif_jpeg.c, tif_fax3.c, tif_zip.c, tif_pixarlog.c,
5994	tif_lzw.c, tif_luv.c}: Use _TIFFSetDefaultCompressionState() in all
5995	codec cleanup methods. As per bug
5996
5997	http://bugzilla.remotesensing.org/show_bug.cgi?id=1120
5998
59992006-03-15  Andrey Kiselev  <dron@ak4719.spb.edu>
6000
6001	* libtiff/tif_jpeg.c: Do not cleanup codec state in TIFFInitJPEG(). As
6002	per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1119
6003
6004	* tools/raw2tiff.c: Do not set RowsPerStrip larger than ImageLength.
6005	As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1110
6006
6007	* libtiff/tiffiop.h: dblparam_t typedef removed; GLOBALDATA macro
6008	removed; move here the STRIP_SIZE_DEFAULT macro definition.
6009
6010	* libtiff/{tif_dirread.c, tif_strip.c}: Removed STRIP_SIZE_DEFAULT
6011	macro definition.
6012
6013	* libtiff/tif_dir.c: Use double type instead of dblparam_t.
6014
60152006-03-14  Andrey Kiselev  <dron@ak4719.spb.edu>
6016
6017	* libtiff/tif_dirread.c: Do not check the PlanarConfig tag presence
6018	in TIFFReadDirectory, because it is always set at the start of
6019	function and we allow TIFFs without that tag set.
6020
60212005-03-13  Andrey Kiselev  <dron@ak4719.spb.edu>
6022
6023	* libtiff 3.8.1 released.
6024
60252006-03-07  Andrey Kiselev  <dron@ak4719.spb.edu>
6026
6027	* libtiff/tif_dirread.c: Fixed error reporting in TIFFFetchAnyArray()
6028	function as per bug
6029	http://bugzilla.remotesensing.org/show_bug.cgi?id=1102
6030
6031	* libtiff/tif_dirread.c: More wise check for integer overflow
6032	condition as per bug
6033	http://bugzilla.remotesensing.org/show_bug.cgi?id=1102
6034
6035	* libtiff/{tif_jpeg.c, tif_pixarlog.c, tif_fax3.c, tif_zip.c}:
6036	Properly restore setfield/getfield methods in cleanup functions. As
6037	per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1102
6038
60392006-03-03  Andrey Kiselev  <dron@ak4719.spb.edu>
6040
6041	* libtiff/{tif_predict.c, tif_predict.h}: Added new function
6042	TIFFPredictorCleanup() to restore parent decode/encode/field methods.
6043
6044	* libtiff/{tif_lzw.c, tif_pixarlog.c, tif_zip.c}: Use
6045	TIFFPredictorCleanup() in codec cleanup methods. As per bug
6046
6047	http://bugzilla.remotesensing.org/show_bug.cgi?id=1102
6048
6049	* libtiff/tif_dirread.c: Fixed integer overflow condition in
6050	TIFFFetchData() function. As per bug
6051
6052	http://bugzilla.remotesensing.org/show_bug.cgi?id=1102
6053
60542006-03-01  Andrey Kiselev  <dron@ak4719.spb.edu>
6055
6056	* libtiff/tif_ojpeg.c: Set the ReferenceBlackWhite with the
6057	TIFFSetField() method, not directly. As per bug
6058
6059	http://bugzilla.remotesensing.org/show_bug.cgi?id=1043
6060
6061	* tools/ppm2tiff.c: Added support for PBM files as per bug
6062	http://bugzilla.remotesensing.org/show_bug.cgi?id=1044
6063
60642006-02-27  Andrey Kiselev  <dron@ak4719.spb.edu>
6065
6066	* libtiff/tif_write.c: Small code rearrangement in TIFFWriteScanline()
6067	to avoid crash as per bug
6068
6069	http://bugzilla.remotesensing.org/show_bug.cgi?id=1081.
6070
60712006-02-26  Andrey Kiselev  <dron@ak4719.spb.edu>
6072
6073	* tools/tiff2pdf.c: Functions t2p_sample_rgbaa_to_rgb() and
6074	t2p_sample_rgba_to_rgb() was used in place of each other, that was
6075	resulted in problems with RGBA images with associated alpha.
6076	As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1097
6077
60782006-02-23  Andrey Kiselev  <dron@ak4719.spb.edu>
6079
6080	* libtiff/tif_dirwrite.c: Properly write TIFFTAG_DOTRANGE tag as per
6081	bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1088.
6082
6083	* libtiff/tif_print.c: Properly read TIFFTAG_PAGENUMBER,
6084	TIFFTAG_HALFTONEHINTS, TIFFTAG_YCBCRSUBSAMPLING and TIFFTAG_DOTRANGE
6085	tags as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1088.
6086
6087	* tools/tiff2ps.c: Properly scale all the pages when converting
6088	multipage TIFF with /width/height/center options set. As per bug
6089
6090	http://bugzilla.remotesensing.org/show_bug.cgi?id=1080
6091
60922006-02-15  Andrey Kiselev  <dron@ak4719.spb.edu>
6093
6094	* tools/tiff2pdf.c: Do not create output file until all option checks
6095	will be done. As per bug
6096
6097	http://bugzilla.remotesensing.org/show_bug.cgi?id=1072
6098
6099	* tools/bmp2tiff.c: Added ability to create multipage TIFFs from the
6100	list of input files as per bug:
6101
6102	http://bugzilla.remotesensing.org/show_bug.cgi?id=1077
6103
61042006-02-09  Andrey Kiselev  <dron@ak4719.spb.edu>
6105
6106	* libtiff/tif_tile.c: Fix error reporting in TIFFCheckTile() as per
6107	bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1063.
6108
6109	* tools/tiffgt.c: Avoid crashing in case of image unsupported by
6110	TIFFRGBAImage interface.
6111
6112	* libtiff/tif_color.c: Avoid overflow in case of wrong input as per
6113	bug http://bugzilla.remotesensing.org/show_bug.cgi?id=1065.
6114
61152006-02-07  Frank Warmerdam  <warmerdam@pobox.com>
6116
6117	* tools/tiff2pdf.c: Fixed support for non-YCbCr encoded JPEG
6118	compressed TIFF files, per submission from Dan Cobra.
6119
61202006-02-07  Andrey Kiselev  <dron@ak4719.spb.edu>
6121
6122	* libtiff/{tif_dirread.c, tif_packbits.c, tif_win32.c}: Properly
6123	cast values to avoid warnings. As per bug
6124	http://bugzilla.remotesensing.org/show_bug.cgi?id=1033.
6125
6126	* libtiff/tif_dirinfo.c: Use TIFF_NOTYPE instead of 0 when
6127	appropriate. As per bug
6128	http://bugzilla.remotesensing.org/show_bug.cgi?id=1033.
6129
6130	* libtiff/tif_aux.c: Fixed type of temporary variable in
6131	_TIFFCheckMalloc() as per bug
6132	http://bugzilla.remotesensing.org/show_bug.cgi?id=1033.
6133
61342006-02-06  Andrey Kiselev  <dron@ak4719.spb.edu>
6135
6136	* libtiff/tif_aux.c: Return static array when fetching default
6137	YCbCrCoefficients (another problem, reported a the
6138	http://bugzilla.remotesensing.org/show_bug.cgi?id=1029 entry).
6139
61402006-02-03  Andrey Kiselev  <dron@ak4719.spb.edu>
6141
6142	* libtiff/tif_dir.c: Special handling for PageNumber, HalftoneHints,
6143	YCbCrSubsampling and DotRange tags as per bugs
6144
6145	http://bugzilla.remotesensing.org/show_bug.cgi?id=1029
6146	http://bugzilla.remotesensing.org/show_bug.cgi?id=1034
6147
6148	* libtiff/tif_dirread.c: Use _TIFFGetExifFieldInfo() instead of
6149	_TIFFGetFieldInfo() in TIFFReadEXIFDirectory() call as per bug
6150
6151	http://bugzilla.remotesensing.org/show_bug.cgi?id=1026.
6152
61532006-01-23  Andrey Kiselev  <dron@ak4719.spb.edu>
6154
6155	* libtool related stuff updated from the 2.1a branch.
6156
61572006-01-11  Frank Warmerdam  <warmerdam@pobox.com>
6158
6159	* tools/bmp2tiff,pal2rgb,ppm2tiff,ras2tiff,raw2tiff,sgi2tiff,
6160	tiff2bw,tiffcp: Fixed jpeg option processing so -c jpeg:r:50 works
6161	properly as per bug:
6162	http://bugzilla.remotesensing.org/show_bug.cgi?id=1025
6163
61642006-01-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6165
6166	* configure.ac: Fix with_default_strip_size comparison as reported
6167	by Norihiko Murase.
6168
61692006-01-08  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6170
6171	* test/Makefile.am (LIBTIFF): Due to linking against libtiff
6172	incorrectly, tests were not actually testing the uninstalled
6173	libtiff.  Now they are.
6174
61752006-01-04  Andrey Kiselev  <dron@ak4719.spb.edu>
6176
6177	* libtiff/tif_dirinfo.c: Change definitions for TIFFTAG_ICCPROFILE,
6178	TIFFTAG_PHOTOSHOP, TIFFTAG_RICHTIFFIPTC, TIFFTAG_XMLPACKET: readcount
6179	should be uint32 value.
6180
61812006-01-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6182
6183	* html/man/Makefile.am (htmldoc): Fix htmldoc rule so that it can
6184	be used if build directory is not the same as source directory.
6185	* man/{TIFFGetField.3tiff, TIFFSetField.3tiff}: Documented
6186	TIFFTAG_PHOTOSHOP, TIFFTAG_RICHTIFFIPTC, and TIFFTAG_XMLPACKET,
6187	and re-sorted tag names in alphabetical order.
6188
61892005-12-29  Andrey Kiselev  <dron@ak4719.spb.edu>
6190
6191	* libtiff 3.8.0 released.
6192
61932005-12-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6194
6195	* tools/bmp2tiff.c (main): Fixed warning regarding returning
6196	inconsistent types from a condition.
6197	* tools/tiffcmp.c (CheckLongTag): Eliminate warning due to printf
6198	format.
6199	* tools/bmp2tiff.c: Reduce compilation warnings on big-endian CPUs.
6200
62012005-12-28  Joris Van Damme  <joris.at.lebbeke@skynet.be>
6202
6203	* html/{index.html, support.hml, libtiff.html}: Cleaned up HTML
6204
62052005-12-27  Andrey Kiselev  <dron@ak4719.spb.edu>
6206
6207	* libtiff/tiffio.h: Added VC_EXTRALEAN definition before including
6208	windows.h, to reduce the compile time.
6209
62102005-12-26  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6211
6212	* libtiff/tif_jpeg.c: Improve compilation under MinGW.
6213
62142005-12-26  Andrey Kiselev  <dron@ak4719.spb.edu>
6215
6216	* libtiff/{tif_dir.c, tif_dir.h, tif_dirread.c, tif_dirinfo.c}:
6217	tiffFieldInfo and exifFieldInfo arrays definitions moved back to
6218	tif_dirinfo.c; added _TIFFGetFieldInfo() and _TIFFGetExifFieldInfo()
6219	private functions to retrieve FieldInfo arrays.
6220
62212005-12-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6222
6223	* html/build.html: Added some additional instructions for when
6224	building using MSVC under Windows.  Also fixed two HTML syntax
6225	errors and used HTML Tidy to tidy up the HTML syntax and
6226	formatting.
6227
62282005-12-24  Andrey Kiselev  <dron@ak4719.spb.edu>
6229
6230	* libtiff/{tif_aux.c, tif_dir.c, tif_dir.h, tif_dirwrite.c,
6231	tif_print.c, tif_getimage.c}: Make InkSet, NumberOfInks, DotRange and
6232	StoNits tags custom.
6233
62342005-12-23  Andrey Kiselev  <dron@ak4719.spb.edu>
6235
6236	* libtiff/{tif_aux.c, tif_dir.c, tif_dir.h, tif_print.c}: Make
6237	WhitePoint tag custom.
6238
6239	* libtiff/{tif_dir.h, tiff.h}: More EXIF tags added.
6240
62412005-12-23  Joris Van Damme  <joris.at.lebbeke@skynet.be>
6242
6243	* libtiff/tiffio.h: fixed typo that potentially resulted in
6244	redefininition of USE_WIN32_FILEIO
6245
6246	* libtiff/*: Added more 'dual-mode' error handling: Done TIFFWarning
6247	calls in core LibTiff.
6248
62492005-12-21  Andrey Kiselev  <dron@ak4719.spb.edu>
6250
6251	* libtiff/{tif_dir.c, tif_dir.h, tif_print.c}: Make RichTIFFIPTC,
6252	Photoshop and ICCProfile tags custom.
6253
62542005-12-21  Joris Van Damme  <joris.at.lebbeke@skynet.be>
6255
6256	* libtiff/*, contrib/*: Added 'dual-mode' error handling, enabling
6257	newer code to get context indicator in error handler and still
6258	remain compatible with older code: Done TIFFError calls everywhere
6259	except in tools
6260
62612005-12-20  Andrey Kiselev  <dron@ak4719.spb.edu>
6262
6263	* tools/tiffcp.c: Added many error reporting messages; fixed integer
6264	overflow as per bug
6265
6266	http://bugzilla.remotesensing.org/show_bug.cgi?id=789
6267
62682005-12-16  Frank Warmerdam  <warmerdam@pobox.com>
6269
6270	* contrib/addtiffo/*: Major upgrade by Joris to support subsampled
6271	YCbCr images in jpeg compressed TIFF files.
6272
62732005-12-14  Andrey Kiselev  <dron@ak4719.spb.edu>
6274
6275	* tools/tiffcp.c: Return non-zero status when reading fails (again).
6276
62772005-12-13  Andrey Kiselev  <dron@ak4719.spb.edu>
6278
6279	* tools/tiffcp.c: Return non-zero status when reading fails.
6280
62812005-12-12  Andrey Kiselev  <dron@ak4719.spb.edu>
6282
6283	* libtiff/{tif_dir.h, tiff.h}: Added more EXIF tags.
6284
62852005-12-09  Andrey Kiselev  <dron@ak4719.spb.edu>
6286
6287	* libtiff/{tif_dir.c, tif_dir.h, tif_print.c}: Make XMLPacket tag
6288	custom.
6289
6290	* tools/tiffinfo.c: Print EXIF directory contents if exist.
6291
6292	* libtiff/tiff.h: Few EXIF tag numbers added.
6293
6294	* libtiff/{tif_dirinfo.c, tif_dirread.c, tif_dir.h, tif_dir.c,
6295	tiffio.h}: Preliminary support to read custom directories. New
6296	functions: TIFFReadCustomDirectory() and TIFFReadEXIFDirectory().
6297
62982005-12-07  Andrey Kiselev  <dron@ak4719.spb.edu>
6299
6300	* libtiff/{tif_dirinfo.c, tif_dirread.c, tif_dir.h, tif_dir.c}:
6301	More work to implement custom directory read support.
6302
6303	* libtiff/{tif_aux.c, tif_dirinfo.c, tif_dirread.c, tif_dir.h,
6304	tif_dir.c, tif_print.c}: Make YCbCrCoefficients and ReferenceBlackWhite
6305	tags custom.
6306
63072005-12-05  Andrey Kiselev  <dron@ak4719.spb.edu>
6308
6309	* libtiff/tif_dirread.c: One more workaround for broken
6310	StripByteCounts tag. Handle the case when StripByteCounts array filled
6311	with completely wrong values.
6312
63132005-11-30  Andrey Kiselev  <dron@ak4719.spb.edu>
6314
6315	* libtiff/tif_dirinfo.c: Release file descriptor in case of failure
6316	in the TIFFOpenW() function as per bug
6317
6318	http://bugzilla.remotesensing.org/show_bug.cgi?id=1003
6319
6320	* libtiff/tif_dirinfo.c: Correctly yse bsearch() and lfind()
6321	functions as per bug
6322
6323	http://bugzilla.remotesensing.org/show_bug.cgi?id=1008
6324
63252005-11-20  Frank Warmerdam  <warmerdam@pobox.com>
6326
6327	* tif_open.c, tiff.h, tiffdump.c: Incorporate preliminary support
6328	for MS MDI format.
6329	http://bugzilla.remotesensing.org/show_bug.cgi?id=1002
6330
6331	* .cvsignore: many files added, and a few update according
6332	to suggestion of Brad HArds on tiff mailing list.
6333
63342005-11-03  Frank Warmerdam  <warmerdam@pobox.com>
6335
6336	* libtiff/libtiff.def, tiffiop.h, tiffio.h: Made TIFFFreeDirectory
6337	public.
6338
63392005-10-31  Andrey Kiselev  <dron@ak4719.spb.edu>
6340
6341	* tools/fax2tiff.c: Properly calculate sizes of temporary arrays
6342	as per bug
6343
6344	http://bugzilla.remotesensing.org/show_bug.cgi?id=943
6345
6346	* tools/fax2tiff.c: Added option '-r' to set RowsPerStrip parameter
6347	as per bug
6348
6349	http://bugzilla.remotesensing.org/show_bug.cgi?id=944
6350
6351	* tools/tiffdump.c: Fixed typeshift and typemask arrays initialization
6352	problem as per bug
6353
6354	http://bugzilla.remotesensing.org/show_bug.cgi?id=946
6355
6356	* tools/bmp2tiff.c: Fixed possible integer overflow error as per bug
6357
6358	http://bugzilla.remotesensing.org/show_bug.cgi?id=965
6359
6360	* libtiff/tif_dirinfo.c: Make XResolution, YResolution and
6361	ResolutionUnit tags modifiable during write process. As per bug
6362
6363	http://bugzilla.remotesensing.org/show_bug.cgi?id=977
6364
6365	* tools/tiffsplit.c: Copy fax related fields over splitted parts
6366	as per bug
6367
6368	http://bugzilla.remotesensing.org/show_bug.cgi?id=983
6369
63702005-10-21  Frank Warmerdam  <warmerdam@pobox.com>
6371
6372	* tif_dirread.c: Don't try and split single strips into "0" strips
6373	in ChopUpSingleUncompressedStrip.  This happens in some degenerate
6374	cases (like 1x1 files with stripbytecounts==0 (gtsmall.jp2 embed tiff)
6375
63762005-10-20  Joris Van Damme  <joris.at.lebbeke@skynet.be>
6377
6378	* tif_fax3.c: changed 'at scanline ...' style warning/errors
6379	with incorrect use of tif_row, to 'at line ... of
6380	strip/tile ...' style
6381
63822005-10-15  Frank Warmerdam  <warmerdam@pobox.com>
6383
6384	* tif_write.c: fixed setting of planarconfig as per bug report
6385	on the mailing list from Joris.
6386
63872005-10-07  Andrey Kiselev  <dron@ak4719.spb.edu>
6388
6389	* configure.ac, configure, nmake.opt, libtiff/{tif_config.h,
6390	tif_dirread.c}: Make the default strip size configurable via the
6391	--with-default-strip-size and STRIP_SIZE_DEFAULT options.
6392
63932005-09-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6394
6395	* html/support.html: Fixed link to documentation on Greg Ward's
6396	LogLuv TIFF format.
6397
63982005-09-28  Andrey Kiselev  <dron@ak4719.spb.edu>
6399
6400	* tools/tiffdump.c: Fixed crash when reading malformed tags.
6401
64022005-09-20  Andrey Kiselev  <dron@ak4719.spb.edu>
6403
6404	* tools/tiff2pdf.c: Added missed 'break' statement as per bug
6405	http://bugzilla.remotesensing.org/show_bug.cgi?id=932
6406
64072005-09-12  Andrey Kiselev  <dron@ak4719.spb.edu>
6408
6409	* libtiff 3.7.4 released.
6410
6411	* {configure, configure.ac, Makefile.am, autogen.sh}: Applied patch
6412	from Patrick Welche (all scripts moved in the 'config' and 'm4'
6413	directories).
6414
64152005-09-12  Frank Warmerdam  <warmerdam@pobox.com>
6416
6417	* libtiff/tif_open.c: reintroduce seek to avoid problem on solaris.
6418
64192005-09-05  Frank Warmerdam  <warmerdam@pobox.com>
6420
6421	* libtiff/tif_dir.c: When prefreeing tv->value in TIFFSetFieldV
6422	also set it to NULL to avoid double free when re-setting custom
6423	string fields as per:
6424
6425	http://bugzilla.remotesensing.org/show_bug.cgi?id=922
6426
64272005-08-12  Frank Warmerdam  <warmerdam@pobox.com>
6428
6429	* libtiff/tif_print.c: avoid signed/unsigned warning.
6430
6431	* libtiff/tif_dirread.c: removed unused variable.
6432
64332005-07-30  Frank Warmerdam  <warmerdam@pobox.com>
6434
6435	* libtiff/tif_dir.c: Fixed up support for swapping "double complex"
6436	values (128 bits as 2 64 bits doubles).  GDAL gcore tests now
6437	pass on bigendian (macosx) system.
6438
64392005-07-28  Andrey Kiselev  <dron@ak4719.spb.edu>
6440
6441	* libtiff/{tif_aux.c, tif_dirread.c, tif_fax3.c, tiffiop.h}: Rename
6442	CheckMalloc() function to _TIFFCheckMalloc() and make it available
6443	globally as an internal helper routine.
6444
64452005-07-27  Andrey Kiselev  <dron@ak4719.spb.edu>
6446
6447	* libtiff/tif_dir.c: More improvements in the "pass by value" part of
6448	the custom tags handling code.
6449
64502005-07-26  Andrey Kiselev  <dron@ak4719.spb.edu>
6451
6452	* libtiff/{tif_dirread.c, tif_dirinfo.c}: Do not upcast BYTEs to
6453	SHORTs in the TIFFFetchByteArray(). Remove TIFFFetchExtraSamples()
6454	function, use TIFFFetchNormalTag() instead as per bug
6455
6456	http://bugzilla.remotesensing.org/show_bug.cgi?id=831
6457
6458	Remove TIFFFetchExtraSamples() function, use TIFFFetchNormalTag()
6459	instead.
6460
6461	* libtiff/tiffconf.h.in: One more attempt to fix the AIX bug
6462
6463	http://bugzilla.remotesensing.org/show_bug.cgi?id=39
6464
64652005-07-25  Andrey Kiselev  <dron@ak4719.spb.edu>
6466
6467	* libtiff/tif_print.c: Fixed printing of the BYTE and SBYTE arrays.
6468
6469	* tools/tiffdump.c: Added support for TIFF_IFD datatype.
6470
64712005-07-21  Andrey Kiselev  <dron@ak4719.spb.edu>
6472
6473	* libtiff/tif_write.c: Do not check the PlanarConfiguration field in
6474	the TIFFWriteCheck() function in case of single band images (as per
6475	TIFF spec).
6476
64772005-07-12  Andrey Kiselev  <dron@ak4719.spb.edu>
6478
6479	* SConstruct, libtiff/SConstruct: Added the first very preliminary
6480	support for SCons software building tool (http://www.scons.org/).
6481	This is experimental infrastructure and it will exist along with the
6482	autotools mechanics.
6483
64842005-07-07  Andrey Kiselev  <dron@ak4719.spb.edu>
6485
6486	* port/{getopt.c, strcasecmp.c, strtoul.c}: Update modules from
6487	the NetBSD source tree (the old	4-clause BSD license changed to
6488	the new 3-clause one).
6489
6490	* configure.ac, port/lfind.c, libtiff/tiffiop.h: Added lfind()
6491	replacement module.
6492
6493	* port/dummy.c: Make the dummy function static.
6494
64952005-07-06  Andrey Kiselev  <dron@ak4719.spb.edu>
6496
6497	* tools/tiffcp.c: Fixed WhitePoint tag copying.
6498
6499	* libtiff/{tif_dir.c, tif_dir.h, tif_dirinfo.c, tif_print.c}:
6500	Make FieldOfViewCotangent, MatrixWorldToScreen, MatrixWorldToCamera,
6501	ImageFullWidth, ImageFullLength and PrimaryChromaticities tags custom.
6502
65032005-07-04  Andrey Kiselev  <dron@ak4719.spb.edu>
6504
6505	* libtiff 3.7.3 released.
6506
6507	* configure, configure.ac: Do not use empty -R option when linking
6508	with --enable-rpath.
6509
65102005-07-01  Andrey Kiselev  <dron@ak4719.spb.edu>
6511
6512	* libtiff/{tiffiop.h, tif_open.c}: Added open option 'h' to avoid
6513	reading the first IFD when needed. As per bug
6514
6515	http://bugzilla.remotesensing.org/show_bug.cgi?id=875
6516
6517	* libtiff/tif_color.c: Better use of TIFFmin() macro to avoid side
6518	effects.
6519
65202005-06-23  Andrey Kiselev  <dron@ak4719.spb.edu>
6521
6522	* tools/tiff2pdf.c: Print two characters per loop in the
6523	t2p_write_pdf_trailer(). As per bug
6524
6525	http://bugzilla.remotesensing.org/show_bug.cgi?id=594
6526
6527	* tools/tiffgt.c: Use MacOS X OpenGL framework when appropriate. As
6528	per bug
6529
6530	http://bugzilla.remotesensing.org/show_bug.cgi?id=844
6531
6532	* acinclude.m4: Updated to latest OpenGL test macros versions.
6533
6534	* libtiff/tiff.h: Use correct int size on Sparc 64bit/Sun compiler
6535	platform. As per bug
6536
6537	http://bugzilla.remotesensing.org/show_bug.cgi?id=855
6538
65392005-06-14  Andrey Kiselev  <dron@ak4719.spb.edu>
6540
6541	* libtiff/tif_dirinfo.c: Added support for ClipPath, XClipPathUnits
6542	and YClipPathUnits tags.
6543
65442005-06-07  Andrey Kiselev  <dron@ak4719.spb.edu>
6545
6546	* contrib/addtiffo/tif_ovrcache.c: Properly extract tile/strip size;
6547	use pixel sized shift in contigous case.
6548
65492005-06-06  Andrey Kiselev  <dron@ak4719.spb.edu>
6550
6551	* contrib/addtiffo/{tif_overview.c, tif_ovrcache.c, tif_ovrcache.h}:
6552	Make overviews working for contiguos images.
6553
65542005-06-03  Andrey Kiselev  <dron@ak4719.spb.edu>
6555
6556	* libtiff/tif_open.c: Replace runtime endianness check with the compile
6557	time one.
6558
6559	* libtiff/tif_predict.c: Floating point predictor now works on
6560	big-endian hosts.
6561
65622005-06-01  Andrey Kiselev  <dron@ak4719.spb.edu>
6563
6564	* libtiff/tif_dir.c: Use _TIFFsetString() function when read custom
6565	ASCII values.
6566
6567	* libtiff/{tif_dirinfo.c, tif_dir.h, tif_dir.c, tif_print.c}: Make
6568	DocumentName, Artist, HostComputer, ImageDescription, Make, Model,
6569	Copyright, DateTime, PageName, TextureFormat, TextureWrapModes and
6570	TargetPrinter tags custom.
6571
6572	* libtiff/tif_jpeg.c: Cleanup the codec state depending on
6573	TIFF_CODERSETUP flag (to fix memry leaks).
6574
6575	* libtiff/tif_jpeg.c: Initialize JPEGTables array with zero after
6576	allocating.
6577
65782005-05-26  Andrey Kiselev  <dron@ak4719.spb.edu>
6579
6580	* configure.ac, libtiff/Makefile.am: Added workaround for
6581	OpenBSD/MirOS soname problem as per bug
6582
6583	http://bugzilla.remotesensing.org/show_bug.cgi?id=838
6584
6585	* libtiff/tif_dirwrite.c: Use tdir_count when calling
6586	TIFFCvtNativeToIEEEDouble() in the TIFFWriteDoubleArray() function as
6587	per bug
6588
6589	http://bugzilla.remotesensing.org/show_bug.cgi?id=845
6590
65912005-05-25  Andrey Kiselev  <dron@ak4719.spb.edu>
6592
6593	* tools/ppm2tiff.c: Fixed format string when read PPM file header with
6594	the fscanf() function. As per bug
6595
6596	http://bugzilla.remotesensing.org/show_bug.cgi?id=861
6597
6598	* libtiff/{tif_dirinfo.c, tif_print.c}: TIFFFetchByteArray() returns
6599	uint16 array when fetching the BYTE and SBYTE filds, so we should
6600	consider result as pointer to uint16 array and not as array of chars.
6601	As per bug
6602
6603	http://bugzilla.remotesensing.org/show_bug.cgi?id=831
6604
6605	* libtiff/tif_dir.c: More efficient custom tags retrieval as per bug
6606
6607	http://bugzilla.remotesensing.org/show_bug.cgi?id=830
6608
6609	* libtiff/tif_win32.c: Use FILE_SHARE_READ | FILE_SHARE_WRITE share
6610	mode in CreateFile() call as per bug
6611
6612	http://bugzilla.remotesensing.org/show_bug.cgi?id=829
6613
6614	* libtiff/Makefile.am: Fixed parallel compilation of the libtiff and
6615	libtiffxx libraries as per bug
6616
6617	http://bugzilla.remotesensing.org/show_bug.cgi?id=826
6618
6619	* contrib/addtiffo/{tif_overview.c, tif_ovrcache.h}: Sinchronized with
6620	GDAL.
6621
66222005-05-23  Frank Warmerdam  <warmerdam@pobox.com>
6623
6624	* libtiff/tif_jpeg.c: Substantial fix for addtiffo problems with
6625	JPEG encoded TIFF files.  Pre-allocate lots of space for jpegtables
6626	in directory.
6627
66282005-05-22  Frank Warmerdam  <warmerdam@pobox.com>
6629
6630	* libtiff/tif_dirread.c: Changed the code that computes
6631	stripbytecount[0] if it appears bogus to ignore if stripoffset[0] is
6632	zero. This is a common case with GDAL indicating a "null" tile/strip.
6633
66342005-05-17  Andrey Kiselev  <dron@ak4719.spb.edu>
6635
6636	* tools/tiffsplit.c: Check for JPEGTables tag presence before copying.
6637
66382005-05-06  Frank Warmerdam  <warmerdam@pobox.com>
6639
6640	* libtiff/tif_dirread.c: Applied similar change to
6641	TIFFFetchPerSampleLongs and TIFFFetchPerSampleAnys.
6642
6643	http://bugzilla.remotesensing.org/show_bug.cgi?id=843
6644
6645	* libtiff/tif_jpeg.c: added LIB_JPEG_MK1 support in JPEGDecodeRaw().
6646
66472005-05-06  Andrey Kiselev  <dron@ak4719.spb.edu>
6648	* tools/tiff2pdfr.c, man/tiff2pdf.1: Calculate the tile width properly;
6649	added new option '-b' to use interpolation in output PDF files (Bruno
6650	Ledoux).
6651
66522005-05-05  Frank Warmerdam  <warmerdam@pobox.com>
6653
6654	* libtiff/tif_dirread.c: Ensure that broken files with too many
6655	values in PerSampleShorts work ok instead of crashing.
6656
6657	http://bugzilla.remotesensing.org/show_bug.cgi?id=843
6658
66592005-04-27  Andrey Kiselev  <dron@ak4719.spb.edu>
6660
6661	* tools/tiffdither.c: Copy the PhotometricInterpretation tag from the
6662	input file.
6663
66642005-04-15  Andrey Kiselev  <dron@ak4719.spb.edu>
6665
6666	* libtiff/tif_predict.c: Added ability to encode floating point
6667	predictor, as per TIFF Technical Note 3.
6668
66692005-04-14  Andrey Kiselev  <dron@ak4719.spb.edu>
6670
6671	* libtiff/{tif_predict.h, tif_predict.c}: Added ability to decode
6672	floating point predictor, as per TIFF Technical Note 3.
6673
66742005-04-13  Andrey Kiselev  <dron@ak4719.spb.edu>
6675
6676	* libtiff/{tiffio.h, tiffiop.h, tif_dir.c, tif_read.c, tif_swab.c}:
6677	Added _TIFFSwab24BitData() and TIFFSwabArrayOfLong() functions used to
6678	swap 24-bit floating point values.
6679
6680	* libtiff/tiff.h: Added predictor constants.
6681
66822005-04-08  Andrey Kiselev  <dron@ak4719.spb.edu>
6683
6684	* libtiff/{tiffiop.h, tif_dir.c}: Use uint32 type for appropriate
6685	values in _TIFFVSetField() function. Inspired by the bug
6686
6687	http://bugzilla.remotesensing.org/show_bug.cgi?id=816
6688
6689	* man/TIFFSetField.3tiff: Fixed definition of the TIFFTAG_INKNAMES tag
6690	as per bug
6691
6692	http://bugzilla.remotesensing.org/show_bug.cgi?id=816
6693
66942005-03-30  Andrey Kiselev  <dron@ak4719.spb.edu>
6695
6696	* libtiff/tif_open.c: Do not read header in case the output file
6697	should be truncated (Ron).
6698
6699	* libtiff/{tif_dirinfo.c, tif_config.h.vc}: Use lfind() instead
6700	of bsearch() in _TIFFFindFieldInfoByName() function (Ron).
6701
6702	* libtiff/{tiff.h, tif_dirinfo.c}: Fixes in EXIF tag ordering (Ron).
6703
67042005-03-22  Andrey Kiselev  <dron@ak4719.spb.edu>
6705
6706	* configure.ac, libtiff/Makefile.am: Use libtool machinery to pass
6707	rpath option.
6708
67092005-03-21  Andrey Kiselev  <dron@ak4719.spb.edu>
6710
6711	* libtiff/{tif_dir.c, tif_print.c}: Handle all data types in custom
6712	tags.
6713
67142005-03-18  Andrey Kiselev  <dron@ak4719.spb.edu>
6715
6716	* libtiff/dirinfo.c: Added DNG tags.
6717
6718	* libtiff/{tif_dir.c, tif_print.c}: More improvements in custom tag
6719	handling code.
6720
6721	* libtiff/tiff.h: More comments; added missed DNG tag (LensInfo);
6722	added DNG 1.1.0.0 tags.
6723
6724	* tools/tif2pdf.c: Fixed problem with alpha channel handling as per
6725	bug
6726
6727	http://bugzilla.remotesensing.org/show_bug.cgi?id=794
6728
6729	* man/TIFFGetField.3tiff: Add a note about autoregistered tags.
6730
67312005-03-17  Andrey Kiselev  <dron@ak4719.spb.edu>
6732
6733	* nmake.opt: Build with Win32 CRT library by default.
6734
6735	* tools/tiff2ps.c: Fixed typo in page size handling code.
6736
6737	* libtiff/{tif_dir.c, tif_print.c}: Support for custom tags, passed
6738	by value.
6739
6740	* libtiff/{tiff.h, tif_dirinfo.c, tiffiop.h}: Added EXIF related tags.
6741
67422005-03-15  Andrey Kiselev  <dron@ak4719.spb.edu>
6743
6744	* libtiff 3.7.2 released.
6745
67462005-03-09  Andrey Kiselev  <dron@ak4719.spb.edu>
6747
6748	* tools/tiffcmp.c: Added ability to compare the 32-bit integer and
6749	floating point data; complain on unsupported bit depths.
6750
67512005-03-05  Andrey Kiselev  <dron@ak4719.spb.edu>
6752
6753	* tif_stream.cxx: Use ios namespace instead of ios_base to support
6754	GCC 2.95.
6755
6756	* libtiff/{tiff.h, tif_fax3.tif, tif_jpeg.c}: Applied correct patch from
6757	Lee Howard for HylaFax DCS tag
6758	(see http://bugzilla.remotesensing.org/show_bug.cgi?id=771)
6759
67602005-03-04  Andrey Kiselev  <dron@ak4719.spb.edu>
6761
6762	* configure, configure.ac: Use -rpath option instead of -R as per bug
6763
6764	http://bugzilla.remotesensing.org/show_bug.cgi?id=732
6765
6766	* libtiff/{tiff.h, tif_fax3.tif, tif_jpeg.c}: Applied patch from Lee
6767	Howard to support a new tag TIFFTAG_FAXDCS (34911) used in HylaFax
6768	software. As per bug
6769
6770	http://bugzilla.remotesensing.org/show_bug.cgi?id=771
6771
6772	* nmake.opt, html/build.html: Add more comments, change the config
6773	file organization a bit as per bug
6774
6775	http://bugzilla.remotesensing.org/show_bug.cgi?id=764
6776
6777	* tools/tiffcmp.c: Use properly sized buffer in short arrays comparison
6778	as per bug
6779
6780	http://bugzilla.remotesensing.org/show_bug.cgi?id=785
6781
67822005-03-03  Andrey Kiselev  <dron@ak4719.spb.edu>
6783
6784	* libtiff/tif_dirread.c: More logic to guess missed strip size as per
6785	bug http://bugzilla.remotesensing.org/show_bug.cgi?id=705
6786
6787	* tools/fax2ps.c: Replace insecure mktemp() function with the
6788	tmpfile() as per bug
6789
6790	http://bugzilla.remotesensing.org/show_bug.cgi?id=786
6791
67922005-02-04  Andrey Kiselev  <dron@ak4719.spb.edu>
6793
6794	* libtiff/tiff.h: Changed the int8 definition to be always signed char
6795	as per bug
6796
6797	http://bugzilla.remotesensing.org/show_bug.cgi?id=727
6798
6799	* libtiff/tiffio.h: Move TIFFOpenW() function into the extern "C"{}
6800	block as per bug
6801
6802	http://bugzilla.remotesensing.org/show_bug.cgi?id=763
6803
68042005-02-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6805
6806	* tools/tiffgt.c: Fix problem on big-endian CPUs so that images
6807	display more correctly.  Images display brighter than they should
6808	on a Sun workstation.
6809
68102005-02-03  Andrey Kiselev  <dron@ak4719.spb.edu>
6811
6812	* libtiff/tif_dirread.c: Estimate strip size in case of wrong or
6813	suspicious values in the tags. As per bugs
6814
6815	http://bugzilla.remotesensing.org/show_bug.cgi?id=705
6816
6817	and
6818
6819	http://bugzilla.remotesensing.org/show_bug.cgi?id=320
6820
6821	* tools/tiff2ps.c: Fixed problem with page sizes as per bug
6822
6823	http://bugzilla.remotesensing.org/show_bug.cgi?id=742
6824
68252005-01-31  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6826
6827	* libtiff/tiff.h (TIFFTAG_TILEWIDTH): Corrected description.
6828	(TIFFTAG_TILELENGTH): Corrected description.
6829
68302005-01-30  Andrey Kiselev  <dron@ak4719.spb.edu>
6831
6832	* configure.ac: Fixes for --with-docdir option as per bug
6833
6834	http://bugzilla.remotesensing.org/show_bug.cgi?id=759
6835
6836	* libtiff/tif_open.c: Remove unnesessary TIFFSeekFile() call as per
6837	bug
6838
6839	http://bugzilla.remotesensing.org/show_bug.cgi?id=756
6840
6841	* libtiff/tif_stream.cxx: Fixes for C++ stream interface from
6842	Michael Rinne and Edward Lam.
6843
68442005-01-15  Andrey Kiselev  <dron@ak4719.spb.edu>
6845
6846	* configure.ac: Make the documentation directory location configurable
6847	via the --with-docdir option (as suggested by Jeremy C. Reed).
6848
6849	* libtiff/tif_color.c: Use double as the second argument of pow()
6850	function in TIFFCIELabToRGBInit(). As per bug
6851
6852	http://bugzilla.remotesensing.org/show_bug.cgi?id=741
6853
6854	* libtiff/tif_pixarlog.c: Avoid warnings when converting float to
6855	integer as per bug
6856
6857	http://bugzilla.remotesensing.org/show_bug.cgi?id=740
6858
6859	* libtiff/tif_getimage.c: Always fill the error message buffer in
6860	TIFFRGBAImageBegin() as per bug
6861
6862	http://bugzilla.remotesensing.org/show_bug.cgi?id=739
6863
68642005-01-12  Andrey Kiselev  <dron@ak4719.spb.edu>
6865
6866	* libtiff/tif_jpeg.c: Added ability to read/write the fax specific
6867	TIFFTAG_FAXRECVPARAMS, TIFFTAG_FAXSUBADDRESS and TIFFTAG_FAXRECVTIME
6868	tags as per bug
6869
6870	http://bugzilla.remotesensing.org/show_bug.cgi?id=736
6871
6872	* libtiff/tif_win32.c: Fixed message formatting in functions
6873	Win32WarningHandler() and Win32ErrorHandler() as per bug
6874
6875	http://bugzilla.remotesensing.org/show_bug.cgi?id=735
6876
6877	* tools/tiff2ps.c: Interpret the -w and -h options independently. As
6878	per bug
6879
6880	http://bugzilla.remotesensing.org/show_bug.cgi?id=689
6881
68822005-01-11  Andrey Kiselev  <dron@ak4719.spb.edu>
6883
6884	* libtiff/tiffio.h: Move the color conversion routines in the 'extern
6885	"C"' section as per bug
6886
6887	http://bugzilla.remotesensing.org/show_bug.cgi?id=727
6888
6889	* libtiff/tiff.h: Restore back the workaround for AIX Visual Age C
6890	compiler to avoid double definition of BSD types as per bug
6891
6892	http://bugzilla.remotesensing.org/show_bug.cgi?id=39
6893
6894	* libtiff/Makefile.am: Place the C++ stream API in the separate
6895	library called libtiffxx to avoid unneeded dependencies. Probably
6896	there will be more C++ API in the future. As per bugs
6897
6898	http://bugzilla.remotesensing.org/show_bug.cgi?id=733
6899
6900	and
6901
6902	http://bugzilla.remotesensing.org/show_bug.cgi?id=730
6903
69042005-01-05  Andrey Kiselev  <dron@ak4719.spb.edu>
6905
6906	* tools/tiffdump.c: Fixed problem when read broken TIFFs with the
6907	wrong tag counts (Dmitry V. Levin, Martin Pitt).
6908
6909	* configure.ac: Replace --disable-c++ with the --disable-cxx option as
6910	per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=730
6911
69122004-12-25  Andrey Kiselev  <dron@ak4719.spb.edu>
6913
6914	* libtiff/tif_getimage.c: More fixes for multiple-alpha-channelled
6915	RGB-images as per bug
6916
6917	http://bugzilla.remotesensing.org/show_bug.cgi?id=713
6918
6919
6920	* tools/tiffset.c: Convert character option to integer value as per
6921	bug http://bugzilla.remotesensing.org/show_bug.cgi?id=725
6922
69232004-12-20  Andrey Kiselev  <dron@ak4719.spb.edu>
6924
6925	* libtiff 3.7.1 released.
6926
6927	* html/tiffset.1.html: Add missed manual page as per bug
6928
6929	http://bugzilla.remotesensing.org/show_bug.cgi?id=678
6930
6931	* libtiff/tiff.h: Revert back libtiff data type definitions as per
6932	bug http://bugzilla.remotesensing.org/show_bug.cgi?id=687
6933
69342004-12-19  Andrey Kiselev  <dron@ak4719.spb.edu>
6935
6936	* libtiff/tif_dirread.c: Do not forget about TIFF_VARIABLE2 when
6937	checking for tag count in TIFFReadDirectory() function. As per bug
6938
6939	http://bugzilla.remotesensing.org/show_bug.cgi?id=713
6940
6941	* libtiff/{tif_dirread.c, tif_fax3.c}: More argument checking in
6942	CheckMallock() function.
6943
6944	* libtiff/tif_getimage.c: Support for multiple-alpha-channelled
6945	RGB-images as per bug
6946
6947	http://bugzilla.remotesensing.org/show_bug.cgi?id=718
6948
69492004-12-15  Frank Warmerdam  <warmerdam@pobox.com>
6950
6951	* libtiff/tif_getimage.c: #define A1 bracketing for clean build on
6952	SunPro compiler.
6953
69542004-12-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6955
6956	* autogen.sh: aclocal and autoheader should be executed after
6957	libtoolize.  Also add '-I .' to aclocal invocation to check
6958	current directory for macros.
6959
69602004-12-10  Andrey Kiselev  <dron@ak4719.spb.edu>
6961
6962	* libtiff/tif_dirwrite.c: Always write TIFFTAG_SUBIFD using LONG type
6963	as per bugs
6964
6965	http://bugzilla.remotesensing.org/show_bug.cgi?id=703
6966
6967	and
6968
6969	http://bugzilla.remotesensing.org/show_bug.cgi?id=704
6970
69712004-12-04  Andrey Kiselev  <dron@ak4719.spb.edu>
6972
6973	* nmake.opt: Link with the user32.lib in windowed mode. As per bug
6974
6975	http://bugzilla.remotesensing.org/show_bug.cgi?id=697
6976
6977	* libtiff/tif_win32.c: Use char* strings instead of TCHAR in windowed
6978	mode as per bug
6979
6980	http://bugzilla.remotesensing.org/show_bug.cgi?id=697
6981
6982	* libtiff/tif_config.in.vc: Removed unneded definitions for
6983	read/open/close/lseek functions to fix the
6984
6985	http://bugzilla.remotesensing.org/show_bug.cgi?id=680
6986
69872004-12-03  Andrey Kiselev  <dron@ak4719.spb.edu>
6988
6989	* libtiff/{tif_dir.c, tif_dirread.c}: Remove TIFFReassignTagToIgnore()
6990	call from the TIFFReadDirectory() function. TIFFReassignTagToIgnore
6991	must be removed in the future, as it was never used properly. As per
6992	bug
6993
6994	http://bugzilla.remotesensing.org/show_bug.cgi?id=692
6995
69962004-11-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6997
6998	* libtiff/tif_jpeg.c: Added a work-around in order to allow
6999	compilation with the heavily modified version of libjpeg delivered
7000	with Cygwin.
7001
70022004-11-29  Andrey Kiselev  <dron@ak4719.spb.edu>
7003
7004	* libtiff/tif_dir.c: Properly handle tags, which have the uint32
7005	counts. As per bug
7006
7007	http://bugzilla.remotesensing.org/show_bug.cgi?id=693
7008
7009	* tools/fax2ps.c: Be able to extract the first page (#0). As per bug
7010
7011	http://bugzilla.remotesensing.org/show_bug.cgi?id=690
7012
70132004-11-28  Andrey Kiselev  <dron@ak4719.spb.edu>
7014
7015	* libtiff/tif_unix.c: Make UNIX module compilable (and usable)
7016	on Windows.
7017
7018	* nmake.opt: Add missed DLLNAME variable.
7019
70202004-11-26  Frank Warmerdam  <warmerdam@pobox.com>
7021
7022	* libtiff/makefile.vc: make it easier to rename the libtiff DLL.
7023
70242004-11-24  Andrey Kiselev  <dron@ak4719.spb.edu>
7025
7026	* man/libtiff.3tiff: Improvements in the "LIST OF ROUTINES" table as
7027	per bug
7028
7029	http://bugzilla.remotesensing.org/show_bug.cgi?id=545
7030
7031	* man/tiffset.1: Added manual page for tiffset tool written by Jay
7032	Berkenbilt. As per bug
7033
7034	http://bugzilla.remotesensing.org/show_bug.cgi?id=678
7035
70362004-11-23  Frank Warmerdam  <warmerdam@pobox.com>
7037
7038	* libtiff/tif_error.c: fixed TIFFerror call to be TIFFError.
7039
70402004-11-21  Frank Warmerdam  <warmerdam@pobox.com>
7041
7042	* html/document.html: Updated Adobe web links as per email from Joris.
7043
70442004-11-21  Andrey Kiselev  <dron@ak4719.spb.edu>
7045
7046	* libtiff/{tiffio.hxx, tiffio.h}: C++ stream interface moved to new
7047	file tiffio.hxx. We don't have any C++ in tiffio.h, those who want to
7048	use C++ streams should #include <tiffio.hxx>.
7049
70502004-11-13  Andrey Kiselev  <dron@ak4719.spb.edu>
7051
7052	* libtiff/tiff.h: Added Adobe DNG tags.
7053
7054	* libtiff/tif_win32.c: Typo fixed.
7055
7056	* libtiff/{tif_stream.cxx, tiffio.h}: C++ stream interface updated to
7057	be compliant with the latest standard. Appropriate additions in
7058	makefiles now completed.
7059
70602004-11-11  Andrey Kiselev  <dron@ak4719.spb.edu>
7061
7062	* tools/tiffset.c, libtiff/tif_dirinfo.c: Properly handle the
7063	different tag types. As per bug
7064
7065	http://bugzilla.remotesensing.org/show_bug.cgi?id=600
7066
70672004-11-10  Andrey Kiselev  <dron@ak4719.spb.edu>
7068
7069	* libtiff/tif_aux.c: Set the appropriate ReferenceBlackWhite array for
7070	YCbCr image which lacks that tag (noted by Hans Petter Selasky).
7071
70722004-11-09  Andrey Kiselev  <dron@ak4719.spb.edu>
7073
7074	* libtiff/tif_color.c: Division by zero fixed (Hans Petter Selasky).
7075
70762004-11-07  Andrey Kiselev  <dron@ak4719.spb.edu>
7077
7078	* libtiff/{tif_stream.cxx, tiffio.h}: Added C++ stream interface
7079	contributed by Edward Lam (see
7080	http://bugzilla.remotesensing.org/show_bug.cgi?id=654 for details).
7081	Though no changes in any makefiles yet.
7082
70832004-11-05  Frank Warmerdam  <warmerdam@pobox.com>
7084
7085	* libtiff/tif_open.c: Removed close() in TIFFClientOpen() if file
7086	is bad. This is the callers responsibility.
7087	http://bugzilla.remotesensing.org/show_bug.cgi?id=651
7088
70892004-11-05  Andrey Kiselev  <dron@ak4719.spb.edu>
7090
7091	* libtiff/{tiffio.h, tif_win32.c, libtiff.def}: Added TIFFOpenW()
7092	function to work with the double byte strings (used to represent
7093	filenames in some locales). As per bug
7094
7095	http://bugzilla.remotesensing.org/show_bug.cgi?id=625
7096
7097	* libtiff/tif_dirread.c: Fixed problem when fetching BitsPerSample and
7098	Compression tags of type LONG from broken TIFFS as per bug
7099
7100	http://bugzilla.remotesensing.org/show_bug.cgi?id=662
7101
7102	* libtiff/tif_dirinfo.c: Fixed definition for TIFFTAG_RICHTIFFIPTC,
7103	the writecount should have uint32 type. As per bug
7104
7105	http://bugzilla.remotesensing.org/show_bug.cgi?id=662
7106
7107	* libtiff/tif_write.c: Fixed wrong if() statement in
7108	TIFFAppendToStrip() function as per bug
7109
7110	http://bugzilla.remotesensing.org/show_bug.cgi?id=660
7111
71122004-11-04  Andrey Kiselev  <dron@ak4719.spb.edu>
7113
7114	* libtiff/tif_dirinfo.c: Change definition for TIFFTAG_EXTRASAMPLES
7115	field. The caller should supply a count when setting this field. As
7116	per bug
7117
7118	 http://bugzilla.remotesensing.org/show_bug.cgi?id=648
7119
7120	* libtiff/{tif_jpeg.c, tif_ojpeg.c}: TIFFTAG_JPEGTABLES should have
7121	uint32 count. Use this type everywhere.
7122
71232004-11-03  Frank Warmerdam  <warmerdam@pobox.com>
7124
7125	* libtiff/tif_next.c: avoid use of u_long and u_char types.  Bug 653.
7126
71272004-11-02  Frank Warmerdam  <warmerdam@pobox.com>
7128
7129	* tools/tiff2rgba.c: removed extra newlines in usage message.
7130
71312004-10-30  Andrey Kiselev  <dron@ak4719.spb.edu>
7132
7133	* libtiff/tif_dirwrite.c: Improvements in tag writing code.
7134
7135	* tools/tiff2ps.c: Fixed wrong variable data type when read Position
7136	tags (Tristan Hill).
7137
71382004-10-30  Frank Warmerdam  <warmerdam@pobox.com>
7139
7140	* libtiff/tiffiop.h: added fallback definition of assert() if we
7141	don't have assert.h.
7142
71432004-10-29  Andrey Kiselev  <dron@ak4719.spb.edu>
7144
7145	* libtiff/tif_fax3.c: Fixed case with the wrong decode routines
7146	choosing when the incorrect Group4Options tag set. As per bug
7147
7148	http://bugzilla.remotesensing.org/show_bug.cgi?id=323
7149
7150	* libtiff/tif_dirwrite.c: Fixed problem with passing count variable of
7151	wrong type when writing the TIFF_BYTE/TIFF_SBYTE tags in
7152	TIFFWriteNormalTag().
7153
71542004-10-28  Andrey Kiselev  <dron@ak4719.spb.edu>
7155
7156	* tools/tiff2ps.c: Fixed wrong variable data type when read Resolution
7157	tags (Peter Fales).
7158
7159	* tools/{bmp2tiff.c, raw2tiff.c}: Get rid of stream I/O functions.
7160
71612004-10-28  Frank Warmerdam  <warmerdam@pobox.com>
7162
7163	* tools/tiff2pdf.c: added casts to avoid warnings.
7164
7165	* libtiff/libtiff.def: Added several more entry points required
7166	to link fax2tiff.c against the DLL on windows.
7167
71682004-10-27  Andrey Kiselev  <dron@ak4719.spb.edu>
7169
7170	* configure, configure.ac: Added --enable-rpath option to embed linker
7171	paths into library binary.
7172
71732004-10-26  Andrey Kiselev  <dron@ak4719.spb.edu>
7174
7175	* tools/tiffset.c: Check the malloc return value (Dmitry V. Levin).
7176
7177	* libtiff/{tif_strip.c, tif_tile.c}: Zero division problem fixed
7178	(Vladimir Nadvornik, Dmitry V. Levin).
7179
71802004-10-16  Andrey Kiselev  <dron@ak4719.spb.edu>
7181
7182	* libtiff 3.7.0 released.
7183
71842004-10-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7185
7186	* libtiff/tif_jpeg.c: There seems to be no need to include stdio.h
7187	in this file so its inclusion is removed.  Including stdio.h
7188	sometimes incurs an INT32 typedef conflict between MinGW's
7189	basetsd.h and libjpeg's jmorecfg.h.
7190
71912004-10-15  Andrey Kiselev  <dron@ak4719.spb.edu>
7192
7193	* man/bmp2tiff.1: Added manual page for bmp2tiff utility.
7194
71952004-10-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7196
7197	* tools/tiffcmp.c (leof): Renamed from 'eof' in order to avoid
7198	conflict noticed under MinGW.
7199	* ltmain.sh: Fix for MinGW compilation.
7200
72012004-10-13  Frank Warmerdam  <warmerdam@pobox.com>
7202
7203	* man/tiffsplit.1: Fixed to indicate using aaa-zzz, not aa-zz.
7204	http://bugzilla.remotesensing.org/show_bug.cgi?id=635
7205
72062004-10-12  Andrey Kiselev  <dron@ak4719.spb.edu>
7207
7208	* libtiff/{tif_dirread.c, tif_jpeg.c, tif_luv.c, tif_ojpeg.c,
7209	tif_pixarlog.c, tif_write.c}: Handle the zero strip/tile sizes
7210	properly (Dmitry V. Levin, Marcus Meissner).
7211
72122004-10-11  Andrey Kiselev  <dron@ak4719.spb.edu>
7213
7214	* libtiff/tif_dirinfo.c: Type of the TIFFTAG_SUBIFD field changed
7215	to TIFF_IFD.
7216
72172004-10-10  Andrey Kiselev  <dron@ak4719.spb.edu>
7218
7219	* tools/bmp2tif.c: Check the space allocation results.
7220
72212004-10-09  Andrey Kiselev  <dron@ak4719.spb.edu>
7222
7223	* libtiff/tif_dir.c: Initialize td_tilewidth and td_tilelength fields
7224	of the TIFFDirectory structure with the 0 instead of -1 to avoid
7225	confusing integer overflows in TIFFTileRowSize() for striped images.
7226
7227	* tools/tiff2pdf.c: Fixed TransferFunction tag handling reported
7228	by Ross A. Finlayson.
7229
7230	* libtiff/tif_dir.c: Fixed custom tags handling as per bug
7231
7232	http://bugzilla.remotesensing.org/show_bug.cgi?id=629
7233
72342004-10-08  Frank Warmerdam  <warmerdam@pobox.com>
7235
7236	* libtiff/tif_dirinfo.c: Fix bug with tif_foundfield and reallocation
7237	of tif_fieldinfo.
7238
7239	http://bugzilla.remotesensing.org/show_bug.cgi?id=630
7240
72412004-10-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7242
7243	* contrib/iptcutil/README: Added the missing README which goes
7244	along with iptcutil.
7245
72462004-10-03  Andrey Kiselev  <dron@ak4719.spb.edu>
7247
7248	* libtiff/tif_compress.c: Improved error reporting in
7249	TIFFGetConfiguredCODECs() (Dmitry V. Levin).
7250
72512004-10-02  Andrey Kiselev  <dron@ak4719.spb.edu>
7252
7253	* libtiff 3.7.0beta2 released.
7254
7255	* libtiff/{tif_aux.c, tif_compress.c, tif_dirinfo.c, tif_dirwrite.c,
7256	tif_extension.c, tif_fax3.c, tif_luv.c, tif_packbits.c,
7257	tif_pixarlog.c, tif_write.c}: Added checks for failed memory
7258	allocations and	integer overflows (Dmitry V. Levin).
7259
7260	* libtiff/tiff.h: Missed TIFF_BIGTIFF_VERSION constant added.
7261
72622004-10-01  Frank Warmerdam  <warmerdam@pobox.com>
7263
7264	* libtiff/tif_open.c: added a more informative message if a BigTIFF
7265	file is opened.
7266
72672004-09-30  Frank Warmerdam  <warmerdam@pobox.com>
7268
7269	* libtiff/tif_dirinfo.c: changed type of XMLPacket (tag 700) to
7270	TIFFTAG_BYTE instead of TIFFTAG_UNDEFINED to comply with the info
7271	in the Adobe XMP Specification.
7272
72732004-09-29  Andrey Kiselev  <dron@ak4719.spb.edu>
7274
7275	* libtiff/{tif_jpeg.c, tif_pixarlog.c}: Use _TIFFmemset() instead of
7276	memset().
7277
7278	* libtiff/{tif_dirread.c, tif_strip.c, tif_tile.c}: Applied patches
7279	from Dmitry V. Levin to fix possible integer overflow problems.
7280
72812004-09-28  Andrey Kiselev  <dron@ak4719.spb.edu>
7282
7283	* libtiff/tif_getimage.c: Check for allocated buffers before clearing
7284	(Dmitry V. Levin).
7285
72862004-09-26  Andrey Kiselev  <dron@ak4719.spb.edu>
7287
7288	* libtiff/{tif_dir.h, tif_dir.c, tif_dirread.c, tif_write.c}:
7289	Optimize checking for the strip bounds.
7290
7291	* libtiff/{tif_dirread.c, tif_strip.c}: TIFFScanlineSize() and
7292	TIFFRasterScanlineSize() functions report zero in the case of integer
7293	overflow now. Properly handle this case in TIFFReadDirectory()
7294	(patches from Dmitry V. Levin).
7295
72962004-09-25  Andrey Kiselev  <dron@ak4719.spb.edu>
7297
7298	* libtiff/{tif_dirinfo.c, tif_strip.c, tif_tile.c}: Use TIFFhowmany8()
7299	macro where appropriate.
7300
7301	* tools/tiff2bw.c: Write ImageWidth/Height tags to output file, as
7302	noted by Gennady Khokhorin.
7303
7304	* libtiff/tif_dirread.c: Always check the return values, returned
7305	by the _TIFFmalloc() (Dmitry V. Levin).
7306
7307	* libtiff/tif_dir.c: Fixed possible integer overflow _TIFFset*Array()
7308	functions (Dmitry V. Levin).
7309
7310	* libtiff/{tif_dirread.c, tif_dir.c, tif_write.c}:
7311	Potential memory leak fixed in TIFFReadDirectory(), _TIFFVSetField(),
7312	TIFFGrowStrips() (found by Dmitry V. Levin).
7313
73142004-09-24  Andrey Kiselev  <dron@ak4719.spb.edu>
7315
7316	* libtiff/{tiffio.h, tif_compress.c}: Added TIFFGetConfiguredCODECs()
7317	to get the list of configured codecs.
7318
7319	* libtiff/{tiffiop.h, tif_dirread.c}: More overflow fixes from
7320	Dmitry V. Levin.
7321
73222004-09-23  Andrey Kiselev  <dron@ak4719.spb.edu>
7323
7324	* libtiff/tif_dirread.c: Applied patch from Dmitry V. Levin to fix
7325	possible integer overflow in CheckMalloc() function.
7326
73272004-09-22  Andrey Kiselev  <dron@ak4719.spb.edu>
7328
7329	* libtiff/{tiffiop.h, tif_strip.c}: Use TIFFhowmany8() macro instead
7330	of plain TIFFhowmany() where appropriate.
7331
73322004-09-21  Andrey Kiselev  <dron@ak4719.spb.edu>
7333
7334	* libtiff/tif_getimage.c: Initialize arrays after space allocation.
7335
73362004-09-19  Andrey Kiselev  <dron@ak4719.spb.edu>
7337
7338	* libtiff 3.7.0beta released.
7339
7340	* libtiff/{tif_luv.c, tif_next.c, tif_thunder.c}: Several buffer
7341	overruns fixed, as noted by Chris Evans.
7342
73432004-09-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7344
7345	* commit: Added a script to make it more convenient to commit
7346	updates.  The CVS commit message is extracted from this ChangeLog
7347	file.
7348
73492004-09-14  Andrey Kiselev  <dron@ak4719.spb.edu>
7350
7351	* configure.ac, configure, aclocal.m4, libtiff/{mkspans.c, tif_fax3.c,
7352	tif_getimage.c, tif_luv.c, tif_lzw.c, tif_ojpeg.c, tif_packbits.c,
7353	tif_predict.c, tif_read.c, tif_swab.c, tif_thunder.c, tif_write.c,
7354	tif_dir.c, tif_dirread.c, tif_dirwrite.c, tif_jpeg.c, tif_dirinfo.c,
7355	tif_vms.c, tif_print.c, tif_strip.c, tif_tile.c, tif_dir.h,
7356	tif_config.h.in, tiffiop.h}:
7357	Get rid of BSD data types (u_char, u_short, u_int, u_long).
7358
73592004-09-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7360
7361	* libtiff/tiff.h: Fix column tagging. Reference current Adobe XMP
7362	specification. Reference libtiff bug tracking system to submit
7363	private tag additions.
7364
73652004-09-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7366
7367	* tools/tiffgt.c: Include "tif_config.h".
7368
7369	* configure.ac: Use AM_PROG_CC_C_O since it is now needed to build
7370	tiffgt.  This results in the 'compile' script being added to the
7371	project.
7372
7373	* tools/Makefile.am (tiffgt_CFLAGS): Add extra build options
7374	required to find OpenGL headers necessary to build tiffgt.  Also
7375	ensure that the libtiff that we built is used rather than some other
7376	libtiff installed on the system.
7377
73782004-09-12  Andrey Kiselev  <dron@ak4719.spb.edu>
7379
7380	* configure.ac, acinclude.m4, aclocal.m4: New macros to detect GLUT
7381	libraries.
7382
73832004-09-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7384
7385	* configure.ac: Pass library configuration defines via
7386	tif_config.h rather than extending CPPFLAGS. Configure a
7387	libtiff/tiffconf.h in order to satisfy application requirements
7388	(not used by library build). Do not define _POSIX_C_SOURCE=2 since
7389	this causes failure to build on systems which properly respect
7390	this request.
7391
7392	* libtiff/tiffconf.h.in: New file to act as the template for the
7393	configured tiffconf.h
7394
7395	* libtiff/files.lst (HDRS): Install the configured tiffconf.h.
7396
73972004-09-10  Frank Warmerdam  <warmerdam@pobox.com>
7398
7399	* html/internals.html: Split off a discussion of adding new tags
7400	into addingtags.html.
7401
74022004-09-10  Andrey Kiselev  <dron@ak4719.spb.edu>
7403
7404	* test/{ascii_tag.c, long_tag.c}: Preliminary test suite added.
7405
7406	* tools/tiff2pdf.c: Fixed reading TransferFunction tag as per bug
7407
7408	http://bugzilla.remotesensing.org/show_bug.cgi?id=590
7409
7410	* libtiff/tif_print.c: Fixes in InkNames and NumberOfInks reporting.
7411
7412	* libtiff/tif_dirread.c: Don't reject to read tags of the
7413	SamplesPerPixel size when the tag count is greater than number of
7414	samples as per bug
7415
7416	http://bugzilla.remotesensing.org/show_bug.cgi?id=576
7417
7418	* libtiff/tiff.h: Use _TIFF_DATA_TYPEDEFS_ guardian to switch off
7419	defining int8/uint8/... etc. types. As per bug
7420
7421	http://bugzilla.remotesensing.org/show_bug.cgi?id=607
7422
74232004-09-09  Frank Warmerdam  <warmerdam@pobox.com>
7424
7425	* tools/tiff2ps.c, tools/tiffmedian.c: fiddle with include files
7426	to avoid compile warnings about getopt() and a few other things.
7427
74282004-09-02  Andrey Kiselev  <dron@ak4719.spb.edu>
7429
7430	* libtiff/tif_dirread.c: Use memcpy() function instead of pointer
7431	assigning magic in TIFFFetchFloat().
7432
74332004-09-01  Andrey Kiselev  <dron@ak4719.spb.edu>
7434
7435	* libtiff/{tiffio.h, tif_open.c}: Applied patches from Joris Van Damme
7436	to avoid requirement for tiffiop.h inclusion in some applications. See
7437	here
7438
7439	http://www.asmail.be/msg0054799560.html
7440
7441	for details.
7442
7443	* tools/fax2tiff.c: Use the new functions in the code.
7444
74452004-08-25  Andrey Kiselev  <dron@ak4719.spb.edu>
7446
7447	* tools/tiff2pdf.c: Initialize arrays properly.
7448
7449	* tools/tiff2ps.c: Avoid zero division in setupPageState() function;
7450	properly initialize array in PSDataBW().
7451
74522004-08-24  Andrey Kiselev  <dron@ak4719.spb.edu>
7453
7454	* tools/tiff2pdf.c: More fixes for bug
7455
7456	http://bugzilla.remotesensing.org/show_bug.cgi?id=590
7457
7458	from Ross Finlayson.
7459
74602004-08-23  Andrey Kiselev  <dron@ak4719.spb.edu>
7461
7462	* tools/tiff2ps.c: Fixed problem with uninitialized values.
7463
7464	* libtiff/tif_dir.c: Initialize tif_foundfield data member in the
7465	TIFFDefaultDirectory() (in addition to 2004-08-19 fix).
7466
7467	* tools/tiff2pdf.c: Fixed a bunch of problems as per bug
7468
7469	http://bugzilla.remotesensing.org/show_bug.cgi?id=590
7470
74712004-08-20  Andrey Kiselev  <dron@ak4719.spb.edu>
7472
7473	* tools/tiff2pdf.c: Applied patch from Ross Finlayson that checks
7474	that the input file has compression, photometric interpretation,
7475	etcetra, tags or if not than a more descriptive error is returned.
7476
7477	* libtiff/tif_dirread.c: Fixed problem in TIFFReadDirectory() in the
7478	code, responsible for tag data type checking.
7479
74802004-08-19  Andrey Kiselev  <dron@ak4719.spb.edu>
7481
7482	* libtiff/{tiffiop.h, tif_dirinfo.c}: Fixed problem with the static
7483	variable as per bug
7484
7485	http://bugzilla.remotesensing.org/show_bug.cgi?id=593
7486
74872004-08-16  Andrey Kiselev  <dron@ak4719.spb.edu>
7488
7489	* tools/ras2tiff.c: Fixed issue with missed big-endian checks as per
7490	bug http://bugzilla.remotesensing.org/show_bug.cgi?id=586
7491
74922004-08-01  Andrey Kiselev  <dron@ak4719.spb.edu>
7493
7494	* libtiff/{tif_config.h.in, tif_config.h.vc}: config.h.in and
7495	config.h.vc files renamed in the tif_config.h.in and tif_config.h.vc.
7496
74972004-07-24  Andrey Kiselev  <dron@ak4719.spb.edu>
7498
7499	* libtiff/tif_lzw.c: LZW compression code is merged back from the
7500	separate package. All libtiff tools are updated to not advertise an
7501	abcence of LZW support.
7502
75032004-07-12  Andrey Kiselev  <dron@ak4719.spb.edu>
7504
7505	* libtiff/tiffio.h: Revert thandle_t back to void* type.
7506
75072004-07-11  Andrey Kiselev  <dron@ak4719.spb.edu>
7508
7509	* libtiff/{tif_read.c, tif_tile.c, tif_strip.c}: Fixes in error
7510	messages, as suggested by Bernd Herd.
7511
75122004-07-03  Andrey Kiselev  <dron@ak4719.spb.edu>
7513
7514	* libtiff/tif_dir.c: Call TIFFError() instead of producing warnings
7515	when setting custom tags by value. Reported by Eric Fieleke.
7516
75172004-06-14  Andrey Kiselev  <dron@ak4719.spb.edu>
7518
7519	* tools/bmp2tiff.c: Add missed RawsPerStrip setting.
7520
75212004-06-08  Andrey Kiselev  <dron@ak4719.spb.edu>
7522
7523	* tools/bmp2tiff.c: Added new utility to convert Windows BMP files
7524	into TIFFs.
7525
75262004-06-07  Andrey Kiselev  <dron@ak4719.spb.edu>
7527
7528	* libtiff 3.7.0alpha released.
7529
75302004-06-06  Andrey Kiselev  <dron@ak4719.spb.edu>
7531
7532	* libtiff/{tiff.h, tif_dirwrite.c, tif_fax3.c, tif_packbits.c,}: Get rid
7533	of ugly 64-bit hacks, replace them with the clever (autoconf based )
7534	ones :-).
7535
7536	* libtiff/tiffio.h: Define thandle_t as int, not void* (may cause
7537	problems in 64-bit environment).
7538
75392004-06-05  Andrey Kiselev  <dron@ak4719.spb.edu>
7540
7541	* tools/tiffset.c: tiffset now can set any libtiff supported tags.
7542	Tags can be supplied by the mnemonic name or number.
7543
7544	* libtiff/{tiffio.h, tif_dir.h, tif_dirinfo.c,}: Added two new
7545	functions TIFFFindFieldInfoByName() and TIFFFieldWithName().
7546
75472004-05-27  Andrey Kiselev  <dron@ak4719.spb.edu>
7548
7549	* libtiff/tif_ojpeg.c: Fixed problem with duplicated SOI and SOF
7550	markers as per bug
7551
7552	http://bugzilla.remotesensing.org/show_bug.cgi?id=581
7553
75542004-05-24  Andrey Kiselev  <dron@ak4719.spb.edu>
7555
7556	* tools/tiffsplit.c: Don't forget to copy Photometric
7557	Interpretation tag.
7558
75592004-05-20  Andrey Kiselev  <dron@ak4719.spb.edu>
7560
7561	* libtiff/{tif_open.c, tiffio.h}: New function added:
7562	TIFFIsBigEndian(). Function returns nonzero if given was file written
7563	in big-endian order.
7564
7565	* tools/tiffsplit.c: Fixed problem with unproperly written multibyte
7566	files. Now output files will be written using the same byte order
7567	flag as	in the input image. See
7568
7569	http://bugzilla.remotesensing.org/show_bug.cgi?id=574
7570
7571	for details.
7572
75732004-05-19  Frank Warmerdam  <warmerdam@pobox.com>
7574
7575	* libtiff/tif_print.c: added (untested) support for printing
7576	SSHORT, SLONG and SRATIONAL fields.
7577
7578	* tools/tiffcp.c: close output file on normal exit.
7579
75802004-05-17  Andrey Kiselev  <dron@ak4719.spb.edu>
7581
7582	* libtiff/tif_fax3.c: Avoid reading CCITT compression options
7583	if compression type mismatches. See
7584
7585	http://bugzilla.remotesensing.org/show_bug.cgi?id=565
7586
75872004-04-30  Andrey Kiselev  <dron@ak4719.spb.edu>
7588
7589	* libtiff/tif_strip.c: Never return 0 from the
7590	TIFFNumberOfStrips().
7591
75922004-04-29  Andrey Kiselev  <dron@ak4719.spb.edu>
7593
7594	* libtiff/tif_dirread.c: Workaround for broken TIFF writers which
7595	store single SampleFormat value for multisampled images. See
7596
7597	http://bugzilla.remotesensing.org/show_bug.cgi?id=562
7598
75992004-04-25  Andrey Kiselev  <dron@ak4719.spb.edu>
7600
7601	* configure.ac, libtiff/{tiff.h, config.h.in}: Added tests for int8,
7602	int16 and int32 types to avoid complains on some compilers. Details at
7603
7604	http://bugzilla.remotesensing.org/show_bug.cgi?id=39
7605
76062004-04-20  Andrey Kiselev  <dron@ak4719.spb.edu>
7607
7608	* tools/tiff2pdf.c: Fixed problem with unaligned access as per bug
7609
7610	http://bugzilla.remotesensing.org/show_bug.cgi?id=555
7611
76122004-04-14  Andrey Kiselev  <dron@ak4719.spb.edu>
7613
7614	* libtiff/tif_write.c: Allow in-place updating of the compressed
7615	images (don't work properly with all codecs). For details see GDAL bug
7616
7617	http://bugzilla.remotesensing.org/show_bug.cgi?id=534
7618
76192004-04-06  Andrey Kiselev  <dron@ak4719.spb.edu>
7620
7621	* libtiff/tif_jpeg.c: Workaround for wrong sampling factors used
7622	in the Intergarph JPEG compressed TIFF images as per bug:
7623
7624	http://bugzilla.remotesensing.org/show_bug.cgi?id=532
7625
76262004-04-04  Frank Warmerdam  <warmerdam@pobox.com>
7627
7628	* libtiff/tif_open.c: close clientdata if TIFFClientOpen() fails
7629	via bad2.
7630
76312004-03-26  Andrey Kiselev  <dron@ak4719.spb.edu>
7632
7633	* tools/tiffcp.c: Properly set Photometric Interpretation in case of
7634	JPEG compression of grayscale images.
7635
7636	* tools/tiffcp.c: Don't emit warnings when Orientation tag does not
7637	present in the input image.
7638
76392004-03-19  Andrey Kiselev  <dron@ak4719.spb.edu>
7640
7641	* {many}: The first attempt to switch to autotools.
7642
76432004-03-03  Andrey Kiselev  <dron@ak4719.spb.edu>
7644
7645	* libtiff/tif_open.c: Use dummy mmap/munmap functions in
7646	TIFFClientOpen() when the appropriate client functions was not
7647	supplied by user.
7648
76492004-03-02  Frank Warmerdam  <warmerdam@pobox.com>
7650
7651	* tools/ycbcr.c: fixed main() declaration as per:
7652	http://bugzilla.remotesensing.org/show_bug.cgi?id=513
7653
76542004-02-26  Andrey Kiselev  <dron@ak4719.spb.edu>
7655
7656	* tools/tiffsplit.c: Copy JPEGTables tag contents for JPEG compressed
7657	images. Reported by Artem Mirolubov.
7658
7659	* libtiff/tif_dirread.c: Fixed problem with handling TIFF_UNDEFINED
7660	tag type in TIFFFetchNormalTag() as per bug
7661
7662	http://bugzilla.remotesensing.org/show_bug.cgi?id=508
7663
76642004-02-17  Frank Warmerdam  <warmerdam@pobox.com>
7665
7666	* libtiff/tif_codec.c: Fixed typo in TIFFInitPackBits name as per:
7667	http://bugzilla.remotesensing.org/show_bug.cgi?id=494
7668
76692004-02-05  Andrey Kiselev  <dron@ak4719.spb.edu>
7670
7671	* libtiff/tif_fax3.c: Fixed problem with CCITT encoding modes as per
7672	bug
7673
7674	http://bugzilla.remotesensing.org/show_bug.cgi?id=483
7675
7676	But we need more work on fax codec to support update mode.
7677
76782004-01-30  Frank Warmerdam  <warmerdam@pobox.com>
7679
7680	* libtiff/libtiff.def: Added TIFFCurrentDirOffset, TIFFWriteCheck,
7681	TIFFRGBAImageOK, and TIFFNumberOfDirectories as suggested by
7682	Scott Reynolds.
7683
76842004-01-29  Andrey Kiselev  <dron@ak4719.spb.edu>
7685
7686	* libtiff/tiff.h: Fixed tag definitions for TIFFTAG_YCLIPPATHUNITS
7687	and TIFFTAG_INDEXED as per bug
7688
7689	http://bugzilla.remotesensing.org/show_bug.cgi?id=475
7690
7691	* libtiff/{tif_win32.c, tif_unix.c}: Check whether the pointer is
7692	NULL before proceeding further as per bug
7693
7694	http://bugzilla.remotesensing.org/show_bug.cgi?id=474
7695
7696	Check results, returned by the TIFFFdOpen() before returning and close
7697	file if TIFFFdOpen() failed as per bug
7698
7699	http://bugzilla.remotesensing.org/show_bug.cgi?id=468
7700
7701	* libtiff/tif_open.c: More fixes for
7702
7703	http://bugzilla.remotesensing.org/show_bug.cgi?id=468
7704
77052004-01-28  Andrey Kiselev  <dron@ak4719.spb.edu>
7706
7707	* libtiff/{libtiff.def, tif_close.c, tiffio.h, tif_open.c}: Separate
7708	TIFFCleanup() from the TIFFClose() in order to fix the bug
7709
7710	http://bugzilla.remotesensing.org/show_bug.cgi?id=468
7711
7712	* tools/tiffcp.c: Fixed problem with wrong interpretation of the
7713	InkNames tag as per bug
7714
7715	http://bugzilla.remotesensing.org/show_bug.cgi?id=466
7716
7717	Memory leak fixed.
7718
77192004-01-21  Frank Warmerdam  <warmerdam@pobox.com>
7720
7721	* libtiff/tif_dirwrite.c: Fixed handling of writable ASCII tags that
7722	are field_passcount=TRUE properly.  Arguably anonymous custom tags
7723	should be declared as passcount=FALSE, but I don't want to change
7724	that without a careful review.
7725
77262004-01-20  Andrey Kiselev  <dron@ak4719.spb.edu>
7727
7728	* libtiff/tif_write.c: Fixed reporting size of the buffer in case of
7729	stripped image in TIFFWriteBufferSetup(). As per bug
7730
7731	http://bugzilla.remotesensing.org/show_bug.cgi?id=460
7732
77332004-01-11  Andrey Kiselev  <dron@ak4719.spb.edu>
7734
7735	* libtiff/tif_dir.c: Incomplete cleanup in TIFFFreeDirectory(),
7736	patch from Gerben Koopmans.
7737
7738	* libtiff/tif_dirread.c: Check field_passcount value before setting
7739	the value of undefined type, patch from Gerben Koopmans.
7740
77412004-01-02  Andrey Kiselev  <dron@ak4719.spb.edu>
7742
7743	* tools/tiffcp.c: Fixed problem with wrong Photometric setting for
7744	non-RGB images.
7745
77462003-12-31  Andrey Kiselev  <dron@ak4719.spb.edu>
7747
7748	* libtiff/tif_win32.c: Fixed problem with _TIFFrealloc() when the NULL
7749	pointer passed. Patch supplied by Larry Grill.
7750
7751	* libtiff/{tiff.h, tif_fax3.c}:Fixes for AMD 64 platform as
7752	suggested by Jeremy C. Reed.
7753
77542003-12-26  Andrey Kiselev  <dron@ak4719.spb.edu>
7755
7756	* libtiff 3.6.1 released.
7757
77582003-12-24  Andrey Kiselev  <dron@ak4719.spb.edu>
7759
7760	* config.guess, config.sub: Updated from the recent upstream.
7761
77622003-12-22  Andrey Kiselev  <dron@ak4719.spb.edu>
7763
7764	* libtiff/{tif_color, tif_getimage.c, tiffio.h}, man/TIFFcolor.3t:
7765	More cleanups in color conversion interface, added appropriate manual
7766	page.
7767
77682003-12-19  Andrey Kiselev  <dron@ak4719.spb.edu>
7769
7770	* libtiff/{tif_extension.c, tif_dirinfo.c, tiff.h}: Warnings fixed as
7771	per bug
7772
7773	http://bugzilla.remotesensing.org/show_bug.cgi?id=357
7774
7775	* tools/tiff2ps.c: Added support for alpha channel. Fixes
7776
7777	http://bugzilla.remotesensing.org/show_bug.cgi?id=428
7778
7779	* libtiff/{libtiff.def, tif_color.c, tif_getimage.c, tiffio.h}:
7780	Interface for Lab->RGB color conversion is finally cleaned up.
7781	Added support for ReferenceBlackWhite tag handling when converted from
7782	YCbCr color space. The latter closes
7783
7784	http://bugzilla.remotesensing.org/show_bug.cgi?id=120
7785
77862003-12-07  Andrey Kiselev  <dron@ak4719.spb.edu>
7787
7788	* libtiff/{tif_getimage.c, tiffio.h}: Avoid warnings.
7789
7790	* libtiff/makefile.vc, tools/makefile.vc: Support for IJG JPEG
7791	library.
7792
77932003-12-06  Andrey Kiselev  <dron@ak4719.spb.edu>
7794
7795	* libtiff/{tif_getimage.c, tif_aux.c}: Read WhitePoint tag from the
7796	file and properly use it for CIE Lab->RGB transform.
7797
77982003-12-04  Andrey Kiselev  <dron@ak4719.spb.edu>
7799
7800	* libtiff/{tif_getimage.c, tif_color.c, tiffio.h}: YCbCr->RGB
7801	conversion routines now in the tif_color.c module. New function
7802	TIFFYCbCrtoRGB() available in TIFF API.
7803
7804	* libtiff/tif_dirwrite.c: Handle TIFF_IFD tag type correctly.
7805
78062003-12-03  Andrey Kiselev  <dron@ak4719.spb.edu>
7807
7808	* libtiff/{tif_getimage.c, tif_color.c, tiffio.h}: Improvements in
7809	CIE Lab conversion code. Start moving YCbCr stuff to the tif_color.c
7810	module.
7811
7812	* libtiff/{tif_getimage.c, tiffio.h}, man{TIFFReadRGBAImage.3t,
7813	TIFFReadRGBAStrip.3t, TIFFReadRGBATile.3t, TIFFRGBAImage.3t}:
7814	Finally resolved problems with orientation handling. TIFFRGBAImage
7815	interface now properly supports all possible orientations, i.e. images
7816	will be flipped both in horizontal and vertical directions if
7817	required. 'Known bugs' section now removed from the appropriate manual
7818	pages. Closed bug entry:
7819
7820	http://bugzilla.remotesensing.org/show_bug.cgi?id=322
7821
78222003-12-02  Andrey Kiselev  <dron@ak4719.spb.edu>
7823
7824	* libtiff/tif_dir.c: Fixed order of the parameters in TIFFError()
7825	function calls as per bug
7826
7827	http://bugzilla.remotesensing.org/show_bug.cgi?id=440
7828
78292003-11-28 Ross Finlayson  <libtiff@apexinternetsoftware.com>
7830
7831	* tools/tiff2pdf.c:  Some bugs fixed.
7832
78332003-11-27  Andrey Kiselev  <dron@ak4719.spb.edu>
7834
7835	* libtiff/tif_luv.c: Fixed bug in 48-bit to 24-bit conversion routine,
7836	reported by Antonio Scuri.
7837
7838	* man/tiff2pdf.1: Few improvements in page layout.
7839
7840	* Makefile.in, /man/Makefile.in, /html/man/tiff2pdf.1.html:
7841	 Added support fpr tiff2pdf manual page.
7842
78432003-11-26 Ross Finlayson  <libtiff@apexinternetsoftware.com>
7844
7845	* /man/tiff2pdf.1:  File added to repository.
7846
78472003-11-26  Andrey Kiselev  <dron@ak4719.spb.edu>
7848
7849	* Makefile.in, /tools/{Makefile.in, makefile.vc}:
7850	 Added support fpr tiff2pdf utility.
7851
78522003-11-25  Ross Finlayson  <libtiff@apexinternetsoftware.com>
7853
7854	* /tools/tiff2pdf.c:  File added to repository.
7855
78562003-11-22  Andrey Kiselev  <dron@ak4719.spb.edu>
7857
7858	* /tools/raw2tiff.c: sqrtf() replaced with sqrt().
7859
78602003-11-21  Andrey Kiselev  <dron@ak4719.spb.edu>
7861
7862	* /tools/raw2tiff.c: #include <getopt.h> removed.
7863
7864	* tools/{Makefile.in, tiffgt.c}: Unmaintained and platform dependent
7865	sgigt utility removed and replaced with the completely rewritten
7866	portable tiffgt tool (depend on OpenGL and GLUT). Initial revision,
7867	there is a lot of things to improve.
7868
7869	* libtiff/tif_ojpeg.c: TIFFVGetField() function now can properly
7870	extract the fields from the OJPEG files. Patch supplied by Ross
7871	Finlayson.
7872
7873	* libtiff/{tiffio.h, tif_codec.c}, man/{libtiff.3t, TIFFcodec.3t}:
7874	Added new function TIFFIsCODECConfigured(), suggested by Ross
7875	Finlayson.
7876
78772003-11-18  Andrey Kiselev  <dron@ak4719.spb.edu>
7878
7879	* libtiff/tif_dirinfo.c: Implemented binary search in
7880	_TIFFMergeFieldInfo(). Patch supplied by Ross Finlayson.
7881
7882	* libtiff/tif_dir.h: _TIFFFindOrRegisterdInfo declaration replaced
7883	with _TIFFFindOrRegisterFieldInfo as reported by Ross Finlayson.
7884
78852003-11-17  Frank Warmerdam  <warmerdam@pobox.com>
7886
7887	* tif_dirread.c: do not mark all anonymously defined tags to be
7888	IGNOREd.
7889
78902003-11-17  Andrey Kiselev  <dron@ak4719.spb.edu>
7891
7892	* contrib/pds/{tif_pdsdirread.c, tif_pdsdirwrite.c}: Use
7893	TIFFDataWidth() function insted of tiffDataWidth array.
7894
78952003-11-16  Andrey Kiselev  <dron@ak4719.spb.edu>
7896
7897	* libtiff/{tiff.h, tif_dirinfo.c}: Added support for IFD (13)
7898	datatype, introduced in "Adobe PageMaker TIFF Tech. Notes".
7899
79002003-11-15  Frank Warmerdam  <warmerdam@pobox.com>
7901
7902	* Makefile.in: fixed missing backslash for tif_color.c in list.
7903
79042003-11-13  Andrey Kiselev  <dron@ak4719.spb.edu>
7905
7906	* libtiff/{tif_color.c, tif_getimage.c, tiffio.h, Makefile.in}:
7907	New color space conversion code: CIE L*a*b* 1976 images now supported
7908	by the TIFFRGBAImage interface. All introduced routines go to new
7909	module tif_color.c. Eventually all color conversion functions should
7910	be moved there.
7911
79122003-11-12  Andrey Kiselev  <dron@ak4719.spb.edu>
7913
7914	* tools/{ras2tiff.c, rasterfile.h}: Properly determine SUN Rasterfiles
7915	with the reverse byte order (it is reported by the magic header
7916	field). Problem reported by Andreas Wiesmann.
7917
7918	* tools/raw2tiff.c, man/raw2tiff.1: Few improvements in correlation
7919	calculation function. Guessing mechanics now documented in manual page.
7920
79212003-11-11  Andrey Kiselev  <dron@ak4719.spb.edu>
7922
7923	* tools/raw2tiff.c: Implemented image size guessing using
7924	correlation coefficient calculation between two neighbour lines.
7925
79262003-11-09  Frank Warmerdam  <warmerdam@pobox.com>
7927
7928	* libtiff/tif_tile.c: remove spurious use of "s" (sample) in the
7929	planarconfig_contig case in TIFFComputeTile().
7930
7931	http://bugzilla.remotesensing.org/show_bug.cgi?id=387
7932
79332003-11-09  Andrey Kiselev  <dron@ak4719.spb.edu>
7934
7935	* libtiff/tiffiop.h: New macros: TIFFmax, TIFFmin and TIFFrint.
7936
79372003-11-07  Andrey Kiselev  <dron@ak4719.spb.edu>
7938
7939	* libtiff/{tiffio.h, tif_strip.c}, man/{TIFFstrip.3t, libtiff.3t}:
7940	Added TIFFRawStripSize() function as suggested by Chris Hanson.
7941
79422003-11-03  Andrey Kiselev  <dron@ak4719.spb.edu>
7943
7944	* libtiff/{tif_lzw.c, tif_fax3.c}: Proper support for update mode as
7945	per bug
7946
7947	http://bugzilla.remotesensing.org/show_bug.cgi?id=424
7948
79492003-10-29  Andrey Kiselev  <dron@ak4719.spb.edu>
7950
7951	* libtiff/libtiff.def: Added TIFFReadRGBAImageOriented.
7952
7953	* html/build.html: Added note about GNU make requirement.
7954
79552003-10-25  Andrey Kiselev  <dron@ak4719.spb.edu>
7956
7957	* Makefile.in: Fixes in using MAKEFLAGS as per bug
7958
7959	http://bugzilla.remotesensing.org/show_bug.cgi?id=418
7960
7961	* port/install.sh.in: Option -p added to the mkdir command to create
7962	all directory tree structure before installing.
7963
79642003-10-18  Andrey Kiselev  <dron@ak4719.spb.edu>
7965
7966	* /tools/tiff2ps.c: #include <strings.h> replaced with the
7967	#include <string.h>.
7968
79692003-10-16  Andrey Kiselev  <dron@ak4719.spb.edu>
7970
7971	* Makefile.in: Add an absolute path to the test_pics.sh call.
7972
79732003-10-12  Andrey Kiselev  <dron@ak4719.spb.edu>
7974
7975	* libtiff/tiffcomp.h: #define _BSDTYPES_DEFINED when defining BSD
7976	typedefs.
7977
79782003-10-09  Andrey Kiselev  <dron@ak4719.spb.edu>
7979
7980	* configure, libtiff/{Makefile.in, mkversion.c}:
7981	Relative buildings fixed.
7982
7983	* tools/Makefile.in: Added "-I../libtiff" to the tiffset building
7984	rule.
7985
79862003-10-07  Andrey Kiselev  <dron@ak4719.spb.edu>
7987
7988	* Makefile.in: Added missed v3.6.0.html.
7989
7990	* libtiff/tiffio.h: Typo fixed: ORIENTATION_BOTTOMLEFT replaced with
7991	ORIENTATION_BOTLEFT.
7992
79932003-10-04  Andrey Kiselev  <dron@ak4719.spb.edu>
7994
7995	* 3.6.0 final release.
7996
79972003-10-03  Andrey Kiselev  <dron@ak4719.spb.edu>
7998
7999	* libtiff/{tif_getimage.c, tiffio.h}, man/TIFFReadRGBAImage.3t: New
8000	function TIFFReadRGBAImageOriented() implemented to retrieve raster
8001	array with user-specified origin position as suggested by Jason Frank.
8002	See
8003
8004	http://bugzilla.remotesensing.org/show_bug.cgi?id=322
8005
8006	for details.
8007
8008	* tools/tiff2rgba.c: Switched to use TIFFReadRGBAImageOriented()
8009	instead of TIFFReadRGBAImage().
8010
8011	* tools/tiff2ps.c: Fixed possible endless loop as per bug
8012
8013	http://bugzilla.remotesensing.org/show_bug.cgi?id=404
8014
80152003-09-30  Andrey Kiselev  <dron@ak4719.spb.edu>
8016
8017	* libtiff/tif_dirread.c: Check field counter against number of fields
8018	in order to fix
8019
8020	http://bugzilla.remotesensing.org/show_bug.cgi?id=366
8021
8022	* libtiff/tif_fax3.c: Fix wrong line numbering as per bug
8023
8024	http://bugzilla.remotesensing.org/show_bug.cgi?id=342
8025
80262003-09-25  Andrey Kiselev  <dron@ak4719.spb.edu>
8027
8028	* libtiff/{tiffiop.h, tif_dirread.c, tif_dir.c, tif_open.c,
8029	tif_close.c}: Store a list of opened IFD to prevent looping as per bug
8030
8031	http://bugzilla.remotesensing.org/show_bug.cgi?id=383
8032
80332003-09-23  Andrey Kiselev  <dron@ak4719.spb.edu>
8034
8035	* libtiff/tif_dirread.c: More fixes for	EstimateStripByteCounts(). See
8036
8037	http://bugzilla.remotesensing.org/show_bug.cgi?id=358
8038
80392003-08-21  Andrey Kiselev  <dron@ak4719.spb.edu>
8040
8041	* tools/tiffmedian.c: int declaration replaced with the uint32 to
8042	support large images as per bug
8043
8044	http://bugzilla.remotesensing.org/show_bug.cgi?id=382
8045
80462003-08-12  Andrey Kiselev  <dron@ak4719.spb.edu>
8047
8048 	* libtiff/Makefile.in: Fixed problem with building in different
8049	directory.
8050
8051	* tools/tiff2ps.c: Added missing #include <strings.h>.
8052
8053	* libtiff/tif_dirwrite.c: More fixes for custom tags code
8054	from Ashley Dreier.
8055
80562003-08-07  Andrey Kiselev  <dron@ak4719.spb.edu>
8057
8058	* tools/tiff2ps.c: Added page size setting when creating PS Level 2.
8059	Patch submitted by Balatoni Denes (with corrections from Tom
8060	Kacvinsky).
8061
8062	* tools/tiff2ps.c: Fixed PS comment emitted when FlateDecode is
8063	being used. Reported by Tom Kacvinsky.
8064
8065	* libtiff/tif_dirwrite.c: Fixed problem with custom tags writing,
8066	reported by Ashley Dreier.
8067
8068	* libtiff/tif_print.c: Fixed problem with float tags reading, support
8069	for printing RATIONAL and BYTE tags added.
8070
80712003-08-05  Andrey Kiselev  <dron@ak4719.spb.edu>
8072
8073	* libtiff/tif_lzw.c: Move LZW codec state block allocation back to
8074	TIFFInitLZW(), because its initialization in LZWSetupDecode() cause
8075	problems with predictor initialization. Remove O_RDONLY check during
8076	state block allocation to be able open LZW compressed files in update
8077	mode.
8078
8079	Problem exist for libtiff version of the tif_lzw.c module. One from
8080	lzw-compression-kit hasn't such troubles.
8081
80822003-08-04  Frank Warmerdam  <warmerdam@pobox.com>
8083
8084	* libtiff/tif_write.c: modified tif_write.c so that the various
8085	encoded write functions use tif_postdecode() to apply byte order
8086	swapping (swab) to the application passed data buffer if the same
8087	would be done when reading.  This allows us to write pixel data with
8088	more than 8 bits per sample to existing files of a non-native byte
8089	order.  One side effect of this change is the applications buffer
8090	itself is altered in this case by the act of writing.
8091
8092	http://bugzilla.remotesensing.org/show_bug.cgi?id=171
8093
80942003-07-25  Frank Warmerdam  <warmerdam@pobox.com>
8095
8096	* libtiff/tif_open.c: avoid signed/unsigned casting warning
8097	initializing typemask as per patch from J.A. Strother.
8098
8099	* tools/tiffcp.c: fixed signed/unsigned casting warning.
8100
8101	* libtiff/tif_print.c: dos2unix conversion.
8102
8103	* tools/tiffsplit.c: increased the maximum number of pages that
8104	can be split.  Patch provided by Andrew J. Montalenti.
8105
81062003-07-11  Andrey Kiselev  <dron@ak4719.spb.edu>
8107
8108	* tools/raw2tiff.c: Added option `-p' to explicitly select color
8109	space of input image data. Closes
8110
8111	http://bugzilla.remotesensing.org/show_bug.cgi?id=364
8112
81132003-07-08  Frank Warmerdam  <warmerdam@pobox.com>
8114
8115	* tif_aux.c, tif_codec.c, tif_dir.c, tif_dirread.c, tif_extension.c,
8116	tif_fax3.c, tif_getimage.c, tif_luv.c, tif_lzw.c, tif_next.c,
8117	tif_packbits.c, tif_predict.c, tif_print.c, tif_swab.c, tif_thunder.c:
8118	avoid casting warning at /W4.
8119
81202003-07-03  Andrey Kiselev  <dron@ak4719.spb.edu>
8121
8122	* tools/thumbnail.c: Memory leak fixed as reported by Robert S. Kissel.
8123
81242003-06-30  Andrey Kiselev  <dron@ak4719.spb.edu>
8125
8126	* libtiff/tif_pixarlog.c: Unused variables removed.
8127
8128	* libtiff/{tif_dirread.c, tif_dir.c}: Fixed problem with
8129	EstimateStripByteCounts() as per bug
8130
8131	http://bugzilla.remotesensing.org/show_bug.cgi?id=358
8132
8133	* libtiff/{tif_dirwrite.c, tif_packbits.c}: Fixed compilation on
8134	64-bit architectures as per bug
8135
8136	http://bugzilla.remotesensing.org/show_bug.cgi?id=357
8137
8138	* libtiff/tif_dirinfo.c: TIFFDataWidth() returns 0 in case of
8139	unknown data type.
8140
81412003-06-19  Frank Warmerdam  <warmerdam@pobox.com>
8142
8143	* libtiff/tif_print.c: fixed some serious bugs when printing
8144	custom tags ... almost certain to crash.
8145
8146	* libtiff/tif_dirread.c: Don't ignore custom fields that are
8147	autodefined.  Not sure how this got to be like this.
8148
81492003-06-18  Andrey Kiselev  <dron@ak4719.spb.edu>
8150
8151	* 3.6.0 Beta2 released.
8152
8153	* tools/tiffcmp.c, man/tiffcmp.1: Fixed problem with unused data
8154	comparing as per bug
8155
8156	http://bugzilla.remotesensing.org/show_bug.cgi?id=349
8157
8158	`-z' option now can be used to set the number of reported different
8159	bytes.
8160
81612003-06-09  Andrey Kiselev  <dron@ak4719.spb.edu>
8162
8163	* tools/tiffcp.c, man/tiffcp.1: Added possibility to specify value -1
8164	to -r option to get the entire image as one strip. See
8165
8166	http://bugzilla.remotesensing.org/show_bug.cgi?id=343
8167
8168	for details.
8169
81702003-06-04  Andrey Kiselev  <dron@ak4719.spb.edu>
8171
8172	* tools/tiffcp.c: Set the correct RowsPerStrip and PageNumber
8173	values as per bug
8174
8175	http://bugzilla.remotesensing.org/show_bug.cgi?id=343
8176
81772003-05-27  Frank Warmerdam  <warmerdam@pobox.com>
8178
8179	* libtiff/tif_jpeg.c: modified segment_height calculation to always
8180	be a full height tile for tiled images.  Also changed error to just
8181	be a warning.
8182
81832003-05-25  Andrey Kiselev  <dron@ak4719.spb.edu>
8184
8185	* tools/fax2tiff.c: Page numbering fixed, as per bug
8186
8187	http://bugzilla.remotesensing.org/show_bug.cgi?id=341
8188
81892003-05-20  Andrey Kiselev  <dron@ak4719.spb.edu>
8190
8191	* contrib/ojpeg/{Makefile.in, jdhuff.h, jinclude.h, ojpeg.c, README},
8192	configure, Makefile.in:	Switched back to the old behaviour. Likely
8193	better solution should be found for OJPEG support.
8194
81952003-05-11  Andrey Kiselev  <dron@ak4719.spb.edu>
8196
8197	* libtiff/mkversion.c: Fixed problem with wrong string size when
8198	reading RELEASE-DATE file.
8199
82002003-05-07  Andrey Kiselev  <dron@ak4719.spb.edu>
8201
8202	* tools/tiff2ps.c: Fixed bug in Ascii85EncodeBlock() function: array
8203	index was out of range.
8204
82052003-05-06  Andrey Kiselev  <dron@ak4719.spb.edu>
8206
8207	* contrib/ojpeg/{Makefile.in, jdhuff.h, jinclude.h, ojpeg.c, README},
8208	configure, Makefile.in:	Improved libtiff compilation with OJPEG
8209	support. Now no need for patching IJG JPEG library, hack required by
8210	libtiff will be compiled and used in-place. Implemented with
8211	suggestion and help from Bill Allombert, Debian's libjpeg maintainer.
8212
8213	* libtiff/tif_aux.c: Properly handle TIFFTAG_PREDICTOR in
8214	TIFFVGetFieldDefaulted() function.
8215
82162003-05-05  Andrey Kiselev  <dron@ak4719.spb.edu>
8217
8218	* tools/ppm2tiff.c: PPM header parser improved: now able to skip
8219	comments.
8220
8221	* tools/tiffdither.c: Fixed problem with bit fill order tag setting:
8222	was not copied from source image.
8223
8224	* libtiff/getimage.c: Workaround for some images without correct
8225	info about alpha channel as per bug
8226
8227	http://bugzilla.remotesensing.org/show_bug.cgi?id=331
8228
82292003-04-29  Andrey Kiselev  <dron@ak4719.spb.edu>
8230
8231	* tools/tiff2ps.c, man/tiff2ps.1: Add ability to generate PS Level 3.
8232	It basically allows one to use the /flateDecode filter for ZIP
8233	compressed TIFF images. Patch supplied by Tom Kacvinsky. Fixes
8234
8235	http://bugzilla.remotesensing.org/show_bug.cgi?id=328
8236
8237	* tools/tiff2ps.c: Force deadzone printing when EPS output specified
8238	as per bug
8239
8240	http://bugzilla.remotesensing.org/show_bug.cgi?id=325
8241
82422003-04-17  Andrey Kiselev  <dron@ak4719.spb.edu>
8243
8244	* libtiff/tif_dirread.c: Removed additional check for StripByteCounts
8245	due to problems with multidirectory images. Quality of error messages
8246	improved.
8247
82482003-04-16  Andrey Kiselev  <dron@ak4719.spb.edu>
8249
8250	* tools/tiffcp.c: Fixed problem with colorspace conversion for JPEG
8251	encoded images. See bug entries
8252
8253	http://bugzilla.remotesensing.org/show_bug.cgi?id=275
8254
8255	and
8256
8257	http://bugzilla.remotesensing.org/show_bug.cgi?id=23
8258
8259	* libtiff/tif_dirread.c: Additional check for StripByteCounts
8260	correctness. Fixes
8261
8262	http://bugzilla.remotesensing.org/show_bug.cgi?id=320
8263
82642003-03-12  Andrey Kiselev  <dron@ak4719.spb.edu>
8265
8266	* tools/{fax2ps.c, fax2tiff.c, gif2tiff.c, pal2rgb.c, ppm2tiff.c,
8267	ras2tiff.c, raw2tiff.c, rgb2ycbcr.c, thumbnail.c, tiff2bw.c,
8268	tiff2ps.c, tiff2rgba.c, tiffcp.c, tiffdither.c, tiffinfo.c,
8269	tiffmedian.c}: Added library version reporting facility to all tools.
8270
82712003-03-06  Frank Warmerdam  <warmerdam@pobox.com>
8272
8273	* port/install.sh.in: Fixed problems with install producing paths
8274	like ///usr/local/lib on cygwin.
8275
82762003-02-27  Andrey Kiselev  <dron@ak4719.spb.edu>
8277
8278	* tools/fax2tiff.c, man/fax2tiff.1: New switch (-X) to set width of
8279	raw input page. Patch supplied by Julien Gaulmin. See
8280
8281	http://bugzilla.remotesensing.org/show_bug.cgi?id=293
8282
8283	for details.
8284
82852003-02-26  Frank Warmerdam  <warmerdam@pobox.com>
8286
8287	* libtiff/tif_dir.c: fixed up the tif_postdecode settings
8288	responsible for byte swapping complex image data.
8289
8290	* libtiff/tif_lzw.c: fixed so that decoder state isn't allocated till
8291	LZWSetupDecode().  Needed to read LZW files in "r+" mode.
8292
82932003-02-07  Andrey Kiselev  <dron@ak4719.spb.edu>
8294
8295	* tools/ppm2tiff.c: Fixed problem with too many arguments.
8296
82972003-02-04  Andrey Kiselev  <dron@ak4719.spb.edu>
8298
8299	* tools/raw2tiff.c: Memory leak fixed.
8300
83012003-02-03  Andrey Kiselev  <dron@ak4719.spb.edu>
8302
8303	* tools/fax2tiff.c, man/fax2tiff.1: Applied patch from Julien Gaulmin
8304	(thanks, Julien!). More switches for fax2tiff tool for better control
8305	of input and output. Details at
8306
8307	http://bugzilla.remotesensing.org/show_bug.cgi?id=272
8308
83092003-02-03  Frank Warmerdam  <warmerdam@pobox.com>
8310
8311	* libtiff/tif_jpeg.c: Modified to defer initialization of jpeg
8312	library so that we can check if there is already any tile/strip data
8313	before deciding between creating a compressor or a decompressor.
8314
83152003-01-31  Frank Warmerdam  <warmerdam@pobox.com>
8316
8317	* libtiff/tif_write.c: TIFFWriteCheck() now fails if the image is
8318	a pre-existing compressed image.  That is, image writing to
8319	pre-existing compressed images is not allowed.
8320
8321	* libtiff/tif_open.c: Removed error if opening a compressed file
8322	in update mode.
8323
8324	http://bugzilla.remotesensing.org/show_bug.cgi?id=198
8325
83262003-01-31  Andrey Kiselev  <dron@ak4719.spb.edu>
8327
8328	* config.guess, config.sub: Updated to recent upstream versions.
8329
83302003-01-15  Frank Warmerdam  <warmerdam@pobox.com>
8331
8332	* cut 3.6.0 Beta release.
8333
83342002-12-20  Andrey Kiselev  <dron@ak4719.spb.edu>
8335
8336	* tools/fax2ps.c, man/fax2ps.1: Page size was determined
8337	in wrong way as per bug
8338
8339	http://bugzilla.remotesensing.org/show_bug.cgi?id=239
8340
83412002-12-17  Frank Warmerdam  <warmerdam@pobox.com>
8342
8343	* libtiff/tif_dirread.c: Allow wrong sized arrays in
8344	TIFFFetchStripThing().
8345
8346	http://bugzilla.remotesensing.org/show_bug.cgi?id=49
8347
83482002-12-02  Frank Warmerdam  <warmerdam@pobox.com>
8349
8350	* libtiff/tif_dir.c: fix problem with test on td_customValueCount.
8351	Was using realloc even first time.  Fix by Igor Venevtsev.
8352
83532002-11-30  Frank Warmerdam  <warmerdam@pobox.com>
8354
8355	* libtiff/tif_dir.c: fixed bug with resetting an existing custom
8356	field value.
8357
8358	* libtiff/tif_dir.c: Fixed potential problem with ascii "custom"
8359	tags in TIFFVGetField() ... added missing break.
8360
83612002-10-14  Frank Warmerdam  <warmerdam@pobox.com>
8362
8363	* tools/tiff2ps.c: fixes a problem where "tiff2ps -1e" did not make
8364	the scanline buffer long enough when writing rgb triplets.
8365	The scanline needs to be 3 X the number of dots or else it will
8366	contain	an incomplete triplet and programs that try to separate
8367	the eps by redefining the colorimage operator will get messed up.
8368	Patch supplied by William Bader.
8369
8370	* Makefile.in: added tif_extension.c to file list as per
8371	http://bugzilla.remotesensing.org/show_bug.cgi?id=218.
8372
83732002-10-11  Andrey Kiselev  <dron@ak4719.spb.edu>
8374
8375	* configure, config.site, libtiff/{tif_unix.c, Makefile.in}: Fix for
8376	large files (>2GiB) supporting. New option in the config.site:
8377	LARGEFILE="yes". Should be enough for I/O of the large files.
8378
83792002-10-10  Frank Warmerdam  <warmerdam@pobox.com>
8380
8381	* libtiff/html/v3.6.0.html: new release notes.
8382
8383	* libtiff/index.html: removed faq, cvs snapshot cruft.  Added email
8384	link for Andrey.  Pointer to v3.6.0.html.
8385
8386	* libtiff/Makefile.in: added direct rule for tiffvers.h for release.
8387
83882002-10-07  Andrey Kiselev  <dron@ak4719.spb.edu>
8389	* tools/tiff2ps.c, man/tiff2ps.1: Applied patch form Sebastian Eken
8390	(thanks, Sebastian!). New switches:
8391	-b # for a bottom margin of # inches
8392	-c   center image
8393	-l # for a left margin of # inches
8394	-r   rotate the image by 180 degrees
8395	New features merged with code for shrinking/overlapping.
8396	Previously added -c and -n switches (for overriding PS units) renamed
8397	in -x and -y respectively.
8398
8399	http://bugzilla.remotesensing.org/show_bug.cgi?id=200
8400
8401	* html/man/*.html: Updated from actual manual pages.
8402
84032002-10-06  Frank Warmerdam  <warmerdam@pobox.com>
8404
8405	* libtiff/tif_jpeg.c: fixed problem with boolean defined with wrong
8406	size on windows.  Use #define boolean hack.
8407
8408	http://bugzilla.remotesensing.org/show_bug.cgi?id=188
8409
8410	* libtiff/tiff.h: Don't do special type handling in tiff.h unless
8411	USING_VISUALAGE is defined.
8412
8413	http://bugzilla.remotesensing.org/show_bug.cgi?id=39
8414
84152002-10-03  Frank Warmerdam  <warmerdam@pobox.com>
8416
8417	* libtiff/tiff.h: added COMPRESSION_JP2000.
8418
84192002-10-02  Andrey Kiselev  <dron@ak4719.spb.edu>
8420
8421	* libtiff/tif_dirread.c: Another fix for the fetching SBYTE arrays
8422	by the TIFFFetchByteArray() function. Should finally resolve
8423
8424	http://bugzilla.remotesensing.org/show_bug.cgi?id=52
8425
8426	* configure: Set -DPIXARLOG_SUPPORT option along with -DZIP_SUPPORT
8427
8428	* html/Makefile.in: New targets added: html and groffhtml for
8429	producing HTML representations of the manual pages automatically.
8430	html target uses man2html tool, groffhtml uses groff tool.
8431
84322002-09-29  Frank Warmerdam  <warmerdam@pobox.com>
8433
8434	* configure, libtiff/Makefile.in: Added SCO OpenServer 5.0.6 support
8435	from John H. DuBois III.
8436
84372002-09-15  Andrey Kiselev  <dron@ak4719.spb.edu>
8438
8439	* Makefile.in, /man/{raw2tiff.1, Makefile.in, libtiff.3}: Added
8440	manual page for raw2tiff(1) tool.
8441
84422002-09-12  Andrey Kiselev  <dron@ak4719.spb.edu>
8443
8444	* /libtiff/{tiffio.h, tif_dir.h}: TIFFDataWidth() declaration moved to
8445	the tiffio.h header file.
8446
8447	* Makefile.in, /man/{TIFFDataWidth.3t, Makefile.in, libtiff.3}: Added
8448	manual page for TIFFDataWidth() function
8449
84502002-09-08  Frank Warmerdam  <warmerdam@pobox.com>
8451
8452	* libtiff/tif_dirread.c: Expand v[2] to v[4] in TIFFFetchShortPair()
8453	as per http://bugzilla.remotesensing.org/show_bug.cgi?id=196.
8454
8455	* tools/tiff2ps.c: Don't emit BeginData/EndData DSC comments
8456	since we are unable to properly include the amount to skip.
8457
8458	http://bugzilla.remotesensing.org/show_bug.cgi?id=80
8459
84602002-09-02  Andrey Kiselev  <dron@ak4719.spb.edu>
8461
8462	* /libtiff/tif_dirread.c: Fixed problem with SBYTE type data fetching
8463	in TIFFFetchByteArray(). Problem described at
8464	http://bugzilla.remotesensing.org/show_bug.cgi?id=52
8465
84662002-08-22  Andrey Kiselev  <dron@ak4719.spb.edu>
8467
8468	* /libtiff/tif_dirinfo.c: Further additions to free custom fields
8469	in _TIFFSetupFieldInfo() function.
8470	See http://bugzilla.remotesensing.org/show_bug.cgi?id=169 for details.
8471
8472	* /libtiff/tif_lzw.c: Additional consistency checking added in
8473	LZWDecode() and LZWDecodeCompat().
8474	Fixes http://bugzilla.remotesensing.org/show_bug.cgi?id=190
8475	and http://bugzilla.remotesensing.org/show_bug.cgi?id=100
8476
8477	* /libtiff/tif_lzw.c:
8478	Added check for valid code lengths in LZWDecode() and
8479	LZWDecodeCompat(). Fixes
8480	http://bugzilla.remotesensing.org/show_bug.cgi?id=115
8481
84822002-08-16  Andrey Kiselev  <dron@ak4719.spb.edu>
8483
8484	* /libtiff/{Makefile.vc, libtiff.def}:
8485	Missed declarations added.
8486
84872002-08-15  Frank Warmerdam  <warmerdam@pobox.com>
8488
8489	* tif_getimage.c: Ensure that TIFFRGBAImageBegin() returns the
8490	return code from the underlying pick function.
8491
8492	http://bugzilla.remotesensing.org/show_bug.cgi?id=177
8493
8494	* tif_dir.h: changed FIELD_CODEC to 66 from 64 to avoid overlap
8495	with FIELD_CUSTOM as mentioned in bug 169.
8496
8497	* tif_close.c: added logic to free dynamically created anonymous
8498	field definitions to correct a small memory leak.
8499
8500	http://bugzilla.remotesensing.org/show_bug.cgi?id=169
8501
85022002-08-10  Andrey Kiselev  <dron@ak4719.spb.edu>
8503
8504	* /tools/{raw2tiff.c, Makefile.in, Makefile.lcc, Makefile.vc}:
8505	New tool: raw2tiff --- raw images to TIFF converter. No manual page yet.
8506
85072002-07-31  Frank Warmerdam  <warmerdam@pobox.com>
8508
8509	* libtiff/tif_jpeg.c: Fixed problem with setting of nrows in
8510	JPEGDecode() as per bugzilla bug (issue 1):
8511
8512	http://bugzilla.remotesensing.org/show_bug.cgi?id=129
8513
8514	* libtiff/{tif_jpeg.c,tif_strip.c,tif_print.c}: Hacked tif_jpeg.c to
8515	fetch TIFFTAG_YCBCRSUBSAMPLING from the jpeg data stream if it isn't
8516	present in the tiff tags.
8517
8518	http://bugzilla.remotesensing.org/show_bug.cgi?id=168
8519
8520	* libtiff/tif_read.c, libtiff/tif_write.c: TIFFReadScanline() and
8521	TIFFWriteScanline() now set tif_row explicitly in case the codec has
8522	fooled with the value.
8523
8524	http://bugzilla.remotesensing.org/show_bug.cgi?id=129
8525
85262002-06-22  Andrey Kiselev  <dron@ak4719.spb.edu>
8527
8528	* /tools/tiff2ps.c: Added workaround for some software that may crash
8529	when last strip of image contains fewer number of scanlines than
8530	specified by the `/Height' variable. See
8531	http://bugzilla.remotesensing.org/show_bug.cgi?id=164
8532	for explanation.
8533
85342002-06-21  Andrey Kiselev  <dron@ak4719.spb.edu>
8535
8536	* tools/tiff2ps, man/tiff2ps.1: New functionality for tiff2ps utility:
8537	splitting long images in several pages. See
8538	http://bugzilla.remotesensing.org/show_bug.cgi?id=142 for explanation.
8539	Patch granted by John Williams <williams@morinda.com>.
8540
85412002-06-11  Frank Warmerdam  <warmerdam@pobox.com>
8542
8543	* libtiff/contrib/win95: renamed to contrib/win_dib.  Added new
8544	Tiffile.cpp example of converting TIFF files into a DIB on Win32.
8545	This one is described in:
8546
8547	http://bugzilla.remotesensing.org/show_bug.cgi?id=143
8548
8549	* libtiff/tif_ojpeg.c: Major upgrade from Scott.  See details at:
8550
8551	http://bugzilla.remotesensing.org/show_bug.cgi?id=156
8552
85532002-05-10  Andrey Kiselev  <dron@ak4719.spb.edu>
8554
8555	* tools/tiff2ps: New commandline switches to override resolution
8556	units obtained from the input file. Closes
8557	http://bugzilla.remotesensing.org/show_bug.cgi?id=131
8558
85592002-04-26  Andrey Kiselev  <dron@ak4719.spb.edu>
8560
8561	* libtiff/libtiff.def: Added missed declaration.
8562
85632002-04-22  Andrey Kiselev  <dron@ak4719.spb.edu>
8564
8565	* tools/fax2tiff.c: Updated to reflect latest changes in libtiff.
8566	Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=125
8567
85682002-04-20  Andrey Kiselev  <dron@ak4719.spb.edu>
8569
8570	* libtiff/tif_open.c: Pointers to custom procedures
8571	in TIFFClientOpen() are checked to be not NULL-pointers.
8572
85732002-04-18  Andrey Kiselev  <dron@ak4719.spb.edu>
8574
8575	* libtiff/libtiff.def: Added missed declarations.
8576
8577	* libtiff/tif_pixarlog.c: Updated for using tif_tagmethods structure.
8578
85792002-04-16  Andrey Kiselev  <dron@ak4719.spb.edu>
8580
8581	* libtiff/tif_lzw.c: Additional checks for data integrity introduced.
8582	Should finally close
8583	http://bugzilla.remotesensing.org/show_bug.cgi?id=100
8584
85852002-04-10  Andrey Kiselev  <dron@ak4719.spb.edu>
8586
8587	* tools/tiff2ps: Division by zero fixed.
8588	Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=88
8589
85902002-04-09  Andrey Kiselev  <dron@ak4719.spb.edu>
8591
8592	* libtiff/: tif_dirwrite.c, tif_write.c, tiffio.h:
8593	TIFFCheckpointDirectory() routine added.
8594	Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=124
8595
8596	* man/: TIFFWriteDirectory.3t,  Makefile.in: Added description
8597	for the new function.
8598
85992002-04-08  Andrey Kiselev  <dron@ak4719.spb.edu>
8600
8601	* libtiff/: tif_codec.c, tif_compress.c, tiffiop.h: Introduced
8602	additional members tif->tif_decodestatus and tif->tif_encodestatus
8603	for correct handling of unconfigured codecs (we should not try to read
8604	data or to define data size without correct codecs).
8605
8606	* libtiff/tif_getimage.c: The way of codecs checking in TIFFRGBAImageOK
8607	changed. Now it has used tif->tif_decodestatus and
8608	tif->tif_encodestatus.
8609	Should fix http://bugzilla.remotesensing.org/show_bug.cgi?id=119 (in
8610	case of __cvs_8.tif test image).
8611
8612	* libtiff/: tif_dirinfo.c, tif_dirread.c: Somebody makes a bug in
8613	tif_dirread.c when TIFFCreateAnonFieldInfo was introduced.
8614	Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=119 in case
8615	of _cvs_00000-00.tif, _cvs_00000-01.tif and _cvs_00000-02.tif.
8616
86172002-04-04  Andrey Kiselev  <dron@ak4719.spb.edu>
8618
8619	* libtiff/: tif_lzw.c: Assertions in LZWDecode and LZWDecodeCompat
8620	replaced by warnings. Now libtiff should read corrupted LZW-compressed
8621	files by skipping bad strips.
8622	Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=100
8623
86242002-04-03  Frank Warmerdam  <warmerdam@pobox.com>
8625
8626	* libtiff/tif_dirwrite.c: Removed some dead code.
8627
8628	* libtiff/*: Cleanup some warnings.
8629
8630	* libtiff/tif_dir.c: Fixed bug with count returned by TIFFGetField()
8631	for variable length FIELD_CUSTOM values.  Was int * but should be
8632	u_short *.
8633
86342002-04-01  Andrey Kiselev  <dron@ak4719.spb.edu>
8635
8636	* tools/: tifcp.c: Added support for 'Orientation' tag in tiffcp
8637	utility (at cpStripToTile routine).
8638
86392002-03-27  Frank Warmerdam  <warmerdam@pobox.com>
8640
8641	* tif_dirread.c: avoid div-by-zero if rowbytes is zero in chop func.
8642
8643	http://bugzilla.remotesensing.org/show_bug.cgi?id=111
8644
8645	* tif_print.c: Fixed so that ASCII FIELD_CUSTOM values with
8646	passcount set FALSE can be printed (such as TIFFTAG_SOFTWARE).
8647
8648	* libtiff/tif_dir.c,tif_dirinfo.c,tif_dir.h,tif_ojpeg.c: modified so
8649	that TIFFTAG_SOFTWARE uses FIELD_CUSTOM as an example.
8650
86512002-03-26  Dwight Kelly  <dbmalloc@remotesensing.org>
8652
8653	* libtiff/: tiff.h, tif_dir.c, tif_dir.h, tif_dirinfo.c, tif_dirread.c,
8654	tif_dirwrite.c: Added get/put code for new tag XMLPACKET as defined
8655	in Adobe XMP Technote. Added missing INKSET tag value from TIFF 6.0 spec
8656	INKSET_MULTIINK (=2). Added missing tags from Adobe TIFF technotes:
8657	CLIPPATH, XCLIPPATHUNITS, YCLIPPATHUNITS, OPIIMAGEID, OPIPROXY and
8658	INDEXED. Added PHOTOMETRIC tag value from TIFF technote 4 ICCLAB (=9).
8659
86602002-03-26  Andrey Kiselev  <dron@ak4719.spb.edu>
8661
8662	* libtiff/: tif_getimage.c: TIFFReadRGBAStrip and TIFFReadRGBATile
8663	now also uses TIFFRGBAImageOK before reading. This is additional fix
8664	for http://bugzilla.remotesensing.org/show_bug.cgi?id=110
8665
86662002-03-25  Andrey Kiselev  <dron@ak4719.spb.edu>
8667
8668	* libtiff/: tif_getimage.c: Additional check for supported
8669	codecs added in TIFFRGBAImageOK and TIFFReadRGBAImage now uses
8670	TIFFRGBAImageOK before reading.
8671	Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=110
8672
86732002-03-15  Andrey Kiselev  <dron@ak4719.spb.edu>
8674
8675	* libtiff/: tif_dir.c, tif_dir.h, tif_dirinfo.c, tif_dirread.c,
8676	tif_dirwrite.c: Added routine TIFFDataWidth for detrmining
8677	TIFFDataType sizes instead of working with tiffDataWidth array
8678	directly. Should prevent out-of-borders bugs in case of unknown or
8679	broken data types.  EstimateStripByteCounts routine modified, so it
8680	won't work when tags with uknown sizes founded.
8681	Closes http://bugzilla.remotesensing.org/show_bug.cgi?id=109
8682
86832002-03-13  Andrey Kiselev  <dron@ak4719.spb.edu>
8684
8685	* libtiff/tif_getimage.c: Added support for correct handling
8686	`Orientation' tag in gtTileContig. Should be added in other gt*
8687	functions as well, but I have not images for testing yet. Partially
8688	resolves http://bugzilla.remotesensing.org/show_bug.cgi?id=23
8689
86902002-03-10  Andrey Kiselev  <dron@ak4719.spb.edu>
8691
8692	* libtiff/: tif_dirinfo.c, tif_dirwrite.c: Added possibility to
8693	read broken TIFFs with LONG type used for TIFFTAG_COMPRESSION,
8694	TIFFTAG_BITSPERSAMPLE, TIFFTAG_PHOTOMETRIC.  Closes
8695	http://bugzilla.remotesensing.org/show_bug.cgi?id=99
8696
86972002-03-08  Andrey Kiselev  <dron@ak4719.spb.edu>
8698
8699	* libtiff/Makefile.in, tools/Makefile.in: Shared library will not
8700	be stripped when installing, utility binaries will do.	Closes
8701	http://bugzilla.remotesensing.org/show_bug.cgi?id=93
8702
87032002-02-28  Frank Warmerdam  <warmerdam@pobox.com>
8704
8705	* man/TIFFGetField: fixed type of TIFFTAG_COPYRIGHT.
8706
8707	* man/libtiff.3t: added copyright tag info.
8708
87092002-02-11  Frank Warmerdam  <warmerdam@pobox.com>
8710
8711	* libtiff/{tiff.h,tif_fax3.c}: Add support for __arch64__.
8712
8713	http://bugzilla.remotesensing.org/show_bug.cgi?id=94
8714
8715	* man/Makefile.in: Patch DESTDIR handling
8716
8717	http://bugzilla.remotesensing.org/show_bug.cgi?id=95
8718
8719	* configure: OpenBSD changes for Sparc64 and DSO version.
8720
8721	http://bugzilla.remotesensing.org/show_bug.cgi?id=96
8722
87232002-02-05  Frank Warmerdam  <warmerdam@pobox.com>
8724
8725	* config.site/configure: added support for OJPEG=yes option to enable
8726	OJPEG support from config.site.
8727
87282002-01-27  Frank Warmerdam  <warmerdam@pobox.com>
8729
8730	* html/document.html: fixed links for TIFf 6 docs.
8731
87322002-01-18  Frank Warmerdam  <warmerdam@pobox.com>
8733
8734	* config.guess, config.sub: Updated from ftp.gnu.org/pub/config.
8735
8736	* libtiff/tif_read.c: Fixed TIFFReadEncodedStrip() to fail if the
8737	decodestrip function returns anything not greater than zero as per
8738	http://bugzilla.remotesensing.org/show_bug.cgi?id=97
8739
8740	* configure: Modify CheckForBigEndian so it can work in a cross
8741	compiled situation.
8742
87432002-01-16  Frank Warmerdam  <warmerdam@pobox.com>
8744
8745	* tools/tiffdump.c: include TIFFTAG_JPEGTABLES in tag list.
8746
8747	* tools/tiffset.c: fix bug in error reporting.
8748
8749	* tools/tiffcp.c: fix several warnings that show up with -Wall.
8750
87512002-01-04  Frank Warmerdam  <warmerdam@pobox.com>
8752
8753	* libtiff/tif_jpeg.c: fixed computation of segment_width for
8754	tiles files to avoid error about it not matching the
8755	cinfo.d.image_width values ("JPEGPreDecode: Improper JPEG strip/tile
8756	size.") for ITIFF files.  Apparently the problem was incorporated since
8757	3.5.5, presumably during the OJPEG/JPEG work recently.
8758
87592001-12-15  Frank Warmerdam  <warmerdam@pobox.com>
8760
8761	* configure, libtiff/Makefile.in: Changes for building on MacOS 10.1.
8762
8763	http://bugzilla.remotesensing.org/show_bug.cgi?id=94
8764
8765	* libtiff/tif_getimage.c: If DEFAULT_EXTRASAMPLE_AS_ALPHA is 1
8766	(defined in tiffconf.h - 1 by default) then the RGBA interface
8767	will assume that a fourth extra sample is ASSOCALPHA if the
8768	EXTRASAMPLE value isn't set for it.  This changes the behaviour of
8769	the library, but makes it work better with RGBA files produced by
8770	lots of applications that don't mark the alpha values properly.
8771
8772	http://bugzilla.remotesensing.org/show_bug.cgi?id=93
8773	http://bugzilla.remotesensing.org/show_bug.cgi?id=65
8774
87752001-12-12  Frank Warmerdam  <warmerdam@pobox.com>
8776
8777	* libtiff/tif_jpeg.c: allow jpeg data stream sampling values to
8778	override those from tiff directory.  This makes this work with
8779	ImageGear generated files.
8780
87812001-12-07  Frank Warmerdam  <warmerdam@pobox.com>
8782
8783	* html/Makefile.in: added missing images per bug 92.
8784
8785	* port/Makefile.in: fixed clean target per bug 92.
8786
87872001-11-28  Frank Warmerdam  <warmerdam@pobox.com>
8788
8789	* Reissue 3.5.7 release.
8790
8791	* libtiff/mkversion.c: Fix output of TIFF_VERSION to be
8792	YYYYMMDD so that it is increasing over time.
8793
8794	* Makefile.in: Ensure that tiffvers.h is regenerated in the
8795	make release target.
8796
8797	* Makefile.in: added libtiff/tiffvers.h to the release file list.
8798
87992001-11-23  Frank Warmerdam  <warmerdam@pobox.com>
8800
8801	* added html/v3.5.7.html, updated html/index.html.
8802
8803	* Makefile.in: added contrib/addtiffo/tif_ovrcache.{c,h}.
8804
88052001-11-15  Frank Warmerdam  <warmerdam@pobox.com>
8806
8807	* configure: fixed test for -lm.
8808
88092001-11-02  Frank Warmerdam  <warmerdam@pobox.com>
8810
8811	* Added PHOTOMETRIC_ITULAB as per bug 90.
8812
8813	http://bugzilla.remotesensing.org/show_bug.cgi?id=90
8814
88152001-10-10  Frank Warmerdam  <warmerdam@pobox.com>
8816
8817	* libtiff/tiff.h: I have created COMPRESSION_CCITT_T4,
8818	COMPRESSION_CCITT_T6, TIFFTAG_T4OPTIONS and TIFFTAG_T6OPTIONS aliases
8819	in keeping with TIFF 6.0 standard in tiff.h
8820
8821	http://bugzilla.remotesensing.org/show_bug.cgi?id=83
8822
88232001-09-26  Frank Warmerdam  <warmerdam@pobox.com>
8824
8825	* libtiff/tif_dirwrite.c: added TIFFRewriteDirectory() function.
8826	Updated TIFFWriteDirectory man page to include TIFFRewriteDirectory.
8827
88282001-09-24  Frank Warmerdam  <warmerdam@pobox.com>
8829
8830	* libtiff/tif_lzw.c: Avoid MS VC++ 5.0 optimization bug.
8831
8832	http://bugzilla.remotesensing.org/show_bug.cgi?id=78
8833
8834	* libtiff/tif_lzw.c: added dummy LZWSetupEncode() to report an
8835	error about LZW not being available.
8836
8837	* libtiff/tif_dir.c: propagate failure to initialize compression
8838	back from TIFFSetField() as an error status, so applications can
8839	detect failure.
8840
8841	* libtiff/tif_dir.c: removed the auto replacement of
8842	COMPRESSION_LZW with COMPRESSION_NONE in _TIFFVSetField().
8843
8844	* Removed Makefile, tools/Makefile, port/install.sh, man/Makefile
8845	from CVS as they are all supposed to be auto-generated by configure.
8846
88472001-09-22  Frank Warmerdam  <warmerdam@pobox.com>
8848
8849	* libtiff/tif_ojpeg.c: new update from Scott.
8850
88512001-09-09  Frank Warmerdam  <warmerdam@pobox.com>
8852
8853	* libtif/tif_fax3.c: Removed #ifdef PURIFY logic, and modified to
8854	always use the "safe" version, even if there is a very slight
8855	cost in performance.
8856
8857	http://bugzilla.remotesensing.org/show_bug.cgi?id=54
8858
8859	* libtiff/Makefile.in: Fixed @DSOSUB_VERSION to be @DSOSUF_VERSION@
8860	in two places.
8861
8862	* libtiff/tif_getimage.c: Fixed problem with reading strips or
8863	tiles that don't start on a tile boundary.  Fix contributed by
8864	Josep Vallverdu (from HP), and further described in bug 47.
8865
8866	http://bugzilla.remotesensing.org/show_bug.cgi?id=47
8867
8868	* tools/tiff2ps.c: added OJPEG YCbCr to RGB support.
8869
8870	* libtiff/tif_ojpeg.c: Applied substantial patch from Scott.
8871
88722001-09-06  Frank Warmerdam  <warmerdam@pobox.com>
8873
8874	* libtiff/tif_packbits.c: fixed memory overrun error.
8875
8876	http://bugzilla.remotesensing.org/show_bug.cgi?id=77
8877
88782001-08-31  Frank Warmerdam  <warmerdam@pobox.com>
8879
8880	* libtiff/tif_getimage.c: relax handling of contig case where
8881	there are extra samples that are supposed to be ignored.  This
8882	should now work for 8bit greyscale or palletted images.
8883
8884	http://bugzilla.remotesensing.org/show_bug.cgi?id=75
8885
88862001-08-28  Frank Warmerdam  <warmerdam@pobox.com>
8887
8888	* libtiff/tif_getimage.c: Don't complain for CMYK (separated)
8889	images with more than four samples per pixel.  See:
8890
8891	http://bugzilla.remotesensing.org/show_bug.cgi?id=73
8892
88932001-08-10  Frank Warmerdam  <warmerdam@pobox.com>
8894
8895	* libtiff/tif_getimage.c: Use memmove() instead of TIFFmemcpy()
8896	in TIFFReadRGBATile() to avoid issues in cases of overlapping
8897	buffers.  See Bug 69 in Bugzilla.
8898
8899	http://bugzilla.remotesensing.org/show_bug.cgi?id=69
8900
8901	* tools/tiff2rgba.c: fixed getopt() call so that -b works again.
8902
89032001-08-09  Frank Warmerdam  <warmerdam@pobox.com>
8904
8905	* libtiff/tiff.h, libtiff/tif_fax3.c: added check for __LP64__
8906	when checking for 64 bit architectures as per bugzilla bug 67.
8907
89082001-07-27  Frank Warmerdam  <warmerdam@pobox.com>
8909
8910	* man/Makefile.in: add TIFFClientOpen link as per debian submitted
8911	bug 66.
8912
89132001-07-20  Frank Warmerdam  <warmerdam@pobox.com>
8914
8915	* libtiff/tif_jpeg.c: Define HAVE_BOOLEAN on windows if RPCNDR.H
8916	has been included.
8917
89182001-07-19  Frank Warmerdam  <warmerdam@pobox.com>
8919
8920	* libtiff/tif_open.c: Seek back to zero after failed read,
8921	before writing header.
8922
89232001-07-18  Frank Warmerdam  <warmerdam@pobox.com>
8924
8925	* libtiff/tif_ojpeg.c: updates from Scott.  Handles colors
8926	much better.  Now depends on having patched libjpeg as per
8927	patch in contrib/ojpeg/*.
8928
89292001-07-17  Frank Warmerdam  <warmerdam@pobox.com>
8930
8931	* */Makefile.in: added DESTDIR support.
8932
8933	http://bugzilla.remotesensing.org/show_bug.cgi?id=60
8934
89352001-07-16  Frank Warmerdam  <warmerdam@pobox.com>
8936
8937	* configure, libtiff/Makefile.in: applied OpenBSD patches
8938	as per:
8939
8940	http://bugzilla.remotesensing.org/show_bug.cgi?id=61
8941
89422001-06-28  Frank Warmerdam  <warmerdam@pobox.com>
8943
8944	* libtiff/tif_getimage.c: Fixed so that failure is properly
8945	reported by gtTileContig, gtStripContig, gtTileSeparate and
8946	gtStripSeparate.
8947
8948	See http://bugzilla.remotesensing.org/show_bug.cgi?id=51
8949
8950	* tiffcmp.c: Fixed multi samples per pixel support for ContigCompare.
8951	Updated bug section of tiffcmp.1 to note tiled file issues.
8952
8953	See http://bugzilla.remotesensing.org/show_bug.cgi?id=53
8954
89552001-06-22  Frank Warmerdam  <warmerdam@pobox.com>
8956
8957	* configure: Changes for DSO generation on AIX provided by
8958	John Marquart <jomarqua@indiana.edu>.
8959
8960	* configure, libtiff/Makeifle.in: Modified to build DSOs properly
8961	on Darwin thanks to Robert Krajewski (rpk@alum.mit.edu) and
8962	Keisuke Fujii (fujiik@jlcuxf.kek.jp).
8963
89642001-06-13  Frank Warmerdam  <warmerdam@pobox.com>
8965
8966	* tools/tiff2rgba.c: added -n flag to avoid emitting alpha component.
8967
8968	* man/tiff2rgba.1: new
8969
89702001-05-22  Frank Warmerdam  <warmerdam@pobox.com>
8971
8972	* Added tiffset and tif_ojpeg to the dist lists in Makefile.in.
8973
89742001-05-13  Frank Warmerdam  <warmerdam@pobox.com>
8975
8976	* libtiff/tools/thumbnail.c: changed default output compression
8977	to packbits from LZW since LZW isn't generally available.
8978
89792001-05-12  Frank Warmerdam  <warmerdam@pobox.com>
8980
8981	* libtiff/tif_ojpeg.c: New.
8982	libtiff/tif_jpeg.c, tiffconf.h, tif_getimage.c: changes related
8983	to OJPEG support.
8984
8985	Scott Marovich <marovich@hpl.hp.com> supplied OJPEG support.
8986
89872001-05-11  Frank Warmerdam  <warmerdam@pobox.com>
8988
8989	* tiff.h: removed, it duplicates libtiff/tiff.h.
8990
89912001-05-08  Frank Warmerdam  <warmerdam@pobox.com>
8992
8993	* libtiff/tif_dirinfo.c: moved pixar and copyright flags to
8994	ensure everything is in order.
8995
8996	* libtiff/libtiff.def: added TIFFCreateDirectory and
8997	TIFFDefaultStripSize as per:
8998
8999	  http://bugzilla.remotesensing.org/show_bug.cgi?id=46
9000
90012001-05-02  Frank Warmerdam  <warmerdam@pobox.com>
9002
9003	* libtiff/tif_dirinfo.c: Modified the TIFF_BYTE definition for
9004	TIFFTAG_PHOTOSHOP to use a writecount of TIFF_VARIABLE2 (-3) to
9005	force use of uint32 counts instead of short counts.
9006
9007	* libtiff/tif_dirwrite.c: Added support for TIFF_VARIABLE2 in the
9008	case of writing TIFF_BYTE/TIFF_SBYTE fields.
9009
9010	http://bugzilla.remotesensing.org/show_bug.cgi?id=43
9011
90122001-05-01  Frank Warmerdam  <warmerdam@pobox.com>
9013
9014	* libtiff/tif_dirinfo.c: removed duplicate TIFFTAG_PHOTOSHOP as per
9015	bug report http://bugzilla.remotesensing.org/show_bug.cgi?id=44
9016
90172001-04-05  Frank Warmerdam  <warmerdam@pobox.com>
9018
9019	* tiffio.h: removed C++ style comment.
9020
9021	* configure: fixed up SCRIPT_SH/SHELL handling.
9022
9023	* Makefile.in: Fixed SCRIPT_SH/SHELL handling.
9024
9025	* config.guess: documented more variables as per bug 40.
9026
90272001-04-03  Frank Warmerdam  <warmerdam@pobox.com>
9028
9029	* configure, *Makefile.in: Various changes to improve configuration
9030	for HP/UX specifically, and also in general.  They include:
9031	 - Try to handle /usr/bin/sh instead of /bin/sh where necessary.
9032	 - Upgrade to HP/UX 10.x+ compiler, linker and dso options.
9033	 - Fixed mmap() test to avoid MMAP_FIXED ... it isn't available on HP
9034	 - Use -${MAKEFLAGS} in sub makes from makefiles.
9035
9036	http://bugzilla.remotesensing.org/show_bug.cgi?id=40
9037
90382001-04-02  Frank Warmerdam  <warmerdam@pobox.com>
9039
9040	* libtiff/tiff.h: Applied hac to try and resolve the problem
9041	with the inttypes.h include file on AIX.
9042
9043	See http://bugzilla.remotesensing.org/show_bug.cgi?id=39
9044
9045	* VERSION: update to 3.5.7 beta in preparation for release.
9046
9047	* configure/config.site: modified to check if -lm is needed for
9048	MACHDEPLIBS if not supplied by config.site.  Needed for Darwin.
9049
9050	* config.guess: updated wholesale to an FSF version apparently
9051	from 1998 (as opposed to 1994).  This is mainly inspired by
9052	providing for MacOS X support.
9053
90542001-03-29  Frank Warmerdam  <warmerdam@pobox.com>
9055
9056	* configure, Makefile.in, etc: added support for OPTIMIZER being
9057	set from config.site.
9058
90592001-03-28  Frank Warmerdam  <warmerdam@pobox.com>
9060
9061	* fax2ps.c: Helge (libtiff at oldach.net) submitted fix:
9062
9063	Here's a fix for fax2ps that corrects behaviour for non-Letter paper
9064	sizes. It fixes two problems:
9065
9066	Without	scaling (-S) the fax is now centered on the page size specified
9067	with -H	and/or -W. Before, fax2ps was using an obscure and practically
9068	useless algorithm to allocate the image relative to Letter sized paper
9069	which sometime sled to useless whitespace on the paper, while at the
9070	same time cutting of the faxes printable area at the opposite border.
9071
9072	Second, scaling now preserves aspect ratio, which makes unusual faxes
9073	(in particular short ones) print properly.
9074
9075	See http://bugzilla.remotesensing.org/show_bug.cgi?id=35
9076
9077	* tiff2ps.c/tiff2ps.1: Substantial changes to tiff2ps by
9078	Bruce A. Mallett.  See check message for detailed information
9079	on all the changes, including a faster encoder, fixes for level
9080	2 PostScript, and support for the imagemask operator.
9081
90822001-03-27  Frank Warmerdam  <warmerdam@pobox.com>
9083
9084	* libtiff/tiffio.h: Changed "#if LOGLUV_PUBLIC" to
9085	"#ifdef LOGLUV_PUBLIC" so it will work with VisualAge on AIX.
9086
9087	http://bugzilla.remotesensing.org/show_bug.cgi?id=39
9088
90892001-03-16  Frank Warmerdam  <warmerdam@pobox.com>
9090
9091	* tif_dirinfo.c: moved definition of copyright tag in field list.
9092	Apparently they have to be in sorted order by tag id.
9093
90942001-03-13  Frank Warmerdam  <warmerdam@pobox.com>
9095
9096	* tif_getimage.c: Added support for 16bit minisblack/miniswhite
9097	images in RGBA interface.
9098
90992001-03-02  Frank Warmerdam  <warmerdam@pobox.com>
9100
9101	* Added TIFFTAG_COPYRIGHT support.
9102
91032001-02-19  Frank Warmerdam  <warmerdam@pobox.com>
9104
9105	* Brent Roman contributed updated tiffcp utility (and tiffcp.1)
9106	with support for extracting subimages with the ,n syntax, and also
9107	adding the -b bias removal flag.
9108
91092001-02-16  Frank Warmerdam  <warmerdam@pobox.com>
9110
9111	* libtiff/libtiff.def: Brent Roman submitted new version adding
9112	serveral missing entry points.
9113
9114	* libtiff/tif_dirinfo.c: don't declare tiffFieldInfo static on VMS.
9115	Some sort of weird VMS thing.
9116
9117	http://bugzilla.remotesensing.org/show_bug.cgi?id=31
9118
9119	* tif_luv.c/tiff.h/tiffio.h:
9120	New version of TIFF LogLuv (SGILOG) modules contributed by Greg Ward
9121	(greg@shutterfly.com).  He writes:
9122
9123	1) I improved the gamut-mapping function in tif_luv.c for imaginary
9124	colors, because some images were being super-saturated on the input
9125	side and this resulted in some strange color shifts in the output.
9126
9127	2) I added a psuedotag in tiff.h to control random dithering during
9128	LogLuv encoding.  This is turned off by default for 32-bit LogLuv and
9129	on for 24-bit LogLuv output.  Dithering improves the average color
9130	accuracy over the image.
9131
9132	3) I added a #define for LOG_LUV_PUBLIC, which is enabled by default in
9133	tiffio.h, to expose internal routines for converting between LogLuv and
9134	XYZ coordinates.  This is helpful for writing more efficient,
9135	specialized conversion routines, especially for reading LogLuv files.
9136
9137	Changes applied with minor edits.
9138
91392001-01-23  Frank Warmerdam  <warmerdam@pobox.com>
9140
9141	* tif_fax3.c: keep rw_mode flag internal to fax3 state to remember
9142	whether we are encoding or decoding.  This is to ensure graceful
9143	recovery if TIFFClientOpen() discovers an attempt to open a compressed
9144	file for "r+" access, and subsequently close it, as it resets the
9145	tif_mode flag to O_RDONLY in this case to avoid writes, confusing the
9146	compressor's concept of whether it is in encode or decode mode.
9147
91482001-01-08  Mike Welles <mike@bangstate.com>
9149
9150	* Makefile.in:  Now cleaning up after itself after creating the .tar.gz and .zip
9151
91522001-01-07  Frank Warmerdam  <warmerdam@pobox.com>
9153
9154	* html/libtiff.html: Fixed arguments in example for TIFFRGBAImageGet()
9155	as per bug report by Patrick Connor.
9156
91572000-12-28  Frank Warmerdam  <warmerdam@pobox.com>
9158
9159	* Added RELEASE-DATE file to release file list.
9160
9161	* Fixed libtiff/makefile.vc to make tiffvers.h not version.h.
9162
91632000-12-22  Mike Welles <mike@bangstate.com>
9164        * added link to CVS mirror from index.html
9165
9166	* updated html/internals.html to note that LZW compression is
9167	  not supported by default.
9168
91692000-12-22  Frank Warmerdam  <warmerdam@pobox.com>
9170
9171	* updated html/libtiff.html to not point at Niles' old JPL web site
9172	for the man pages, point at www.libtiff.org.
9173
91742000-12-21  Frank Warmerdam  <warmerdam@pobox.com>
9175
9176	* libtiff/tif_apple.c: Applied "Carbon" support patches supplied by
9177	Leonard Rosenthol <leonardr@lazerware.com>.  May interfere
9178	with correct building on older systems.  If so, please let me know.
9179
91802000-12-19 Mike Welles <mike@bangsate.com>
9181
9182	* Took out LZW Encoding from tif_lzw.c
9183
9184	* Created HOWTO-RELEASE
9185
9186	* Created html/v3.5.6.html
9187
9188	* updated index.html
9189
91902000-12-01  Frank Warmerdam  <warmerdam@pobox.com>
9191
9192	* Added patches for EOFB support in tif_fax3.c and tif_fax3.h.
9193	Patches supplied by Frank Cringle <fdc@cliwe.ping.de>
9194	Example file at: ftp://ftp.remotesensing.org/pub/libtiff/eofb_396.tif
9195
91962000-11-24  Frank Warmerdam  <warmerdam@pobox.com>
9197
9198	* libtiff/Makefile.in: Added an installPrivateHdrs and install-private
9199	target so that the private headers required by libgeotiff can be
9200	installed with the others.  They are not installed by default.
9201
9202	* libtiff/Makefile.in: Added @MACHLIBDEPS@ to LINUXdso and GNULDdso
9203	targets so libtiff.so will be built with an explicit dependency
9204	on libm.so.
9205
9206	* libtiff/Makefile.in: Use softlinks to link libtiff.so.3 to
9207	libtiff.so.3.5.5.
9208
9209	* libtiff/Makefile.in & configure: Remove all references to the ALPHA
9210	file, or ALPHA version logic.  Added stuff about DIST_POINT in
9211	place of DIST_TYPE and the alpha release number stuff.
9212
92132000-11-22  Frank Warmerdam  <warmerdam@pobox.com>
9214
9215	* I have applied a patch from Steffen Moeller <moeller@ebi.ac.uk> to
9216	the configure script so that it now accepts the --prefix, and
9217	--exec-prefix directives.
9218
92192000-11-13  Frank Warmerdam  <warmerda@cs46980-c>
9220
9221	* I have made a variety of modifications in an effort to ensure the
9222	TIFFLIB_VERSION macro is automatically generated from the RELEASE-DATE
9223	file which seems to be updated regularly.
9224
9225	 o mkversion.c now reads RELEASE-DATE and emits TIFFLIB_VERSION in
9226	   version include file.
9227	 o renamed version.h to tiffvers.h because we now have to install it
9228	   with the public libtiff include files.
9229	 o include tiffvers.h in tiffio.h.
9230	 o updated tif_version.c to use tiffvers.h.
9231	 o Updated Makefile.in accordingly.
9232
9233	* As per http://bugzilla.remotesensing.org/show_bug.cgi?id=25
9234	I have updated the win32 detection rules in tiffcomp.h.
9235
92362000-10-20  Frank Warmerdam  <warmerda@cs46980-c>
9237
9238	* tif_getimage.c: Fixed RGBA translation for YCbCr images for which
9239	the strip/tile width and height aren't multiples of the sampling size.
9240	See http://bugzilla.remotesensing.org/show_bug.cgi?id=20
9241	Some patches from Rick LaMont of Dot C Software.
9242
9243	* Modified tif_packbits.c encoder to avoid compressing more
9244	data than provided if rowsize doesn't factor into provided data
9245	(such as occurs for YCbCr).
9246
92472000-10-19  Frank Warmerdam  <warmerda@cs46980-c>
9248
9249	* tools/rgb2ycbcr.c: fixed output strip size to account for vertical
9250	roundup if rows_per_strip not a multiple of vertical sample size.
9251
92522000-10-16  Frank Warmerdam  <warmerda@cs46980-c>
9253
9254	* tif_dir.c: Clear TIFF_ISTILED flag in TIFFDefaultDirectory
9255	as per http://bugzilla.remotesensing.org/show_bug.cgi?id=18
9256	from vandrove@vc.cvut.cz.
9257
9258	* Modified tif_packbits.c decoding to avoid overrunning the
9259	output buffer, and to issue a warning if data needs to be
9260	discarded.  See http://bugzilla.remotesensing.org/show_bug.cgi?id=18
9261
92622000-10-12  Frank Warmerdam  <warmerda@cs46980-c>
9263
9264	* Modified tiff2bw to ensure portions add to 100%, and that
9265	white is properly recovered.
9266
9267	See bug http://bugzilla.remotesensing.org/show_bug.cgi?id=15
9268	Patch c/o Stanislav Brabec <utx@penguin.cz>
9269
92702000-09-30  Frank Warmerdam  <warmerda@cs46980-c>
9271
9272	* Modified TIFFClientOpen() to emit an error on an attempt to
9273	open a comperessed file for update (O_RDWR/r+) access.  This is
9274	because the compressor/decompressor code gets very confused when
9275	the mode is O_RDWR, assuming this means writing only.  See
9276	bug http://bugzilla.remotesensing.org/show_bug.cgi?id=13
9277
92782000-09-27  Frank Warmerdam  <warmerda@cs46980-c>
9279
9280	* Added GNULDdso target an`d switched linux and freebsd to use it.
9281
92822000-09-26  Frank Warmerdam  <warmerda@cs46980-c>
9283
9284	* Applied patch for 0x0000 sequences in tif_fax3.h's definition
9285	of EXPAND1D() as per bug 11 (from Roman).
9286
92872000-09-25  Frank Warmerdam  <warmerda@cs46980-c>
9288	* Fixed tiffcomp.h to avoid win32 stuff if unix #defined, to improve
9289	cygwin compatibility.
9290
9291	* Applied patch from Roman Shpount to tif_fax3.c.  This seems to
9292	be a proper fix to the buffer sizing problem.  See
9293	http://bugzilla.remotesensing.org/show_bug.cgi?id=11
9294
9295	* Fixed tif_getimage.c to fix overrun bug with YCbCr images without
9296	downsampling.  http://bugzilla.remotesensing.org/show_bug.cgi?id=10
9297	Thanks to Nick Lamb <njl98r@ecs.soton.ac.uk> for reporting the
9298	bug and proving the patch.
9299
93002000-09-18  Frank Warmerdam  <warmerda@cs46980-c>
9301
9302	* Fixed tif_jpeg.c so avoid destroying the decompressor before
9303	we are done access data thanks to bug report from:
9304	Michael Eckstein <eckstein@gepro.cz>.
9305
9306	* Reverted tif_flush change.
9307
93082000-09-14  Frank Warmerdam  <warmerda@cs46980-c>
9309
9310	* tif_flush.c: Changed so that TIFFFlushData() doesn't return an
9311	error when TIFF_BEENWRITING is not set.  This ensures that the
9312	directory contents can still be flushed by TIFFFlush().
9313
93142000-08-14  Frank Warmerdam  <warmerda@rommel.atlsci.com>
9315
9316	* tif_open.c: Don't set MMAP for O_RDWR files.
9317
9318	* tif_open.c: Set STRIPCHOP_DEFAULT for O_RDWR as well as O_RDONLY
9319	so that files opened for update can be strip chopped too.
9320
9321	* tif_read.c: fixed up bug with files missing rowsperstrip and
9322	the strips per separation fix done a few weeks ago.
9323
93242000-07-17  Frank Warmerdam  <warmerda@cs46980-c>
9325
9326	* Tentatively added support for SAMPLEFORMAT_COMPLEXIEEEFP, and
9327	SAMPLEFORMAT_COMPLEXINT.
9328
93292000-07-13  Mike Welles <mike@onshore.com>
9330
9331	* index.html, bugs.html: added bugzilla info.
9332
93332000-07-12  Frank Warmerdam  <warmerda@rommel.atlsci.com>
9334
9335	* tif_read.c: fix subtle bug with determining the number of
9336	rows for strips that are the last strip in a separation but
9337	not the last strip of all in TIFFReadEncodedStrip().
9338
9339	* Applied 16/32 bit fix to tif_fax3.c.  Fix supplied by
9340	Peter Skarpetis <peters@serendipity-software.com.au>
9341
93422000-06-15  Frank Warmerdam  <warmerda@rommel.atlsci.com>
9343
9344	* Modified tiffio.h logic with regard to including windows.h.  It
9345	won't include it when building with __CYGWIN__.
9346
93472000-05-11  Frank Warmerdam  <warmerda@cs46980-c>
9348
9349	* README: update to mention www.libtiff.org, don't list Sam's old
9350	email address.
9351
9352	* configure: Fixed DSO test for Linux as per patch from
9353	  Jan Van Buggenhout <chipzz@Ace.ULYSSIS.Student.KULeuven.Ac.Be>.
9354
93552000-04-21  Frank Warmerdam  <warmerda@rommel.atlsci.com>
9356
9357	* libtiff/tif_dirread.c: Don't use estimate strip byte count for
9358	one tile/strip images with an offset, and byte count of zero. These
9359	could be "unpopulated" images.
9360
93612000-04-18  Frank Warmerdam  <warmerda@rommel.atlsci.com>
9362
9363	* contrib/addtiffo: Added "averaging" resampling option.
9364
9365	* tools/tiffsplit.c: Copy TIFFTAG_SAMPLEFORMAT.
9366
9367Tue Apr 18 16:18:08 2000  Frank Warmerdam  <warmerda@esabot.atlsci.com>
9368
9369	* tools/Makefile.in: Modified to install properly on SGI.
9370
93712000-04-12  Mike Welles	     <mike@onshore.com>
9372	* configure:  Fixed stupid mistake in libc6 test on Linux
9373
93742000-04-04  Mike Welles	     <mike@onshore.com>
9375	* tif_win32.c:  Applied patch to fix overreads and ovverwrites
9376	  caught by BoundsChecker.  From Arvan Pritchard
9377	  <arvan.pritchard@infomatix.co.uk>  (untested).
9378
9379	* tif_getimage.c:  Applied patch to silence VC6 warnings.  From
9380	  Arvan Pritchard <arvan.pritchard@informatix.co.uk>
9381
9382	* tif_lzw.c:  Applied patch to silence VC6 warnings.  From
9383	  Arvan Pritchard <arvan.pritchard@informatix.co.uk>
9384
93852000-03-28  Frank Warmerdam  <warmerda@cs46980-c>
9386
9387	* Added contrib/stream (stream io) code submitted by Avi Bleiweiss.
9388
93892000-03-28  Frank Warmerdam  <warmerda@cs46980-c>    *** 3.5.5 release ***
9390
9391	* fax2ps: Fixed mixup of width and height in bounding box statement
9392	as per submission by Nalin Dahyabhai <nalin@redhat.com>.
9393
93942000-03-27  Mike Welles	     <mike@onshore.com>
9395
9396	* fax2ps:  Modified printruns to take uint32 instead of uint16.
9397	Patch courtesy of Bernt Herd <herd@herdsoft.com>
9398
93992000-03-20  Mike Welles	     <mike@onshore.com>
9400
9401	* configure: added test for libc6 for linux targets.  Bug reported by
9402        Stanislav Brabec <utx@k332.feld.cvut.cz>
9403
9404	* Added 3.5 docs to html/Makefile.in.
9405	Thanks to  Stanislav Brabec <utx@k332.feld.cvut.cz>
9406
9407	* configure: fixed bugs in sed scripts
9408	(applied sed script s:/@:s;@:;s:/s;;:;: to configure).
9409	fix submitted to Stanislav Brabec <utx@k332.feld.cvut.cz>
9410
9411	* tools/iptcutil was not in files list, and wasn't being
9412	added to tar archive.  Updated Makefile.in.
9413
94142000-03-17  Frank Warmerdam  <warmerda@cs46980-c>
9415
9416	* tif_fax3.c: Fixed serious bug introduced during the uint16->uint32
9417	conversion for the run arrays.
9418
94192000-03-03  Frank Warmerdam  <warmerda@cs46980-c.mtnk1.on.wave.home.com>
9420
9421	* Set td_sampleformat default to SAMPLEFORMAT_UINT instead of
9422	SAMPLEFORMAT_VOID in TIFFDefaultDirectory() in tif_dir.c.
9423
94242000-03-02  Frank Warmerdam  <warmerda@cs46980-c.mtnk1.on.wave.home.com>
9425
9426	* Added "GetDefaulted" support for TIFFTAG_SAMPLEFORMAT in tif_aux.c.
9427
9428	* Patched tif_fax3.c so that dsp->runs is allocated a bit bigger
9429	to avoid overruns encountered with frle_bug.tif.
9430
9431Tue Feb 15 22:01:05 2000  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9432
9433	* Fixed tools/tiffcmp so that stopondiff testing works.
9434	  Patch care of Joseph Orost <joe@sanskrit.lz.att.com>.
9435
94362000-01-28    <warmerda@CS46980-B>
9437
9438	* Modified tif_unix.c to support 2-4GB seeks if USE_64BIT_API is
9439	  set to 1, and added default (off) setting in tiffconf.h.  This
9440	  should eventually be set by the configure script somehow.
9441
9442	  The original work on all these 2-4GB changes was done by
9443	  Peter Smith (psmith@creo.com).
9444
9445	* Modified tif_win32.c to support 2-4GB seeks.
9446
9447	* tentatively changed toff_t to be unsigned instead of signed to
9448	  facilitate support for 2-4GB files.
9449
9450	* Updated a variety of files to use toff_t.  Fixed some mixups
9451	  between toff_t and tsize_t.
9452
9453Fri Jan 28 10:13:49 2000  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9454
9455	* Largely reimplemented contrib/addtiffo to avoid temp files,
9456	updating the TIFF file in place.  Fixed a few other bugs to.
9457
9458	* Set tif_rawdatasize to zero when freeing raw data buffer in
9459	TIFFWriteDirectory().
9460
9461	* Enabled "REWRITE_HACK" in tif_write.c by default.
9462
9463	* Fix bug in tif_write.c when switching between reading one directory
9464	and writing to another.
9465
9466	* Made TIFFWriteCheck() public, and added TIFFCreateDirectory()
9467
9468Wed Jan  5 12:37:48 2000  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9469
9470	* Added TIFFmemory(3t) functions to libtiff.def.
9471
9472Tue Jan  4 13:39:00 2000  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9473
9474	* Added libtiff/libtiff.def to TIFFILES distribution list.
9475
9476Mon Dec 27 12:13:39 EST 1999  Mike Welles <mike@onshore.com>
9477
9478	* Created lzw compression kit, as a new module (libtiff-lzw-compression-kit).
9479
9480	* Altered descriptions in tools to reflect "by default" lzw not supported
9481
9482	* Updated index.html to note lzw compression kit.
9483
9484Tue Dec 21 14:01:51 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9485
9486	* Added fax3sm_winnt.c to distribution list in Makefile.in.
9487
9488Tue Dec 21 11:04:45 EST 1999  Mike Welles <mike@onshore.com> *** 3.5.4 release ***
9489
9490	* Aadded Pixar tag support.  Contributed by Phil Beffery <phil@pixar.com>
9491
9492	* Made one more change to tif_dir.c for removal of LZW compression. Also added notice
9493	  when LZW compression invoked.
9494
9495	* Changed default compression in tools to TIFF_PACKBITS, and changed usage descriptions
9496	  in tools to reflect removal of LZW compression
9497
9498Mon Dec 20 18:39:02 EST 1999  Mike Welles  <mike@onshore.com>
9499
9500        * Fixed bug that caused LZW (non) compression to segfault. Added
9501	  warning about LZW compression removed being removed, and why.
9502
9503	* Added nostrip to install in tools/Makefile.in so that debugging
9504	  symbols are kept.
9505
9506Tue Dec  7 12:04:47 EST 1999  Mike Welles  <mike@onshore.com>
9507
9508	* Added patch from Ivo Penzar <ivo.penzar@infolink-software.com>,
9509	  supporting Adobe ZIP deflate.  Untested.
9510
9511Sat Dec  4 15:47:11 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9512
9513	* Made Packbits the default compression in tools/tiff2rgba.c instead
9514	of LZW.
9515
9516Tue Nov 30 14:41:43 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>    *** 3.5.3. release ***
9517
9518	* Added tif_luv to contrib/djgpp/Makefile.lib.
9519
9520Tue Nov 30 14:15:32 EST 1999   Mike Welles <mike@onshore.com>
9521
9522        * Added zip creation to relase makefile target
9523
9524	* Added html for TIFFWriteTile.3t man page.
9525
9526Tue Nov 30 09:20:16 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9527
9528	* Added some changes to tif_write.c to support rewriting existing
9529	fixed sized tiles and strips.  Code mods disabled by default, only
9530	enabled if REWRITE_HACK is defined for now.
9531
9532Mon Nov 29 11:43:42 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9533
9534	* Added TIFFWriteTile.3t man page.
9535
9536Sun Nov 28 20:36:18 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9537
9538	* Added notes on use of makefile.vc in build.html, and fixed
9539	email subscription address.
9540
9541199-11-28  Mike Welles <mike@onshore.com>
9542
9543	*  Fixed apocalypse-inducing y2k bug in contrib/ras/ras2tiff.c
9544
9545	*  Did some casts cleaning up to reduce compiler warnings in tif_fax3.c,
9546	   from Bruce Carmeron <cameron@petris.com> -- modifications of
9547	   changes made by Frank (sun cc still complained on cast).
9548
9549	*  Added tiffconf.h to install target per request from Bill
9550	   Radcliffe <billr@corbis.com>: "We need a way for ImageMagick to
9551 	   know features have been compiled into the TIFF library in order to
9552	   handle things properly".
9553
9554Sat Nov 27 16:49:21 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9555
9556	* fixed various VC++ warnings as suggested by Gilles Vollant
9557	<info@winimage.com>.
9558
9559Wed Nov 24 12:08:16 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9560
9561	* Modified TIFFquery.3t man pages info on TIFFIsByteSwapped() to
9562	not imply applications are responsible for image data swapping.
9563
95641999-11-22  Mike Welles <mike@onshore.com>
9565	*  HTML-ized the man pages, added to html/man
9566
9567	*  Removed LZW Compression to comply with Unisys patent extortion.
9568
95691999-09-29  Mike Welles		<mike@onshore.com>
9570	*  Corrected one remaining 16 -> 32 bit value in tif_fax3.c,
9571	   From Ivo Penzar <ivo.penzar@infolink-software.com.
9572
9573	*  Added patch from Ivo Penzar to have TiffAdvanceDirectory handle
9574	   memory mapped files. <ivo.penzar@infolink-software.com>
9575
95761999-09-26  Mike Welles 	<mike@onshore.com>  *** 3.5.2 release ***
9577	* Corrected alpha versioning.
9578
9579	* Removed distinction between  alpha and release targets in Makefile.in.
9580
9581	* added release.stamp target, which tags cvs tree, and updates
9582	  "RELEASE-DATE"
9583
9584	* added releasediff target, which diffs tree with source as of
9585	  date in "RELEASE-DATE"
9586
9587	* Ticked up version to 3.5.2 (alpha 01 -- but I think we'll moving
9588	  away from alpha/non-alpha distinctions).
9589
9590	* updated html to reflect release
9591
95921999-09-23    <warmerda@CS46980-B>
9593
9594	* Set O_BINARY for tif_unix.c open() ... used on cygwin for instance.
9595
9596	* Added CYGWIN case in configure.
9597
9598Fri Sep 17 00:13:51 CEST 1999  Mike Welles <mike@onshore.com>
9599
9600	* Applied Francois Dagand's patch to handle fax decompression bug.
9601	  (sizes >= 65536 were failing)
9602
9603Tue Sep 14 21:31:43 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9604
9605	* Applied "a" mode fix to tif_win32.c/TIFFOpen() as suggested
9606	  by Christopher Lawton <clawton@mathworks.com>
9607
9608Wed Sep  8 08:19:18 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9609
9610	* Added IRIX/gcc, and OSF/1 4.x support on behalf of
9611	  Albert Chin-A-Young <china@thewrittenword.com>
9612
9613	* Added TIFFReassignTagToIgnore() API on behalf of
9614	  Bruce Cameron <cameron@petris.com>.  Man page still pending.
9615
9616Wed Aug 25 11:39:07 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9617
9618	* Added test target in Makefile, test_pics.sh script and pics/*.rpt
9619	files to provide for a rudimentary testsuite.
9620
9621	* Added contrib/tags back from old distribution ... fixed up a bit.
9622
96231999-08-16    <warmerda@CS46980-B>
9624
9625	* Added simple makefile.vc makefiles for building with MS VC++
9626	on Windows NT/98/95 in console mode.  Stuff in contrib/win* make give
9627	better solutions for some users.
9628
9629Mon Aug 16 21:52:11 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9630
9631	* Added addtiffo (add overviews to a TIFF file) in contrib.  Didn't
9632	put it in tools since part of it is in C++.
9633
96341999-08-16  Michael L. Welles  <mike@kurtz.fake>
9635
9636	* Updated html/index.html with anon CVS instructions.
9637
9638Mon Aug 16 13:18:41 1999  Frank Warmerdam  <warmerda@gdal.velocet.ca>
9639
9640	* pre-remove so link before softlink in LINUXdso action in
9641	libtiff/Makefile.in to avoid failure on LINUXdso builds other than
9642	the first.
9643
9644	* Fixed problem with cvtcmap() in tif_getimage.c modifying the
9645	colormaps owned by the TIFF handle itself when trying to fixup wrong
9646	(eight bit) colormaps.  Corrected by maintaining a private copy of
9647	the colormap.
9648
9649	* Added TIFFReadRGBATile()/TIFFReadRGBAStrip() support in
9650	tif_getimage.c.
9651
9652	* CVS Repository placed at remotesensing.org.  ChangeLog added.
9653