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");