packagetcpreuseimport("errors""sync"logging"github.com/ipfs/go-log")varlog=logging.Logger("reuseport-transport")// ErrWrongProto is returned when dialing a protocol other than tcp.varErrWrongProto=errors.New("can only dial TCP over IPv4 or IPv6")// Transport is a TCP reuse transport that reuses listener ports.typeTransportstruct{v4networkv6network}typenetworkstruct{musync.RWMutexlistenersmap[*listener]struct{}dialerdialer}