!CompareHostname(Host, HTHostName()))) {
PUBLIC BOOL override_proxy ARGS1(	CONST char *,	addr){    CONST char * no_proxy = getenv("no_proxy");    char * p = NULL;    char * at = NULL;    char * host = NULL;    char * Host = NULL;    char * acc_method = NULL;    int port = 0;    int h_len = 0;    /*     * Check for global override.     */    if (no_proxy) {	if (!strcmp(no_proxy, "*"))	    return YES;    }    /*     *	Never proxy file:// URLs if they are on the local host.     *	HTLoadFile() will not attempt ftp for those if direct     *	access fails.  We'll check that first, in case no_proxy     *	hasn't been defined. - FM     */    if (!addr)	return NO;    if (!(host = HTParse(addr, "", PARSE_HOST)))	return NO;    if (!*host) {	FREE(host);	return NO;    }    Host = (((at = strchr(host, '@')) != NULL) ? (at+1) : host);    if ((acc_method = HTParse(addr, "", PARSE_ACCESS))) {	if (!strcmp("file", acc_method) &&	    (!strcmp(Host, "localhost") ||#ifdef VMS	     !strcasecomp(Host, HTHostName())#else	     !strcmp(Host, HTHostName())#endif /* VMS */	)) {	    FREE(host);	    FREE(acc_method);	    return YES;	}	FREE(acc_method);    }    if (!no_proxy) {	FREE(host);	return NO;    }    if (NULL != (p = strrchr(Host, ':'))) {	/* Port specified */	*p++ = 0;				/* Chop off port */	port = atoi(p);    } else {					/* Use default port */	acc_method = HTParse(addr, "", PARSE_ACCESS);	if (acc_method != NULL) {	    if	    (!strcmp(acc_method, "http"))	port = 80;	    else if (!strcmp(acc_method, "https"))	port = 443;	    else if (!strcmp(acc_method, "ftp"))	port = 21;#ifndef DISABLE_GOPHER	    else if (!strcmp(acc_method, "gopher"))	port = 70;#endif	    else if (!strcmp(acc_method, "cso"))	port = 105;#ifndef DISABLE_NEWS	    else if (!strcmp(acc_method, "news"))	port = 119;	    else if (!strcmp(acc_method, "nntp"))	port = 119;	    else if (!strcmp(acc_method, "newspost"))	port = 119;	    else if (!strcmp(acc_method, "newsreply"))	port = 119;	    else if (!strcmp(acc_method, "snews"))	port = 563;	    else if (!strcmp(acc_method, "snewspost"))	port = 563;	    else if (!strcmp(acc_method, "snewsreply")) port = 563;#endif	    else if (!strcmp(acc_method, "wais"))	port = 210;#ifndef DISABLE_FINGER	    else if (!strcmp(acc_method, "finger"))	port = 79;#endif	    FREE(acc_method);	}    }    if (!port)	port = 80;		    /* Default */    h_len = strlen(Host);    while (*no_proxy) {	CONST char * end;	CONST char * colon = NULL;	int templ_port = 0;	int t_len;	while (*no_proxy && (WHITE(*no_proxy) || *no_proxy == ','))	    no_proxy++;		    /* Skip whitespace and separators */	end = no_proxy;	while (*end && !WHITE(*end) && *end != ',') {	/* Find separator */	    if (*end == ':') colon = end;		/* Port number given */	    end++;	}	if (colon) {	    templ_port = atoi(colon+1);	    t_len = colon - no_proxy;	}	else {	    t_len = end - no_proxy;	}	if ((!templ_port || templ_port == port)  &&	    (t_len > 0	&&  t_len <= h_len  &&	     !strncasecomp(Host + h_len - t_len, no_proxy, t_len))) {	    FREE(host);	    return YES;	}	if (*end)	    no_proxy = (end + 1);	else	    break;    }    FREE(host);    return NO;}