BIND 10 #550: wildcard handling for memory zone: load
BIND 10 Development
do-not-reply at isc.org
Sat Jan 29 07:48:08 UTC 2011
#550: wildcard handling for memory zone: load
-------------------------------------+-------------------------------------
Reporter: jinmei | Owner:
Type: enhancement | Status: new
Priority: major | Milestone: A-Team-
Component: data source | Task-Backlog
Sensitive: 0 | Keywords:
Add Hours to Ticket: 0 | Estimated Number of Hours: 0
Total Hours: 0 | Billable?: 1
| Internal?: 0
-------------------------------------+-------------------------------------
See the analysis ticket (#506) for the big picture.
This is a substask for the loading part:
The basic idea is to mark the parent node of a wildcard name
(e.g. example.com for *.example.com) in order to force the find()
logic to perform special processing if the best match node indicates
the existence of a wildcard node below it.
This proces is two-fold:
- when loading an RRset, if the owner name is a wildcard
(e.g. *.foo.example.com) and the RR type is !NS && !NSEC3, mark
that node as "wild". Also make sure the parent node exists in the
tree by explicitly inserting it.
- for any owner name, check if any of its ancestor is a wildcard. this
is the case, e.g., when adding "foo.*.example.com", which would
result in an empty non terminal wildcard node for name
"*.example.com". Note: adding such a name as "foo.*.example.com" is
almost bogus, and BIND 9 rejects loading them by default. It's
still not prohibited by the protocol spec, however. If an ancestor
name is a wildcard, explicitly add a rbt node for that name (to
make sure if can find it as an exact match by find()), and treat
its parent as described in the first bullet.
--
Ticket URL: <https://bind10.isc.org/ticket/550>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list