BIND 10 #1579: Update database ZoneFinder::find() for negative cases of NSEC3-signed zones
BIND 10 Development
do-not-reply at isc.org
Fri Mar 23 01:08:40 UTC 2012
#1579: Update database ZoneFinder::find() for negative cases of NSEC3-signed zones
-------------------------------------+-------------------------------------
Reporter: | Owner: jinmei
jinmei | Status: reviewing
Type: task | Milestone:
Priority: | Sprint-20120403
medium | Resolution:
Component: data | Sensitive: 0
source | Sub-Project: DNS
Keywords: | Estimated Difficulty: 5
Defect Severity: N/A | Total Hours: 0
Feature Depending on Ticket: |
Add Hours to Ticket: 0 |
Internal?: 0 |
-------------------------------------+-------------------------------------
Comment (by jinmei):
Replying to [comment:19 haikuo]:
> after our discussion, I adjust my codes. please review it.
First off, please basically respond to each itemized point one by
one. I cannot be sure whether you addressed all points or part of
them, and whether you agreed or disagreed with me about each case (you
don't necessarily have to agree, of course, but if you didn't say
anything I cannot tell). In any case, please remember that such a
one-line response to itemized specific comments would be generally not
acceptable.
Secondly, in fact, it doesn't address one of my main concerns: "If we
know it's an NSEC3-signed zone, I wouldn't bother to look for NSEC
because it's a waste. I'd introduce a helper method or something to
unify such cases in an efficient way". And, findInternal() is now
terribly unreadable and non understandable. If you cannot be sure
about my concern, could I propose revised code rather than trying to
explain my intent further?
Third, I've still seen some editorial issues. I've directly updated
the branch and committed the changes. Some are clearly described in
the coding guideline page, but you still seem to not be able to follow
them (although, to be fair, it's not only you, and I myself sometimes
make such errors). I'd suggest you reread the guideline page. For
the rationale of specific changes, please see the commit logs.
Finally, the added test cases look basically okay, although I'd
suggest testing some strange cases like the zone having both NSEC and
NSEC3PARAM. I suspect that the current implementation doesn't follow
this API spec (the last sentence):
{{{#!c++
/// First, it tells the application whether the zone is signed with
/// NSEC or NSEC3 via the \c isNSEC(3)Signed() method. Any sanely
signed
/// zone should be signed with either (and only one) of these two
types
/// of RRs; however, the application should expect that the zone could
/// be broken and these methods could both return false. But this
method
/// should ensure that not both of these methods return true.
}}}
--
Ticket URL: <https://bind10.isc.org/ticket/1579#comment:20>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list