[lfs-patches] r3088 - trunk/mutt

ken at higgs.linuxfromscratch.org ken at higgs.linuxfromscratch.org
Sat Dec 27 15:17:18 PST 2014


Author: ken
Date: Sat Dec 27 15:17:18 2014
New Revision: 3088

Log:
patch mutt for CVE-2014-9116.

Added:
   trunk/mutt/mutt-1.5.23-upstream_fixes-1.patch

Added: trunk/mutt/mutt-1.5.23-upstream_fixes-1.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ trunk/mutt/mutt-1.5.23-upstream_fixes-1.patch	Sat Dec 27 15:17:18 2014	(r3088)
@@ -0,0 +1,50 @@
+Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
+Date: 2014-12-27
+Initial Package Version: 1.5.23
+Upstream Status: Applied
+Origin: Kevin McCarthy
+Description: Fixes CVE-2014-9116
+
+# HG changeset patch
+# User Kevin McCarthy <kevin at 8t8.us>
+# Date 1417472364 28800
+#      Mon Dec 01 14:19:24 2014 -0800
+# Branch stable
+# Node ID 54c59aaf88b9f6b50f1078fc6f7551fa9315ac3e
+# Parent  1b583341d5ad677c8a1935eb4110eba27606878a
+Revert write_one_header() to skip space and tab.  (closes #3716)
+
+This patch fixes CVE-2014-9116 in the stable branch.  It reverts
+write_one_header() to the pre [f251d523ca5a] code for skipping
+whitespace.
+
+Thanks to Antonio Radici and Tomas Hoger for their analysis and patches
+to mutt, which this patch is based off of.
+
+diff --git a/sendlib.c b/sendlib.c
+--- a/sendlib.c
++++ b/sendlib.c
+@@ -1809,17 +1809,22 @@
+     {
+       tagbuf = NULL;
+       valbuf = mutt_substrdup (start, end);
+     }
+     else
+     {
+       tagbuf = mutt_substrdup (start, t);
+       /* skip over the colon separating the header field name and value */
+-      t = skip_email_wsp(t + 1);
++      ++t;
++
++      /* skip over any leading whitespace (WSP, as defined in RFC5322) */
++      while (*t == ' ' || *t == '\t')
++        t++;
++
+       valbuf = mutt_substrdup (t, end);
+     }
+     dprint(4,(debugfile,"mwoh: buf[%s%s] too long, "
+ 	      "max width = %d > %d\n",
+ 	      NONULL(pfx), valbuf, max, wraplen));
+     if (fold_one_header (fp, tagbuf, valbuf, pfx, wraplen, flags) < 0)
+       return -1;
+     FREE (&tagbuf);


More information about the patches mailing list