summary refs log tree commit diff
path: root/gnu/packages/patches/libtiff-CVE-2014-8128-pt3.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/libtiff-CVE-2014-8128-pt3.patch')
-rw-r--r--gnu/packages/patches/libtiff-CVE-2014-8128-pt3.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/patches/libtiff-CVE-2014-8128-pt3.patch b/gnu/packages/patches/libtiff-CVE-2014-8128-pt3.patch
new file mode 100644
index 0000000000..200af0ef8b
--- /dev/null
+++ b/gnu/packages/patches/libtiff-CVE-2014-8128-pt3.patch
@@ -0,0 +1,34 @@
+Copied from Debian
+
+From 266bc48054b018a2f1d74562aa48eb2f509436d5 Mon Sep 17 00:00:00 2001
+From: erouault <erouault>
+Date: Sun, 21 Dec 2014 17:36:36 +0000
+Subject: [PATCH] * tools/tiff2pdf.c: check return code of TIFFGetField() when
+ reading TIFFTAG_SAMPLESPERPIXEL
+
+---
+ ChangeLog        |  5 +++++
+ tools/tiff2pdf.c | 10 +++++++++-
+ 2 files changed, 14 insertions(+), 1 deletion(-)
+
+Index: tiff-4.0.3/tools/tiff2pdf.c
+===================================================================
+--- tiff-4.0.3.orig/tools/tiff2pdf.c
++++ tiff-4.0.3/tools/tiff2pdf.c
+@@ -1164,7 +1164,15 @@ void t2p_read_tiff_init(T2P* t2p, TIFF*
+ 			t2p->tiff_pages[i].page_tilecount;
+ 		if( (TIFFGetField(input, TIFFTAG_PLANARCONFIG, &xuint16) != 0)
+ 			&& (xuint16 == PLANARCONFIG_SEPARATE ) ){
+-				TIFFGetField(input, TIFFTAG_SAMPLESPERPIXEL, &xuint16);
++				if( !TIFFGetField(input, TIFFTAG_SAMPLESPERPIXEL, &xuint16) )
++				{
++					TIFFError(
++                        TIFF2PDF_MODULE, 
++                        "Missing SamplesPerPixel, %s", 
++                        TIFFFileName(input));
++                    t2p->t2p_error = T2P_ERR_ERROR;
++                    return;
++				}
+                 if( (t2p->tiff_tiles[i].tiles_tilecount % xuint16) != 0 )
+                 {
+                     TIFFError(