- Notifications
You must be signed in to change notification settings - Fork 1.2k
x/net/dns/dnsmessage: add https svcb dns types #241
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
base: master
Are you sure you want to change the base?
Conversation
This change implements the proposal to add new DNS message types HTTPS and SVCB in the golang.org/x/net/dns/dnsmessage package, as described in golang/go#43790. The implementation includes: - New types `TypeHTTPS` and `TypeSVCB`. - `SVCBResource` and `HTTPSResource` structs, with `HTTPSResource` embedding `SVCBResource`. - `SVCParam` and `SVCParamKey` types for handling service parameters. - `pack` and `unpack` methods for the new resource types. - Integration into the `Parser` and `Builder`. - Comprehensive tests, including for parameter handling logic. Note: Two tests, `TestDNSPackUnpack` and `TestParsingAllocs`, are still failing. The `TestParsingAllocs` failure is considered acceptable as further optimization would require unsafe code. The `TestDNSPackUnpack` failure is due to a subtle issue with `reflect.DeepEqual` and slice capacities that I was unable to resolve.
Added comment for SVCParamKey values reference.
This PR (HEAD: 7cb10b8) has been imported to Gerrit for code review. Please visit Gerrit at https://go-review.googlesource.com/c/net/+/710736. Important tips:
|
Message from Gopher Robot: Patch Set 1: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Vinicius Fortuna: Patch Set 1: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Gopher Robot: Patch Set 1: Congratulations on opening your first change. Thank you for your contribution! Next steps: Most changes in the Go project go through a few rounds of revision. This can be During May-July and Nov-Jan the Go project is in a code freeze, during which Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
This PR (HEAD: 00e1850) has been imported to Gerrit for code review. Please visit Gerrit at https://go-review.googlesource.com/c/net/+/710736. Important tips:
|
This PR (HEAD: 274d339) has been imported to Gerrit for code review. Please visit Gerrit at https://go-review.googlesource.com/c/net/+/710736. Important tips:
|
Message from Vinicius Fortuna: Patch Set 6: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Vinicius Fortuna: Patch Set 6: Code-Review+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from t hepudds: Patch Set 6: Commit-Queue+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Go LUCI: Patch Set 6: Dry run: CV is trying the patch. Bot data: {"action":"start","triggered_at":"2025-10-13T12:27:18Z","revision":"3e77cea34ac96420e73a05e6fa88907ba50039c4"} Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from t hepudds: Patch Set 6: -Commit-Queue Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Go LUCI: Patch Set 6: This CL has passed the run Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Go LUCI: Patch Set 6: LUCI-TryBot-Result+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from t hepudds: Patch Set 6: (3 comments) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Vinicius Fortuna: Patch Set 6: (3 comments) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Mateusz Poliwczak: Patch Set 6: (5 comments) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Mateusz Poliwczak: Patch Set 7: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Mateusz Poliwczak: Patch Set 7: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Mateusz Poliwczak: Patch Set 7: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Mateusz Poliwczak: Patch Set 7: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Mateusz Poliwczak: Patch Set 7: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
This PR (HEAD: 18a863e) has been imported to Gerrit for code review. Please visit Gerrit at https://go-review.googlesource.com/c/net/+/710736. Important tips:
|
Message from Sean Liao: Patch Set 7: (5 comments) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Vinicius Fortuna: Patch Set 8: (12 comments) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
This PR (HEAD: 6e3be98) has been imported to Gerrit for code review. Please visit Gerrit at https://go-review.googlesource.com/c/net/+/710736. Important tips:
|
Message from Damien Neil: Patch Set 10: Commit-Queue+1 (7 comments) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Go LUCI: Patch Set 10: Dry run: CV is trying the patch. Bot data: {"action":"start","triggered_at":"2025-10-14T00:12:51Z","revision":"15cfcbacff94e58de83ba3c068bd9fb4572f2636"} Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Damien Neil: Patch Set 10: -Commit-Queue Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Go LUCI: Patch Set 10: This CL has passed the run Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
Message from Go LUCI: Patch Set 10: LUCI-TryBot-Result+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
This PR (HEAD: c33610b) has been imported to Gerrit for code review. Please visit Gerrit at https://go-review.googlesource.com/c/net/+/710736. Important tips:
|
Message from Vinicius Fortuna: Patch Set 10: (5 comments) Please don’t reply on this GitHub thread. Visit golang.org/cl/710736. |
This change implements the proposal to add new DNS message types HTTPS and
SVCB in the golang.org/x/net/dns/dnsmessage package, as described in
golang/go#43790.
The implementation includes:
SVCBResource.
I implemented the SVCB parsing code so that it performs only two
allocations: one for the []SVCParam slice, and one to hold the SVCParam
values. A test was added to demonstrate that.
Fixes golang/go#43790