BIND 10 #2564: MasterLoader needs to perform minimal validation for SOA
BIND 10 Development
do-not-reply at isc.org
Tue Jan 8 03:50:41 UTC 2013
#2564: MasterLoader needs to perform minimal validation for SOA
-------------------------------------+-------------------------------------
Reporter: jinmei | Owner:
Type: task | Status: new
Priority: medium | Milestone:
Component: Unclassified | Resolution:
Keywords: | CVSS Scoring:
Sensitive: 0 | Defect Severity: N/A
Sub-Project: DNS | Feature Depending on Ticket:
Estimated Difficulty: 0 | loadzone-ng
Total Hours: 0 | Add Hours to Ticket: 0
| Internal?: 0
-------------------------------------+-------------------------------------
Comment (by jinmei):
Replying to [comment:1 vorner]:
> As I already commented, I don't like it being in the loader directly,
because
> it's not its own responsibility and would be doing more than one thing.
As we
> have the collator, we could have something that does these levels of
checks as
> the RRs are being added (part of the validation being in the process,
part
> being at the end).
On one hand I agree that it's beyond the responsibility of
`MasterLoader`, and we should be careful not to make it a monster
class.
On the other hand, I think there are a few things that cannot be
effectively outside of `MasterLoader`. Minimal level validation like
this is one such thing, and rejecting out-of-zone owner names is
another one. Doing these at post load time is not a good idea because
these checks require iteration over the full zone (which is expensive
and optional). We would also want to avoid doing these checks at
every user that needs them, at least both for in-memory and other data
source loaders. Another approach is to provide an adaptor callback
that performs these checks and let the user choose to use it. But
since such adaptor conceptually belongs to `MasterLoader`, I don't see
much difference between this one and extracting these checks as a
method of `MasterLoader`.
Since out-of-zone type of typo can easily happen, I now propose doing
this check in the next sprint, within `MasterLoader`, unless there is
a specific other way to implement it avoiding the above concerns.
We'd note such checks should be generally beyond the responsibility of
`MasterLoader` (and further extensions should primarily go outside the
loader), and also provide an option to skip these checks so the caller
can use the loader for just parsing a set of textual RRs, not as a zone.
--
Ticket URL: <http://bind10.isc.org/ticket/2564#comment:2>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list