BIND 10 #1641: Further bug(s) in NSEC3 RDATA implementation

BIND 10 Development do-not-reply at isc.org
Mon Feb 13 13:44:38 UTC 2012


#1641: Further bug(s) in NSEC3 RDATA implementation
-------------------------------------+-------------------------------------
                   Reporter:         |                 Owner:  jinmei
  jinmei                             |                Status:  reviewing
                       Type:         |             Milestone:
  defect                             |  Sprint-20120221
                   Priority:  major  |            Resolution:
                  Component:         |             Sensitive:  0
  libdns++                           |           Sub-Project:  DNS
                   Keywords:         |  Estimated Difficulty:  5
            Defect Severity:  N/A    |           Total Hours:  0
Feature Depending on Ticket:  NSEC3  |
        Add Hours to Ticket:  0      |
                  Internal?:  0      |
-------------------------------------+-------------------------------------
Changes (by stephen):

 * owner:  stephen => jinmei


Comment:

 Reviewed commit 78785509428db0da450a2be7e89a342d1200cf0a

 The branch failed to build on Ubuntu 10.10 (gcc 4.4.5) because "memset"
 was not defined in src/lib/dns/rdata/generic/detail/nsec_bitmap.cc.  I've
 included the header file (string.h) and pushed the change (commit
 9e3c7d5).

 '''src/lib/dns/rdata/generic/detail/nsec_bitmap.cc'''[[BR]]
 buildBitmapsFromText: in the search for the a non-empty window, inverting
 the sense of the test for "octet" after the loop avoids the need for a
 "continue".

 bitmapsToText: "continue"s can be avoided by inverting the sense of the
 tests.


 '''src/lib/dns/rdata/generic/nsec3_50.cc'''[[BR]]
 compareVectors: Needs a header. (The content is obvious but it took me a
 little time to work out that your would sort short vectors first -
 regardless of content - when comparing numbers.)

 compareVectors: when doing the length check, why not just return "len1 -
 len2" as is done later in the function?

 compareVectors: The "if (cmp != 0)" statement is not needed:
 {{{
 return(cmplen == 0 ? (len1 - len2) : memcmp(...));
 }}}

 '''src/lib/dns/tests/rdata_nsecbitmap_unittest.cc'''[[BR]]
 The comment "Make sure all possible bits in a one-octet bitmap correctly."
 does not parse.

 '''!ChangeLog entry'''[[BR]]
 This is OK

-- 
Ticket URL: <http://bind10.isc.org/ticket/1641#comment:7>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development


More information about the bind10-tickets mailing list