From: jst@inews.intel.com (Jason Thomasser)
Subject: Re: Using sendmail to print Full name as mail address
Organization: Intel Corporation, Santa Clara, CA USA
Date: Fri, 21 Aug 1992 18:36:44 GMT

In article <1992Aug21.091754@bldrdoc.gov> coleman@bldrdoc.gov (Sean Coleman 497-5672 ) writes:
>
>I would like to set up email here so that users who use
>the domain name as their mail address can have their email
>address be their fullname@domainname like people at Sun
>Microsystems. For example, my login name is coleman but
>I would like my email address to be Sean.Coleman@bldrdoc.gov.
>Does anybody know a way to get sendmail from Sun to do this
>conversion? How about generic sendmail like Sendmail.IDA.
>
>Your help is appreciated.
>
>Thanks 
>
>Sean Coleman
>coleman@bldrdoc.gov

Sean-

Please refer to he following in /usr/lib/sendmail.main.cf (under sunos4.1)

############################################################
#
#               DDN Mailer specification
#
#       Send mail on the Defense Data Network
#          (such as Arpanet or Milnet)

Mddn,   P=[TCP], F=msDFMuCX, S=22, R=22, A=TCP $h, E=\r\n

# map containing the inverse of mail.aliases
DZmail.byaddr

S22
R$*<@LOCAL>$*           $:$1
R$-<@$->                $:$>3${Z$1@$2$}                 invert aliases
R$*<@$+.$*>$*           $@$1<@$2.$3>$4                  already ok
R$+<@$+>$*              $@$1<@$2.$m>$3                  tack on our domain
R$+                     $@$1<@$m>                       tack on our domain


What you are looking for is a built in feature of SunOS with its use 
of sendmail integrated with NIS (I believe AIX3.2 also supports this). 
Basically if you refer to the sendmail.cf (above) there is a reference 
to the NIS map mail.byaddr. This is generated when you push your maps by the 
command mkalias. You need to add the -s -n options to mkalias (by default
in /var/yp/Makefile) like this:

MKALIAS=$(YPDIR)/mkalias -s -n

When generating the map and the NIS alias file needs to be in the format.

uid:			full.name
uid-alias:		full.name
full.name:				uid@mailserver

what mkalias does is create a mapping of uid@mailserver to full.name. So,
the trick here is to insure that all mail which your want to "reverse map"
comes in from uid@mailserver. Also you want your master mail hub
to have accurate information on all your users. Be warned that you have
to specify a mailserver (other wise you have an alias loop) and that
it makes life mush easier if the master mail machine is dedicated to that 
function (not acting as a direct mailserver to any users due to subtle
sendmail rewrites you have to contend with).

OK so say you have a dedidicated master mail machine and you get mail
from uid@mailserver off your local net to be sent out the default
ddn mailer specification. This passes senders address through rewriting
rule set 22. This rule set says (if you match):

R$-<@$->                $:$>3${Z$1@$2$}                 invert aliases

What this does is apply $1@$2 (hopefully uid@mailserver) as an 
argument to match against the map defined by sendmail variable Z (mail.byaddr), 
and returning full.name (if all is ok), otherwise it just contines through 
the sendmail.cf matchlist. Finally it reaches the line:

R$+                     $@$1<@$m>                       tack on our domain

and it does what is says, tacks on your domainname and there you have it, 
a fully reversed alias with the appropriate domainame with the added benefit
of hiding internal host names.

As for IDA don't know. Any one else?

Jason Thomasser

Any questions, call the number below.



 Jason Thomasser                          | Thomasser Enterprise Networks
 jst@netcom.com                           | 139 School St #3
 IP WAN/LAN, DNS, Sendmail, NIS, NNTP     | Santa Cruz, CA 95060 (408)458-0379