Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-1.9.git;a=commitdiff;h=9d564ebfc6dcfc24c999e787e2efdb24f66e975e

commit 9d564ebfc6dcfc24c999e787e2efdb24f66e975e
Author: kikadf <[email protected]>
Date:   Mon Apr 14 14:43:48 2014 +0200

libyaml-0.1.4-3arcturus2-x86_64

* Fix CVE-2014-2525

diff --git a/source/lib-extra/libyaml/CVE-2014-2525.patch 
b/source/lib-extra/libyaml/CVE-2014-2525.patch
new file mode 100644
index 0000000..4b3e362
--- /dev/null
+++ b/source/lib-extra/libyaml/CVE-2014-2525.patch
@@ -0,0 +1,36 @@
+Description: CVE-2014-2525: Heap overflow when parsing YAML tags
+  The heap overflow is caused by not properly expanding a string before
+  writing to it in function yaml_parser_scan_uri_escapes in scanner.c.
+Origin: upstream
+Last-Update: 2014-03-20
+Applied-Upstream: 0.1.6
+
+--- a/src/scanner.c
++++ b/src/scanner.c
+@@ -2629,6 +2629,9 @@
+         /* Check if it is a URI-escape sequence. */
+
+         if (CHECK(parser->buffer, '%')) {
++            if (!STRING_EXTEND(parser, string))
++                goto error;
++
+             if (!yaml_parser_scan_uri_escapes(parser,
+                         directive, start_mark, &string)) goto error;
+         }
+--- a/src/yaml_private.h
++++ b/src/yaml_private.h
+@@ -133,9 +133,12 @@
+      (string).start = (string).pointer = (string).end = 0)
+
+ #define STRING_EXTEND(context,string)                                         
  \
+-    (((string).pointer+5 < (string).end)                                      
  \
++    ((((string).pointer+5 < (string).end)                                     
  \
+         || yaml_string_extend(&(string).start,                                
  \
+-            &(string).pointer, &(string).end))
++            &(string).pointer, &(string).end)) ?                              
  \
++         1 :                                                                  
  \
++        ((context)->error = YAML_MEMORY_ERROR,                                
  \
++         0))
+
+ #define CLEAR(context,string)                                                 
  \
+     ((string).pointer = (string).start,                                       
  \
diff --git a/source/lib-extra/libyaml/FrugalBuild 
b/source/lib-extra/libyaml/FrugalBuild
index fa77628..cfb92d3 100644
--- a/source/lib-extra/libyaml/FrugalBuild
+++ b/source/lib-extra/libyaml/FrugalBuild
@@ -6,7 +6,7 @@ options+=('asneeded')
pkgname=libyaml
_F_archive_name="yaml"
pkgver=0.1.4
-pkgrel=3arcturus1
+pkgrel=3arcturus2
pkgdesc="LibYAML is a YAML 1.1 parser and emitter written in C."
url="http://pyyaml.org/wiki/LibYAML";
depends=('glibc')
@@ -18,8 +18,9 @@ _F_cd_path="yaml-$pkgver"
sha1sums=('e0e5e09192ab10a607e3da2970db492118f560f2')

# FSA fix ***
-source=(${source[@]} CVE-2013-6393.patch)
-sha1sums=(${sha1sums[@]} '353c869c1e9a691dfac5a1e0daa4201e5dfee7c8')
+source=(${source[@]} CVE-2013-6393.patch CVE-2014-2525.patch)
+sha1sums=(${sha1sums[@]} '353c869c1e9a691dfac5a1e0daa4201e5dfee7c8' \
+                         '6065e7492bf6e4e949a4c2c70abab9595e521202')
# ***********

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

Reply via email to