#include "resolve.h" /* nslookup HOST - resolve a hostname to an IPv4 address via DNS over UDP. All the DNS logic lives in resolve.h (shared with wget). */ static unsigned char namebuf[64]; /* first so it lands past the arg at 0xA000 */ static unsigned char ip[4]; void main(void) { char *host; unsigned char i; host = getargs(); if (!host || !*host) { puts("usage: nslookup HOST"); nl(); sexit(1); } for (i = 0; host[i] && i < 63; i++) namebuf[i] = (unsigned char)host[i]; namebuf[i] = 0; if (resolve((char *)namebuf, ip)) { puts((char *)namebuf); puts(" -> "); for (i = 0; i < 4; i++) { putu(ip[i]); if (i < 3) putc('.'); } nl(); } else { puts("nslookup: cannot resolve "); puts((char *)namebuf); nl(); } }