Philip Prindeville wrote:

> FWIW:  I didn't see this with 2.54.

That's odd, because the bug was present in 2.54.

The problem is an off-by-one error in the function
set_slave_status_from_command.  The patch below should fix it.

Please note that the error is not exploitable for the purpose of executing
arbitrary code; the only effect is that the slave can lose track of
which generation it is, and decide it needs to restart.  There's a mild
DoS potential here, so I will be releasing 2.56 soon.

Regards,

David.

--- mimedefang-multiplexor.c-V255       2006-01-18 08:32:07.000000000 -0500
+++ mimedefang-multiplexor.c    2006-02-10 21:27:37.000000000 -0500
@@ -13,7 +13,7 @@
 ***********************************************************************/
 
 static char const RCSID[] =
-"$Id: mimedefang-multiplexor.c,v 1.237 2006/01/18 13:16:20 dfs Exp $";
+"$Id: mimedefang-multiplexor.c,v 1.238 2006/02/11 02:24:29 dfs Exp $";
 
 #include "config.h"
 #include "event_tcp.h"
@@ -1363,7 +1363,7 @@
        s->cmd = -1;
     }
 
-    while (*ptr && (*ptr != '\n') && len < MAX_STATUS_LEN) {
+    while (*ptr && (*ptr != '\n') && len < MAX_STATUS_LEN - 1) {
        char c = *ptr++;
        *out++ = c;
        len++;
_______________________________________________
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list [email protected]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang

Reply via email to