dns_txt(&out,
&fqdn);
dns_txt_packet(&out,
buf, len);
stralloc
out
= {0};
stralloc
fqdn
= {0};
char
*buf;
unsigned int
len;
If dns_txt has trouble with the DNS lookup or runs out of memory, it returns -1, setting errno appropriately. It may or may not change out.
dns_txt_packet is a low-level component of dns_txt, designed to support asynchronous DNS lookups. It reads a DNS packet of length len from buf, extracts the TXT records from the answer section of the packet, puts the results into out, and returns 0 or -1 the same way as dns_txt.
http://cr.yp.to/djbdns/blurb/library.html