12 static const char *progname;
14 #define msg(fmt, args...) fprintf(stderr, "%s: " fmt "\n", progname, ##args)
16 static void aargh(const char *cause) {
17 const char *why = strerror(errno);
18 if (!why) why = "Unknown error";
19 msg("%s: %s (%d)", cause, why, errno);
23 int main(int argc, char *argv[]) {
28 progname= strrchr(*argv, '/');
35 fprintf(stderr, "usage: %s <domain>\n", progname);
39 errno= adns_init(&adns, adns_if_debug, 0);
40 if (errno) aargh("adns_init");
42 errno= adns_submit(adns, argv[1], adns_r_ptr,
43 adns_qf_quoteok_cname|adns_qf_cname_loose,
45 if (errno) aargh("adns_submit");
47 errno= adns_wait(adns, &query, &answer, NULL);
48 if (errno) aargh("adns_init");
50 printf("%s\n", answer->status == adns_s_ok ? *answer->rrs.str : "dunno");