~ubuntu-branches/ubuntu/vivid/freetype/vivid-proposed

« back to all changes in this revision

Viewing changes to debian/patches-freetype/CVE-2014-96xx/CVE-2014-9668.patch

  • Committer: Package Import Robot
  • Author(s): Marc Deslauriers
  • Date: 2015-02-24 11:28:03 UTC
  • Revision ID: package-import@ubuntu.com-20150224112803-k20pw5pv807q5jcv
Tags: 2.5.2-2ubuntu3
* SECURITY UPDATE: denial of service and possible code execution via
  multiple security issues
  - debian/patches-freetype/CVE-2014-96xx/*.patch: backport a large
    quantity of upstream commits to fix multiple security issues.
  - CVE-2014-9656
  - CVE-2014-9657
  - CVE-2014-9658
  - CVE-2014-9659
  - CVE-2014-9660
  - CVE-2014-9661
  - CVE-2014-9662
  - CVE-2014-9663
  - CVE-2014-9664
  - CVE-2014-9665
  - CVE-2014-9666
  - CVE-2014-9667
  - CVE-2014-9668
  - CVE-2014-9669
  - CVE-2014-9670
  - CVE-2014-9671
  - CVE-2014-9672
  - CVE-2014-9673
  - CVE-2014-9674
  - CVE-2014-9675

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
From f46add13895337ece929b18bb8f036431b3fb538 Mon Sep 17 00:00:00 2001
 
2
From: Werner Lemberg <wl@gnu.org>
 
3
Date: Wed, 12 Nov 2014 20:06:08 +0000
 
4
Subject: [sfnt] Fix Savannah bug #43589.
 
5
 
 
6
* src/sfnt/sfobjs.c (woff_open_font): Protect against addition
 
7
overflow.
 
8
---
 
9
Index: freetype-2.5.2/src/sfnt/sfobjs.c
 
10
===================================================================
 
11
--- freetype-2.5.2.orig/src/sfnt/sfobjs.c       2015-02-24 08:26:40.400011124 -0500
 
12
+++ freetype-2.5.2/src/sfnt/sfobjs.c    2015-02-24 08:26:40.392011070 -0500
 
13
@@ -574,8 +574,10 @@
 
14
 
 
15
 
 
16
       if ( table->Offset != woff_offset                         ||
 
17
-           table->Offset + table->CompLength > woff.length      ||
 
18
-           sfnt_offset + table->OrigLength > woff.totalSfntSize ||
 
19
+           table->CompLength > woff.length                      ||
 
20
+           table->Offset > woff.length - table->CompLength      ||
 
21
+           table->OrigLength > woff.totalSfntSize               ||
 
22
+           sfnt_offset > woff.totalSfntSize - table->OrigLength ||
 
23
            table->CompLength > table->OrigLength                )
 
24
       {
 
25
         error = FT_THROW( Invalid_Table );