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. Alexander
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. >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.> Alexander > > _______________________________________________ > CentOS mailing list > CentOS at centos.org > https://lists.centos.org/mailman/listinfo/centos-- Stephen J Smoogen.
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 mailSHOULD 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.
Alexander Dalloz 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.That?s the implementation of the protocol, see my previous post, and: " Any system that includes an SMTP server supporting mail relaying or delivery MUST support the reserved mailbox "postmaster" as a case- insensitive local name. " also from RFC 2821, section 4.5.1. Of course, this is a special case; I just can?t find the part wich exactly said that local parts should be treated case insensitively beyond what I found in 2821. It?s even possible that it was changed. If you really want to treat local parts case sensitive, you can do so. I?d advise against it.