From 3b785244ab8f737f71acc79ac7cb977bfa041f24 Mon Sep 17 00:00:00 2001 From: Miek Gieben Date: Fri, 4 Apr 2014 19:33:50 +0100 Subject: [PATCH] Add test for parsing a packet --- parse_test.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/parse_test.go b/parse_test.go index 5f7a64a7..aebd5117 100644 --- a/parse_test.go +++ b/parse_test.go @@ -6,6 +6,7 @@ package dns import ( "bytes" + "encoding/hex" "fmt" "math/rand" "net" @@ -1097,6 +1098,7 @@ func TestTxtEqual(t *testing.T) { } t.Logf("\n%s\n%s\n", rr1.String(), rr2.String()) } + func TestTxtLong(t *testing.T) { rr1 := new(TXT) rr1.Hdr = RR_Header{Name: ".", Rrtype: TypeTXT, Class: ClassINET, Ttl: 0} @@ -1112,3 +1114,12 @@ func TestTxtLong(t *testing.T) { t.Fail() } } + +func TestMalformedPacket1(t *testing.T) { + packet := "00441553000000010000000000010563646e6a730a636c6f7564666c61726503636f6d0363646e0a636c6f7564666c617265036e657400001c00010000291000000080000000" + data, _ := hex.DecodeString(packet) + + // This crashes godns + var msg Msg + msg.Unpack(data) +}