[exim-cvs] Raise smtp_cmd_buffer_size to 16384.

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Exim Git Commits Mailing List
Date:  
À: exim-cvs
Sujet: [exim-cvs] Raise smtp_cmd_buffer_size to 16384.
Gitweb: http://git.exim.org/exim.git/commitdiff/e2ca70829c8ec70da1fcc0aecbdf50cc3f28527a
Commit:     e2ca70829c8ec70da1fcc0aecbdf50cc3f28527a
Parent:     52ba4661114d0a96c15f5f43bcb97ce89061f1b6
Author:     Phil Pennock <pdp@???>
AuthorDate: Sat Aug 27 11:58:44 2011 -0700
Committer:  Phil Pennock <pdp@???>
CommitDate: Sat Aug 27 12:09:10 2011 -0700


    Raise smtp_cmd_buffer_size to 16384.


    Needed to interoperate with SASL commands containing a large
    initial-response; in practice, GSSAPI with authorisation data, such as
    in a Windows domain.


    Patch from Paul Fisher.


    fixes bug 879
---
 doc/doc-txt/ChangeLog |    3 +++
 src/src/smtp_in.c     |   11 ++++++++---
 2 files changed, 11 insertions(+), 3 deletions(-)


diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog
index 2db30fe..0441c32 100644
--- a/doc/doc-txt/ChangeLog
+++ b/doc/doc-txt/ChangeLog
@@ -88,6 +88,9 @@ TF/06 Removed a few PCRE remnants.
 TF/07 Automatically extract Exim's version number from tags in the git
       repository when doing development or release builds.


+PP/02 Raise smtp_cmd_buffer_size to 16kB. Patch from Paul Fisher.
+      Bugzilla 879.
+


Exim version 4.76
-----------------
diff --git a/src/src/smtp_in.c b/src/src/smtp_in.c
index f1c7aec..7ca56e2 100644
--- a/src/src/smtp_in.c
+++ b/src/src/smtp_in.c
@@ -36,9 +36,14 @@ uschar *tcp_wrappers_name;
/* Size of buffer for reading SMTP commands. We used to use 512, as defined
by RFC 821. However, RFC 1869 specifies that this must be increased for SMTP
commands that accept arguments, and this in particular applies to AUTH, where
-the data can be quite long. */
+the data can be quite long. More recently this value was 2048 in Exim;
+however, RFC 4954 (circa 2007) recommends 12288 bytes to handle AUTH. Clients
+such as Thunderbird will send an AUTH with an initial-response for GSSAPI.
+The maximum size of a Kerberos ticket under Windows 2003 is 12000 bytes, and
+we need room to handle large base64-encoded AUTHs for GSSAPI.
+*/

-#define smtp_cmd_buffer_size 2048
+#define smtp_cmd_buffer_size 16384

/* Size of buffer for reading SMTP incoming packets */