R. David Murray added the comment:

The RFC is in fact not clear on this point.  It is entirely possible to read it 
as saying that each line of a mulitline response is limited to 512 octets.  I 
agree, however, that that is not the most reasonable interpretation.  Instead, 
the line length of RETR message lines should be governed by RFC 5322, which 
specifies a maximum line length of 998 octets.

That, however, means that technically dovecot is still broken, since 2048 is 
quite a bit larger than 998.  In reality, it means that the *internet* is 
broken, in that I presume the root of the problem is that there are mail 
originators out there that are not obeying RFC 5322 (and its 
predecessors...this limit goes back to 821/822).

We use 8192 in smtplib, and that hasn't caused any problems...but then again 
smtplib is originating email, not receiving it.  The IMAP protocol has its own 
problems, quite aside from the length of message body lines, so we ended up 
with a very large MAXLINE there.  It may be that we have no choice except to do 
something similar in poplib.

An interesting question in this context is what smtp servers do. since if 
anyone was going to reject messages with overlong lines, it would be the smtp 
server's job to do it.

nosy: +r.david.murray

Python tracker <rep...@bugs.python.org>
Python-bugs-list mailing list

Reply via email to