From 4dc24d0ecf7333ce139a8b8fb2e8477e14bfe092 Mon Sep 17 00:00:00 2001 From: Tobias Klauser Date: Fri, 16 Feb 2018 17:00:48 +0100 Subject: llmnrd: ignore queries with TC bit set As per RFC 4795, section 2.1.1: The 'TC' bit MUST NOT be set in an LLMNR query and, if set, is ignored by an LLMNR responder. Signed-off-by: Tobias Klauser --- llmnr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/llmnr.c b/llmnr.c index dc4b72a..2afdca6 100644 --- a/llmnr.c +++ b/llmnr.c @@ -204,8 +204,8 @@ static void llmnr_packet_process(unsigned int ifindex, const uint8_t *pktbuf, si flags = ntohs(hdr->flags); qdcount = ntohs(hdr->qdcount); - /* Query invalid as per RFC 4795, section 2.1.1? */ - if (((flags & (LLMNR_F_QR | LLMNR_F_OPCODE)) != 0) || + /* Query invalid as per RFC 4795, section 2.1.1 */ + if (((flags & (LLMNR_F_QR | LLMNR_F_OPCODE | LLMNR_F_TC)) != 0) || qdcount != 1 || hdr->ancount != 0 || hdr->nscount != 0) return; -- cgit v1.2.3-54-g00ecf