BIND 10 #1130: RR type implementation: NAPTR

BIND 10 Development do-not-reply at isc.org
Fri Aug 12 08:09:28 UTC 2011


#1130: RR type implementation: NAPTR
-------------------------------------+-------------------------------------
                   Reporter:  shane  |                 Owner:  ocean
                       Type:         |                Status:  reviewing
  enhancement                        |             Milestone:
                   Priority:  major  |  Sprint-20110816
                  Component:         |            Resolution:
  libdns++                           |             Sensitive:  0
                   Keywords:         |           Sub-Project:  DNS
            Defect Severity:  N/A    |  Estimated Difficulty:  4
Feature Depending on Ticket:         |           Total Hours:  0
        Add Hours to Ticket:  0      |
                  Internal?:  0      |
-------------------------------------+-------------------------------------

Comment (by ocean):

 Replying to [comment:7 jelte]:
 > The RFC does not appear to specify an RR class, so the added files
 should probably go in generic/ instead of in_1/
 Done
 >
 > As in the original implementation of #1128, this code also accepts some
 bad input data in the string parser;
 > the string '10 100S \"SIP+D2U\" \"\" _sip._udp.example.com.' (note the
 missing space between '100' and 'S') would incorrectly be accepted.
 >
 Fixed, make sure that the fields must be separated by space
 > With 1160 merged, the functions that the fix for this for #1128 used
 (getToken() and tokenToNum()) are in lib/util. I suggest we use those
 functions here too (see the current implementation of
 src/lib/dns/rdata/in_1/srv.cc in master for an example)
 >
 I checked the implementation of strutil, it seems that it cannot be used
 to parse <character-string>, as RFC1035's description:
   <character-string> is expressed in one or two ways: as a contiguous set
   of characters without interior spaces, or as a string beginning with a "
   and ending with a ".  Inside a " delimited string any character can
   occur...
 The {{{getToken()}}} can only work with the string shat separated by
 spaces, but if the string that separated by " contains a space, it will
 fail.

 > I also noticed that the lengths of <character-strings> are not checked
 (due to the 1-octet length specifier on the wire single <character-
 strings> cannot be longer than 255 octets).
 >
 Done, make sure that <character-string> does not exceed 255 characters.
 > And finally, I have two smaller requests; I'd love to see the
 InvalidRdataText exceptions be a bit more specific in their what() string
 about what exactly is bad about the data, and the header file could use
 just a bit more documentation.
 >
 Done, add more detailed description to the exception descriptions and more
 documentation to the header (But I'm not sure whether it is enough)

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


More information about the bind10-tickets mailing list