diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-09-19 08:54:52 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-09-20 11:23:33 +0200 |
commit | 7d33d36d73d2e902b107fb597e84e44ab11274a9 (patch) | |
tree | 7ef04cf1c29216f342da8e5ee69de7c1290959aa /mDNSResponder/mDNSCore/dnsproxy.c | |
parent | mDNSResponder: Update to v765.20.4 (diff) | |
download | rtems-libbsd-7d33d36d73d2e902b107fb597e84e44ab11274a9.tar.bz2 |
mDNSResponder: Update to v765.30.11
The sources can be obtained via:
https://opensource.apple.com/tarballs/mDNSResponder/mDNSResponder-765.30.11.tar.gz
Update #3522.
Diffstat (limited to 'mDNSResponder/mDNSCore/dnsproxy.c')
-rw-r--r-- | mDNSResponder/mDNSCore/dnsproxy.c | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/mDNSResponder/mDNSCore/dnsproxy.c b/mDNSResponder/mDNSCore/dnsproxy.c index 05b70dd9..5376d3c8 100644 --- a/mDNSResponder/mDNSCore/dnsproxy.c +++ b/mDNSResponder/mDNSCore/dnsproxy.c @@ -195,6 +195,8 @@ mDNSlocal mDNSu8 *AddResourceRecords(mDNS *const m, DNSProxyClient *pc, mDNSu8 * CacheRecord *soa = mDNSNULL; CacheRecord *cname = mDNSNULL; mDNSu8 *limit; + domainname tempQName; + mDNSu32 tempQNameHash; *error = mStatus_NoError; *prevptr = mDNSNULL; @@ -222,20 +224,17 @@ mDNSlocal mDNSu8 *AddResourceRecords(mDNS *const m, DNSProxyClient *pc, mDNSu8 * } LogInfo("AddResourceRecords: Limit is %d", limit - m->omsg.data); - if (!SameDomainName(&pc->qname, &pc->q.qname)) - { - AssignDomainName(&pc->q.qname, &pc->qname); - pc->q.qnamehash = DomainNameHashValue(&pc->q.qname); - } + AssignDomainName(&tempQName, &pc->qname); + tempQNameHash = DomainNameHashValue(&tempQName); again: nsec = soa = cname = mDNSNULL; - slot = HashSlot(&pc->q.qname); - - cg = CacheGroupForName(m, slot, pc->q.qnamehash, &pc->q.qname); + slot = HashSlot(&tempQName); + + cg = CacheGroupForName(m, slot, tempQNameHash, &tempQName); if (!cg) { - LogInfo("AddResourceRecords: CacheGroup not found"); + LogInfo("AddResourceRecords: CacheGroup not found for %##s", tempQName.c); *error = mStatus_NoSuchRecord; return mDNSNULL; } @@ -344,8 +343,8 @@ again: } if (cname) { - AssignDomainName(&pc->q.qname, &cname->resrec.rdata->u.name); - pc->q.qnamehash = DomainNameHashValue(&pc->q.qname); + AssignDomainName(&tempQName, &cname->resrec.rdata->u.name); + tempQNameHash = DomainNameHashValue(&tempQName); goto again; } if (!ptr) |