Skip to content

Commit

Permalink
Chore: doh request should with id 0 (#1660)
Browse files Browse the repository at this point in the history
  • Loading branch information
beyondkmp committed Oct 7, 2021
1 parent 66cb0b1 commit 1996bef
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions dns/doh.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,19 @@ func (dc *dohClient) Exchange(m *D.Msg) (msg *D.Msg, err error) {
}

func (dc *dohClient) ExchangeContext(ctx context.Context, m *D.Msg) (msg *D.Msg, err error) {
req, err := dc.newRequest(m)
// https://datatracker.ietf.org/doc/html/rfc8484#section-4.1
// In order to maximize cache friendliness, SHOULD use a DNS ID of 0 in every DNS request.
newM := *m
newM.Id = 0
req, err := dc.newRequest(&newM)
if err != nil {
return nil, err
}

req = req.WithContext(ctx)
return dc.doRequest(req)
msg, err = dc.doRequest(req)
msg.Id = m.Id
return
}

// newRequest returns a new DoH request given a dns.Msg.
Expand Down

0 comments on commit 1996bef

Please sign in to comment.