James:
> Replying to myself,
>
> > Jun 8 07:10:03 ip-10-160-125-11 postfix/smtp[4735]: >
> > example.com[72.34.48.xxx]:25: DATA
> > Jun 8 07:10:03 ip-10-160-125-11 postfix/smtp[4735]: <
> > example.com[72.34.48.xxx]:25: 250 OK
>
> I believe that this is the problem, the correct response from the
> "busted server" should have been 354, but for some reason it's dropped a
> 250.
>
> Am I right?
You're incorrect.
With PIPELINING turned on, the first reply after the client DATA
command is the server's response for the client MAIL FROM command.
client: MAIL FROM:<sender>
client: RCPT TO:<recipient>
client: DATA
server: reply for MAIL FROM
server: reply for RCPT TO
server: reply for DATA <<===THIS IS THE DATA REPLY
> I can confirm that if the PIPELINING feature is ignored by postfix, then
> everything is fine.
Sure, not for the reason that you cite above.
Wietse