int main(int argc, char *argv[]) { int ch, i, r; uint16_t type = T_A; char buf[1024], *host; while((ch = getopt(argc, argv, "R:et:")) != -1) { switch(ch) { case 'R': parseresopt(optarg); break; case 'e': long_err += 1; break; case 't': if ((type = strtotype(optarg)) == 0) usage(); break; default: usage(); /* NOTREACHED */ } } argc -= optind; argv += optind; for (i = 0; i < argc; i++) { if (i) printf("\n"); printf("===> \"%s\"\n", argv[i]); host = gethostarg(argv[i]); errno = 0; h_errno = 0; gai_errno = 0; rrset_errno = 0; r = res_mkquery(QUERY, host, C_IN, type, NULL, 0, NULL, buf, sizeof(buf)); if (r != -1) { dump_packet(buf, r); printf(";; MSG SIZE %i\n", r); } print_errors(); } return (0); }
int main(int argc, char *argv[]) { int i, ch, nflag = 0; struct netent *n; char *host; while((ch = getopt(argc, argv, "en")) != -1) { switch(ch) { case 'e': long_err += 1; break; case 'n': nflag = 1; break; default: usage(); /* NOTREACHED */ } } argc -= optind; argv += optind; for(i = 0; i < argc; i++) { if (i) printf("\n"); printf("===> \"%s\"\n", argv[i]); host = gethostarg(argv[i]); errno = 0; h_errno = 0; gai_errno = 0; rrset_errno = 0; if (nflag) n = getnetbyname(host); else n = getnetbyaddr(inet_network(host), AF_INET); if (n) print_netent(n); print_errors(); } return (0); }
int main(int argc, char *argv[]) { struct timeval start, end; time_t when; int ch, i, qflag, dflag, r; uint16_t type = T_A; char buf[1024], *host; dflag = 0; qflag = 0; while((ch = getopt(argc, argv, "deqt:")) != -1) { switch(ch) { case 'd': dflag = 1; break; case 'e': long_err += 1; break; case 'q': qflag = 1; break; case 't': if ((type = strtotype(optarg)) == 0) usage(); break; default: usage(); /* NOTREACHED */ } } argc -= optind; argv += optind; for (i = 0; i < argc; i++) { if (i) printf("\n"); printf("===> \"%s\"\n", argv[i]); host = gethostarg(argv[i]); errno = 0; h_errno = 0; gai_errno = 0; rrset_errno = 0; if (gettimeofday(&start, NULL) != 0) err(1, "gettimeofday"); if (qflag) r = res_query(host, C_IN, type, buf, sizeof(buf)); else r = res_search(host, C_IN, type, buf, sizeof(buf)); if (gettimeofday(&end, NULL) != 0) err(1, "gettimeofday"); if (r != -1) { dump_packet(buf, r); printf("\n"); if (dflag) { printf(";; Query time: %d msec\n", msec(start, end)); when = time(NULL); printf(";; WHEN: %s", ctime(&when)); } printf(";; MSG SIZE rcvd: %i\n", r); } print_errors(); } return (0); }
int main(int argc, char *argv[]) { struct addrinfo *ai, *res, hints; char *servname = NULL, *host; int i, ch; memset(&hints, 0, sizeof hints); while((ch = getopt(argc, argv, "CFHPSef:p:s:t:")) != -1) { switch(ch) { case 'C': hints.ai_flags |= AI_CANONNAME; break; case 'F': hints.ai_flags |= AI_FQDN; break; case 'H': hints.ai_flags |= AI_NUMERICHOST; break; case 'P': hints.ai_flags |= AI_PASSIVE; break; case 'S': hints.ai_flags |= AI_NUMERICSERV; break; case 'e': long_err += 1; break; case 'f': if (!strcmp(optarg, "inet")) hints.ai_family = AF_INET; else if (!strcmp(optarg, "inet6")) hints.ai_family = AF_INET6; else usage(); break; case 'p': if (!strcmp(optarg, "udp")) hints.ai_protocol = IPPROTO_UDP; else if (!strcmp(optarg, "tcp")) hints.ai_protocol = IPPROTO_TCP; else if (!strcmp(optarg, "icmp")) hints.ai_protocol = IPPROTO_ICMP; else if (!strcmp(optarg, "icmpv6")) hints.ai_protocol = IPPROTO_ICMPV6; else usage(); break; case 's': servname = optarg; break; case 't': if (!strcmp(optarg, "stream")) hints.ai_socktype = SOCK_STREAM; else if (!strcmp(optarg, "dgram")) hints.ai_socktype = SOCK_DGRAM; else if (!strcmp(optarg, "raw")) hints.ai_socktype = SOCK_RAW; else usage(); break; default: usage(); /* NOTREACHED */ } } argc -= optind; argv += optind; for(i = 0; i < argc; i++) { if (i) printf("\n"); printf("===> \"%s\"\n", argv[i]); host = gethostarg(argv[i]); errno = 0; h_errno = 0; gai_errno = 0; rrset_errno = 0; gai_errno = getaddrinfo(host, servname, &hints, &ai); print_errors(); if (gai_errno == 0) { for (res = ai; res; res = res->ai_next) print_addrinfo(res); freeaddrinfo(ai); } } return (0); }
int main(int argc, char *argv[]) { int i, ch, aflag, family = AF_INET; struct hostent *h; char *host; char addr[16]; int addrlen; aflag = 0; while((ch = getopt(argc, argv, "46ae")) != -1) { switch(ch) { case '4': family = AF_INET; break; case '6': family = AF_INET6; break; case 'a': aflag = 1; break; case 'e': long_err += 1; break; default: usage(); /* NOTREACHED */ } } argc -= optind; argv += optind; for(i = 0; i < argc; i++) { if (i) printf("\n"); printf("===> \"%s\"\n", argv[i]); host = gethostarg(argv[i]); if (aflag && addr_from_str(addr, &family, &addrlen, host) == -1) errx(1, "bad address"); errno = 0; h_errno = 0; gai_errno = 0; rrset_errno = 0; if (aflag == 0) h = gethostbyname2(host, family); else h = gethostbyaddr(addr, addrlen, family); if (h) print_hostent(h); print_errors(); } return (0); }