diff --git a/net/net.go b/net/net.go index 7e0f412..16f1bbc 100644 --- a/net/net.go +++ b/net/net.go @@ -248,16 +248,16 @@ func (l *maListener) Accept() (Conn, error) { var raddr ma.Multiaddr // This block protects us in transports (i.e. unix sockets) that don't have // remote addresses for inbound connections. - if nconn.RemoteAddr().String() != "" { - raddr, err = FromNetAddr(nconn.RemoteAddr()) + if addr := nconn.RemoteAddr(); addr != nil && addr.String() != "" { + raddr, err = FromNetAddr(addr) if err != nil { return nil, fmt.Errorf("failed to convert conn.RemoteAddr: %s", err) } } var laddr ma.Multiaddr - if nconn.LocalAddr().String() != "" { - laddr, err = FromNetAddr(nconn.LocalAddr()) + if addr := nconn.LocalAddr(); addr != nil && addr.String() != "" { + laddr, err = FromNetAddr(addr) if err != nil { return nil, fmt.Errorf("failed to convert conn.LocalAddr: %s", err) }