#include <errno.h> #include <netdb.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <sys/socket.h> int main(void) { in_addr_t addr = inet_addr("127.0.0.1"); struct hostent *hent; hent = gethostent(); if (hent == NULL) { printf("gethostent(%d):%s\n", errno, hstrerror(h_errno)); exit(1); } hent = gethostbyname("localhost"); if (hent == NULL) { printf("gethostbyname(%d):%s\n", errno, hstrerror(h_errno)); exit(1); } hent = gethostbyname2("localhost", AF_INET); if (hent == NULL) { printf("gethostbyname2(%d):%s\n", errno, hstrerror(h_errno)); exit(1); } hent = gethostbyaddr(&addr, sizeof(addr), AF_INET); if (hent == NULL) { printf("gethostbyaddr(%d):%s\n", errno, hstrerror(h_errno)); exit(1); } return 0; }