1
0
mirror of https://github.com/openbsd/src.git synced 2024-12-22 16:42:56 -08:00

Replace inet_aton / gethostbyname with getaddrinfo.

test & OK jmatthew
This commit is contained in:
florian 2024-08-19 06:00:18 +00:00
parent a81015d088
commit 06e34d5f4d

View File

@ -1,4 +1,4 @@
/* $OpenBSD: ypwhich.c,v 1.23 2015/02/08 23:40:35 deraadt Exp $ */ /* $OpenBSD: ypwhich.c,v 1.24 2024/08/19 06:00:18 florian Exp $ */
/* $NetBSD: ypwhich.c,v 1.6 1996/05/13 02:43:48 thorpej Exp $ */ /* $NetBSD: ypwhich.c,v 1.6 1996/05/13 02:43:48 thorpej Exp $ */
/* /*
@ -137,7 +137,7 @@ main(int argc, char *argv[])
int notrans = 0, mode = 0, c, r, i; int notrans = 0, mode = 0, c, r, i;
struct ypmaplist *ypml, *y; struct ypmaplist *ypml, *y;
struct sockaddr_in sin; struct sockaddr_in sin;
struct hostent *hent; struct addrinfo hints, *res;
CLIENT *client = NULL; CLIENT *client = NULL;
yp_get_default_domain(&domain); yp_get_default_domain(&domain);
@ -181,17 +181,17 @@ main(int argc, char *argv[])
break; break;
case 1: case 1:
bzero(&sin, sizeof sin); bzero(&sin, sizeof sin);
memset(&hints, 0, sizeof(hints));
hints.ai_family = AF_INET;
sin.sin_family = AF_INET; sin.sin_family = AF_INET;
if (inet_aton(argv[0], &sin.sin_addr) == 0) { if (getaddrinfo(argv[0], NULL, &hints, &res) != 0) {
hent = gethostbyname(argv[0]);
if (!hent) {
fprintf(stderr, "ypwhich: host %s unknown\n", fprintf(stderr, "ypwhich: host %s unknown\n",
argv[0]); argv[0]);
exit(1); exit(1);
} }
bcopy(hent->h_addr, &sin.sin_addr, sin.sin_addr =
sizeof sin.sin_addr); ((struct sockaddr_in *)res->ai_addr)->sin_addr;
} freeaddrinfo(res);
if (bind_host(domain, &sin)) if (bind_host(domain, &sin))
exit(1); exit(1);
break; break;