Path: utzoo!utgpu!watmath!att!dptg!rutgers!ucsd!ucbvax!ANDREW.CMU.EDU!cfe+
From: cfe+@ANDREW.CMU.EDU ("Craig F. Everhart")
Newsgroups: comp.soft-sys.andrew
Subject: Re: Mail Guru Sought
Message-ID: 
Date: 22 Sep 89 19:57:08 GMT
References: 
Sender: daemon@ucbvax.BERKELEY.EDU
Distribution: inet
Organization: The Internet
Lines: 57

(a) Your crazy ``name'' is due to a bug in the X.V11R3 copy of Andrew,
in one file.  I described a patch to that file in a message to
info-andrew on 8/8/89; I reproduce it here:
----------------
I believe that this problem is one I fixed a couple of weeks ago in andrew/ams/libs/ms/init.c, the GetNameFromGecos... procedure.  Naturally, there have been other changes to this procedure, not the least of which was renaming it from GetNameFromGecosField to GetNameFromGecos and changing its arguments), but I bet that you could change the code at line 563 of andrew/ams/libs/ms/init.c from:
 	if (*newname) {
 	    strncpy(*newname, start, prefixlen);
 	    if (ampersand) {
 		char *uname = (*newname) + prefixlen;
 		strcpy(uname, p->pw_name);
 		if (islower(*uname)) *uname = toupper(*uname);
 		strcat(*newname, ampersand+1);
 	    }
 	}
to:
 	if (*newname) {
 	    strncpy(*newname, start, prefixlen);
 	    if (ampersand) {
 		char *uname = (*newname) + prefixlen;
 		strcpy(uname, p->pw_name);
 		if (islower(*uname)) *uname = toupper(*uname);
 		strcat(*newname, ampersand+1);
 	    } else {
		char *uname = (*newname) + prefixlen;
		*uname = '\0';
	    }
 	}
and it would work better.  That is, in the case where there wasn't a ``&'' in your pw_gecos field, the name wasn't null-terminated, and this causes the route-phrase in a validated address to have random garbage after it.
All this was in the version with this RCS header:
$Header: /afs/andrew.cmu.edu/usr13/cfe/src/ams/libs/ms/test/RCS/init.c,v 2.2 88/10/02 15:42:19 ghoti Exp $
Your mileage and line numbers may vary.
----------------

(b) Without seeing your .AMS.flames file, it's hard to know why you'd
get an ``empty symbol'' complaint.

(c) You tell AMS about the domain service by:
	- defining RESOLVER_ENV in your config/andrewenv.h (andyenv.h?) file,
	- defining the correct string for RESOLVLIB in your config/system.mcr
file,
	- re-makeing makefiles to pick up those changes,
	- re-makeing ``install'' in directory andrew/overhead/mail/lib,
	- re-makeing ``install'' in directory andrew/ams/msclients
All that does is assure that you have 
	- maybe editing your AndrewSetup file (or your
andrew/overhead/mail/lib/mailconfig.c file) to enable or disable one or
more of the options:
		AMS_DeliveryViaDomainMXAddress
		AMS_DeliveryViaDomainAddress
		AMS_DeliveryViaGethostbyname
		AMS_DeliveryViaHostTable

Thanks,
Craig Everhart
Andrew message system