tools/tiffcrop.c:6977: error: Integer Overflow L2
  ([0, +oo] - 1):unsigned32 by call to `update_output_file`.

tools/tiffcrop.c:6891:1: Parameter `(*out)->tif_dir.td_rowsperstrip`
6889.   } /* end extractImageSection */
6890. 
6891. static int 
      ^
6892. writeSelections(TIFF *in, TIFF **out, struct crop_mask *crop, 
6893.                 struct image_data *image, struct dump_opts *dump,

tools/tiffcrop.c:6977:16: Call
6975.          for (i = 0; i < crop->selections; i++)
6976.            {
6977.            if (update_output_file (out, mp, autoindex, filename, page))
                     ^
6978.              return (1);
6979. 

tools/tiffcrop.c:2106:1: Parameter `(*tiffout)->tif_dir.td_rowsperstrip`
  2104.  * so TIFFTAG PAGENUM will be correct in image.
  2105.  */
  2106. static int
        ^
  2107. update_output_file (TIFF **tiffout, char *mode, int autoindex,
  2108.                     char *outname, unsigned int *page)

tools/tiffcrop.c:2119:5: Call
  2117.     {
  2118.     /* Close any export file that was previously opened */
  2119.     TIFFClose (*tiffout);
            ^
  2120.     *tiffout = NULL;
  2121.     }

libtiff/tif_close.c:120:1: Parameter `tif->tif_dir.td_rowsperstrip`
    118.  */
    119. 
    120. void
         ^
    121. TIFFClose(TIFF* tif)
    122. {

libtiff/tif_close.c:126:2: Call
    124. 	thandle_t fd = tif->tif_clientdata;
    125. 
    126. 	TIFFCleanup(tif);
          ^
    127. 	(void) (*closeproc)(fd);
    128. }

libtiff/tif_close.c:44:1: Parameter `tif->tif_dir.td_rowsperstrip`
      42.  */
      43. 
      44. void
          ^
      45. TIFFCleanup(TIFF* tif)
      46. {

libtiff/tif_close.c:51:3: Call
      49.          */
      50. 	if (tif->tif_mode != O_RDONLY)
      51. 		TIFFFlush(tif);
            ^
      52. 	(*tif->tif_cleanup)(tif);
      53. 	TIFFFreeDirectory(tif);

libtiff/tif_flush.c:30:1: Parameter `tif->tif_dir.td_rowsperstrip`
        28. #include "tiffiop.h"
        29. 
        30. int
            ^
        31. TIFFFlush(TIFF* tif)
        32. {

libtiff/tif_flush.c:48:13: Call
        46.         && tif->tif_mode == O_RDWR )
        47.     {
        48.         if( TIFFForceStrileArrayWriting(tif) )
                        ^
        49.             return 1;
        50.     }

libtiff/tif_flush.c:78:1: Parameter `tif->tif_dir.td_rowsperstrip`
          76.  * Returns 1 in case of success, 0 otherwise.
          77.  */
          78. int TIFFForceStrileArrayWriting(TIFF* tif)
              ^
          79. {
          80.     static const char module[] = "TIFFForceStrileArrayWriting";

libtiff/tif_flush.c:120:55: Call
          118.         }
          119. 
          120.         if (tif->tif_dir.td_stripoffset_p == NULL && !TIFFSetupStrips(tif))
                                                                     ^
          121.             return 0;
          122.     }

libtiff/tif_write.c:522:1: Parameter `tif->tif_dir.td_rowsperstrip`
            520.     (TIFFFieldSet(tif,f) && (tif)->tif_dir.td_imagelength == 0)
            521. 
            522. int
                 ^
            523. TIFFSetupStrips(TIFF* tif)
            524. {

libtiff/tif_write.c:534:29: Call
            532. 		td->td_stripsperimage =
            533. 		    isUnspecified(tif, FIELD_ROWSPERSTRIP) ?
            534. 			td->td_samplesperpixel : TIFFNumberOfStrips(tif);
                                             ^
            535. 	td->td_nstrips = td->td_stripsperimage;
            536. 	if (td->td_planarconfig == PLANARCONFIG_SEPARATE)

libtiff/tif_strip.c:58:1: <LHS trace>
56.  * Compute how many strips are in an image.
57.  */
58. uint32
    ^
59. TIFFNumberOfStrips(TIFF* tif)
60. {

libtiff/tif_strip.c:58:1: Parameter `tif->tif_dir.td_imagelength`
              56.  * Compute how many strips are in an image.
              57.  */
              58. uint32
                  ^
              59. TIFFNumberOfStrips(TIFF* tif)
              60. {

libtiff/tif_strip.c:65:7: Binary operation: ([0, +oo] - 1):unsigned32 by call to `update_output_file` 
              63. 
              64. 	nstrips = (td->td_rowsperstrip == (uint32) -1 ? 1 :
              65. 	     TIFFhowmany_32(td->td_imagelength, td->td_rowsperstrip));
                        ^
              66. 	if (td->td_planarconfig == PLANARCONFIG_SEPARATE)
              67. 		nstrips = _TIFFMultiply32(tif, nstrips, (uint32)td->td_samplesperpixel,
