-
Notifications
You must be signed in to change notification settings - Fork 921
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Provide additional answers in NAPTR queries #15083
base: master
Are you sure you want to change the base?
Conversation
Pull Request Test Coverage Report for Build 13116764149Details
💛 - Coveralls |
d959e0b
to
5ce1428
Compare
if I recall correctly, the "S" case should look for SRV, and then follow those through to get to A/AAAA |
That makes perfect sense. How about this new, uglier, logic? |
(besides review comments), not bad! If the process was recursive, we could just push <name,SRV> there, but it's not. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
one open question for somebody to answer. If the answer to the cache question is good, this is approved.
else if (flags.find('s') != string::npos) { | ||
content = naptrContent->getReplacement(); | ||
DLOG(g_log<<Logger::Debug<<"adding NAPTR replacement 's'="<<content<<endl); | ||
B.lookup(QType(QType::SRV), content, d_sd.domain_id, &p); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
somebody (you? me?) needs to check if this is a cache hit if the previous query for the name was QType::ANY
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adding a quick accessor to the d_cached
überfield shows that, apart from the first time this code path is hit, the lookup is found in cache. That's probably not precise enough.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If a perform an ANY
query to the target of SRV
(_double._tcp.dc.test.com
) before the NAPTR
query of ensm
, all SRV
lookups are found in cache. Does this answer your question?
Short description
This adds additional answers with replacement names found in NAPTR queries when known, and NAPTR records have the S or A flags. This is similar to what the recursor already does, and is based upon its logic.
Takes over #12966 (with @Habbie's approval)
Checklist
I have: