Blame SOURCES/libyaml-CVE-2013-6393-indent-and-flow-overflow-3-of-3.patch

cb67ac
# HG changeset patch
cb67ac
# User Kirill Simonov <xi@resolvent.net>
cb67ac
# Date 1391409843 21600
cb67ac
#      Mon Feb 03 00:44:03 2014 -0600
cb67ac
# Node ID af3599437a87162554787c52d8b16eab553f537b
cb67ac
# Parent  0df2fb962294f3a6df1450a3e08c6a0f74f9078c
cb67ac
Forgot to set the error state.
cb67ac
cb67ac
diff -r 0df2fb962294 -r af3599437a87 src/scanner.c
cb67ac
--- a/src/scanner.c	Mon Feb 03 00:26:46 2014 -0600
cb67ac
+++ b/src/scanner.c	Mon Feb 03 00:44:03 2014 -0600
cb67ac
@@ -1176,8 +1176,10 @@
cb67ac
 
cb67ac
     /* Increase the flow level. */
cb67ac
 
cb67ac
-    if (parser->flow_level == INT_MAX)
cb67ac
+    if (parser->flow_level == INT_MAX) {
cb67ac
+        parser->error = YAML_MEMORY_ERROR;
cb67ac
         return 0;
cb67ac
+    }
cb67ac
 
cb67ac
     parser->flow_level++;
cb67ac
 
cb67ac
@@ -1229,8 +1231,10 @@
cb67ac
         if (!PUSH(parser, parser->indents, parser->indent))
cb67ac
             return 0;
cb67ac
 
cb67ac
-        if (column > INT_MAX)
cb67ac
+        if (column > INT_MAX) {
cb67ac
+            parser->error = YAML_MEMORY_ERROR;
cb67ac
             return 0;
cb67ac
+        }
cb67ac
 
cb67ac
         parser->indent = column;
cb67ac