unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH 0/1] Poppler: Fix CVE-2015-8868
@ 2016-04-30 18:23 Leo Famulari
  2016-04-30 18:23 ` [PATCH 1/1] gnu: poppler: " Leo Famulari
  0 siblings, 1 reply; 2+ messages in thread
From: Leo Famulari @ 2016-04-30 18:23 UTC (permalink / raw)
  To: guix-devel

This grafts the upstream patch to fix CVE-2015-8868 [0].

I tested some of Poppler's dependents, and they seem to work.

So, I would usually just apply this without emailing. But since several
hundred packages depend on Poppler, I want some confirmation that the
graft is working as expected and won't require a huge number of packages
to be rebuilt.

Feed requested!

[0]
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-8868
http://seclists.org/oss-sec/2016/q2/139

Leo Famulari (1):
  gnu: poppler: Fix CVE-2015-8868.

 gnu/local.mk                                     |  1 +
 gnu/packages/patches/poppler-CVE-2015-8868.patch | 30 ++++++++++++++++++++++++
 gnu/packages/pdf.scm                             |  8 +++++++
 3 files changed, 39 insertions(+)
 create mode 100644 gnu/packages/patches/poppler-CVE-2015-8868.patch

-- 
2.7.4

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [PATCH 1/1] gnu: poppler: Fix CVE-2015-8868.
  2016-04-30 18:23 [PATCH 0/1] Poppler: Fix CVE-2015-8868 Leo Famulari
@ 2016-04-30 18:23 ` Leo Famulari
  0 siblings, 0 replies; 2+ messages in thread
From: Leo Famulari @ 2016-04-30 18:23 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/pdf.scm (poppler)[replacement]: New field.
(poppler/fixed): New variable.
* gnu/packages/patches/poppler-CVE-2015-8868.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
 gnu/local.mk                                     |  1 +
 gnu/packages/patches/poppler-CVE-2015-8868.patch | 30 ++++++++++++++++++++++++
 gnu/packages/pdf.scm                             |  8 +++++++
 3 files changed, 39 insertions(+)
 create mode 100644 gnu/packages/patches/poppler-CVE-2015-8868.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 7556fa7..e45405f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -681,6 +681,7 @@ dist_patch_DATA =						\
   gnu/packages/patches/plink-1.07-unclobber-i.patch		\
   gnu/packages/patches/plotutils-libpng-jmpbuf.patch		\
   gnu/packages/patches/polkit-drop-test.patch			\
+  gnu/packages/patches/poppler-CVE-2015-8868.patch		\
   gnu/packages/patches/portaudio-audacity-compat.patch		\
   gnu/packages/patches/procmail-ambiguous-getline-debian.patch  \
   gnu/packages/patches/pt-scotch-build-parallelism.patch	\
diff --git a/gnu/packages/patches/poppler-CVE-2015-8868.patch b/gnu/packages/patches/poppler-CVE-2015-8868.patch
new file mode 100644
index 0000000..ac78d32
--- /dev/null
+++ b/gnu/packages/patches/poppler-CVE-2015-8868.patch
@@ -0,0 +1,30 @@
+Fixes CVE-2015-8868 (heap overflow).
+
+Upstream source:
+https://cgit.freedesktop.org/poppler/poppler/commit/?id=b3425dd3261679958cd56c0f71995c15d2124433
+
+From b3425dd3261679958cd56c0f71995c15d2124433 Mon Sep 17 00:00:00 2001
+From: Albert Astals Cid <aacid@kde.org>
+Date: Tue, 22 Dec 2015 22:50:33 +0100
+Subject: Do not crash on invalid files
+
+Bug #93476
+
+diff --git a/poppler/Function.cc b/poppler/Function.cc
+index 67283df..ee5afc1 100644
+--- a/poppler/Function.cc
++++ b/poppler/Function.cc
+@@ -577,6 +577,10 @@ ExponentialFunction::ExponentialFunction(Object *funcObj, Dict *dict) {
+       goto err2;
+     }
+     n = obj1.arrayGetLength();
++    if (unlikely(n > funcMaxOutputs)) {
++      error(errSyntaxError, -1, "Function's C0 array is wrong length");
++      n = funcMaxOutputs;
++    }
+     for (i = 0; i < n; ++i) {
+       obj1.arrayGet(i, &obj2);
+       if (!obj2.isNum()) {
+-- 
+cgit v0.10.2
+
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 1d33be8..8f9f5dd 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -53,6 +53,7 @@
   (package
    (name "poppler")
    (version "0.37.0")
+   (replacement poppler/fixed)
    (source (origin
             (method url-fetch)
             (uri (string-append "https://poppler.freedesktop.org/poppler-"
@@ -104,6 +105,13 @@
    (license license:gpl2+)
    (home-page "http://poppler.freedesktop.org/")))
 
+(define poppler/fixed
+  (package
+    (inherit poppler)
+    (source (origin
+              (inherit (package-source poppler))
+              (patches (search-patches "poppler-CVE-2015-8868.patch"))))))
+
 (define-public poppler-qt4
   (package (inherit poppler)
    (name "poppler-qt4")
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-04-30 18:24 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-30 18:23 [PATCH 0/1] Poppler: Fix CVE-2015-8868 Leo Famulari
2016-04-30 18:23 ` [PATCH 1/1] gnu: poppler: " Leo Famulari

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).