From 4d48e22560ddeb52deba0f5ccc6c1300c4d89bc3 Mon Sep 17 00:00:00 2001 From: Roger Leigh Date: Sun, 11 Nov 2018 20:51:09 +0000 Subject: [PATCH] tiff: Version 4.0.10 --- graphics/tiff/Makefile | 3 +- graphics/tiff/distinfo | 6 +- graphics/tiff/files/patch-CVE-2017-18013 | 34 ------- graphics/tiff/files/patch-CVE-2017-9935 | 117 ----------------------- graphics/tiff/pkg-plist | 4 +- 5 files changed, 6 insertions(+), 158 deletions(-) delete mode 100644 graphics/tiff/files/patch-CVE-2017-18013 delete mode 100644 graphics/tiff/files/patch-CVE-2017-9935 diff --git a/graphics/tiff/Makefile b/graphics/tiff/Makefile index 5e67c14753db..3afea0838dbe 100644 --- a/graphics/tiff/Makefile +++ b/graphics/tiff/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= tiff -PORTVERSION= 4.0.9 -PORTREVISION= 1 +PORTVERSION= 4.0.10 CATEGORIES= graphics MASTER_SITES= http://download.osgeo.org/libtiff/ diff --git a/graphics/tiff/distinfo b/graphics/tiff/distinfo index 320141dcfeaa..270dad7d13c4 100644 --- a/graphics/tiff/distinfo +++ b/graphics/tiff/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1511092936 -SHA256 (tiff-4.0.9.tar.gz) = 6e7bdeec2c310734e734d19aae3a71ebe37a4d842e0e23dbb1b8921c0026cfcd -SIZE (tiff-4.0.9.tar.gz) = 2305681 +TIMESTAMP = 1541969310 +SHA256 (tiff-4.0.10.tar.gz) = 2c52d11ccaf767457db0c46795d9c7d1a8d8f76f68b0b800a3dfe45786b996e4 +SIZE (tiff-4.0.10.tar.gz) = 2402867 diff --git a/graphics/tiff/files/patch-CVE-2017-18013 b/graphics/tiff/files/patch-CVE-2017-18013 deleted file mode 100644 index 9da9aa4e6d6d..000000000000 --- a/graphics/tiff/files/patch-CVE-2017-18013 +++ /dev/null @@ -1,34 +0,0 @@ -From c6f41df7b581402dfba3c19a1e3df4454c551a01 Mon Sep 17 00:00:00 2001 -From: Even Rouault -Date: Sun, 31 Dec 2017 15:09:41 +0100 -Subject: [PATCH] libtiff/tif_print.c: TIFFPrintDirectory(): fix null pointer dereference on corrupted file. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2770 - ---- - libtiff/tif_print.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/libtiff/tif_print.c b/libtiff/tif_print.c -index 9959d35..8deceb2 100644 ---- libtiff/tif_print.c -+++ libtiff/tif_print.c -@@ -667,13 +667,13 @@ TIFFPrintDirectory(TIFF* tif, FILE* fd, long flags) - #if defined(__WIN32__) && (defined(_MSC_VER) || defined(__MINGW32__)) - fprintf(fd, " %3lu: [%8I64u, %8I64u]\n", - (unsigned long) s, -- (unsigned __int64) td->td_stripoffset[s], -- (unsigned __int64) td->td_stripbytecount[s]); -+ td->td_stripoffset ? (unsigned __int64) td->td_stripoffset[s] : 0, -+ td->td_stripbytecount ? (unsigned __int64) td->td_stripbytecount[s] : 0); - #else - fprintf(fd, " %3lu: [%8llu, %8llu]\n", - (unsigned long) s, -- (unsigned long long) td->td_stripoffset[s], -- (unsigned long long) td->td_stripbytecount[s]); -+ td->td_stripoffset ? (unsigned long long) td->td_stripoffset[s] : 0, -+ td->td_stripbytecount ? (unsigned long long) td->td_stripbytecount[s] : 0); - #endif - } - } --- -libgit2 0.26.0 - diff --git a/graphics/tiff/files/patch-CVE-2017-9935 b/graphics/tiff/files/patch-CVE-2017-9935 deleted file mode 100644 index 845935256a60..000000000000 --- a/graphics/tiff/files/patch-CVE-2017-9935 +++ /dev/null @@ -1,117 +0,0 @@ -diff --git a/libtiff/tif_dir.c b/libtiff/tif_dir.c -index 2ccaf44..cbf2b69 100644 ---- libtiff/tif_dir.c -+++ libtiff/tif_dir.c -@@ -1067,6 +1067,9 @@ _TIFFVGetField(TIFF* tif, uint32 tag, va_list ap) - if (td->td_samplesperpixel - td->td_extrasamples > 1) { - *va_arg(ap, uint16**) = td->td_transferfunction[1]; - *va_arg(ap, uint16**) = td->td_transferfunction[2]; -+ } else { -+ *va_arg(ap, uint16**) = NULL; -+ *va_arg(ap, uint16**) = NULL; - } - break; - case TIFFTAG_REFERENCEBLACKWHITE: -diff --git a/tools/tiff2pdf.c b/tools/tiff2pdf.c -index d1a9b09..484776c 100644 ---- tools/tiff2pdf.c -+++ tools/tiff2pdf.c -@@ -237,7 +237,7 @@ typedef struct { - float tiff_whitechromaticities[2]; - float tiff_primarychromaticities[6]; - float tiff_referenceblackwhite[2]; -- float* tiff_transferfunction[3]; -+ uint16* tiff_transferfunction[3]; - int pdf_image_interpolate; /* 0 (default) : do not interpolate, - 1 : interpolate */ - uint16 tiff_transferfunctioncount; -@@ -1047,6 +1047,8 @@ void t2p_read_tiff_init(T2P* t2p, TIFF* input){ - uint16 pagen=0; - uint16 paged=0; - uint16 xuint16=0; -+ uint16 tiff_transferfunctioncount=0; -+ uint16* tiff_transferfunction[3]; - - directorycount=TIFFNumberOfDirectories(input); - t2p->tiff_pages = (T2P_PAGE*) _TIFFmalloc(TIFFSafeMultiply(tmsize_t,directorycount,sizeof(T2P_PAGE))); -@@ -1147,26 +1149,48 @@ void t2p_read_tiff_init(T2P* t2p, TIFF* input){ - } - #endif - if (TIFFGetField(input, TIFFTAG_TRANSFERFUNCTION, -- &(t2p->tiff_transferfunction[0]), -- &(t2p->tiff_transferfunction[1]), -- &(t2p->tiff_transferfunction[2]))) { -- if((t2p->tiff_transferfunction[1] != (float*) NULL) && -- (t2p->tiff_transferfunction[2] != (float*) NULL) && -- (t2p->tiff_transferfunction[1] != -- t2p->tiff_transferfunction[0])) { -- t2p->tiff_transferfunctioncount = 3; -- t2p->tiff_pages[i].page_extra += 4; -- t2p->pdf_xrefcount += 4; -- } else { -- t2p->tiff_transferfunctioncount = 1; -- t2p->tiff_pages[i].page_extra += 2; -- t2p->pdf_xrefcount += 2; -- } -- if(t2p->pdf_minorversion < 2) -- t2p->pdf_minorversion = 2; -+ &(tiff_transferfunction[0]), -+ &(tiff_transferfunction[1]), -+ &(tiff_transferfunction[2]))) { -+ -+ if((tiff_transferfunction[1] != (uint16*) NULL) && -+ (tiff_transferfunction[2] != (uint16*) NULL) -+ ) { -+ tiff_transferfunctioncount=3; -+ } else { -+ tiff_transferfunctioncount=1; -+ } - } else { -- t2p->tiff_transferfunctioncount=0; -+ tiff_transferfunctioncount=0; - } -+ -+ if (i > 0){ -+ if (tiff_transferfunctioncount != t2p->tiff_transferfunctioncount){ -+ TIFFError( -+ TIFF2PDF_MODULE, -+ "Different transfer function on page %d", -+ i); -+ t2p->t2p_error = T2P_ERR_ERROR; -+ return; -+ } -+ } -+ -+ t2p->tiff_transferfunctioncount = tiff_transferfunctioncount; -+ t2p->tiff_transferfunction[0] = tiff_transferfunction[0]; -+ t2p->tiff_transferfunction[1] = tiff_transferfunction[1]; -+ t2p->tiff_transferfunction[2] = tiff_transferfunction[2]; -+ if(tiff_transferfunctioncount == 3){ -+ t2p->tiff_pages[i].page_extra += 4; -+ t2p->pdf_xrefcount += 4; -+ if(t2p->pdf_minorversion < 2) -+ t2p->pdf_minorversion = 2; -+ } else if (tiff_transferfunctioncount == 1){ -+ t2p->tiff_pages[i].page_extra += 2; -+ t2p->pdf_xrefcount += 2; -+ if(t2p->pdf_minorversion < 2) -+ t2p->pdf_minorversion = 2; -+ } -+ - if( TIFFGetField( - input, - TIFFTAG_ICCPROFILE, -@@ -1827,10 +1851,9 @@ void t2p_read_tiff_data(T2P* t2p, TIFF* input){ - &(t2p->tiff_transferfunction[0]), - &(t2p->tiff_transferfunction[1]), - &(t2p->tiff_transferfunction[2]))) { -- if((t2p->tiff_transferfunction[1] != (float*) NULL) && -- (t2p->tiff_transferfunction[2] != (float*) NULL) && -- (t2p->tiff_transferfunction[1] != -- t2p->tiff_transferfunction[0])) { -+ if((t2p->tiff_transferfunction[1] != (uint16*) NULL) && -+ (t2p->tiff_transferfunction[2] != (uint16*) NULL) -+ ) { - t2p->tiff_transferfunctioncount=3; - } else { - t2p->tiff_transferfunctioncount=1; diff --git a/graphics/tiff/pkg-plist b/graphics/tiff/pkg-plist index e4e461f85b2e..5961b409caef 100644 --- a/graphics/tiff/pkg-plist +++ b/graphics/tiff/pkg-plist @@ -24,11 +24,11 @@ include/tiffvers.h lib/libtiff.a lib/libtiff.so lib/libtiff.so.5 -lib/libtiff.so.5.3.0 +lib/libtiff.so.5.4.0 lib/libtiffxx.a lib/libtiffxx.so lib/libtiffxx.so.5 -lib/libtiffxx.so.5.3.0 +lib/libtiffxx.so.5.4.0 libdata/pkgconfig/libtiff-4.pc man/man1/fax2ps.1.gz man/man1/fax2tiff.1.gz -- 2.19.1