Stephen John Smoogen wrote: > On 7 September 2017 at 16:07, Alexander Dalloz <ad+lists at uni-x.org> wrote: >> Am 07.09.2017 um 20:07 schrieb hw: >>> >>> Gordon Messmer wrote: >>>> >>>> On 09/07/2017 08:11 AM, Stephen John Smoogen wrote: >>>>> >>>>> This was always >>>>> problematic because DNS hostnames and email addresses in the RFC >>>>> standards were case insensitive >>>> >>>> >>>> >>>> Not quite. SMTP is required to treat the "local-part" of the RCPT >>>> argument as case-sensitive, and to preserve case when relaying mail. The >>>> destination is allowed to treat addresses according to local policy, but in >>>> general SMTP is case sensitive with regard to the user identifier. >>> >>> >>> Last time I checked, RFCs said that local parts *should not* be case >>> sensitive, >>> and cyrus defaulted to treat them case sensitive, which is a default that >>> usually >>> needs to be changed because senders of messages tend to not pay any >>> attention to >>> the case sensitiveness of recipient addresses at all, which then confuses >>> them like >>> any other error. >> >> >> The relevant part from the RFC: >> >> https://www.ietf.org/rfc/rfc5321.txt >> >> 2.4. General Syntax Principles and Transaction Model >> >> Verbs and argument values (e.g., "TO:" or "to:" in the RCPT command >> and extension name keywords) are not case sensitive, with the sole >> exception in this specification of a mailbox local-part (SMTP >> Extensions may explicitly specify case-sensitive elements). That is, >> a command verb, an argument value other than a mailbox local-part, >> and free form text MAY be encoded in upper case, lower case, or any >> mixture of upper and lower case with no impact on its meaning. The >> local-part of a mailbox MUST BE treated as case sensitive. >> Therefore, SMTP implementations MUST take care to preserve the case >> of mailbox local-parts. In particular, for some hosts, the user >> "smith" is different from the user "Smith". However, exploiting the >> case sensitivity of mailbox local-parts impedes interoperability and >> is discouraged. Mailbox domains follow normal DNS rules and are >> hence not case sensitive. >> for maximum interoperability, a host that expects to receive mail SHOULD avoid defining mailboxes where the Local-part requires (or uses) the Quoted-string form or where the Local-part is case- sensitive. > > Thanks for the clarification to my original email. I misremembered > RFC821 and thought it was for the entire part.. > > Commands and replies are not case sensitive. That is, a command or > reply word may be upper case, lower case, or any mixture of upper and > lower case. Note that this is not true of mailbox user names. For > some hosts the user name is case sensitive, and SMTP implementations > must take case to preserve the case of user names as they appear in > mailbox arguments. Host names are not case sensitive. RFC2821, section 4.1.2: " for maximum interoperability, a host that expects to receive mail SHOULD avoid defining mailboxes where the Local-part requires (or uses) the Quoted-string form or where the Local-part is case- sensitive. " It comes down to that case-preservation is demanded from the implementations of protocols while, pragmatically, local parts are encouraged to be case insensitive. More than a decade ago, I argued that the default used by cyrus be changed to treat local parts case insensitve. About 2 years ago, that still hadn´t changed. So everyone deploying cyrus, be aware. Other than that, cyrus always worked flawlessly, and I highly recommend it to everyone needing an IMAP server.