BIND 10 #609: Check BIND10 responses with real-world traffic
BIND 10 Development
do-not-reply at isc.org
Thu Mar 10 20:12:20 UTC 2011
#609: Check BIND10 responses with real-world traffic
-------------------------------------+-------------------------------------
Reporter: stephen | Owner: vorner
Type: task | Status: reviewing
Priority: major | Milestone: A-Team-
Component: | Sprint-20110316
b10-auth | Resolution:
Keywords: | Sensitive: 0
Estimated Number of Hours: 4.0 | Add Hours to Ticket: 0
Billable?: 1 | Total Hours: 0
Internal?: 0 |
-------------------------------------+-------------------------------------
Comment (by vorner):
Hello
Looking at it, I have some comments and questions.
'''The report''':
It is nice we have a report that looks formally and that, but I guess the
reason for this task wasn't to have a report we can store somewhere (we
could guess that bind9 and bind10 would give different responses
sometime). We probably should do something about the differences. So,
would you mind going through the differences and looking if they are
problems or not (eg. the difference might or might not be OK regarding the
RFC) and possibly creating some tickets for them if they are problematic?
Anyway, what do you mean that some rtypes are not supported? That they can
not be loaded? Or that they can be loaded and parsed, but don't get into
the response for some reason? Do you think this is due to lack of
existence of their classes in the code, or because the classes are broken
somehow?
With the problems on TCP, are they relevant to UDP as well (eg. the
problem with TCP, does it happen on UDP as well)?
Did you compare bind9 with the in-memory zone or with sqlite3?
The .txt file seems to have slightly broken codepage, there are some odd
symbols sometimes. And it is impossible to store gray background in .txt,
would it be possible to mark the lines with something else, like putting
them into quotes or brackets or something?
'''The scripts'''
Would it be possible to integrate them into the source tree? It would be
nice if we could run that again. So, if you included them into the tests
or tools directory, it might be helpful and your work would come to more
use ;-).
But if they should be included, there would be some notes about their
quality.
* They would use some comments and documentation. Reading them is kind of
hard without them.
* Would it be possible to use our own dns libraries? It might be good for
the „own dog food“ reasons.
* Many functions there take an argument where they fill in a result, but
they don't return anything otherwise. Is there a reason for this unusual
behaviour, or would it be ok if they just created the result and returned
it?
* This can be changed from:
{{{
if v1 & flagbit == v2 & flagbit:
return(True)
return(False)
}}}
to:
{{{
return v1 & flagbit…
}}}
* What do these magic constants mean? Would it be possible to use some
symbolic constant? And why just these numbers?
{{{
pos_total = 80
pos_title = 14
pos_left = (pos_total - pos_title) / 2
}}}
* The part where you:
{{{
if diff['id']: return(0)
if diff['qr']: return(0)
…
}}}
Could it be rewritten as a loop with the list variable?
Shouldn't it return True/False? After all, the result doesn't seem to
be count of anything, so why use numbers?
* What does array_cmp do?
* rr_cmp has some really strange docstring.
* The README could use some description of what is the purpose of the
tool in the directory.
* I'm not sure if we want tests here. Maybe not, as this is kind of test
itself. But if that should become a general purpose tool to compare two
servers, we might want to provide some.
Sorry for being so long (which is probably due to quite a lot of code).
Though, I don't know if I didn't overlook something.
Thanks
--
Ticket URL: <http://bind10.isc.org/ticket/609#comment:7>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list