On 4/15/2013 7:24 AM, Jan P. Kessler wrote: > Hi, > > sorry, I know this is not directly related to postfix but I know that > there are several very experienced people reading this list. My question > is how you (the people that use and administer mailservers) handle the > localpart case sensivity according to rfc5321: > > "The local-part of a mailbox MUST BE treated as case sensitive." > > Background ist the development of postfwd rate limiting, which allows > amongst others to place maximum values (count or volume) for sender or > recipient addresses. To do so postfwd creates a hash with the given > address as index. At the moment it is easy to "trick" such limits by > varying the case of the addresses, meaning that postfwd will create > different counters for bob@alice.local, BoB@alice.local and bob@AlicE.local. > > No question - with future versions postfwd will definitely treat the > domainpart case-insensitive, so that bob@alice.local and bob@AlicE.local > will have the same counter. But for the localpart I see two options, > wondering which I should choose: > > 1.) Being strictly rfc5321 compliant: > By default postfwd creates two different counters for bob@alice.local > and BoB@alice.local. To change this the admin has to specify > --non-rfc5321-rate-case-sensivity (or s.th. similar). > > 2.) Being real-world compliant: > By default postfwd uses the same counter for bob@alice.local and > BoB@alice.local. To change this the admin has to specify > --strict-rfc5321-rate-case-sensivity. > > What's your opinion on that? Do you know any real-world systems that > distinguish between bob@alice.local and BoB@alice.local (means that both > point to different mailboxes). > > Thank you in advance > Jan >
I believe the RFC is mostly saying that MTAs must not alter the localpart case prior to final delivery, which postfwd cannot do regardless. As for a sane default, case-insensitive makes the most sense as that will be the overwhelming majority of end users. The option to enable case-sensitive operation should probably be a per-domain property. But almost no one will use it. Several years ago I worked with some windows-based mail system that had case-sensitive localparts, so they do -- or did -- exist. Fortunately that customer just used all-lowercase usernames. (Their users were constantly getting failed mail because they forgot to lower-case the username. I can't imagine anyone doing this on purpose.) -- Noel Jones