<hat=just-another-bozo-on-this-bus>
Pekka,
The short answer is that additional section processing should not
break up RRsets (nothing ever should, except for weird cases like the
RRSIG which doesn't really form proper RRsets at all).
Eg, assuming zone data:
foo.example. IN MX 1 foo.example.
MX 2 bar.example.
A 192.0.2.1
A 192.0.2.2
AAAA 2001:0db8::f00
bar.example. A 192.0.2.3
AAAA 2001:0db8::baa
AAAA 2001:0db8::baaa
and a query <QNAME=foo.example., QTYPE=MX, QCLASS=IN>,
- you should get back 192.0.2.1 as additional data if and only if you
also get back 192.0.2.2;
- you should get back 2001::0db8::baa as additional data if and only
if you also get back 2001::0db8::baaa;
- but pretty much all the other possible combinations of addresses as
additional data, while perhaps suboptimal, would be legal.
Does this answer your question?
</hat>
.
dnsop resources:_____________________________________________________
web user interface: http://darkwing.uoregon.edu/~llynch/dnsop.html
mhonarc archive: http://darkwing.uoregon.edu/~llynch/dnsop/index.html