Pārlūkot izejas kodu

Don't fail on EDNS EXPIRE query option

Ask Bjørn Hansen 5 gadi atpakaļ
vecāks
revīzija
5847436808
3 mainītis faili ar 6 papildinājumiem un 2 dzēšanām
  1. 1 1
      go.mod
  2. 4 0
      vendor/github.com/miekg/dns/edns.go
  3. 1 1
      vendor/modules.txt

+ 1 - 1
go.mod

@@ -25,4 +25,4 @@ require (
 	gopkg.in/yaml.v2 v2.2.7 // indirect
 )
 
-// replace github.com/miekg/dns v1.1.26 => github.com/abh/dns v1.1.26-1
+replace github.com/miekg/dns v1.1.26 => github.com/abh/dns v1.1.26-1

+ 4 - 0
vendor/github.com/miekg/dns/edns.go

@@ -543,6 +543,10 @@ func (e *EDNS0_EXPIRE) pack() ([]byte, error) {
 }
 
 func (e *EDNS0_EXPIRE) unpack(b []byte) error {
+	if len(b) == 0 {
+		// zero-length EXPIRE query, https://tools.ietf.org/html/rfc7314#section-2
+		return nil
+	}
 	if len(b) < 4 {
 		return ErrBuf
 	}

+ 1 - 1
vendor/modules.txt

@@ -20,7 +20,7 @@ github.com/golang/protobuf/proto
 github.com/google/uuid
 # github.com/matttproud/golang_protobuf_extensions v1.0.1
 github.com/matttproud/golang_protobuf_extensions/pbutil
-# github.com/miekg/dns v1.1.26
+# github.com/miekg/dns v1.1.26 => github.com/abh/dns v1.1.26-1
 github.com/miekg/dns
 # github.com/nxadm/tail v1.4.4
 github.com/nxadm/tail