Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ISC Open Source Projects
Kea
Commits
b4ae924f
Commit
b4ae924f
authored
Aug 17, 2011
by
Michal 'vorner' Vaner
Browse files
[1066] Logging about wildcards
parent
2384bcf3
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/lib/datasrc/database.cc
View file @
b4ae924f
...
...
@@ -380,6 +380,9 @@ DatabaseClient::Finder::find(const isc::dns::Name& name,
// But check if something lives below this
// domain and if so, pretend something is here as well.
if
(
hasSubdomains
(
name
.
toText
()))
{
LOG_DEBUG
(
logger
,
DBG_TRACE_DETAILED
,
DATASRC_DATABASE_FOUND_EMPTY_NONTERMINAL
).
arg
(
database_
->
getDBName
()).
arg
(
name
);
records_found
=
true
;
}
else
{
// It's not empty non-terminal. So check for wildcards.
...
...
@@ -407,6 +410,10 @@ DatabaseClient::Finder::find(const isc::dns::Name& name,
records_found
=
true
;
// We pretend to switch to non-glue_ok mode
glue_ok
=
false
;
LOG_DEBUG
(
logger
,
DBG_TRACE_DETAILED
,
DATASRC_DATABASE_WILDCARD_CANCEL_NS
).
arg
(
database_
->
getDBName
()).
arg
(
wildcard
).
arg
(
first_ns
->
getName
());
}
else
if
(
!
hasSubdomains
(
name
.
split
(
i
-
1
).
toText
()))
{
// Nothing we added as part of the * can exist
...
...
@@ -415,11 +422,24 @@ DatabaseClient::Finder::find(const isc::dns::Name& name,
// that case, we need to cancel the match.
records_found
=
true
;
result_rrset
=
found
.
second
;
LOG_DEBUG
(
logger
,
DBG_TRACE_DETAILED
,
DATASRC_DATABASE_WILDCARD
).
arg
(
database_
->
getDBName
()).
arg
(
wildcard
).
arg
(
name
);
}
else
{
LOG_DEBUG
(
logger
,
DBG_TRACE_DETAILED
,
DATASRC_DATABASE_WILDCARD_CANCEL_SUB
).
arg
(
database_
->
getDBName
()).
arg
(
wildcard
).
arg
(
name
).
arg
(
superdomain
);
}
break
;
}
else
if
(
hasSubdomains
(
wildcard
.
toText
()))
{
// Empty non-terminal asterisk
records_found
=
true
;
LOG_DEBUG
(
logger
,
DBG_TRACE_DETAILED
,
DATASRC_DATABASE_WILDCARD_EMPTY
).
arg
(
database_
->
getDBName
()).
arg
(
wildcard
).
arg
(
name
);
break
;
}
}
...
...
src/lib/datasrc/datasrc_messages.mes
View file @
b4ae924f
...
...
@@ -104,6 +104,11 @@ When searching for a domain, the program met a DNAME redirection to a different
place in the domain space at the given domain name. It will return that one
instead.
% DATASRC_DATABASE_FOUND_EMPTY_NONTERMINAL empty non-terminal %2 in %1
The domain name doesn't have any RRs, so it doesn't exist in the database.
However, it has a subdomain, so it exists in the DNS address space. So we
return NXRRSET instead of NXDOMAIN.
% DATASRC_DATABASE_FOUND_NXDOMAIN search in datasource %1 resulted in NXDOMAIN for %2/%3/%4
The data returned by the database backend did not contain any data for the given
domain name, class and type.
...
...
@@ -117,6 +122,28 @@ The data returned by the database backend contained data for the given domain
name, and it either matches the type or has a relevant type. The RRset that is
returned is printed.
% DATASRC_DATABASE_WILDCARD constructing RRset %3 from wildcard %2 in %1
The database doesn't contain directly matching domain, but it does contain a
wildcard one which is being used to synthesize the answer.
% DATASRC_DATABASE_WILDCARD_CANCEL_NS canceled wildcard match on %2 because %3 contains NS in %1
The database was queried to provide glue data and it didn't find direct match.
It could create it from given wildcard, but matching wildcards is forbidden
under a zone cut, which was found. Therefore the delegation will be returned
instead.
% DATASRC_DATABASE_WILDCARD_CANCEL_SUB wildcard %2 can't be used to construct %3 because %4 exists in %1
The answer could be constructed using the wildcard, but the given subdomain
exists, therefore this name is something like empty non-terminal (actually,
from the protocol point of view, it is empty non-terminal, but the code
discovers it differently).
% DATASRC_DATABASE_WILDCARD_EMPTY implicit wildcard %2 used to construct %3 in %1
The given wildcard exists implicitly in the domainspace, as empty nonterminal
(eg. there's something like subdomain.*.example.org, so *.example.org exists
implicitly, but is empty). This will produce NXRRSET, because the constructed
domain is empty as well as the wildcard.
% DATASRC_DO_QUERY handling query for '%1/%2'
A debug message indicating that a query for the given name and RR type is being
processed.
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment