unpack
_asr_unpack_init(struct asr_unpack *unpack, const char *buf, size_t len)
unpack->buf = buf;
unpack->len = len;
unpack->offset = 0;
unpack->err = 0;
struct unpack pack;
struct unpack pack;
struct unpack pack;
unpack_data(struct unpack *p, void *data, size_t len)
static int unpack_data(struct unpack *, void *, size_t);
static int unpack_u16(struct unpack *, uint16_t *);
unpack_u16(struct unpack *p, uint16_t *u16)
static int unpack_u32(struct unpack *, uint32_t *);
unpack_u32(struct unpack *p, uint32_t *u32)
static int unpack_inaddr(struct unpack *, struct in_addr *);
unpack_inaddr(struct unpack *p, struct in_addr *a)
static int unpack_in6addr(struct unpack *, struct in6_addr *);
unpack_in6addr(struct unpack *p, struct in6_addr *a6)
unpack_dname(struct unpack *p, char *dst, size_t max)
static int unpack_dname(struct unpack *, char *, size_t);
unpack_init(struct unpack *unpack, const char *buf, size_t len)
unpack->buf = buf;
unpack->len = len;
unpack->offset = 0;
unpack->err = NULL;
unpack_header(struct unpack *p, struct dns_header *h)
unpack_query(struct unpack *p, struct dns_query *q)
unpack_rr(struct unpack *p, struct dns_rr *rr)
void unpack_init(struct unpack *, const char *, size_t);
int unpack_header(struct unpack *, struct dns_header *);
int unpack_rr(struct unpack *, struct dns_rr *);
int unpack_query(struct unpack *, struct dns_query *);