chiark / gitweb /
src/types.c: Start on IPv6 support in adns_r_addr queries.
authorMark Wooding <mdw@distorted.org.uk>
Tue, 10 Jun 2014 22:44:13 +0000 (23:44 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 19 Oct 2014 20:09:56 +0000 (21:09 +0100)
commit9d138734ee5af9b79ea81529f54971dbc60c968c
tree4fc5437ca4fffd1ce66bdd8d19028a375e5177a5
parentb582ca0f999ffd51e26c5543d2023ea137af3bec
src/types.c: Start on IPv6 support in adns_r_addr queries.

The way addr queries work internally is now very different.  The
toplevel query is now `virtual', and exists to spawn subqueries for each
applicable address type (currently hardcoded to A only, but this will
change later).

The toplevel query has a callback function which assembles its answer
from the various child queries, and there's a collection of support
machinery too.  (Some of the bookkeeping done during this may seem
unnecessary, but it will come in handy later.)

Because more of the work is now done in internal query callbacks, some
of the answers in the tests are reported in different order.  See
`Reentrancy: Avoid reentrant callbacks' for more detailed explanation
of a similar change.

Signed-off-by: Mark Wooding <mdw@distorted.org.uk>
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
regress/case-abbrevto.out
regress/case-datapluscname.out
regress/case-manyptrwrongrty.out
regress/case-tcpallfail.out
regress/case-tcpblock.out
regress/case-tcpblockbrk.out
regress/case-tcpblockwr.out
src/internal.h
src/transmit.c
src/types.c