skip data sources that definitely won't match. (I'm not sure about the
design here and may revisit it, but there should be a marginal speedup
from not having to compare every single qname to "authors.bind" and
"version.bind".)
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1191 e5f2f494-b856-4b98-b285-d166d9295462
claims this is optimized, but at present it looks as if it isn't).
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1189 e5f2f494-b856-4b98-b285-d166d9295462
sqlite3 related errors.
used the new class when Sqlite3DataSrc::open() failed.
added a test case for this.
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1188 e5f2f494-b856-4b98-b285-d166d9295462
added notes about design choices and possible future changes.
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1185 e5f2f494-b856-4b98-b285-d166d9295462
directly under the zone apex (i.e., a.b.c.d.e.foo.com), we need to return
the NSEC3 covering the closest enclosing name, not for the zone name
itself. We also need to avoid sending multiple copies of the same NSEC3.
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1184 e5f2f494-b856-4b98-b285-d166d9295462
now that the generic exception code is a separate library in the isc namespace
it doesn't make sense to call it dns_something.
I know it's a big change, but I believe we should do this cleanup sooner
than later.
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1181 e5f2f494-b856-4b98-b285-d166d9295462
dynamically allocated "getNsec3Param *" can leak when exception happens
(and it can happen in this code) before it's deleted.
Remember: code that handles a bare pointer dynamically allocated by 'new' is
almost always buggy as long as we use exceptions. let's drop that idea.
Note: in this specific case, shared_ptr is overspec because it doesn't have
to be shared. boost::scoped_ptr should be sufficient, but since we already
rely on shared_ptr, I chose to minimize dependency. (plus, NSEC3 processing
is heavy anyway, so performance overhead of shared_ptr doesn't matter much
in this context).
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1175 e5f2f494-b856-4b98-b285-d166d9295462
- removed redundant temporary variables
- constified things as much as possible
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1171 e5f2f494-b856-4b98-b285-d166d9295462
be informed of this
- both nsec and nsec3 now throw InvalidRdataText when encountering an
unknown rrtype, rather than InvalidRRType (which was somewhat misleading)
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1164 e5f2f494-b856-4b98-b285-d166d9295462
these cover bugs of trac tickets #73 and #74 (currently commented out).
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1160 e5f2f494-b856-4b98-b285-d166d9295462
- fixed a bug in which NSEC3 parsing would fail if there were
no rrtypes listed
- also, ignore exceptions when a listed type is not recognized
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1159 e5f2f494-b856-4b98-b285-d166d9295462
- add the case-insensitive test back into the sqlite3 unit test
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1157 e5f2f494-b856-4b98-b285-d166d9295462
- refactored NSEC support
- fixed bug in which NSEC records could be duplicated
- added NSEC3 code -- please note NSEC3 is COMPLETELY untested
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1145 e5f2f494-b856-4b98-b285-d166d9295462
static objects to minimize the risk of statitic initialization order fiasco.
git-svn-id: svn://bind10.isc.org/svn/bind10/trunk@1143 e5f2f494-b856-4b98-b285-d166d9295462