chiark / gitweb /
src/: Support IPv6 reverse queries.
authorMark Wooding <mdw@distorted.org.uk>
Sat, 24 May 2014 13:00:03 +0000 (14:00 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 19 Oct 2014 20:09:54 +0000 (21:09 +0100)
commit51cb3de39ef4e85d2efa7d167dc531d04500a525
treeaaff4daeb8523a04af4e16ad97830ddb9544c799
parent50e2b0c3e23c15b58d834a753f074dd232aff30f
src/: Support IPv6 reverse queries.

This involves moving most of the label parser in ckl_ptr, and the
reverse-domain constructor, into addrfam and teaching them about IPv6.

The label parser is a little tricky because it involves keeping track of
a parse state for each possible address family until we run out of
possibilities or the parse is complete.

Moving the reverse-domain constructor introduces a slightly unpleasant
hack: because knowledge of the right reverse-lookup zone belongs in
addrfam, we get adns_submit_reverse to pass a sentinel through
_reverse_any to addrfam.

Signed-off-by: Mark Wooding <mdw@distorted.org.uk>
19 files changed:
regress/case-dh-ptr-aaaa.err [new file with mode: 0644]
regress/case-dh-ptr-aaaa.out [new file with mode: 0644]
regress/case-dh-ptr-aaaa.sys [new file with mode: 0644]
regress/case-ptr-aaaa-check.err [new file with mode: 0644]
regress/case-ptr-aaaa-check.out [new file with mode: 0644]
regress/case-ptr-aaaa-check.sys [new file with mode: 0644]
regress/case-ptr-aaaa-mismatch.err [new file with mode: 0644]
regress/case-ptr-aaaa-mismatch.out [new file with mode: 0644]
regress/case-ptr-aaaa-mismatch.sys [new file with mode: 0644]
regress/case-ptr-aaaa-plain.err [new file with mode: 0644]
regress/case-ptr-aaaa-plain.out [new file with mode: 0644]
regress/case-ptr-aaaa-plain.sys [new file with mode: 0644]
regress/case-ptr-aaaa.err [new file with mode: 0644]
regress/case-ptr-aaaa.out [new file with mode: 0644]
regress/case-ptr-aaaa.sys [new file with mode: 0644]
src/addrfam.c
src/internal.h
src/query.c
src/types.c