
Thread
2007.11.22 08:05 "RE: [Tiff] tag content size limit?", by Tillaart, Rob van den
Hi,
If I understand correctly the code lines you refering to are about the number of Directory Entries in an IFD. As far as I know this count is not related to the number of strips.
Or could it be some unwanted sideeffect? overflow or overwritten memory buffer? Does the value of tdir_count make sense?
>From the point of strip administration I see the following logical restrictions:
1 <= StripByteCounts <= RowsPerStrip * ImageWidth
1 <= # RowsPerStrip <= ImageLength
recommendation each strip is about 8K (6.0 spec page 39) but
that seems to me a historical practical buffersize.
1 <= # StripOffsets < FileSize/StripByteCounts
Furthermore all offsets should comply to
TiffHeadersize < offset < filesize
Conclusion no reason for some 4MB limit,
sofar my 2 cents,
rob tillaart
> -----Original Message-----
> From: tiff-bounces@lists.maptools.org
> [mailto:tiff-bounces@lists.maptools.org] On Behalf Of Frank Warmerdam
Joris,
I have run into problems with my attempts to create a TIFF file with 1333333 strips. Attempts to read the the stripoffsets tag results in an error in TIFFReadDirEntryErr() with this logic:
if ((uint64)(4*1024*1024/typesize)<direntry->tdir_count)
return(TIFFReadDirEntryErrSizesan);
if ((uint64)(4*1024*1024/desttypesize)<direntry->tdir_count)
return(TIFFReadDirEntryErrSizesan);The logic seems to assume that any tag contents larger than 4MB likely implies a corrupt file. Is there a particular reason we should put in place such a restriction? Should the restriction be removed? Relaxed? (perhaps upped to any tag value larger than 1GB is likely corruption? or any tag value larger than the file itself is?
> ---------------------------------------+----------------------
> ----------
> ---------------------------------------+------
and watch the world go round - Rush | President OSGeo, http://osgeo.org
This message and attachment(s) are intended solely for use by the addressee and may contain information that is privileged, confidential or otherwise exempt from disclosure under applicable law.
If you are not the intended recipient or agent thereof responsible for delivering this message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited.
If you have received this communication in error, please notify the sender immediately by telephone and with a 'reply' message.
Thank you for your co-operation.