BIND 10 #494: Modify resolver to use abstract resolver interface

BIND 10 Development do-not-reply at isc.org
Mon Jan 31 11:27:48 UTC 2011


#494: Modify resolver to use abstract resolver interface
-------------------------------------+-------------------------------------
                 Reporter:  shane    |                Owner:  UnAssigned
                     Type:           |               Status:  reviewing
  enhancement                        |            Milestone:  R-Team-
                 Priority:  major    |  Sprint-20110208
                Component:           |           Resolution:
  resolver                           |            Sensitive:  0
                 Keywords:           |  Add Hours to Ticket:  0
Estimated Number of Hours:  5.0      |          Total Hours:  0
                Billable?:  1        |
                Internal?:  0        |
-------------------------------------+-------------------------------------
Changes (by jelte):

 * owner:  jelte => UnAssigned
 * status:  assigned => reviewing


Comment:

 I've added a lib/resolve 'library', and moved the ResolverInterface
 abstract class there.

 Added a second sendQuery() that takes a ResolverInterface::Callback
 object, and will call success() or failure() on it, depending on the
 result of the resolving. Changed the Callback::success() call to take a
 MessagePtr instead of an AbstractRRset (which causes a lot of changes in
 the nsas, but mainly in the tests, i've changed all the uses of
 shared_ptr<AbstractRRset> and shared_ptr<BasicRRset> there to the more
 general RRsetPtr type.

 The 'old' sendQuery now creates an instance of the (added)
 ResolverCallbackServer (resolver_callback.h/cc) which calls
 server::resume() when called back.

 Merging this ticket should make the path clear for several others; we can
 actually hook in the NSAS then, and we now have a place to put some other
 resolver code, for instance the response classifier, etc.

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


More information about the bind10-tickets mailing list