Opened 9 years ago

Closed 9 years ago

#311 closed enhancement (fixed)

complete EDNS0 implementation

Reported by: jinmei Owned by: jinmei
Priority: medium Milestone: y2 12 month milestone
Component: libdns++ Version:
Keywords: Cc:
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity:
Sub-Project: Feature Depending on Ticket:
Estimated Difficulty: 12.0 Add Hours to Ticket: 0
Total Hours: 2.25 Internal?: no

Description

This is a continuation of the jinmei-ednsupdate branch.

The main goal is overall cleanup and more tests and documents for the preliminary version of the EDNS0 support. I'll make a separate branch since the base of jinmei-ednsupdate is too old.

Subtickets

Change History (7)

comment:1 Changed 9 years ago by jinmei

  • Add Hours to Ticket changed from 0.0 to 1.25
  • Total Hours changed from 0.0 to 1.25

comment:2 Changed 9 years ago by jinmei

  • Add Hours to Ticket changed from 0.0 to 0.5
  • Total Hours changed from 1.25 to 1.75

comment:3 in reply to: ↑ description Changed 9 years ago by jinmei

  • Milestone changed from y2 6 month milestone to y2 12 month milestone

Replying to jinmei:

This is a continuation of the jinmei-ednsupdate branch.

The main goal is overall cleanup and more tests and documents for the preliminary version of the EDNS0 support. I'll make a separate branch since the base of jinmei-ednsupdate is too old.

branches/trac311 is ready for review.

The effective branch point is 2785, not the real one (2757) because the first set of changes are just for synchronizing with a newer trunk. So the diff for review is retrieved by: svn diff -r 2785 svn+ssh://bind10.isc.org/svn/bind10/branches/trac311

The diff is quite large, but (I believe) it's pretty straighforward. Some part of the design decision may not be obvious or perhaps controversial, for which I gave detailed documentation. An HTML version of the documentation is available at: http://bind10.isc.org/~jinmei/bind10/cpp/classisc_1_1dns_1_1_e_d_n_s.html

I've also updated the Message and Rcode classes as a result of introducing the new EDNS class. This time I only provided minimal level of documentation and tests. The plan is to complete this part in the next cycle of cleanup.

Other non trivial parts are in test code:

  • for wire format data generated from spec files, now only spec files are committed. the wire format data files will be dynamically created at build time. see src/lib/dns/tests/testdata/Makefile.am
  • for python binding tests I noticed a duplicate for reading test data. I've unified the code into a separate testutil.py file and have other tests import it.

Proposed changelog entry is as follows:

  98.?	[func]*		jinmei
	Introduced a separate EDNS class to encapsulate EDNS related
	information more cleanly.  The related APIs are changed a bit,
	although it won't affect most of higher level applications.
	(Trac #311, svn rTBD)

comment:4 Changed 9 years ago by jinmei

  • Owner changed from jinmei to UnAssigned
  • Status changed from new to reviewing

comment:5 Changed 9 years ago by vorner

  • Owner changed from UnAssigned to vorner

comment:6 follow-up: Changed 9 years ago by vorner

  • Owner changed from vorner to jinmei

The doxygen documentation you link here contains some odd things (like a truncated description of function, description of function that no longer exists), but if I generate it locally from the source, it looks OK.

I didn't notice anything else, so I think it can be merged.

comment:7 in reply to: ↑ 6 Changed 9 years ago by jinmei

  • Add Hours to Ticket changed from 0.0 to 0.5
  • Resolution set to fixed
  • Status changed from reviewing to closed
  • Total Hours changed from 1.75 to 2.25

Replying to vorner:

The doxygen documentation you link here contains some odd things (like a truncated description of function, description of function that no longer exists), but if I generate it locally from the source, it looks OK.

I didn't notice anything else, so I think it can be merged.

Thanks for the review. Merged to trunk, closing ticket.

Note: See TracTickets for help on using tickets.