/* gethostbyname.c * * Originally by Greg Wooledge , http://wooledge.org/~greg/ * * This program is in the public domain. It may be copied or used without * any restrictions. */ #include #include #include int main(int argc, char *argv[]) { struct hostent *h; char **s; if(argc != 2) { fprintf(stderr, "usage: gethostbyname hostname\n"); return 1; } h = gethostbyname(argv[1]); if(!h) { fprintf(stderr, "gethostbyname(%s) failed: ", argv[1]); herror(""); return 2; } s = h->h_addr_list; while (*s) { char addr[80]; snprintf(addr, sizeof addr, "%u.%u.%u.%u", (unsigned char)(*s)[0], (unsigned char)(*s)[1], (unsigned char)(*s)[2], (unsigned char)(*s)[3]); puts(addr); s++; } return 0; }