From 02b7bb356ae43e1976796c79e151b3054c1b5174 Mon Sep 17 00:00:00 2001 From: "Johan T. Halseth" Date: Thu, 17 Jan 2019 14:11:56 +0100 Subject: [PATCH] channeldb/addr: validate ip before writing --- channeldb/addr.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/channeldb/addr.go b/channeldb/addr.go index 0d40099e6..18e8bba1f 100644 --- a/channeldb/addr.go +++ b/channeldb/addr.go @@ -3,6 +3,7 @@ package channeldb import ( "encoding/binary" "errors" + "fmt" "io" "net" @@ -43,6 +44,10 @@ func encodeTCPAddr(w io.Writer, addr *net.TCPAddr) error { ip = addr.IP.To16() } + if ip == nil { + return fmt.Errorf("unable to encode IP %v", addr.IP) + } + if _, err := w.Write([]byte{addrType}); err != nil { return err }