Paul Overell | 4 Feb 2000 17:53

RFC2449 syntax


Some comments on the syntax given in RFC2449.

In RFC2449 para 3.  General Command and Response Grammar

>
>     greeting     =  "+OK" [resp-code] *gchar [timestamp] *gchar CRLF                          
>

This fails to require a space after the +OK, I suggest

      greeting     =  "+OK" [SP [resp-code] *gchar [timestamp] *gchar] CRLF                          

>
>     text         =  *schar / resp-code *CHAR 
>

This syntax is correct if the server supports RESP-CODES but is otherwise overly
restrictive, I suggest either

     text         =  (*schar / resp-code *CHAR) /       ; if RESP-CODES supported
                     *CHAR                              ; otherwise

More controversial:

>
>      dot-stuffed  =  *CHAR CRLF                  ;must be dot-stuffed
>

This prohibits downloading messages containing 8 bit characters.  RFC1939 does not
explicitly outlaw 8bit characters, however, it does say messages "are assumed to
conform to ... [RFC822]", which could be interpreted as an implicitly outlawing
8bit characters.  

As ESMTP permits the transmission of 8bit MIME messages (and it is not unknown
using SMTP) are we to prevent users from collecting them via POP3?  I suggest:

        dot-stuffed = *OCTET CRLF               ; must be dot-stuffed

Regards
--

-- 
Paul Overell                                             T U R N P I K E


Gmane