Date: Fri, 21 Apr 2000 09:39:12 +0900 From: Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp> To: green@FreeBSD.org Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/lib/libc/net getaddrinfo.c name6.c Message-ID: <20000421093912D.shin@nd.net.fujitsu.co.jp> In-Reply-To: <Pine.BSF.4.21.0004201912480.20816-100000@green.dyndns.org> References: <200004200331.UAA85800@freefall.freebsd.org> <Pine.BSF.4.21.0004201912480.20816-100000@green.dyndns.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> > Log: > > Change getaddrinfo() resolve order > > from > > all AAAA trial, then all A trial > > to > > try AAAA and A for each trial Sorry to be late to fix this. (It still needs some improvements but I committed it because many people seems to have problem with this.) > I wanted to change this myself, but I didn't feel like getting involved > with the getaddrinfo() code too well (I like my sanity, and not the > getaddrinfo() code ;). However, I have done the work for the > gethostbyname() family. Would you like to review it? Diffs are small, > so included. I have one question about the patches. > -static struct hostent * > -gethostbyname_internal(const char *name, int type, int doinet6first) > +struct hostent * > +gethostbyname2(const char *name, int type) > { > struct hostent *hp = 0; > int nserv = 0; > - int dohost6first, dobind6first; > - > - if (doinet6first) > - dohost6first = dobind6first = 1; > - else > - dohost6first = dobind6first = 0; > > if (!service_done) > init_services(); > @@ -149,19 +145,9 @@ > case SERVICE_NONE: > return NULL; > case SERVICE_HOSTS: > - if (dohost6first) { > - dohost6first = 0; > - hp = _gethostbyhtname(name, AF_INET6); > - continue; > - } > hp = _gethostbyhtname(name, type); > break; > case SERVICE_BIND: > - if (dobind6first) { > - dobind6first = 0; > - hp = _gethostbydnsname(name, AF_INET6); > - continue; > - } > hp = _gethostbydnsname(name, type); > break; What "type" value is supposed in doinet6first case? I suppose that someone is calling gethostbyname_internal(name, AF_INET, 1) at somewhere, but the part of diff seems to be missing. Thanks, Yoshinobu Inoue To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000421093912D.shin>