From e2ca70829c8ec70da1fcc0aecbdf50cc3f28527a Mon Sep 17 00:00:00 2001 From: Phil Pennock Date: Sat, 27 Aug 2011 11:58:44 -0700 Subject: [PATCH] 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 | 9 +++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog index 2db30fed7..0441c326e 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 f1c7aec34..7ca56e255 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 */ -- 2.25.1