BIND 10 #2433: implement validateZone, base part

BIND 10 Development do-not-reply at isc.org
Fri Jan 4 15:53:06 UTC 2013


#2433: implement validateZone, base part
-------------------------------------+-------------------------------------
            Reporter:  jinmei        |                        Owner:
                Type:  task          |  jinmei
            Priority:  medium        |                       Status:
           Component:  libdns++      |  reviewing
            Keywords:                |                    Milestone:
           Sensitive:  0             |  Sprint-20130108
         Sub-Project:  DNS           |                   Resolution:
Estimated Difficulty:  4             |                 CVSS Scoring:
         Total Hours:  0             |              Defect Severity:  N/A
                                     |  Feature Depending on Ticket:
                                     |  loadzone-ng
                                     |          Add Hours to Ticket:  1.82
                                     |                    Internal?:  0
-------------------------------------+-------------------------------------

Comment (by jinmei):

 Replying to [comment:16 vorner]:

 > I fixed a small compilation error on my system in tests. GCC seems to
 require
 > the method passed to boost::bind to be public.

 Okay.  I've added comments about why.

 > > I've updated it to avoid the wrapper class.  The amount of the
 > > additional code doesn't seem to be much reduced, but I have no
 > > objection to the suggestion per se.
 >
 > I'd suggest two things here:
 >  * Avoid making copy of the callbacks.
 >  * Remove the warn wrapper, it is possible to call directly by
 `boost::bind`.
 >
 > Both suggestions are committed to the branch. If you don't agree with
 any of
 > them, feel free to remove them from the history.

 Regarding the latter, yeah I noticed it after pushing, but forgot to
 update it.

 Regarding the former...hmm, the reason why we needed copies is
 error()/warn() was non const member functions, and you changed them to
 const.  They were non const, following `MasterLoaderCallbacks`; the
 data source loader needed to have them non const.  If we need to
 expect the same situation, we'll have to keep these callback methods
 non const, too, and, as a result, we need to accept the copy of the
 functors.

 I don't have a strong opinion, but am inclined to keep them non const
 as it once happened.  I believe the cost of the copy is acceptable in
 this context.

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


More information about the bind10-tickets mailing list