fix: encode and send negative answers for absent hostname records - #509
Open
Twister915 wants to merge 1 commit into
Open
Twister915 wants to merge 1 commit into
Twister915 wants to merge 1 commit into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hello! While developing a tvOS app which talks to a Rust service, I ran into a few bugs in this library that led to discovery issues. I had my agent help me write some patches to fix these issues.
This PR deals with implementing a section of the RFC which, supposedly, was not already implemented.
Like the other two, this was causing issues with discovering the service within the app- it would randomly disappear.
Here is the PR description my agent (gpt-6 astra) wrote for this-
Queries for an absent address family currently receive no answer even when the responder owns the hostname. Modern resolvers also ask for HTTPS/SVCB records that this responder does not publish. Explicit negative answers let those resolvers finish the lookup instead of waiting for unanswered queries.
Implement the restricted NSEC response described by RFC 6762 section 6.1:
Encoding and generating these responses are grouped because emitting NSEC with the existing serializer would produce invalid packets. HTTPS/SVCB recognition is included here so this branch works independently of generic unknown-question handling.
Validation
cargo fmt --check, async-only build, and all-feature documentation with warnings denied pass.test_hostname_resolution_address_removedfailed, as it does on untouched upstream75d1941on this host.This is one independent commit on current upstream
main; no other PR is required.