Skip to content

Commit bff23eb

Browse files
committed
dnsx/plus: build off of incoming summary
1 parent 712d518 commit bff23eb

2 files changed

Lines changed: 6 additions & 6 deletions

File tree

intra/dnsx/cacher.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -533,7 +533,7 @@ func (t *ctransport) Clear() {
533533

534534
func copySummary(from *x.DNSSummary) (to *x.DNSSummary) {
535535
to = new(x.DNSSummary)
536-
*to = *from
536+
*to = *from // go.dev/play/p/rcGKAcju0FU
537537
return
538538
}
539539

intra/dnsx/plus.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -200,14 +200,14 @@ func (t *plus) forward(network string, q *dns.Msg, outSmm *x.DNSSummary, all ...
200200
qtyp := qtype(q)
201201
tries := plusMaxTries
202202
visited := make(map[string]struct{}, len(all))
203-
var curSmm *x.DNSSummary
203+
var finalSmm *x.DNSSummary
204204

205205
defer func() {
206-
fillSummary(curSmm, outSmm)
206+
fillSummary(finalSmm, outSmm)
207207
}()
208208

209209
for _, tr := range all {
210-
curSmm = new(x.DNSSummary)
210+
finalSmm = copySummary(outSmm)
211211

212212
if len(visited) > tries {
213213
break
@@ -227,7 +227,7 @@ func (t *plus) forward(network string, q *dns.Msg, outSmm *x.DNSSummary, all ...
227227
}
228228
visited[id] = struct{}{}
229229

230-
ans, err := tr.Query(network, q, curSmm)
230+
ans, err := tr.Query(network, q, finalSmm)
231231

232232
failed := xdns.IsServFailOrInvalid(ans)
233233
noans := !failed && !xdns.HasAnyAnswer(ans)
@@ -236,7 +236,7 @@ func (t *plus) forward(network string, q *dns.Msg, outSmm *x.DNSSummary, all ...
236236
svcbblock := (xdns.HasHTTPQuestion(q) || xdns.HasSVCBQuestion(q)) && noans
237237

238238
loged(err != nil || failed || noans)("plus: queried %s for %s:%d; data: %s, code: %d, err? %v",
239-
idstr(tr), qname, qtyp, curSmm.RData, curSmm.RCode, err)
239+
idstr(tr), qname, qtyp, finalSmm.RData, finalSmm.RCode, err)
240240

241241
if err != nil || ans == nil {
242242
errs = core.JoinErr(errs, core.OneErr(err, errNoAnswer))

0 commit comments

Comments
 (0)