Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=222c562fc3ba74669c38d4c4075d9223caffd286

commit 222c562fc3ba74669c38d4c4075d9223caffd286
Author: kikadf <[email protected]>
Date:   Thu Dec 4 14:31:47 2014 +0100

tcpdump-4.5.1-3-x86_64

* Fix CVE-2014-9140

diff --git a/source/network-extra/tcpdump/CVE-2014-9140.patch 
b/source/network-extra/tcpdump/CVE-2014-9140.patch
new file mode 100644
index 0000000..e32e34b
--- /dev/null
+++ b/source/network-extra/tcpdump/CVE-2014-9140.patch
@@ -0,0 +1,40 @@
+--- a/print-ppp.c
++++ b/print-ppp.c
+@@ -1266,11 +1266,15 @@ trunc:
+ static void
+ ppp_hdlc(const u_char *p, int length)
+ {
+-      u_char *b, *s, *t, c;
++      u_char *b, *t, c;
++      const u_char *s;
+       int i, proto;
+       const void *se;
+
+-      b = (u_int8_t *)malloc(length);
++        if (length <= 0)
++                return;
++
++      b = (u_char *)malloc(length);
+       if (b == NULL)
+               return;
+
+@@ -1279,14 +1283,13 @@ ppp_hdlc(const u_char *p, int length)
+        * Do this so that we dont overwrite the original packet
+        * contents.
+        */
+-      for (s = (u_char *)p, t = b, i = length; i > 0; i--) {
++      for (s = p, t = b, i = length; i > 0 && TTEST(*s); i--) {
+               c = *s++;
+               if (c == 0x7d) {
+-                      if (i > 1) {
+-                              i--;
+-                              c = *s++ ^ 0x20;
+-                      } else
+-                              continue;
++                      if (i <= 1 || !TTEST(*s))
++                              break;
++                      i--;
++                      c = *s++ ^ 0x20;
+               }
+               *t++ = c;
+       }
diff --git a/source/network-extra/tcpdump/FrugalBuild 
b/source/network-extra/tcpdump/FrugalBuild
index 38db564..e419171 100644
--- a/source/network-extra/tcpdump/FrugalBuild
+++ b/source/network-extra/tcpdump/FrugalBuild
@@ -6,7 +6,7 @@ options+=('asneeded')

pkgname=tcpdump
pkgver=4.5.1
-pkgrel=2
+pkgrel=3
pkgdesc="Tcpdump is for dumping traffic on a network"
url="http://www.tcpdump.org";
depends=('openssl' 'libpcap>=1.2.0')
@@ -18,10 +18,12 @@ Fconfopts+=" --enable-ipv6"
sha1sums=('46d5ec107c6a1b262ad8da799f74c5d01cce8815')

# FSA fix ***
-source=(${source[@]} CVE-2014-8767.patch CVE-2014-8768.patch 
CVE-2014-8769.patch)
+source=(${source[@]} CVE-2014-8767.patch CVE-2014-8768.patch 
CVE-2014-8769.patch
+                     CVE-2014-9140.patch)
sha1sums=(${sha1sums[@]} '30dd3775306db5c2c6aca958997e37ec002cfe32' \
'cc27d8dc1967013ed33cd49e6a83da2cc0f9b6d1' \
-                         'c0ce0f81c300fd3f94f014d9eb9b52528d374e67')
+                         'c0ce0f81c300fd3f94f014d9eb9b52528d374e67' \
+                         'a3e69e24164c1f53704ccc2b70e417a7cc089628')
# ***********

# optimization OK
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to