Skip to content
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

Update dnsmasq to 2.91rc3 #2182

Merged
merged 3 commits into from
Feb 8, 2025
Merged

Update dnsmasq to 2.91rc3 #2182

merged 3 commits into from
Feb 8, 2025

Conversation

DL6ER
Copy link
Member

@DL6ER DL6ER commented Feb 8, 2025

What does this implement/fix?

This PR contains only one commit to resolve a bug reported through our Discourse forum:

A retry to upstream DNS servers triggered by the following conditions

  1. A query asking for the same data as a previous query which has not yet been answered.
  2. The second query arrives more than two seconds after the first.
  3. Either the source of the second query or the id field differs from the first.

fails to set the case of the retry to the same pattern as the first attempt.

However dnsmasq expects the reply from upstream to have the case pattern of the first attempt.

If the answer to the retry arrives before the answer to the first query, dnsmasq will notice the case mismatch, log an error, and ignore the answer.

The worst case scenario would be the first upstream query or reply is lost and there would follow a short period where all queries for that particular domain would fail.

This is a development issue, it doesn't apply to previous stable releases.


Related issue or feature (if applicable): see comment below

Pull request in docs with documentation (if applicable): N/A


By submitting this pull request, I confirm the following:

  1. I have read and understood the contributors guide, as well as this entire template. I understand which branch to base my commits and Pull Requests against.
  2. I have commented my proposed changes within the code.
  3. I am willing to help maintain this change if there are issues with it later.
  4. It is compatible with the EUPL 1.2 license
  5. I have squashed any insignificant commits. (git rebase)

Checklist:

  • The code change is tested and works locally.
  • I based my code and PRs against the repositories developmental branch.
  • I signed off all commits. Pi-hole enforces the DCO for all contributions
  • I signed all my commits. Pi-hole requires signatures to verify authorship
  • I have read the above and my PR is ready for review.

simonkelley and others added 2 commits February 8, 2025 06:53
A retry to upstream DNS servers triggered by the following conditions

1) A query asking for the same data as a previous query which has not yet been answered.
2) The second query arrives more than two seconds after the first.
3) Either the source of the second query or the id field differs from the first.

fails to set the case of the retry to the same pattern as the first attempt.

However dnsmasq expects the reply from upstream to have the case
pattern of the first attempt.

If the answer to the retry arrives before the answer to the first
query, dnsmasq will notice the case mismatch, log an error, and
ignore the answer.

The worst case scenario would be the first upstream query or reply is
lost and there would follow a short period where all queries for that
particular domain would fail.

This is a 2.91 development issue, it doesn't apply to previous stable releases.

Signed-off-by: DL6ER <[email protected]>
@pralor-bot
Copy link

This pull request has been mentioned on Pi-hole Userspace. There might be relevant details there:

https://discourse.pi-hole.net/t/case-mismatch-in-dns-reply/75628/14

@DL6ER DL6ER enabled auto-merge February 8, 2025 09:18
@DL6ER
Copy link
Member Author

DL6ER commented Feb 8, 2025

The last commit fixes the missing newline before Architecture:

Screenshot from 2025-02-08 10-27-18

like

Screenshot from 2025-02-08 10-27-36

@DL6ER DL6ER merged commit 9b71652 into development Feb 8, 2025
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants