From 5afdee63150c684789444bdee867c91d4a87ef7e Mon Sep 17 00:00:00 2001 From: Star Brilliant Date: Wed, 25 Apr 2018 03:05:06 +0800 Subject: [PATCH] Put EDNS0 at the beginning of the OPT section --- doh-client/ietf.go | 2 +- doh-server/ietf.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doh-client/ietf.go b/doh-client/ietf.go index 6ba7a1a..bc4e625 100644 --- a/doh-client/ietf.go +++ b/doh-client/ietf.go @@ -75,7 +75,7 @@ func (c *Client) generateRequestIETF(w dns.ResponseWriter, r *dns.Msg, isTCP boo opt.Hdr.Rrtype = dns.TypeOPT opt.SetUDPSize(dns.DefaultMsgSize) opt.SetDo(false) - r.Extra = append(r.Extra, opt) + r.Extra = append([]dns.RR{opt}, r.Extra...) } else { udpSize = opt.UDPSize() } diff --git a/doh-server/ietf.go b/doh-server/ietf.go index 60b43e4..869e5cb 100644 --- a/doh-server/ietf.go +++ b/doh-server/ietf.go @@ -95,7 +95,7 @@ func (s *Server) parseRequestIETF(w http.ResponseWriter, r *http.Request) *DNSRe opt.Hdr.Rrtype = dns.TypeOPT opt.SetUDPSize(dns.DefaultMsgSize) opt.SetDo(false) - msg.Extra = append(msg.Extra, opt) + msg.Extra = append([]dns.RR{opt}, msg.Extra...) } var edns0Subnet *dns.EDNS0_SUBNET for _, option := range opt.Option {