[exim-cvs] Ensure output buffer big enough for DSN additions…

Startseite
Nachricht löschen
Nachricht beantworten
Autor: Exim Git Commits Mailing List
Datum:  
To: exim-cvs
Betreff: [exim-cvs] Ensure output buffer big enough for DSN additions to MAIL FROM. Bug 1482
Gitweb: http://git.exim.org/exim.git/commitdiff/984702029ad4e6a1686dd801811a68f6034e6b38
Commit:     984702029ad4e6a1686dd801811a68f6034e6b38
Parent:     ed3bba5f12882a3dc7eb58a7adcb307db6ce8d07
Author:     Jeremy Harris <jgh146exb@???>
AuthorDate: Mon May 26 16:07:33 2014 +0100
Committer:  Jeremy Harris <jgh146exb@???>
CommitDate: Wed Jun 4 16:25:40 2014 +0100


    Ensure output buffer big enough for DSN additions to MAIL FROM.  Bug 1482
---
 src/src/smtp_out.c        |    4 ++++
 src/src/transports/smtp.c |    2 +-
 2 files changed, 5 insertions(+), 1 deletions(-)


diff --git a/src/src/smtp_out.c b/src/src/smtp_out.c
index 0fa4ccd..b6ff511 100644
--- a/src/src/smtp_out.c
+++ b/src/src/smtp_out.c
@@ -352,6 +352,10 @@ if (!string_vformat(big_buffer, big_buffer_size, CS format, ap))
va_end(ap);
count = Ustrlen(big_buffer);

+if (count > outblock->buffersize)
+  log_write(0, LOG_MAIN|LOG_PANIC_DIE, "overlong write_command in outgoing "
+    "SMTP");
+
 if (count > outblock->buffersize - (outblock->ptr - outblock->buffer))
   {
   rc = outblock->cmd_count;                 /* flush resets */
diff --git a/src/src/transports/smtp.c b/src/src/transports/smtp.c
index 33c91a6..40eebe8 100644
--- a/src/src/transports/smtp.c
+++ b/src/src/transports/smtp.c
@@ -1228,7 +1228,7 @@ uschar new_message_id[MESSAGE_ID_LENGTH + 1];
 uschar *p;
 uschar buffer[4096];
 uschar inbuffer[4096];
-uschar outbuffer[1024];
+uschar outbuffer[4096];


suppress_tls = suppress_tls; /* stop compiler warning when no TLS support */