sendmail newbie question

Marty Landman MLandman at face2interface.com
Sun Nov 30 08:48:26 PST 2003


At 04:14 AM 11/30/2003, Matthew Seaman wrote:

>Try changing your user account to 'marty' -- all lower case.  Use
>vipw(8) to do that.  In general under Unix, usernames are almost
>always all lower case and so are most host and domainnames.

Ohhh, didn't know that. Thanks Matthew, this worked.

>The problem is that sendmail(8) [ or any standards compliant MTA ]
>expects e-mail addresses to be case insensitive.

I knew that emails to

mlandman at face2interface.com
MLandman at face2interface.com

are both handled the same way, but assumed the case insensitivity was a 
feature of the whole enchilada if you know what I mean.

>The tricky part is the username -- here sendmail just passes the
>username through in whatever case it gets *except* when it does final
>delivery (ie. when it passes the message to the local delivery agent).
>At that point, it maps the username to lowercase

[snip]

>However on unix systems, user 'Marty' is not
>automatically the same as user 'marty' or as user 'MARTY'.

If I understand correctly you're saying that by and large, modern Unix 
systems are case sensitive but since email is not the mailbox name e.g. 
'Marty' is converted to lower case at some point in processing even if 
mixed case is used by the person sending the email properly wrt the 
server's config it will still fail unless everything's all lower case 
because of the case conversion done behind the scenes?

>It is possible to set up sendmail to preserve the case of usernames
>but doing so would mean your mail system wouldn't be standards
>compliant, so I'll keep quiet on the issue -- unless anyone really
>does have a burning desire to know how?

Not me, because that would mean Marty at localhost would be a different 
address than marty at localhost, right? I have to agree that this is not imo a 
good thing.

However it would be nice if any comparisons that get poisoned by the case 
conversion were themselves case insensitive e.g. uid =~ /$uid/i [in Perl] 
so that I could still have Marty as a user on my server. This does seem to 
help explain why on my web accounts my uid is case insensitive. Albeit they 
must have an lc convertor on the front end because mixed case works as well 
as lower case.


Marty Landman   Face 2 Interface Inc 845-679-9387
Sign On Required: Web membership software for your site
Make a Website: http://face2interface.com/Home/Demo.shtml



More information about the freebsd-questions mailing list