{&dns} is as valid as {?dns} in a SVCB's dohpath
Summary
dig
fails to parse a valid (as far as I can tell, and accepted by kdig
and Wireshark) SVCB
record with a dohpath
URI template containing a {&dns}
. If the URI template contains a {?dns}
instead dig
is happy, but my understanding of rfc9461 and section 1.2. "Levels and Expression Types" of rfc6570 is that {&dns}
is valid.
BIND version affected
9.20.1 and current main
.
Steps to reproduce
Set up an SVCB
record containing dohpath=/some/path?key=value{&dns}"
, use dig
to retrieve it.
What is the current bug behavior?
;; Got bad packet: FORMERR
What is the expected correct behavior?
The response is properly parsed.
I'm attaching a patch0001-fix-dns-is-as-valid-as-dns-in-a-SVCB-s-dohpath.patch that fixes the issue for me. I'm not allowed to fork the repository on this instance, and while Gitlab states that You can create a new merge request inside this project by sending an email to the following email address
my e-mail was rejected as well with You are not allowed to perform this action.
so you get an attachment instead of a merge request :)