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

rec: Prevent an infinite loop if we need auth and the best match is not #5549

Merged
merged 1 commit into from Aug 1, 2017

Conversation

Projects
None yet
1 participant
@rgacogne
Member

rgacogne commented Jul 24, 2017

Short description

The current code gets the most specific entry, and checks whether it's still valid. If it's not, it removes it from the index and loops to fetch the next best match. However, if the entry is valid but doesn't hold authoritative data and the caller requested it, it tries to loop to get a new match. Since the entry is still present in the index, it will just get the same entry over and over, triggering an infinite loop.

Checklist

I have:

  • read the CONTRIBUTING.md document
  • compiled and tested this code
  • included documentation (including possible behaviour changes)
  • documented the code
  • added or modified regression test(s)
  • added or modified unit test(s)

@rgacogne rgacogne added this to the rec-4.1.0 milestone Jul 24, 2017

@rgacogne rgacogne merged commit 69e0da4 into PowerDNS:master Aug 1, 2017

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

@rgacogne rgacogne deleted the rgacogne:rec-ecsindex-auth-mismatch branch Aug 1, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment