From 252a335b895425c6707f2aa296d1ac8d636b512f Mon Sep 17 00:00:00 2001 From: Star Brilliant Date: Wed, 4 Oct 2017 00:41:28 +0800 Subject: [PATCH] Fix crash --- json-dns/unmarshal.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/json-dns/unmarshal.go b/json-dns/unmarshal.go index d500478..7f495ae 100644 --- a/json-dns/unmarshal.go +++ b/json-dns/unmarshal.go @@ -110,6 +110,13 @@ func Unmarshal(msg *dns.Msg, resp *Response, udpSize uint16, ednsClientNetmask u } } if ednsClientAddress != nil { + if ednsClientNetmask == 255 { + if ednsClientFamily == 1 { + ednsClientNetmask = 24 + } else { + ednsClientNetmask = 48 + } + } edns0Subnet := new(dns.EDNS0_SUBNET) edns0Subnet.Code = dns.EDNS0SUBNET edns0Subnet.Family = ednsClientFamily