tools/tiff2ps.c:1621: error: Buffer Overrun L3
  Offset: [1, +oo] Size: [0, +oo] by call to `TIFFReadDirectory`.

tools/tiff2ps.c:1486:1: Parameter `tif->tif_dir.td_stripoffset_p`
1484.  */
1485. 
1486. int TIFF2PS(FILE* fd, TIFF* tif, double pgwidth, double pgheight, double lm, double bm, int center)
      ^
1487.   {
1488.   uint32 pixwidth = 0, pixheight = 0;  /* Image width and height in pixels */

tools/tiff2ps.c:1621:59: Call
1619.     rotation = 0.0;
1620.   TIFFGetFieldDefaulted(tif, TIFFTAG_SUBFILETYPE, &subfiletype);
1621.   } while (((subfiletype & FILETYPE_PAGE) || printAll) && TIFFReadDirectory(tif));
                                                                ^
1622. 
1623. return(npages);

libtiff/tif_dirread.c:4050:13: Call
  4048.         {
  4049.             /* Directory typically created with TIFFDeferStrileArrayWriting() */
  4050.             TIFFSetupStrips(tif);
                    ^
  4051.         }
  4052.         else if( !(tif->tif_flags&TIFF_DEFERSTRILELOAD) )

libtiff/tif_write.c:537:46: Assignment
    535. 	td->td_nstrips = td->td_stripsperimage;
    536.         /* TIFFWriteDirectoryTagData has a limitation to 0x80000000U bytes */
    537.         if( td->td_nstrips >= 0x80000000U / ((tif->tif_flags&TIFF_BIGTIFF)?0x8U:0x4U) )
                                                      ^
    538.         {
    539.             TIFFErrorExt(tif->tif_clientdata, "TIFFSetupStrips",

libtiff/tif_dirread.c:4317:13: Call
  4315.             TIFFStripSize64(tif) > 0x7FFFFFFFUL )
  4316.         {
  4317.             TryChopUpUncompressedBigTiff(tif);
                    ^
  4318.         }
  4319. 

libtiff/tif_dirread.c:5977:10: Assignment
    5975. 
    5976.     /* Check that the strips are contiguous and of the expected size */
    5977.     for( i = 0; i < td->td_nstrips; i++ )
                   ^
    5978.     {
    5979.         if( i == td->td_nstrips - 1 )

libtiff/tif_dirread.c:5993:26: Call
    5991.                 return;
    5992.             }
    5993.             if( i > 0 && TIFFGetStrileOffset(tif, i) !=
                                   ^
    5994.                     TIFFGetStrileOffset(tif, i-1) + TIFFGetStrileByteCount(tif, i-1) )
    5995.             {

libtiff/tif_dirread.c:6348:1: Parameter `strile`
      6346. 
      6347. /* Return the value of the TileOffsets/StripOffsets array for the specified tile/strile */
      6348. uint64 TIFFGetStrileOffset(TIFF *tif, uint32 strile)
            ^
      6349. {
      6350.     return TIFFGetStrileOffsetWithErr(tif, strile, NULL);

libtiff/tif_dirread.c:6350:12: Call
      6348. uint64 TIFFGetStrileOffset(TIFF *tif, uint32 strile)
      6349. {
      6350.     return TIFFGetStrileOffsetWithErr(tif, strile, NULL);
                       ^
      6351. }
      6352. 

libtiff/tif_dirread.c:6354:1: Parameter `strile`
        6352. 
        6353. /* Return the value of the TileOffsets/StripOffsets array for the specified tile/strile */
        6354. uint64 TIFFGetStrileOffsetWithErr(TIFF *tif, uint32 strile, int *pbErr)
              ^
        6355. {
        6356.     TIFFDirectory *td = &tif->tif_dir;

libtiff/tif_dirread.c:6357:12: Call
        6355. {
        6356.     TIFFDirectory *td = &tif->tif_dir;
        6357.     return _TIFFGetStrileOffsetOrByteCountValue(tif, strile,
                         ^
        6358.                                &(td->td_stripoffset_entry),
        6359.                                &(td->td_stripoffset_p), pbErr);

libtiff/tif_dirread.c:6304:1: Parameter `strile`
          6302. }
          6303. 
          6304. static uint64 _TIFFGetStrileOffsetOrByteCountValue(TIFF *tif, uint32 strile,
                ^
          6305.                                                    TIFFDirEntry* dirent,
          6306.                                                    uint64** parray,

libtiff/tif_dirread.c:6330:19: Call
          6328.         else
          6329.         {
          6330.              if( !_TIFFFetchStrileValue(tif, strile, dirent, parray) )
                                  ^
          6331.              {
          6332.                 if( pbErr )

libtiff/tif_dirread.c:6201:1: <Offset trace>
6199. }
6200. 
6201. static int _TIFFFetchStrileValue(TIFF* tif,
      ^
6202.                                  uint32 strile,
6203.                                  TIFFDirEntry* dirent,

libtiff/tif_dirread.c:6201:1: Parameter `strile`
            6199. }
            6200. 
            6201. static int _TIFFFetchStrileValue(TIFF* tif,
                  ^
            6202.                                  uint32 strile,
            6203.                                  TIFFDirEntry* dirent,

libtiff/tif_dirread.c:6201:1: <Length trace>
6199. }
6200. 
6201. static int _TIFFFetchStrileValue(TIFF* tif,
      ^
6202.                                  uint32 strile,
6203.                                  TIFFDirEntry* dirent,

libtiff/tif_dirread.c:6201:1: Parameter `**parray`
            6199. }
            6200. 
            6201. static int _TIFFFetchStrileValue(TIFF* tif,
                  ^
            6202.                                  uint32 strile,
            6203.                                  TIFFDirEntry* dirent,

libtiff/tif_dirread.c:6292:10: Array access: Offset: [1, +oo] Size: [0, +oo] by call to `TIFFReadDirectory` 
            6290.         return 0;
            6291. 
            6292.     if( ~((*parray)[strile]) == 0 )
                           ^
            6293.     {
            6294.         if( !_TIFFPartialReadStripArray( tif, dirent, strile, *parray ) )
