components/unzip/patches/CVE-2015-7697.patch
author Jingning Ji <jingning.ji@oracle.com>
Thu, 13 Oct 2016 15:53:44 -0700
changeset 7113 cca3def5f97d
parent 5848 033405379235
permissions -rw-r--r--
24759774 Upgrade xml-libxml to 2.0128
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5848
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     1
From: Kamil Dudka <[email protected]>
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     2
Date: Mon, 14 Sep 2015 18:24:56 +0200
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     3
Subject: fix infinite loop when extracting empty bzip2 data
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     4
Bug-Debian: https://bugs.debian.org/802160
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     5
Bug-RedHat: https://bugzilla.redhat.com/show_bug.cgi?id=1260944
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     6
Origin: other, https://bugzilla.redhat.com/attachment.cgi?id=1073339
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     7
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     8
---
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     9
 extract.c | 6 ++++++
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    10
 1 file changed, 6 insertions(+)
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    11
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    12
--- a/extract.c
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    13
+++ b/extract.c
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    14
@@ -2728,6 +2728,12 @@ __GDEF
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    15
     int repeated_buf_err;
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    16
     bz_stream bstrm;
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    17
 
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    18
+    if (G.incnt <= 0 && G.csize <= 0L) {
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    19
+        /* avoid an infinite loop */
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    20
+        Trace((stderr, "UZbunzip2() got empty input\n"));
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    21
+        return 2;
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    22
+    }
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    23
+
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    24
 #if (defined(DLL) && !defined(NO_SLIDE_REDIR))
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    25
     if (G.redirect_slide)
033405379235 21802965 problem in UTILITY/ZIP
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    26
         wsize = G.redirect_size, redirSlide = G.redirect_buffer;