On Fri, 2005-01-28 at 13:48 +0200, Andrew Lewis wrote:
> 2005-01-28 12:59:42 SMTP protocol violation: synchronization error
> (next input sent too soon: pipelining was advertised): rejected
> "Content-Type: multipart/mixed; boundary="----------
> =_1106909982-9816-0"" H=(localhost.localdomain) [127.0.0.1] next
> input="Content-Transfer-Encoding: binary\r\nMIME-Version: 1.0\r\nX-
> Mailer: MIME-tools 5.411 (Entity 5.404)\r\nFrom: The Rascal Server\r
> \nTo: al@???\r\nSubject: Ge"
>
> ^- What does this error indicate?
>
> I'm trying to send mail with Net::SMTP again, but never seen this
> error before. Google comes up with nothing.
After sending the DATA command you should wait for a response (to the
DATA command) before you send the message content.
Since DATA is a synchronisation point for pipelining, there may be a
number of earlier status responses in transit which need to be read and
processed as well before you send the message content.
In this case exim detected that there was further data following the
DATA command, but exim had not yet sent a response to DATA, so the
sender was not playing by the rules. This is an absolutely typical sign
of a pump-and-dump spammer.
Make sure your SMTP client code waits for, and checks the values of,
status messages for each command you sent. If you are pipelining then
things are a little more complex, but not overly so.
Nigel.
--
[ Nigel Metheringham Nigel.Metheringham@??? ]
[ - Comments in this message are my own and not ITO opinion/policy - ]