packages: exim/exim-fixes.patch (NEW) - fixes from cvs

arekm arekm at pld-linux.org
Thu Apr 30 20:47:55 CEST 2009


Author: arekm                        Date: Thu Apr 30 18:47:55 2009 GMT
Module: packages                      Tag: HEAD
---- Log message:
- fixes from cvs

---- Files affected:
packages/exim:
   exim-fixes.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/exim/exim-fixes.patch
diff -u /dev/null packages/exim/exim-fixes.patch:1.1
--- /dev/null	Thu Apr 30 20:47:55 2009
+++ packages/exim/exim-fixes.patch	Thu Apr 30 20:47:49 2009
@@ -0,0 +1,59 @@
+commit beffd0f44d8018be15af4f6159a7cf589f062eb5
+Author: fanf2 <fanf2>
+Date:   Mon Jan 28 18:24:07 2008 +0000
+
+    Bugzilla 662: Fix stack corruption before exec() in daemon.c.
+
+diff --git a/src/daemon.c b/src/daemon.c
+index 4b8ca4d..427ef41 100644
+--- a/src/daemon.c
++++ b/src/daemon.c
+@@ -1,4 +1,4 @@
+-/* $Cambridge: exim/exim-src/src/daemon.c,v 1.24 2007/06/27 11:01:51 ph10 Exp $ */
++/* $Cambridge: exim/exim-src/src/daemon.c,v 1.25 2008/01/28 18:24:07 fanf2 Exp $ */
+ 
+ /*************************************************
+ *     Exim - an Internet mail transport agent    *
+@@ -1661,7 +1661,7 @@ for (;;)
+           {
+           uschar opt[8];
+           uschar *p = opt;
+-          uschar *extra[4];
++          uschar *extra[5];
+           int extracount = 1;
+ 
+           signal(SIGALRM, SIG_DFL);
+commit d825f0e6652a97b194daf4bc8b8eae445f770a0d
+Author: nm4 <nm4>
+Date:   Fri Dec 12 14:36:37 2008 +0000
+
+    Buffer overrun fix. fixes: bug #787
+
+diff --git a/src/string.c b/src/string.c
+index 7f2447b..ef39cac 100644
+--- a/src/string.c
++++ b/src/string.c
+@@ -1,4 +1,4 @@
+-/* $Cambridge: exim/exim-src/src/string.c,v 1.13 2007/02/26 14:07:04 ph10 Exp $ */
++/* $Cambridge: exim/exim-src/src/string.c,v 1.14 2008/12/12 14:36:37 nm4 Exp $ */
+ 
+ /*************************************************
+ *     Exim - an Internet mail transport agent    *
+@@ -1267,10 +1267,17 @@ while (*fp != 0)
+     not OK, add part of the string (debugging uses this to show as
+     much as possible). */
+ 
++    if (p == last)
++      {
++      yield = FALSE;
++      goto END_FORMAT;
++      }
+     if (p >= last - width)
+       {
+       yield = FALSE;
+       width = precision = last - p - 1;
++      if (width < 0) width = 0;
++      if (precision < 0) precision = 0;
+       }
+     sprintf(CS p, "%*.*s", width, precision, s);
+     if (fp[-1] == 'S')
================================================================


More information about the pld-cvs-commit mailing list