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