On Thu Dec 15, 2022 at 09:36:53AM +0100, Landry Breuil wrote:
> Hi,
> 
> tiff had 3 rc releases,
> https://libtiff.gitlab.io/libtiff/releases/v4.5.0.html has the full
> relnotes. Most patches removed as some were backports of upstream fixes,
> and the sprintf/snprintf bits were fixed upstream by
> https://gitlab.com/libtiff/libtiff/-/commit/72e90d07fb649f3c356257d4bcf4d9bf4bc618ef
> - i've dropped the strl* patches after discussing their usefulness with
>   sthen@ - only patch-libtiff_tif_luv_c remains for rand/arc4random.
> 
> lots of churn in PLIST because upstream moved to sphinx to build the
> doc/manpages. wonder if the manpages for missing 'thumbnail' and
> 'rgb2ycbcr' should get an @comment.. 
> 
> we dont build them under tools/ because we still use autoconf, switching
> to cmake might bring them but that might be better done in a second step
> when upstream deprecates autoconf. thoughts ?

I would prefer to do it in a second step but I prefer to do the switch
if it's easy.

> 
> a bulk build will be more than welcome - currently only testing a gdal
> update on top locally.
> 
> Landry

> ? build.log
> ? build.sh
> ? patch-man_Makefile_in
> ? tiff-4.1.0-libtiff.so.40.4
> ? tiff-4.1.0-libtiffxx.so.40.2
> ? tiff-4.2.0-libtiff.so.40.4
> ? tiff-4.2.0-libtiffxx.so.40.2
> ? tiff-4.3.0rc1-libtiff.so.40.5
> ? tiff-4.3.0rc1-libtiffxx.so.40.2
> ? tiff-4.5.0rc1-libtiff.so.41.1
> ? tiff-4.5.0rc1-libtiffxx.so.41.0
> ? tiff-4.5.0rc2-libtiff.so.41.1
> ? tiff-4.5.0rc2-libtiffxx.so.41.0
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/graphics/tiff/Makefile,v
> retrieving revision 1.99
> diff -u -r1.99 Makefile
> --- Makefile  1 Dec 2022 22:22:47 -0000       1.99
> +++ Makefile  15 Dec 2022 08:29:18 -0000
> @@ -1,13 +1,13 @@
>  COMMENT=     tools and library routines for working with TIFF images
>  
> -DISTNAME=    tiff-4.4.0
> -REVISION=    2
> -SHARED_LIBS= tiff    41.1    # 13.0
> +DISTNAME=    tiff-4.5.0rc3
> +SHARED_LIBS= tiff    42.0    # 13.0
>  SHARED_LIBS+=        tiffxx  41.0    # 13.0
>  CATEGORIES=  graphics
>  
>  MASTER_SITES=        https://download.osgeo.org/libtiff/
>  EXTRACT_SUFX=        .tar.xz
> +WRKDIST=${WRKDIR}/${DISTNAME:S/rc3//}
>  
>  HOMEPAGE=    http://www.simplesystems.org/libtiff/

Maybe   https://libtiff.gitlab.io/libtiff/?
            ^

>  
> @@ -25,14 +25,12 @@
>  CONFIGURE_ARGS=      --disable-jbig \
>               --disable-libdeflate \
>               --disable-webp \
> +             --disable-sphinx \
>               --with-docdir="${PREFIX}/share/doc/tiff" \
>               --with-jpeg-include-dir="${LOCALBASE}/include" \
>               --with-jpeg-lib-dir="${LOCALBASE}/lib" \
>               --without-x
>  SEPARATE_BUILD=      Yes
>  MODGNU_CONFIG_GUESS_DIRS=${WRKSRC}/config
> -
> -post-install:
> -     cd ${PREFIX}/share/doc/tiff && mv html/* . && rmdir html
>  
>  .include <bsd.port.mk>
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/graphics/tiff/distinfo,v
> retrieving revision 1.27
> diff -u -r1.27 distinfo
> --- distinfo  28 May 2022 10:08:00 -0000      1.27
> +++ distinfo  15 Dec 2022 08:29:18 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (tiff-4.4.0.tar.xz) = STB7UQBIzMe8QPLLpuhDkYL+bmVAV8GhaDE5vy7LHcE=
> -SIZE (tiff-4.4.0.tar.xz) = 1929292
> +SHA256 (tiff-4.5.0rc3.tar.xz) = 2vrJecXntsZQAlVpxaTnIJlbpfF7wX5idtHxJCe+Jnw=
> +SIZE (tiff-4.5.0rc3.tar.xz) = 2320900
> Index: patches/patch-Makefile_in
> ===================================================================
> RCS file: /cvs/ports/graphics/tiff/patches/patch-Makefile_in,v
> retrieving revision 1.16
> diff -u -r1.16 patch-Makefile_in
> --- patches/patch-Makefile_in 25 May 2022 22:15:47 -0000      1.16
> +++ patches/patch-Makefile_in 15 Dec 2022 08:29:18 -0000
> @@ -1,12 +1,12 @@
>  Index: Makefile.in
>  --- Makefile.in.orig
>  +++ Makefile.in
> -@@ -436,7 +436,7 @@ EXTRA_DIST = \
> +@@ -445,7 +445,7 @@ EXTRA_DIST = \
>       libtiff-4.pc.in
>   
> - dist_doc_DATA = $(docfiles)
> --SUBDIRS = port libtiff tools build contrib test man html
> -+SUBDIRS = port libtiff tools build test man html
> + @TIFF_DOCS_TRUE@dist_doc_DATA = $(docfiles)
> +-SUBDIRS = port libtiff tools build contrib test doc
> ++SUBDIRS = port libtiff tools build test doc
>   pkgconfigdir = $(libdir)/pkgconfig
>   pkgconfig_DATA = libtiff-4.pc
>   
> Index: patches/patch-doc_Makefile_in
> ===================================================================
> RCS file: patches/patch-doc_Makefile_in
> diff -N patches/patch-doc_Makefile_in
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-doc_Makefile_in     15 Dec 2022 08:29:18 -0000
> @@ -0,0 +1,12 @@
> +Index: doc/Makefile.in
> +--- doc/Makefile.in.orig
> ++++ doc/Makefile.in
> +@@ -609,7 +609,7 @@ install-man3: $(man3_MANS)
> +       if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
> +       echo "$$d$$p"; echo "$$p"; \
> +     done | \
> +-    sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
> ++    sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^.[0-9a-z]*$$,3,;x' \
> +           -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
> +     sed 'N;N;s,\n, ,g' | { \
> +     list=; while read file base inst; do \
> Index: patches/patch-libtiff_tif_aux_c
> ===================================================================
> RCS file: patches/patch-libtiff_tif_aux_c
> diff -N patches/patch-libtiff_tif_aux_c
> --- patches/patch-libtiff_tif_aux_c   18 Jul 2022 15:24:13 -0000      1.3
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,26 +0,0 @@
> -From dd1bcc7abb26094e93636e85520f0d8f81ab0fab Mon Sep 17 00:00:00 2001
> -From: 4ugustus <wangdw.augus...@qq.com>
> -Date: Sat, 11 Jun 2022 09:31:43 +0000
> -Subject: [PATCH] fix the FPE in tiffcrop (#415, #427, and #428)
> -
> -CVE-2022-2056 / CVE-2022-2057 / CVE-2022-2058
> -
> -Index: libtiff/tif_aux.c
> ---- libtiff/tif_aux.c.orig
> -+++ libtiff/tif_aux.c
> -@@ -402,6 +402,15 @@ float _TIFFClampDoubleToFloat( double val )
> -     return (float)val;
> - }
> - 
> -+uint32_t _TIFFClampDoubleToUInt32(double val)
> -+{
> -+    if( val < 0 )
> -+        return 0;
> -+    if( val > 0xFFFFFFFFU || val != val )
> -+        return 0xFFFFFFFFU;
> -+    return (uint32_t)val;
> -+}
> -+
> - int _TIFFSeekOK(TIFF* tif, toff_t off)
> - {
> -     /* Huge offsets, especially -1 / UINT64_MAX, can cause issues */
> Index: patches/patch-libtiff_tif_codec_c
> ===================================================================
> RCS file: patches/patch-libtiff_tif_codec_c
> diff -N patches/patch-libtiff_tif_codec_c
> --- patches/patch-libtiff_tif_codec_c 11 Mar 2022 19:23:28 -0000      1.8
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,13 +0,0 @@
> -Index: libtiff/tif_codec.c
> ---- libtiff/tif_codec.c.orig
> -+++ libtiff/tif_codec.c
> -@@ -114,7 +114,8 @@ _notConfigured(TIFF* tif)
> -     const TIFFCodec* c = TIFFFindCODEC(tif->tif_dir.td_compression);
> -         char compression_code[20];
> -         
> --        sprintf(compression_code, "%"PRIu16, tif->tif_dir.td_compression );
> -+        snprintf(compression_code, sizeof(compression_code), "%d",
> -+             tif->tif_dir.td_compression );
> -     TIFFErrorExt(tif->tif_clientdata, tif->tif_name,
> -                      "%s compression support is not configured", 
> -                      c ? c->name : compression_code );
> Index: patches/patch-libtiff_tif_compress_c
> ===================================================================
> RCS file: patches/patch-libtiff_tif_compress_c
> diff -N patches/patch-libtiff_tif_compress_c
> --- patches/patch-libtiff_tif_compress_c      11 Mar 2022 19:23:28 -0000      
> 1.7
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,21 +0,0 @@
> -Index: libtiff/tif_compress.c
> ---- libtiff/tif_compress.c.orig
> -+++ libtiff/tif_compress.c
> -@@ -199,14 +199,15 @@ TIFFFindCODEC(uint16_t scheme)
> - TIFFCodec*
> - TIFFRegisterCODEC(uint16_t scheme, const char* name, TIFFInitMethod init)
> - {
> -+    size_t namelen = strlen(name);
> -     codec_t* cd = (codec_t*)
> --        _TIFFmalloc((tmsize_t)(sizeof (codec_t) + sizeof (TIFFCodec) + 
> strlen(name)+1));
> -+        _TIFFmalloc((tmsize_t)(sizeof (codec_t) + sizeof (TIFFCodec) + 
> namelen+1));
> - 
> -     if (cd != NULL) {
> -             cd->info = (TIFFCodec*) ((uint8_t*) cd + sizeof (codec_t));
> -             cd->info->name = (char*)
> -                 ((uint8_t*) cd->info + sizeof (TIFFCodec));
> --            strcpy(cd->info->name, name);
> -+            strlcpy(cd->info->name, name, namelen+1);
> -             cd->info->scheme = scheme;
> -             cd->info->init = init;
> -             cd->next = registeredCODECS;
> Index: patches/patch-libtiff_tif_dirinfo_c
> ===================================================================
> RCS file: patches/patch-libtiff_tif_dirinfo_c
> diff -N patches/patch-libtiff_tif_dirinfo_c
> --- patches/patch-libtiff_tif_dirinfo_c       15 Aug 2022 13:54:22 -0000      
> 1.10
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,23 +0,0 @@
> -From 275735d0354e39c0ac1dc3c0db2120d6f31d1990 Mon Sep 17 00:00:00 2001
> -From: Even Rouault <even.roua...@spatialys.com>
> -Date: Mon, 27 Jun 2022 16:09:43 +0200
> -Subject: [PATCH] _TIFFCheckFieldIsValidForCodec(): return FALSE when passed a
> - codec-specific tag and the codec is not configured (fixes #433)
> -
> -This avoids crashes when querying such tags
> -
> -CVE-2022-34526
> -
> -Index: libtiff/tif_dirinfo.c
> ---- libtiff/tif_dirinfo.c.orig
> -+++ libtiff/tif_dirinfo.c
> -@@ -1191,6 +1191,9 @@ _TIFFCheckFieldIsValidForCodec(TIFF *tif, ttag_t tag)
> -         default:
> -             return 1;
> -     }
> -+    if( !TIFFIsCODECConfigured(tif->tif_dir.td_compression) ) {
> -+            return 0;
> -+    }
> -     /* Check if codec specific tags are allowed for the current
> -      * compression scheme (codec) */
> -     switch (tif->tif_dir.td_compression) {
> Index: patches/patch-libtiff_tif_extension_c
> ===================================================================
> RCS file: patches/patch-libtiff_tif_extension_c
> diff -N patches/patch-libtiff_tif_extension_c
> --- patches/patch-libtiff_tif_extension_c     11 Mar 2022 19:23:28 -0000      
> 1.7
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,23 +0,0 @@
> -Index: libtiff/tif_extension.c
> ---- libtiff/tif_extension.c.orig
> -+++ libtiff/tif_extension.c
> -@@ -79,6 +79,7 @@ void TIFFSetClientInfo( TIFF *tif, void *data, const c
> - 
> - {
> -     TIFFClientInfoLink *psLink = tif->tif_clientinfo;
> -+    size_t namelen = strlen(name);
> - 
> -     /*
> -     ** Do we have an existing link with this name?  If so, just
> -@@ -100,9 +101,9 @@ void TIFFSetClientInfo( TIFF *tif, void *data, const c
> -     psLink = (TIFFClientInfoLink *) _TIFFmalloc(sizeof(TIFFClientInfoLink));
> -     assert (psLink != NULL);
> -     psLink->next = tif->tif_clientinfo;
> --    psLink->name = (char *) _TIFFmalloc((tmsize_t)(strlen(name)+1));
> -+    psLink->name = (char *) _TIFFmalloc((tmsize_t)(namelen+1));
> -     assert (psLink->name != NULL);
> --    strcpy(psLink->name, name);
> -+    strlcpy(psLink->name, name, namelen+1);
> -     psLink->data = data;
> - 
> -     tif->tif_clientinfo = psLink;
> Index: patches/patch-libtiff_tif_getimage_c
> ===================================================================
> RCS file: patches/patch-libtiff_tif_getimage_c
> diff -N patches/patch-libtiff_tif_getimage_c
> --- patches/patch-libtiff_tif_getimage_c      1 Dec 2022 22:22:47 -0000       
> 1.17
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,261 +0,0 @@
> -This one is slightly problematic.  If an application allocates less
> -room for its error buffer than the recommended 1024, the error message
> -buffer will still overflow.
> -
> -TIFFReadRGBATileExt(): fix (unsigned) integer overflow on strips/tiles > 2 GB
> -
> -Index: libtiff/tif_getimage.c
> ---- libtiff/tif_getimage.c.orig
> -+++ libtiff/tif_getimage.c
> -@@ -79,7 +79,7 @@ TIFFRGBAImageOK(TIFF* tif, char emsg[1024])
> -     int colorchannels;
> - 
> -     if (!tif->tif_decodestatus) {
> --            sprintf(emsg, "Sorry, requested compression method is not 
> configured");
> -+            snprintf(emsg, 1024, "Sorry, requested compression method is 
> not configured");
> -             return (0);
> -     }
> -     switch (td->td_bitspersample) {
> -@@ -90,12 +90,12 @@ TIFFRGBAImageOK(TIFF* tif, char emsg[1024])
> -             case 16:
> -                     break;
> -             default:
> --                    sprintf(emsg, "Sorry, can not handle images with 
> %"PRIu16"-bit samples",
> -+                    snprintf(emsg, 1024, "Sorry, can not handle images with 
> %"PRIu16"-bit samples",
> -                         td->td_bitspersample);
> -                     return (0);
> -     }
> -         if (td->td_sampleformat == SAMPLEFORMAT_IEEEFP) {
> --                sprintf(emsg, "Sorry, can not handle images with IEEE 
> floating-point samples");
> -+                snprintf(emsg, 1024, "Sorry, can not handle images with 
> IEEE floating-point samples");
> -                 return (0);
> -         }
> -     colorchannels = td->td_samplesperpixel - td->td_extrasamples;
> -@@ -108,7 +108,7 @@ TIFFRGBAImageOK(TIFF* tif, char emsg[1024])
> -                             photometric = PHOTOMETRIC_RGB;
> -                             break;
> -                     default:
> --                            sprintf(emsg, "Missing needed %s tag", 
> photoTag);
> -+                            snprintf(emsg, 1024, "Missing needed %s tag", 
> photoTag);
> -                             return (0);
> -             }
> -     }
> -@@ -119,7 +119,7 @@ TIFFRGBAImageOK(TIFF* tif, char emsg[1024])
> -                     if (td->td_planarconfig == PLANARCONFIG_CONTIG
> -                         && td->td_samplesperpixel != 1
> -                         && td->td_bitspersample < 8 ) {
> --                            sprintf(emsg,
> -+                            snprintf(emsg, 1024,
> -                                 "Sorry, can not handle contiguous data with 
> %s=%"PRIu16", "
> -                                 "and %s=%"PRIu16" and 
> Bits/Sample=%"PRIu16"",
> -                                 photoTag, photometric,
> -@@ -143,7 +143,7 @@ TIFFRGBAImageOK(TIFF* tif, char emsg[1024])
> -                     break;
> -             case PHOTOMETRIC_RGB:
> -                     if (colorchannels < 3) {
> --                            sprintf(emsg, "Sorry, can not handle RGB image 
> with %s=%d",
> -+                            snprintf(emsg, 1024, "Sorry, can not handle RGB 
> image with %s=%d",
> -                                 "Color channels", colorchannels);
> -                             return (0);
> -                     }
> -@@ -153,13 +153,13 @@ TIFFRGBAImageOK(TIFF* tif, char emsg[1024])
> -                             uint16_t inkset;
> -                             TIFFGetFieldDefaulted(tif, TIFFTAG_INKSET, 
> &inkset);
> -                             if (inkset != INKSET_CMYK) {
> --                                    sprintf(emsg,
> -+                                    snprintf(emsg, 1024,
> -                                         "Sorry, can not handle separated 
> image with %s=%d",
> -                                         "InkSet", inkset);
> -                                     return 0;
> -                             }
> -                             if (td->td_samplesperpixel < 4) {
> --                                    sprintf(emsg,
> -+                                    snprintf(emsg, 1024,
> -                                         "Sorry, can not handle separated 
> image with %s=%"PRIu16,
> -                                         "Samples/pixel", 
> td->td_samplesperpixel);
> -                                     return 0;
> -@@ -168,7 +168,7 @@ TIFFRGBAImageOK(TIFF* tif, char emsg[1024])
> -                     }
> -             case PHOTOMETRIC_LOGL:
> -                     if (td->td_compression != COMPRESSION_SGILOG) {
> --                            sprintf(emsg, "Sorry, LogL data must have 
> %s=%d",
> -+                            snprintf(emsg, 1024, "Sorry, LogL data must 
> have %s=%d",
> -                                 "Compression", COMPRESSION_SGILOG);
> -                             return (0);
> -                     }
> -@@ -176,17 +176,17 @@ TIFFRGBAImageOK(TIFF* tif, char emsg[1024])
> -             case PHOTOMETRIC_LOGLUV:
> -                     if (td->td_compression != COMPRESSION_SGILOG &&
> -                         td->td_compression != COMPRESSION_SGILOG24) {
> --                            sprintf(emsg, "Sorry, LogLuv data must have 
> %s=%d or %d",
> -+                            snprintf(emsg, 1024, "Sorry, LogLuv data must 
> have %s=%d or %d",
> -                                 "Compression", COMPRESSION_SGILOG, 
> COMPRESSION_SGILOG24);
> -                             return (0);
> -                     }
> -                     if (td->td_planarconfig != PLANARCONFIG_CONTIG) {
> --                            sprintf(emsg, "Sorry, can not handle LogLuv 
> images with %s=%"PRIu16,
> -+                            snprintf(emsg, 1024, "Sorry, can not handle 
> LogLuv images with %s=%"PRIu16,
> -                                 "Planarconfiguration", td->td_planarconfig);
> -                             return (0);
> -                     }
> -                     if ( td->td_samplesperpixel != 3 || colorchannels != 3 
> ) {
> --                                sprintf(emsg,
> -+                                snprintf(emsg, 1024,
> -                                         "Sorry, can not handle image with 
> %s=%"PRIu16", %s=%d",
> -                                         "Samples/pixel", 
> td->td_samplesperpixel,
> -                                         "colorchannels", colorchannels);
> -@@ -195,7 +195,7 @@ TIFFRGBAImageOK(TIFF* tif, char emsg[1024])
> -                     break;
> -             case PHOTOMETRIC_CIELAB:
> -                         if ( td->td_samplesperpixel != 3 || colorchannels 
> != 3 || td->td_bitspersample != 8 ) {
> --                                sprintf(emsg,
> -+                                snprintf(emsg, 1024,
> -                                         "Sorry, can not handle image with 
> %s=%"PRIu16", %s=%d and %s=%"PRIu16,
> -                                         "Samples/pixel", 
> td->td_samplesperpixel,
> -                                         "colorchannels", colorchannels,
> -@@ -204,7 +204,7 @@ TIFFRGBAImageOK(TIFF* tif, char emsg[1024])
> -                         }
> -                     break;
> -                 default:
> --                    sprintf(emsg, "Sorry, can not handle image with 
> %s=%"PRIu16,
> -+                    snprintf(emsg, 1024, "Sorry, can not handle image with 
> %s=%"PRIu16,
> -                         photoTag, photometric);
> -                     return (0);
> -     }
> -@@ -302,7 +302,7 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -             case 16:
> -                     break;
> -             default:
> --                    sprintf(emsg, "Sorry, can not handle images with 
> %"PRIu16"-bit samples",
> -+                    snprintf(emsg, 1024, "Sorry, can not handle images with 
> %"PRIu16"-bit samples",
> -                         img->bitspersample);
> -                     goto fail_return;
> -     }
> -@@ -352,7 +352,7 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -                             img->photometric = PHOTOMETRIC_RGB;
> -                             break;
> -                     default:
> --                            sprintf(emsg, "Missing needed %s tag", 
> photoTag);
> -+                            snprintf(emsg, 1024, "Missing needed %s tag", 
> photoTag);
> -                                 goto fail_return;
> -             }
> -     }
> -@@ -360,7 +360,7 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -             case PHOTOMETRIC_PALETTE:
> -                     if (!TIFFGetField(tif, TIFFTAG_COLORMAP,
> -                         &red_orig, &green_orig, &blue_orig)) {
> --                            sprintf(emsg, "Missing required \"Colormap\" 
> tag");
> -+                            snprintf(emsg, 1024, "Missing required 
> \"Colormap\" tag");
> -                                 goto fail_return;
> -                     }
> - 
> -@@ -370,7 +370,7 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -                     img->greencmap = (uint16_t *) 
> _TIFFmalloc(sizeof(uint16_t) * n_color);
> -                     img->bluecmap = (uint16_t *) 
> _TIFFmalloc(sizeof(uint16_t) * n_color);
> -                     if( !img->redcmap || !img->greencmap || !img->bluecmap 
> ) {
> --                            sprintf(emsg, "Out of memory for colormap 
> copy");
> -+                            snprintf(emsg, 1024, "Out of memory for 
> colormap copy");
> -                                 goto fail_return;
> -                     }
> - 
> -@@ -384,7 +384,7 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -                     if (planarconfig == PLANARCONFIG_CONTIG
> -                         && img->samplesperpixel != 1
> -                         && img->bitspersample < 8 ) {
> --                            sprintf(emsg,
> -+                            snprintf(emsg, 1024,
> -                                 "Sorry, can not handle contiguous data with 
> %s=%"PRIu16", "
> -                                 "and %s=%"PRIu16" and Bits/Sample=%"PRIu16,
> -                                 photoTag, img->photometric,
> -@@ -421,7 +421,7 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -                     break;
> -             case PHOTOMETRIC_RGB:
> -                     if (colorchannels < 3) {
> --                            sprintf(emsg, "Sorry, can not handle RGB image 
> with %s=%d",
> -+                            snprintf(emsg, 1024, "Sorry, can not handle RGB 
> image with %s=%d",
> -                                 "Color channels", colorchannels);
> -                                 goto fail_return;
> -                     }
> -@@ -431,12 +431,12 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -                             uint16_t inkset;
> -                             TIFFGetFieldDefaulted(tif, TIFFTAG_INKSET, 
> &inkset);
> -                             if (inkset != INKSET_CMYK) {
> --                                    sprintf(emsg, "Sorry, can not handle 
> separated image with %s=%"PRIu16,
> -+                                    snprintf(emsg, 1024, "Sorry, can not 
> handle separated image with %s=%"PRIu16,
> -                                         "InkSet", inkset);
> -                                         goto fail_return;
> -                             }
> -                             if (img->samplesperpixel < 4) {
> --                                    sprintf(emsg, "Sorry, can not handle 
> separated image with %s=%"PRIu16,
> -+                                    snprintf(emsg, 1024, "Sorry, can not 
> handle separated image with %s=%"PRIu16,
> -                                         "Samples/pixel", 
> img->samplesperpixel);
> -                                         goto fail_return;
> -                             }
> -@@ -444,7 +444,7 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -                     break;
> -             case PHOTOMETRIC_LOGL:
> -                     if (compress != COMPRESSION_SGILOG) {
> --                            sprintf(emsg, "Sorry, LogL data must have 
> %s=%d",
> -+                            snprintf(emsg, 1024, "Sorry, LogL data must 
> have %s=%d",
> -                                 "Compression", COMPRESSION_SGILOG);
> -                                 goto fail_return;
> -                     }
> -@@ -454,12 +454,12 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -                     break;
> -             case PHOTOMETRIC_LOGLUV:
> -                     if (compress != COMPRESSION_SGILOG && compress != 
> COMPRESSION_SGILOG24) {
> --                            sprintf(emsg, "Sorry, LogLuv data must have 
> %s=%d or %d",
> -+                            snprintf(emsg, 1024, "Sorry, LogLuv data must 
> have %s=%d or %d",
> -                                 "Compression", COMPRESSION_SGILOG, 
> COMPRESSION_SGILOG24);
> -                                 goto fail_return;
> -                     }
> -                     if (planarconfig != PLANARCONFIG_CONTIG) {
> --                            sprintf(emsg, "Sorry, can not handle LogLuv 
> images with %s=%"PRIu16,
> -+                            snprintf(emsg, 1024, "Sorry, can not handle 
> LogLuv images with %s=%"PRIu16,
> -                                 "Planarconfiguration", planarconfig);
> -                             return (0);
> -                     }
> -@@ -470,7 +470,7 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -             case PHOTOMETRIC_CIELAB:
> -                     break;
> -             default:
> --                    sprintf(emsg, "Sorry, can not handle image with 
> %s=%"PRIu16,
> -+                    snprintf(emsg, 1024, "Sorry, can not handle image with 
> %s=%"PRIu16,
> -                         photoTag, img->photometric);
> -                         goto fail_return;
> -     }
> -@@ -481,12 +481,12 @@ TIFFRGBAImageBegin(TIFFRGBAImage* img, TIFF* tif, int 
> -         !(planarconfig == PLANARCONFIG_SEPARATE && img->samplesperpixel > 
> 1);
> -     if (img->isContig) {
> -             if (!PickContigCase(img)) {
> --                    sprintf(emsg, "Sorry, can not handle image");
> -+                    snprintf(emsg, 1024, "Sorry, can not handle image");
> -                     goto fail_return;
> -             }
> -     } else {
> -             if (!PickSeparateCase(img)) {
> --                    sprintf(emsg, "Sorry, can not handle image");
> -+                    snprintf(emsg, 1024, "Sorry, can not handle image");
> -                     goto fail_return;
> -             }
> -     }
> -@@ -3058,15 +3058,15 @@ TIFFReadRGBATileExt(TIFF* tif, uint32_t col, 
> uint32_t 
> -         return( ok );
> - 
> -     for( i_row = 0; i_row < read_ysize; i_row++ ) {
> --        memmove( raster + (tile_ysize - i_row - 1) * tile_xsize,
> --                 raster + (read_ysize - i_row - 1) * read_xsize,
> -+        memmove( raster + (size_t)(tile_ysize - i_row - 1) * tile_xsize,
> -+                 raster + (size_t)(read_ysize - i_row - 1) * read_xsize,
> -                  read_xsize * sizeof(uint32_t) );
> --        _TIFFmemset( raster + (tile_ysize - i_row - 1) * 
> tile_xsize+read_xsize,
> -+        _TIFFmemset( raster + (size_t)(tile_ysize - i_row - 1) * 
> tile_xsize+read_xsize,
> -                      0, sizeof(uint32_t) * (tile_xsize - read_xsize) );
> -     }
> - 
> -     for( i_row = read_ysize; i_row < tile_ysize; i_row++ ) {
> --        _TIFFmemset( raster + (tile_ysize - i_row - 1) * tile_xsize,
> -+        _TIFFmemset( raster + (size_t)(tile_ysize - i_row - 1) * tile_xsize,
> -                      0, sizeof(uint32_t) * tile_xsize );
> -     }
> - 
> Index: patches/patch-libtiff_tif_luv_c
> ===================================================================
> RCS file: /cvs/ports/graphics/tiff/patches/patch-libtiff_tif_luv_c,v
> retrieving revision 1.12
> diff -u -r1.12 patch-libtiff_tif_luv_c
> --- patches/patch-libtiff_tif_luv_c   11 Mar 2022 19:23:28 -0000      1.12
> +++ patches/patch-libtiff_tif_luv_c   15 Dec 2022 08:29:18 -0000
> @@ -1,12 +1,12 @@
>  Index: libtiff/tif_luv.c
>  --- libtiff/tif_luv.c.orig
>  +++ libtiff/tif_luv.c
> -@@ -733,7 +733,7 @@ static int tiff_itrunc(double x, int m)
> +@@ -776,7 +776,7 @@ static int tiff_itrunc(double x, int m)
>           return (int)x;
>       /* Silence CoverityScan warning about bad crypto function */
>       /* coverity[dont_call] */
> --    return (int)(x + rand()*(1./RAND_MAX) - .5);
> -+    return (int)(x + arc4random()*(1./UINT_MAX) - .5);
> +-    return (int)(x + rand() * (1. / RAND_MAX) - .5);
> ++    return (int)(x + arc4random() * (1. / RAND_MAX) - .5);
>   }
>   
>   #if !LOGLUV_PUBLIC
> Index: patches/patch-libtiff_tif_open_c
> ===================================================================
> RCS file: patches/patch-libtiff_tif_open_c
> diff -N patches/patch-libtiff_tif_open_c
> --- patches/patch-libtiff_tif_open_c  25 May 2022 22:15:47 -0000      1.7
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,29 +0,0 @@
> -Index: libtiff/tif_open.c
> ---- libtiff/tif_open.c.orig
> -+++ libtiff/tif_open.c
> -@@ -84,6 +84,7 @@ TIFFClientOpen(
> -     TIFF *tif;
> -     int m;
> -     const char* cp;
> -+    size_t namelen;
> - 
> -     /* The following are configuration checks. They should be redundant, 
> but should not
> -      * compile to any actual code in an optimised release build anyway. If 
> any of them
> -@@ -114,14 +115,15 @@ TIFFClientOpen(
> -     m = _TIFFgetMode(mode, module);
> -     if (m == -1)
> -             goto bad2;
> --    tif = (TIFF *)_TIFFmalloc((tmsize_t)(sizeof (TIFF) + strlen(name) + 1));
> -+    namelen = strlen(name);
> -+    tif = (TIFF *)_TIFFmalloc((tmsize_t)(sizeof (TIFF) + namelen + 1));
> -     if (tif == NULL) {
> -             TIFFErrorExt(clientdata, module, "%s: Out of memory (TIFF 
> structure)", name);
> -             goto bad2;
> -     }
> -     _TIFFmemset(tif, 0, sizeof (*tif));
> -     tif->tif_name = (char *)tif + sizeof (TIFF);
> --    strcpy(tif->tif_name, name);
> -+    strlcpy(tif->tif_name, name, namelen+1);
> -     tif->tif_mode = m &~ (O_CREAT|O_TRUNC);
> -     tif->tif_curdir = (uint16_t) -1;                /* non-existent 
> directory */
> -     tif->tif_curoff = 0;
> Index: patches/patch-libtiff_tiffiop_h
> ===================================================================
> RCS file: patches/patch-libtiff_tiffiop_h
> diff -N patches/patch-libtiff_tiffiop_h
> --- patches/patch-libtiff_tiffiop_h   18 Jul 2022 15:24:13 -0000      1.6
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,18 +0,0 @@
> -From dd1bcc7abb26094e93636e85520f0d8f81ab0fab Mon Sep 17 00:00:00 2001
> -From: 4ugustus <wangdw.augus...@qq.com>
> -Date: Sat, 11 Jun 2022 09:31:43 +0000
> -Subject: [PATCH] fix the FPE in tiffcrop (#415, #427, and #428)
> -
> -CVE-2022-2056 / CVE-2022-2057 / CVE-2022-2058
> -
> -Index: libtiff/tiffiop.h
> ---- libtiff/tiffiop.h.orig
> -+++ libtiff/tiffiop.h
> -@@ -365,6 +365,7 @@ extern double _TIFFUInt64ToDouble(uint64_t);
> - extern float _TIFFUInt64ToFloat(uint64_t);
> - 
> - extern float _TIFFClampDoubleToFloat(double);
> -+extern uint32_t _TIFFClampDoubleToUInt32(double);
> - 
> - extern tmsize_t
> - _TIFFReadEncodedStripAndAllocBuffer(TIFF* tif, uint32_t strip,
> Index: patches/patch-man_Makefile_in
> ===================================================================
> RCS file: patches/patch-man_Makefile_in
> diff -N patches/patch-man_Makefile_in
> --- patches/patch-man_Makefile_in     25 May 2022 22:15:47 -0000      1.20
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,14 +0,0 @@
> -Replace .3tiff man page suffix with standard .3
> -
> -Index: man/Makefile.in
> ---- man/Makefile.in.orig
> -+++ man/Makefile.in
> -@@ -500,7 +500,7 @@ install-man3: $(dist_man3_MANS)
> -       if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
> -       echo "$$d$$p"; echo "$$p"; \
> -     done | \
> --    sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
> -+    sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^.[0-9a-z]*$$,3,;x' \
> -           -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
> -     sed 'N;N;s,\n, ,g' | { \
> -     list=; while read file base inst; do \
> Index: patches/patch-tools_tiffcrop_c
> ===================================================================
> RCS file: patches/patch-tools_tiffcrop_c
> diff -N patches/patch-tools_tiffcrop_c
> --- patches/patch-tools_tiffcrop_c    18 Jul 2022 15:24:13 -0000      1.5
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,140 +0,0 @@
> -From dd1bcc7abb26094e93636e85520f0d8f81ab0fab Mon Sep 17 00:00:00 2001
> -From: 4ugustus <wangdw.augus...@qq.com>
> -Date: Sat, 11 Jun 2022 09:31:43 +0000
> -Subject: [PATCH] fix the FPE in tiffcrop (#415, #427, and #428)
> -
> -CVE-2022-2056 / CVE-2022-2057 / CVE-2022-2058
> -
> -Index: tools/tiffcrop.c
> ---- tools/tiffcrop.c.orig
> -+++ tools/tiffcrop.c
> -@@ -5268,17 +5268,17 @@ computeInputPixelOffsets(struct crop_mask *crop, 
> struc
> -       {
> -       if ((crop->res_unit == RESUNIT_INCH) || (crop->res_unit == 
> RESUNIT_CENTIMETER))
> -         {
> --    x1 = (uint32_t) (crop->corners[i].X1 * scale * xres);
> --    x2 = (uint32_t) (crop->corners[i].X2 * scale * xres);
> --    y1 = (uint32_t) (crop->corners[i].Y1 * scale * yres);
> --    y2 = (uint32_t) (crop->corners[i].Y2 * scale * yres);
> -+    x1 = _TIFFClampDoubleToUInt32(crop->corners[i].X1 * scale * xres);
> -+    x2 = _TIFFClampDoubleToUInt32(crop->corners[i].X2 * scale * xres);
> -+    y1 = _TIFFClampDoubleToUInt32(crop->corners[i].Y1 * scale * yres);
> -+    y2 = _TIFFClampDoubleToUInt32(crop->corners[i].Y2 * scale * yres);
> -         }
> -       else
> -         {
> --    x1 = (uint32_t) (crop->corners[i].X1);
> --    x2 = (uint32_t) (crop->corners[i].X2);
> --    y1 = (uint32_t) (crop->corners[i].Y1);
> --    y2 = (uint32_t) (crop->corners[i].Y2);
> -+    x1 = _TIFFClampDoubleToUInt32(crop->corners[i].X1);
> -+    x2 = _TIFFClampDoubleToUInt32(crop->corners[i].X2);
> -+    y1 = _TIFFClampDoubleToUInt32(crop->corners[i].Y1);
> -+    y2 = _TIFFClampDoubleToUInt32(crop->corners[i].Y2);
> -     }
> -       /* a) Region needs to be within image sizes 0.. width-1; 0..length-1 
> -        * b) Corners are expected to be submitted as top-left to 
> bottom-right.
> -@@ -5357,17 +5357,17 @@ computeInputPixelOffsets(struct crop_mask *crop, 
> struc
> -     {
> -     if (crop->res_unit != RESUNIT_INCH && crop->res_unit != 
> RESUNIT_CENTIMETER)
> -       { /* User has specified pixels as reference unit */
> --      tmargin = (uint32_t)(crop->margins[0]);
> --      lmargin = (uint32_t)(crop->margins[1]);
> --      bmargin = (uint32_t)(crop->margins[2]);
> --      rmargin = (uint32_t)(crop->margins[3]);
> -+      tmargin = _TIFFClampDoubleToUInt32(crop->margins[0]);
> -+      lmargin = _TIFFClampDoubleToUInt32(crop->margins[1]);
> -+      bmargin = _TIFFClampDoubleToUInt32(crop->margins[2]);
> -+      rmargin = _TIFFClampDoubleToUInt32(crop->margins[3]);
> -       }
> -     else
> -       { /* inches or centimeters specified */
> --      tmargin = (uint32_t)(crop->margins[0] * scale * yres);
> --      lmargin = (uint32_t)(crop->margins[1] * scale * xres);
> --      bmargin = (uint32_t)(crop->margins[2] * scale * yres);
> --      rmargin = (uint32_t)(crop->margins[3] * scale * xres);
> -+      tmargin = _TIFFClampDoubleToUInt32(crop->margins[0] * scale * yres);
> -+      lmargin = _TIFFClampDoubleToUInt32(crop->margins[1] * scale * xres);
> -+      bmargin = _TIFFClampDoubleToUInt32(crop->margins[2] * scale * yres);
> -+      rmargin = _TIFFClampDoubleToUInt32(crop->margins[3] * scale * xres);
> -       }
> - 
> -     if ((lmargin + rmargin) > image->width)
> -@@ -5397,24 +5397,24 @@ computeInputPixelOffsets(struct crop_mask *crop, 
> struc
> -   if (crop->res_unit != RESUNIT_INCH && crop->res_unit != 
> RESUNIT_CENTIMETER)
> -     {
> -     if (crop->crop_mode & CROP_WIDTH)
> --      width = (uint32_t)crop->width;
> -+      width = _TIFFClampDoubleToUInt32(crop->width);
> -     else
> -       width = image->width - lmargin - rmargin;
> - 
> -     if (crop->crop_mode & CROP_LENGTH)
> --      length  = (uint32_t)crop->length;
> -+      length  = _TIFFClampDoubleToUInt32(crop->length);
> -     else
> -       length = image->length - tmargin - bmargin;
> -     }
> -   else
> -     {
> -     if (crop->crop_mode & CROP_WIDTH)
> --      width = (uint32_t)(crop->width * scale * image->xres);
> -+      width = _TIFFClampDoubleToUInt32(crop->width * scale * image->xres);
> -     else
> -       width = image->width - lmargin - rmargin;
> - 
> -     if (crop->crop_mode & CROP_LENGTH)
> --      length  = (uint32_t)(crop->length * scale * image->yres);
> -+      length  = _TIFFClampDoubleToUInt32(crop->length * scale * 
> image->yres);
> -     else
> -       length = image->length - tmargin - bmargin;
> -     }
> -@@ -5868,13 +5868,13 @@ computeOutputPixelOffsets (struct crop_mask *crop, 
> str
> -     {
> -     if (page->res_unit == RESUNIT_INCH || page->res_unit == 
> RESUNIT_CENTIMETER)
> -       { /* inches or centimeters specified */
> --      hmargin = (uint32_t)(page->hmargin * scale * page->hres * 
> ((image->bps + 7) / 8));
> --      vmargin = (uint32_t)(page->vmargin * scale * page->vres * 
> ((image->bps + 7) / 8));
> -+      hmargin = _TIFFClampDoubleToUInt32(page->hmargin * scale * page->hres 
> * ((image->bps + 7) / 8));
> -+      vmargin = _TIFFClampDoubleToUInt32(page->vmargin * scale * page->vres 
> * ((image->bps + 7) / 8));
> -       }
> -     else
> -       { /* Otherwise user has specified pixels as reference unit */
> --      hmargin = (uint32_t)(page->hmargin * scale * ((image->bps + 7) / 8));
> --      vmargin = (uint32_t)(page->vmargin * scale * ((image->bps + 7) / 8));
> -+      hmargin = _TIFFClampDoubleToUInt32(page->hmargin * scale * 
> ((image->bps + 7) / 8));
> -+      vmargin = _TIFFClampDoubleToUInt32(page->vmargin * scale * 
> ((image->bps + 7) / 8));
> -       }
> - 
> -     if ((hmargin * 2.0) > (pwidth * page->hres))
> -@@ -5912,13 +5912,13 @@ computeOutputPixelOffsets (struct crop_mask *crop, 
> str
> -     {
> -     if (page->mode & PAGE_MODE_PAPERSIZE )
> -       {
> --      owidth  = (uint32_t)((pwidth * page->hres) - (hmargin * 2));
> --      olength = (uint32_t)((plength * page->vres) - (vmargin * 2));
> -+      owidth  = _TIFFClampDoubleToUInt32((pwidth * page->hres) - (hmargin * 
> 2));
> -+      olength = _TIFFClampDoubleToUInt32((plength * page->vres) - (vmargin 
> * 2));
> -       }
> -     else
> -       {
> --      owidth = (uint32_t)(iwidth - (hmargin * 2 * page->hres));
> --      olength = (uint32_t)(ilength - (vmargin * 2 * page->vres));
> -+      owidth = _TIFFClampDoubleToUInt32(iwidth - (hmargin * 2 * 
> page->hres));
> -+      olength = _TIFFClampDoubleToUInt32(ilength - (vmargin * 2 * 
> page->vres));
> -       }
> -     }
> - 
> -@@ -5926,6 +5926,12 @@ computeOutputPixelOffsets (struct crop_mask *crop, str
> -     owidth = iwidth;
> -   if (olength > ilength)
> -     olength = ilength;
> -+
> -+  if (owidth == 0 || olength == 0)
> -+  {
> -+    TIFFError("computeOutputPixelOffsets", "Integer overflow when 
> calculating the number of pages");
> -+    exit(EXIT_FAILURE);
> -+  }
> - 
> -   /* Compute the number of pages required for Portrait or Landscape */
> -   switch (page->orient)
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/graphics/tiff/pkg/PLIST,v
> retrieving revision 1.31
> diff -u -r1.31 PLIST
> --- pkg/PLIST 11 Mar 2022 19:23:28 -0000      1.31
> +++ pkg/PLIST 15 Dec 2022 08:29:18 -0000
> @@ -33,6 +33,8 @@
>  @man man/man1/pal2rgb.1
>  @man man/man1/ppm2tiff.1
>  @man man/man1/raw2tiff.1
> +@man man/man1/rgb2ycbcr.1
> +@man man/man1/thumbnail.1
>  @man man/man1/tiff2bw.1
>  @man man/man1/tiff2pdf.1
>  @man man/man1/tiff2ps.1
> @@ -47,23 +49,33 @@
>  @man man/man1/tiffmedian.1
>  @man man/man1/tiffset.1
>  @man man/man1/tiffsplit.1
> +@man man/man3/TIFFAccessTagMethods.3
> +@man man/man3/TIFFClientInfo.3
>  @man man/man3/TIFFClose.3
> +@man man/man3/TIFFCreateDirectory.3
> +@man man/man3/TIFFCustomDirectory.3
> +@man man/man3/TIFFCustomTagList.3
>  @man man/man3/TIFFDataWidth.3
> +@man man/man3/TIFFDeferStrileArrayWriting.3
>  @man man/man3/TIFFError.3
>  @man man/man3/TIFFFieldDataType.3
>  @man man/man3/TIFFFieldName.3
>  @man man/man3/TIFFFieldPassCount.3
> +@man man/man3/TIFFFieldQuery.3
>  @man man/man3/TIFFFieldReadCount.3
>  @man man/man3/TIFFFieldTag.3
>  @man man/man3/TIFFFieldWriteCount.3
>  @man man/man3/TIFFFlush.3
>  @man man/man3/TIFFGetField.3
> +@man man/man3/TIFFMergeFieldInfo.3
>  @man man/man3/TIFFOpen.3
>  @man man/man3/TIFFPrintDirectory.3
> +@man man/man3/TIFFProcFunctions.3
>  @man man/man3/TIFFRGBAImage.3
>  @man man/man3/TIFFReadDirectory.3
>  @man man/man3/TIFFReadEncodedStrip.3
>  @man man/man3/TIFFReadEncodedTile.3
> +@man man/man3/TIFFReadFromUserBuffer.3
>  @man man/man3/TIFFReadRGBAImage.3
>  @man man/man3/TIFFReadRGBAStrip.3
>  @man man/man3/TIFFReadRGBATile.3
> @@ -73,6 +85,8 @@
>  @man man/man3/TIFFReadTile.3
>  @man man/man3/TIFFSetDirectory.3
>  @man man/man3/TIFFSetField.3
> +@man man/man3/TIFFSetTagExtender.3
> +@man man/man3/TIFFStrileQuery.3
>  @man man/man3/TIFFWarning.3
>  @man man/man3/TIFFWriteDirectory.3
>  @man man/man3/TIFFWriteEncodedStrip.3
> @@ -90,157 +104,380 @@
>  @man man/man3/TIFFstrip.3
>  @man man/man3/TIFFswab.3
>  @man man/man3/TIFFtile.3
> +@man man/man3/_TIFFRewriteField.3
> +@man man/man3/_TIFFauxiliary.3
>  @man man/man3/libtiff.3
>  share/doc/tiff/
> -share/doc/tiff/COPYRIGHT
>  share/doc/tiff/ChangeLog
> +share/doc/tiff/LICENSE.md
>  share/doc/tiff/README.md
>  share/doc/tiff/RELEASE-DATE
> -share/doc/tiff/TIFFTechNote2.html
>  share/doc/tiff/TODO
>  share/doc/tiff/VERSION
> -share/doc/tiff/addingtags.html
> -share/doc/tiff/bugs.html
> -share/doc/tiff/build.html
> -share/doc/tiff/contrib.html
> -share/doc/tiff/document.html
> -share/doc/tiff/images/
> -share/doc/tiff/images.html
> -share/doc/tiff/images/back.gif
> -share/doc/tiff/images/bali.jpg
> -share/doc/tiff/images/cat.gif
> -share/doc/tiff/images/cover.jpg
> -share/doc/tiff/images/cramps.gif
> -share/doc/tiff/images/dave.gif
> -share/doc/tiff/images/info.gif
> -share/doc/tiff/images/jello.jpg
> -share/doc/tiff/images/jim.gif
> -share/doc/tiff/images/note.gif
> -share/doc/tiff/images/oxford.gif
> -share/doc/tiff/images/quad.jpg
> -share/doc/tiff/images/ring.gif
> -share/doc/tiff/images/smallliz.jpg
> -share/doc/tiff/images/strike.gif
> -share/doc/tiff/images/warning.gif
> -share/doc/tiff/index.html
> -share/doc/tiff/internals.html
> -share/doc/tiff/intro.html
> -share/doc/tiff/libtiff.html
> -share/doc/tiff/man/
> -share/doc/tiff/man/TIFFClose.3tiff.html
> -share/doc/tiff/man/TIFFDataWidth.3tiff.html
> -share/doc/tiff/man/TIFFError.3tiff.html
> -share/doc/tiff/man/TIFFFieldDataType.3tiff.html
> -share/doc/tiff/man/TIFFFieldName.3tiff.html
> -share/doc/tiff/man/TIFFFieldPassCount.3tiff.html
> -share/doc/tiff/man/TIFFFieldReadCount.3tiff.html
> -share/doc/tiff/man/TIFFFieldTag.3tiff.html
> -share/doc/tiff/man/TIFFFieldWriteCount.3tiff.html
> -share/doc/tiff/man/TIFFFlush.3tiff.html
> -share/doc/tiff/man/TIFFGetField.3tiff.html
> -share/doc/tiff/man/TIFFOpen.3tiff.html
> -share/doc/tiff/man/TIFFPrintDirectory.3tiff.html
> -share/doc/tiff/man/TIFFRGBAImage.3tiff.html
> -share/doc/tiff/man/TIFFReadDirectory.3tiff.html
> -share/doc/tiff/man/TIFFReadEncodedStrip.3tiff.html
> -share/doc/tiff/man/TIFFReadEncodedTile.3tiff.html
> -share/doc/tiff/man/TIFFReadRGBAImage.3tiff.html
> -share/doc/tiff/man/TIFFReadRGBAStrip.3tiff.html
> -share/doc/tiff/man/TIFFReadRGBATile.3tiff.html
> -share/doc/tiff/man/TIFFReadRawStrip.3tiff.html
> -share/doc/tiff/man/TIFFReadRawTile.3tiff.html
> -share/doc/tiff/man/TIFFReadScanline.3tiff.html
> -share/doc/tiff/man/TIFFReadTile.3tiff.html
> -share/doc/tiff/man/TIFFSetDirectory.3tiff.html
> -share/doc/tiff/man/TIFFSetField.3tiff.html
> -share/doc/tiff/man/TIFFWarning.3tiff.html
> -share/doc/tiff/man/TIFFWriteDirectory.3tiff.html
> -share/doc/tiff/man/TIFFWriteEncodedStrip.3tiff.html
> -share/doc/tiff/man/TIFFWriteEncodedTile.3tiff.html
> -share/doc/tiff/man/TIFFWriteRawStrip.3tiff.html
> -share/doc/tiff/man/TIFFWriteRawTile.3tiff.html
> -share/doc/tiff/man/TIFFWriteScanline.3tiff.html
> -share/doc/tiff/man/TIFFWriteTile.3tiff.html
> -share/doc/tiff/man/TIFFbuffer.3tiff.html
> -share/doc/tiff/man/TIFFcodec.3tiff.html
> -share/doc/tiff/man/TIFFcolor.3tiff.html
> -share/doc/tiff/man/TIFFmemory.3tiff.html
> -share/doc/tiff/man/TIFFquery.3tiff.html
> -share/doc/tiff/man/TIFFsize.3tiff.html
> -share/doc/tiff/man/TIFFstrip.3tiff.html
> -share/doc/tiff/man/TIFFswab.3tiff.html
> -share/doc/tiff/man/TIFFtile.3tiff.html
> -share/doc/tiff/man/fax2ps.1.html
> -share/doc/tiff/man/fax2tiff.1.html
> -share/doc/tiff/man/index.html
> -share/doc/tiff/man/libtiff.3tiff.html
> -share/doc/tiff/man/pal2rgb.1.html
> -share/doc/tiff/man/ppm2tiff.1.html
> -share/doc/tiff/man/raw2tiff.1.html
> -share/doc/tiff/man/tiff2bw.1.html
> -share/doc/tiff/man/tiff2pdf.1.html
> -share/doc/tiff/man/tiff2ps.1.html
> -share/doc/tiff/man/tiff2rgba.1.html
> -share/doc/tiff/man/tiffcmp.1.html
> -share/doc/tiff/man/tiffcp.1.html
> -share/doc/tiff/man/tiffcrop.1.html
> -share/doc/tiff/man/tiffdither.1.html
> -share/doc/tiff/man/tiffdump.1.html
> -share/doc/tiff/man/tiffgt.1.html
> -share/doc/tiff/man/tiffinfo.1.html
> -share/doc/tiff/man/tiffmedian.1.html
> -share/doc/tiff/man/tiffset.1.html
> -share/doc/tiff/man/tiffsplit.1.html
> -share/doc/tiff/misc.html
> -share/doc/tiff/support.html
> -share/doc/tiff/tools.html
> -share/doc/tiff/v3.4beta007.html
> -share/doc/tiff/v3.4beta016.html
> -share/doc/tiff/v3.4beta018.html
> -share/doc/tiff/v3.4beta024.html
> -share/doc/tiff/v3.4beta028.html
> -share/doc/tiff/v3.4beta029.html
> -share/doc/tiff/v3.4beta031.html
> -share/doc/tiff/v3.4beta032.html
> -share/doc/tiff/v3.4beta033.html
> -share/doc/tiff/v3.4beta034.html
> -share/doc/tiff/v3.4beta035.html
> -share/doc/tiff/v3.4beta036.html
> -share/doc/tiff/v3.5.1.html
> -share/doc/tiff/v3.5.2.html
> -share/doc/tiff/v3.5.3.html
> -share/doc/tiff/v3.5.4.html
> -share/doc/tiff/v3.5.5.html
> -share/doc/tiff/v3.5.6-beta.html
> -share/doc/tiff/v3.5.7.html
> -share/doc/tiff/v3.6.0.html
> -share/doc/tiff/v3.6.1.html
> -share/doc/tiff/v3.7.0.html
> -share/doc/tiff/v3.7.0alpha.html
> -share/doc/tiff/v3.7.0beta.html
> -share/doc/tiff/v3.7.0beta2.html
> -share/doc/tiff/v3.7.1.html
> -share/doc/tiff/v3.7.2.html
> -share/doc/tiff/v3.7.3.html
> -share/doc/tiff/v3.7.4.html
> -share/doc/tiff/v3.8.0.html
> -share/doc/tiff/v3.8.1.html
> -share/doc/tiff/v3.8.2.html
> -share/doc/tiff/v3.9.0beta.html
> -share/doc/tiff/v3.9.1.html
> -share/doc/tiff/v3.9.2.html
> -share/doc/tiff/v4.0.0.html
> -share/doc/tiff/v4.0.1.html
> -share/doc/tiff/v4.0.10.html
> -share/doc/tiff/v4.0.2.html
> -share/doc/tiff/v4.0.3.html
> -share/doc/tiff/v4.0.4.html
> -share/doc/tiff/v4.0.4beta.html
> -share/doc/tiff/v4.0.5.html
> -share/doc/tiff/v4.0.6.html
> -share/doc/tiff/v4.0.7.html
> -share/doc/tiff/v4.0.8.html
> -share/doc/tiff/v4.0.9.html
> -share/doc/tiff/v4.1.0.html
> -share/doc/tiff/v4.2.0.html
> -share/doc/tiff/v4.3.0.html
> +share/doc/tiff/manual/
> +share/doc/tiff/manual/.buildinfo
> +share/doc/tiff/manual/_images/
> +share/doc/tiff/manual/_images/bali.jpg
> +share/doc/tiff/manual/_images/cat.gif
> +share/doc/tiff/manual/_images/cover.jpg
> +share/doc/tiff/manual/_images/cramps.gif
> +share/doc/tiff/manual/_images/dave.gif
> +share/doc/tiff/manual/_images/esri.png
> +share/doc/tiff/manual/_images/jim.gif
> +share/doc/tiff/manual/_images/leica.png
> +share/doc/tiff/manual/_images/quad.jpg
> +share/doc/tiff/manual/_images/ring.gif
> +share/doc/tiff/manual/_images/safe.png
> +share/doc/tiff/manual/_images/smallliz.jpg
> +share/doc/tiff/manual/_images/strike.gif
> +share/doc/tiff/manual/_images/weogeo.png
> +share/doc/tiff/manual/_sources/
> +share/doc/tiff/manual/_sources/addingtags.rst.txt
> +share/doc/tiff/manual/_sources/build.rst.txt
> +share/doc/tiff/manual/_sources/contrib.rst.txt
> +share/doc/tiff/manual/_sources/functions/
> +share/doc/tiff/manual/_sources/functions.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFAccessTagMethods.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFClientInfo.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFClose.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFCreateDirectory.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFCustomDirectory.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFCustomTagList.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFDataWidth.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFDeferStrileArrayWriting.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFError.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFFieldDataType.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFFieldName.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFFieldPassCount.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFFieldQuery.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFFieldReadCount.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFFieldTag.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFFieldWriteCount.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFFlush.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFGetField.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFMergeFieldInfo.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFOpen.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFOpenOptions.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFPrintDirectory.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFProcFunctions.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFRGBAImage.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadDirectory.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadEncodedStrip.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadEncodedTile.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadFromUserBuffer.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadRGBAImage.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadRGBAStrip.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadRGBATile.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadRawStrip.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadRawTile.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadScanline.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFReadTile.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFSetDirectory.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFSetField.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFSetTagExtender.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFStrileQuery.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFWarning.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFWriteDirectory.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFWriteEncodedStrip.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFWriteEncodedTile.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFWriteRawStrip.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFWriteRawTile.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFWriteScanline.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFWriteTile.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFbuffer.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFcodec.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFcolor.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFmemory.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFquery.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFsize.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFstrip.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFswab.rst.txt
> +share/doc/tiff/manual/_sources/functions/TIFFtile.rst.txt
> +share/doc/tiff/manual/_sources/functions/_TIFFRewriteField.rst.txt
> +share/doc/tiff/manual/_sources/functions/_TIFFauxiliary.rst.txt
> +share/doc/tiff/manual/_sources/functions/libtiff.rst.txt
> +share/doc/tiff/manual/_sources/images.rst.txt
> +share/doc/tiff/manual/_sources/index.rst.txt
> +share/doc/tiff/manual/_sources/internals.rst.txt
> +share/doc/tiff/manual/_sources/libtiff.rst.txt
> +share/doc/tiff/manual/_sources/project/
> +share/doc/tiff/manual/_sources/project/acknowledgements.rst.txt
> +share/doc/tiff/manual/_sources/project/bugs.rst.txt
> +share/doc/tiff/manual/_sources/project/index.rst.txt
> +share/doc/tiff/manual/_sources/project/license.rst.txt
> +share/doc/tiff/manual/_sources/project/mailinglist.rst.txt
> +share/doc/tiff/manual/_sources/releases/
> +share/doc/tiff/manual/_sources/releases/historical.rst.txt
> +share/doc/tiff/manual/_sources/releases/index.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta007.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta016.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta018.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta024.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta028.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta029.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta031.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta032.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta033.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta034.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta035.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.4beta036.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.5.1.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.5.2.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.5.3.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.5.4.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.5.5.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.5.6beta.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.5.7.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.6.0.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.6.1.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.7.0.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.7.0alpha.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.7.0beta.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.7.0beta2.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.7.1.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.7.2.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.7.3.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.7.4.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.8.0.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.8.1.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.8.2.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.9.0.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.9.0beta.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.9.1.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.9.2.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.9.3.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.9.4.rst.txt
> +share/doc/tiff/manual/_sources/releases/v3.9.5.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.0.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.1.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.10.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.2.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.3.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.4.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.4beta.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.5.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.6.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.7.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.8.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.0.9.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.1.0.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.2.0.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.3.0.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.4.0.rst.txt
> +share/doc/tiff/manual/_sources/releases/v4.5.0.rst.txt
> +share/doc/tiff/manual/_sources/specification/
> +share/doc/tiff/manual/_sources/specification/bigtiff.rst.txt
> +share/doc/tiff/manual/_sources/specification/coverage-bigtiff.rst.txt
> +share/doc/tiff/manual/_sources/specification/coverage.rst.txt
> +share/doc/tiff/manual/_sources/specification/index.rst.txt
> +share/doc/tiff/manual/_sources/specification/technote2.rst.txt
> +share/doc/tiff/manual/_sources/terms.rst.txt
> +share/doc/tiff/manual/_sources/tools/
> +share/doc/tiff/manual/_sources/tools.rst.txt
> +share/doc/tiff/manual/_sources/tools/fax2ps.rst.txt
> +share/doc/tiff/manual/_sources/tools/fax2tiff.rst.txt
> +share/doc/tiff/manual/_sources/tools/pal2rgb.rst.txt
> +share/doc/tiff/manual/_sources/tools/ppm2tiff.rst.txt
> +share/doc/tiff/manual/_sources/tools/raw2tiff.rst.txt
> +share/doc/tiff/manual/_sources/tools/rgb2ycbcr.rst.txt
> +share/doc/tiff/manual/_sources/tools/thumbnail.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiff2bw.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiff2pdf.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiff2ps.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiff2rgba.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiffcmp.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiffcp.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiffcrop.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiffdither.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiffdump.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiffgt.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiffinfo.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiffmedian.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiffset.rst.txt
> +share/doc/tiff/manual/_sources/tools/tiffsplit.rst.txt
> +share/doc/tiff/manual/_static/
> +share/doc/tiff/manual/_static/_sphinx_javascript_frameworks_compat.js
> +share/doc/tiff/manual/_static/basic.css
> +share/doc/tiff/manual/_static/contents.png
> +share/doc/tiff/manual/_static/doctools.js
> +share/doc/tiff/manual/_static/documentation_options.js
> +share/doc/tiff/manual/_static/file.png
> +share/doc/tiff/manual/_static/jquery-3.6.0.js
> +share/doc/tiff/manual/_static/jquery.js
> +share/doc/tiff/manual/_static/language_data.js
> +share/doc/tiff/manual/_static/minus.png
> +share/doc/tiff/manual/_static/navigation.png
> +share/doc/tiff/manual/_static/plus.png
> +share/doc/tiff/manual/_static/pygments.css
> +share/doc/tiff/manual/_static/searchtools.js
> +share/doc/tiff/manual/_static/sphinx_highlight.js
> +share/doc/tiff/manual/_static/sphinxdoc.css
> +share/doc/tiff/manual/_static/underscore-1.13.1.js
> +share/doc/tiff/manual/_static/underscore.js
> +share/doc/tiff/manual/addingtags.html
> +share/doc/tiff/manual/build.html
> +share/doc/tiff/manual/contrib.html
> +share/doc/tiff/manual/functions/
> +share/doc/tiff/manual/functions.html
> +share/doc/tiff/manual/functions/TIFFAccessTagMethods.html
> +share/doc/tiff/manual/functions/TIFFClientInfo.html
> +share/doc/tiff/manual/functions/TIFFClose.html
> +share/doc/tiff/manual/functions/TIFFCreateDirectory.html
> +share/doc/tiff/manual/functions/TIFFCustomDirectory.html
> +share/doc/tiff/manual/functions/TIFFCustomTagList.html
> +share/doc/tiff/manual/functions/TIFFDataWidth.html
> +share/doc/tiff/manual/functions/TIFFDeferStrileArrayWriting.html
> +share/doc/tiff/manual/functions/TIFFError.html
> +share/doc/tiff/manual/functions/TIFFFieldDataType.html
> +share/doc/tiff/manual/functions/TIFFFieldName.html
> +share/doc/tiff/manual/functions/TIFFFieldPassCount.html
> +share/doc/tiff/manual/functions/TIFFFieldQuery.html
> +share/doc/tiff/manual/functions/TIFFFieldReadCount.html
> +share/doc/tiff/manual/functions/TIFFFieldTag.html
> +share/doc/tiff/manual/functions/TIFFFieldWriteCount.html
> +share/doc/tiff/manual/functions/TIFFFlush.html
> +share/doc/tiff/manual/functions/TIFFGetField.html
> +share/doc/tiff/manual/functions/TIFFMergeFieldInfo.html
> +share/doc/tiff/manual/functions/TIFFOpen.html
> +share/doc/tiff/manual/functions/TIFFOpenOptions.html
> +share/doc/tiff/manual/functions/TIFFPrintDirectory.html
> +share/doc/tiff/manual/functions/TIFFProcFunctions.html
> +share/doc/tiff/manual/functions/TIFFRGBAImage.html
> +share/doc/tiff/manual/functions/TIFFReadDirectory.html
> +share/doc/tiff/manual/functions/TIFFReadEncodedStrip.html
> +share/doc/tiff/manual/functions/TIFFReadEncodedTile.html
> +share/doc/tiff/manual/functions/TIFFReadFromUserBuffer.html
> +share/doc/tiff/manual/functions/TIFFReadRGBAImage.html
> +share/doc/tiff/manual/functions/TIFFReadRGBAStrip.html
> +share/doc/tiff/manual/functions/TIFFReadRGBATile.html
> +share/doc/tiff/manual/functions/TIFFReadRawStrip.html
> +share/doc/tiff/manual/functions/TIFFReadRawTile.html
> +share/doc/tiff/manual/functions/TIFFReadScanline.html
> +share/doc/tiff/manual/functions/TIFFReadTile.html
> +share/doc/tiff/manual/functions/TIFFSetDirectory.html
> +share/doc/tiff/manual/functions/TIFFSetField.html
> +share/doc/tiff/manual/functions/TIFFSetTagExtender.html
> +share/doc/tiff/manual/functions/TIFFStrileQuery.html
> +share/doc/tiff/manual/functions/TIFFWarning.html
> +share/doc/tiff/manual/functions/TIFFWriteDirectory.html
> +share/doc/tiff/manual/functions/TIFFWriteEncodedStrip.html
> +share/doc/tiff/manual/functions/TIFFWriteEncodedTile.html
> +share/doc/tiff/manual/functions/TIFFWriteRawStrip.html
> +share/doc/tiff/manual/functions/TIFFWriteRawTile.html
> +share/doc/tiff/manual/functions/TIFFWriteScanline.html
> +share/doc/tiff/manual/functions/TIFFWriteTile.html
> +share/doc/tiff/manual/functions/TIFFbuffer.html
> +share/doc/tiff/manual/functions/TIFFcodec.html
> +share/doc/tiff/manual/functions/TIFFcolor.html
> +share/doc/tiff/manual/functions/TIFFmemory.html
> +share/doc/tiff/manual/functions/TIFFquery.html
> +share/doc/tiff/manual/functions/TIFFsize.html
> +share/doc/tiff/manual/functions/TIFFstrip.html
> +share/doc/tiff/manual/functions/TIFFswab.html
> +share/doc/tiff/manual/functions/TIFFtile.html
> +share/doc/tiff/manual/functions/_TIFFRewriteField.html
> +share/doc/tiff/manual/functions/_TIFFauxiliary.html
> +share/doc/tiff/manual/functions/libtiff.html
> +share/doc/tiff/manual/genindex.html
> +share/doc/tiff/manual/images.html
> +share/doc/tiff/manual/index.html
> +share/doc/tiff/manual/internals.html
> +share/doc/tiff/manual/libtiff.html
> +share/doc/tiff/manual/objects.inv
> +share/doc/tiff/manual/project/
> +share/doc/tiff/manual/project/acknowledgements.html
> +share/doc/tiff/manual/project/bugs.html
> +share/doc/tiff/manual/project/index.html
> +share/doc/tiff/manual/project/license.html
> +share/doc/tiff/manual/project/mailinglist.html
> +share/doc/tiff/manual/releases/
> +share/doc/tiff/manual/releases/historical.html
> +share/doc/tiff/manual/releases/index.html
> +share/doc/tiff/manual/releases/v3.4beta007.html
> +share/doc/tiff/manual/releases/v3.4beta016.html
> +share/doc/tiff/manual/releases/v3.4beta018.html
> +share/doc/tiff/manual/releases/v3.4beta024.html
> +share/doc/tiff/manual/releases/v3.4beta028.html
> +share/doc/tiff/manual/releases/v3.4beta029.html
> +share/doc/tiff/manual/releases/v3.4beta031.html
> +share/doc/tiff/manual/releases/v3.4beta032.html
> +share/doc/tiff/manual/releases/v3.4beta033.html
> +share/doc/tiff/manual/releases/v3.4beta034.html
> +share/doc/tiff/manual/releases/v3.4beta035.html
> +share/doc/tiff/manual/releases/v3.4beta036.html
> +share/doc/tiff/manual/releases/v3.5.1.html
> +share/doc/tiff/manual/releases/v3.5.2.html
> +share/doc/tiff/manual/releases/v3.5.3.html
> +share/doc/tiff/manual/releases/v3.5.4.html
> +share/doc/tiff/manual/releases/v3.5.5.html
> +share/doc/tiff/manual/releases/v3.5.6beta.html
> +share/doc/tiff/manual/releases/v3.5.7.html
> +share/doc/tiff/manual/releases/v3.6.0.html
> +share/doc/tiff/manual/releases/v3.6.1.html
> +share/doc/tiff/manual/releases/v3.7.0.html
> +share/doc/tiff/manual/releases/v3.7.0alpha.html
> +share/doc/tiff/manual/releases/v3.7.0beta.html
> +share/doc/tiff/manual/releases/v3.7.0beta2.html
> +share/doc/tiff/manual/releases/v3.7.1.html
> +share/doc/tiff/manual/releases/v3.7.2.html
> +share/doc/tiff/manual/releases/v3.7.3.html
> +share/doc/tiff/manual/releases/v3.7.4.html
> +share/doc/tiff/manual/releases/v3.8.0.html
> +share/doc/tiff/manual/releases/v3.8.1.html
> +share/doc/tiff/manual/releases/v3.8.2.html
> +share/doc/tiff/manual/releases/v3.9.0.html
> +share/doc/tiff/manual/releases/v3.9.0beta.html
> +share/doc/tiff/manual/releases/v3.9.1.html
> +share/doc/tiff/manual/releases/v3.9.2.html
> +share/doc/tiff/manual/releases/v3.9.3.html
> +share/doc/tiff/manual/releases/v3.9.4.html
> +share/doc/tiff/manual/releases/v3.9.5.html
> +share/doc/tiff/manual/releases/v4.0.0.html
> +share/doc/tiff/manual/releases/v4.0.1.html
> +share/doc/tiff/manual/releases/v4.0.10.html
> +share/doc/tiff/manual/releases/v4.0.2.html
> +share/doc/tiff/manual/releases/v4.0.3.html
> +share/doc/tiff/manual/releases/v4.0.4.html
> +share/doc/tiff/manual/releases/v4.0.4beta.html
> +share/doc/tiff/manual/releases/v4.0.5.html
> +share/doc/tiff/manual/releases/v4.0.6.html
> +share/doc/tiff/manual/releases/v4.0.7.html
> +share/doc/tiff/manual/releases/v4.0.8.html
> +share/doc/tiff/manual/releases/v4.0.9.html
> +share/doc/tiff/manual/releases/v4.1.0.html
> +share/doc/tiff/manual/releases/v4.2.0.html
> +share/doc/tiff/manual/releases/v4.3.0.html
> +share/doc/tiff/manual/releases/v4.4.0.html
> +share/doc/tiff/manual/releases/v4.5.0.html
> +share/doc/tiff/manual/search.html
> +share/doc/tiff/manual/searchindex.js
> +share/doc/tiff/manual/specification/
> +share/doc/tiff/manual/specification/bigtiff.html
> +share/doc/tiff/manual/specification/coverage-bigtiff.html
> +share/doc/tiff/manual/specification/coverage.html
> +share/doc/tiff/manual/specification/index.html
> +share/doc/tiff/manual/specification/technote2.html
> +share/doc/tiff/manual/terms.html
> +share/doc/tiff/manual/tools/
> +share/doc/tiff/manual/tools.html
> +share/doc/tiff/manual/tools/fax2ps.html
> +share/doc/tiff/manual/tools/fax2tiff.html
> +share/doc/tiff/manual/tools/pal2rgb.html
> +share/doc/tiff/manual/tools/ppm2tiff.html
> +share/doc/tiff/manual/tools/raw2tiff.html
> +share/doc/tiff/manual/tools/rgb2ycbcr.html
> +share/doc/tiff/manual/tools/thumbnail.html
> +share/doc/tiff/manual/tools/tiff2bw.html
> +share/doc/tiff/manual/tools/tiff2pdf.html
> +share/doc/tiff/manual/tools/tiff2ps.html
> +share/doc/tiff/manual/tools/tiff2rgba.html
> +share/doc/tiff/manual/tools/tiffcmp.html
> +share/doc/tiff/manual/tools/tiffcp.html
> +share/doc/tiff/manual/tools/tiffcrop.html
> +share/doc/tiff/manual/tools/tiffdither.html
> +share/doc/tiff/manual/tools/tiffdump.html
> +share/doc/tiff/manual/tools/tiffgt.html
> +share/doc/tiff/manual/tools/tiffinfo.html
> +share/doc/tiff/manual/tools/tiffmedian.html
> +share/doc/tiff/manual/tools/tiffset.html
> +share/doc/tiff/manual/tools/tiffsplit.html

Reply via email to