From 40af1fd278edd0c1192cdf1aa1d058134fd285d4 Mon Sep 17 00:00:00 2001 From: Apple Date: Thu, 30 Aug 2018 17:36:01 +0000 Subject: [PATCH] mDNSResponder-878.70.2.tar.gz --- Makefile | 2 +- mDNSCore/DNSCommon.c | 6 ++++-- mDNSShared/dns_sd.h | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index fa0a4e4..978c895 100644 --- a/Makefile +++ b/Makefile @@ -16,7 +16,7 @@ include $(MAKEFILEPATH)/pb_makefiles/platform.make -MVERS = "mDNSResponder-878.50.17" +MVERS = "mDNSResponder-878.70.2" VER = ifneq ($(strip $(GCC_VERSION)),) diff --git a/mDNSCore/DNSCommon.c b/mDNSCore/DNSCommon.c index 750c10e..597c4cc 100644 --- a/mDNSCore/DNSCommon.c +++ b/mDNSCore/DNSCommon.c @@ -2770,7 +2770,9 @@ mDNSexport const mDNSu8 *getDomainName(const DNSMessage *const msg, const mDNSu8 case 0x80: debugf("getDomainName: Illegal label length 0x%X in domain name %##s", len, name->c); return(mDNSNULL); - case 0xC0: offset = (mDNSu16)((((mDNSu16)(len & 0x3F)) << 8) | *ptr++); + case 0xC0: if (ptr >= end) + { debugf("getDomainName: Malformed compression label (overruns packet end)"); return(mDNSNULL); } + offset = (mDNSu16)((((mDNSu16)(len & 0x3F)) << 8) | *ptr++); if (!nextbyte) nextbyte = ptr; // Record where we got to before we started following pointers ptr = (mDNSu8 *)msg + offset; if (ptr < (mDNSu8*)msg || ptr >= end) @@ -3335,7 +3337,7 @@ mDNSexport mDNSBool SetRData(const DNSMessage *const msg, const mDNSu8 *ptr, con AssignDomainName(&name, (domainname *)ptr); ptr += DomainNameLength(&name); } - if (!ptr) + if (!ptr || ptr >= end) { LogInfo("SetRData: Malformed name for TSIG/TKEY type %d", rr->resrec.rrtype); goto fail; diff --git a/mDNSShared/dns_sd.h b/mDNSShared/dns_sd.h index 94237fb..0e5c35e 100644 --- a/mDNSShared/dns_sd.h +++ b/mDNSShared/dns_sd.h @@ -66,7 +66,7 @@ */ #ifndef _DNS_SD_H -#define _DNS_SD_H 8785017 +#define _DNS_SD_H 8787002 #ifdef __cplusplus extern "C" { -- 2.45.2