Commit c95b2535 authored by Michal 'vorner' Vaner's avatar Michal 'vorner' Vaner
Browse files

[trac551] Handle grand-children wildcards

parent 91a8eaa5
......@@ -392,21 +392,20 @@ struct MemoryZone::MemoryZoneImpl {
* No redirection anywhere. Let's try if it is a wildcard.
if (node->getFlag(DOMAINFLAG_WILD)) {
Name wildcard(Name("*").concatenate(name.split(1)));
switch (domains_.find(wildcard, &node))
case DomainTree::EXACTMATCH:
// This is the node we want.
// This wildcard is not here. It means we want
// something like
// and have only * and
// we don't want that.
return (FindResult(NXDOMAIN, ConstRRsetPtr()));
// If we got here, we have the wildcard node. Jump to
Name wildcard(Name("*").concatenate(
DomainTree::Result result(domains_.find(wildcard, &node));
* Otherwise, why would the DOMAINFLAG_WILD be there if
* there was no wildcard under it?
assert(result = DomainTree::EXACTMATCH);
* We have the wildcard node now. Jump below the switch,
* where handling of the common (exact-match) case is.
* TODO: Some synthesis of RRsets for the wildcard node.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment