projects
/
systemd
/
.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
29d96ac
)
resolved: don't discard mDNS queries with bad flags
author
Sergey Bugaev
<bugaevc@gmail.com>
Fri, 19 Feb 2021 12:29:02 +0000
(15:29 +0300)
committer
Zbigniew Jędrzejewski-Szmek
<zbyszek@in.waw.pl>
Fri, 12 Mar 2021 16:35:57 +0000
(17:35 +0100)
Even though RFC 6762 specifies these bits MUST be zero, it also says they MUST
be ignored on reception.
(cherry picked from commit
2aaf3765974c9f340c0c3d705e9f0609073cf83c
)
src/resolve/resolved-dns-packet.c
patch
|
blob
|
history
diff --git
a/src/resolve/resolved-dns-packet.c
b/src/resolve/resolved-dns-packet.c
index bcb292303b06c5601ba49a4d3d8af4173236173a..62cd6da5fb12d66437ce49367ce3380ec6edc230 100644
(file)
--- a/
src/resolve/resolved-dns-packet.c
+++ b/
src/resolve/resolved-dns-packet.c
@@
-294,13
+294,10
@@
int dns_packet_validate_query(DnsPacket *p) {
break;
case DNS_PROTOCOL_MDNS:
- /* RFC 6762, Section 18 */
- if (DNS_PACKET_AA(p) != 0 ||
- DNS_PACKET_RD(p) != 0 ||
- DNS_PACKET_RA(p) != 0 ||
- DNS_PACKET_AD(p) != 0 ||
- DNS_PACKET_CD(p) != 0 ||
- DNS_PACKET_RCODE(p) != 0)
+ /* RFC 6762, Section 18 specifies that messages with non-zero RCODE
+ * must be silently ignored, and that we must ignore the values of
+ * AA, RD, RA, AD, and CD bits. */
+ if (DNS_PACKET_RCODE(p) != 0)
return -EBADMSG;
break;