aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThiruvadi Rajaraman <trajaraman@mvista.com>2017-11-04 10:37:48 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-11-21 14:42:58 +0000
commitcdfb60a7b573c034868ef27d8eb2c667f2a7ad1d (patch)
tree311349d0d0c9f56f52b17382c94f916418b16be5
parentd83f18936a0eb470e8faf7adbd7c580c23fa3370 (diff)
downloadopenembedded-core-cdfb60a7b573c034868ef27d8eb2c667f2a7ad1d.tar.gz
ruby: Security fix for CVE-2017-9228
affects ruby < 2.4.1 Signed-off-by: Thiruvadi Rajaraman <trajaraman@mvista.com> Signed-off-by: Armin Kuster <akuster@mvista.com>
-rw-r--r--meta/recipes-devtools/ruby/ruby/CVE-2017-9228.patch26
-rw-r--r--meta/recipes-devtools/ruby/ruby_2.2.5.bb1
2 files changed, 27 insertions, 0 deletions
diff --git a/meta/recipes-devtools/ruby/ruby/CVE-2017-9228.patch b/meta/recipes-devtools/ruby/ruby/CVE-2017-9228.patch
new file mode 100644
index 0000000000..dc911bb20b
--- /dev/null
+++ b/meta/recipes-devtools/ruby/ruby/CVE-2017-9228.patch
@@ -0,0 +1,26 @@
+commit 3b63d12038c8d8fc278e81c942fa9bec7c704c8b
+Author: K.Kosako <kosako@sofnec.co.jp>
+Date: Wed May 24 13:43:25 2017 +0900
+
+ fix #60 : invalid state(CCS_VALUE) in parse_char_class()
+
+Upstream-Status: Backport
+
+CVE: CVE-2017-9228
+Signed-off-by: Thiruvadi Rajaraman <trajaraman@mvista.com>
+
+Index: ruby-2.2.5/regparse.c
+===================================================================
+--- ruby-2.2.5.orig/regparse.c 2014-09-16 08:14:10.000000000 +0530
++++ ruby-2.2.5/regparse.c 2017-08-30 11:58:25.774275722 +0530
+@@ -4458,7 +4458,9 @@
+ }
+ }
+
+- *state = CCS_VALUE;
++ if (*state != CCS_START)
++ *state = CCS_VALUE;
++
+ *type = CCV_CLASS;
+ return 0;
+ }
diff --git a/meta/recipes-devtools/ruby/ruby_2.2.5.bb b/meta/recipes-devtools/ruby/ruby_2.2.5.bb
index e29eb9c9b4..bdb2121eff 100644
--- a/meta/recipes-devtools/ruby/ruby_2.2.5.bb
+++ b/meta/recipes-devtools/ruby/ruby_2.2.5.bb
@@ -6,6 +6,7 @@ SRC_URI[sha256sum] = "30c4b31697a4ca4ea0c8db8ad30cf45e6690a0f09687e5d483c933c03c
SRC_URI += "file://prevent-gc.patch \
file://CVE-2016-7798.patch \
file://CVE-2017-9227.patch \
+ file://CVE-2017-9228.patch \
"
# it's unknown to configure script, but then passed to extconf.rb