else if (dot != NULL) {  *dot = '.'; if (strcasecmp(name, p) == 0) found = TRUE; *dot = '\0'; }
extract_canonname(name, line, cbuf, cbuflen)	char *name;	char *line;	char cbuf[];	int cbuflen;{	int i;	char *p;	bool found = FALSE;	cbuf[0] = '\0';	if (line[0] == '#')		return FALSE;	for (i = 1; ; i++)	{		char nbuf[MAXNAME + 1];		p = get_column(line, i, '\0', nbuf, sizeof nbuf);		if (p == NULL)			break;		if (*p == '\0')			continue;		if (cbuf[0] == '\0' ||		    (strchr(cbuf, '.') == NULL && strchr(p, '.') != NULL))		{			snprintf(cbuf, cbuflen, "%s", p);		}		if (strcasecmp(name, p) == 0)			found = TRUE;	}	if (found && strchr(cbuf, '.') == NULL)	{		/* try to add a domain on the end of the name */		char *domain = macvalue('m', CurEnv);		if (domain != NULL &&		    strlen(domain) + (i = strlen(cbuf)) + 1 < (size_t) cbuflen)		{			p = &cbuf[i];			*p++ = '.';			(void) strlcpy(p, domain, cbuflen - i - 1);		}	}	return found;}