From 2dea55e9c8bf35fc3fd27304368d05db29ffec9e Mon Sep 17 00:00:00 2001 From: Peter van Dijk Date: Tue, 21 Apr 2015 11:58:27 +0200 Subject: [PATCH] allow referencing of compressed label directly before another compressed label, thanks @giganteous --- pdns/dnsparser.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pdns/dnsparser.cc b/pdns/dnsparser.cc index f3d4106d9..86f2efde2 100644 --- a/pdns/dnsparser.cc +++ b/pdns/dnsparser.cc @@ -471,7 +471,7 @@ void PacketReader::getLabelFromContent(const vector& content, uint16_t& uint16_t offset=256*(labellen & ~0xc0) + (unsigned int)content.at(frompos++) - sizeof(dnsheader); // cout<<"This is an offset, need to go to: "<= pos-2) + if(offset >= pos) throw MOADNSException("forward reference during label decompression"); return getLabelFromContent(content, offset, ret, ++recurs); } -- 2.40.0