From a08e225931eb30bc3a9fdeda7b967c3d690ec0b1 Mon Sep 17 00:00:00 2001 From: mzack Date: Wed, 4 Aug 2021 11:30:39 +0200 Subject: [PATCH] Improving return on error --- client.go | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/client.go b/client.go index c266429..c8c688c 100644 --- a/client.go +++ b/client.go @@ -182,17 +182,20 @@ func (c *Client) QueryMultiple(host string, requestTypes []uint16) (*DNSData, er } err = dnsdata.ParseFromMsg(resp) - if !dnsdata.contains() { - continue - } + + // populate anyway basic info dnsdata.Host = host - dnsdata.Raw += resp.String() dnsdata.StatusCode = dns.RcodeToString[resp.Rcode] dnsdata.StatusCodeRaw = resp.Rcode - dnsdata.Resolver = append(dnsdata.Resolver, resolver) dnsdata.Timestamp = time.Now() + dnsdata.Raw += resp.String() + dnsdata.Resolver = append(dnsdata.Resolver, resolver) + + if err != nil || !dnsdata.contains() { + continue + } dnsdata.dedupe() - + // stop on success if resp.Rcode == dns.RcodeSuccess { break