BIND 10 #1176: RRSIG support in new data source
BIND 10 Development
do-not-reply at isc.org
Fri Aug 26 10:01:23 UTC 2011
#1176: RRSIG support in new data source
-------------------------------------+-------------------------------------
Reporter: | Owner: UnAssigned
jinmei | Status: reviewing
Type: task | Milestone:
Priority: major | Sprint-20110830
Component: data | Resolution:
source | Sensitive: 0
Keywords: | Sub-Project: DNS
Defect Severity: N/A | Estimated Difficulty: 0
Feature Depending on Ticket: | Total Hours: 0
Add Hours to Ticket: 0 |
Internal?: 0 |
-------------------------------------+-------------------------------------
Changes (by vorner):
* owner: vorner => UnAssigned
* status: assigned => reviewing
Comment:
Hello
It should be ready for review. I added a test to check wildcards are OK in
database regarding RRSIGs (do I read the RFCs right that we just include
the RRSIG of the wildcard unmodified?) and added a flag to signal that
DNSSEC data should be required. It notes it can return them even when they
are not requested, which is OK, because the Message::addRRset has a
parameter to include or ignore them, so we don't need to remove them
anywhere.
I updated the Query class to simply include the flag and say yes to add
signatures. However, I found out two things I didn't bother to solve yet:
* It's hard to do bit-fields in C++ when it is an enum, it complains and
must be explicitly casted. That is uncomfortable. We could either pass it
to functions as int, in which case it wouldn't need the type-casting, but
it wouldn't do any type checking, or create a complicated class for the
bitmasking, which seems an overkill.
* The checkResponse utility function has a limitation of being usable
only with at most one RR of each name/class/type tuple. I tried to solve
it by noting which expected ones were already used, but then it started
failing somewhere else, so I just ditched it for the additional section
and check it manually.
Jinmei: And, about the RRsig design, I find it quite useful that the
signature is together with whatever is signed and the code here looks
simple. And whatever data backend with any concern with performance will
store them together as well, which will effectively eliminate another walk
through a tree or any other data structure. So I don't really see reason
to change the design.
Giving it to unassigned, since the fact that Jinmei explained the purpose
doesn't mean he has to review it.
--
Ticket URL: <http://bind10.isc.org/ticket/1176#comment:6>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list