diff --git a/router/peer.go b/router/peer.go index ca993aff..3c2e8576 100644 --- a/router/peer.go +++ b/router/peer.go @@ -14,9 +14,9 @@ func NewPeer(name PeerName, uid uint64, version uint64) *Peer { return &Peer{ Name: name, NameByte: name.Bin(), - connections: make(map[PeerName]Connection), + UID: uid, version: version, - UID: uid} + connections: make(map[PeerName]Connection)} } func (peer *Peer) String() string { diff --git a/router/router.go b/router/router.go index e4bfb348..08825bd5 100644 --- a/router/router.go +++ b/router/router.go @@ -51,8 +51,8 @@ func (router *Router) Start() { checkFatal(err) po, err := NewPcapO(router.Iface.Name) checkFatal(err) - router.ConnectionMaker = StartConnectionMaker(router.Ourself, router.Peers) router.Routes = StartRoutes(router.Ourself.Peer, router.Peers) + router.ConnectionMaker = StartConnectionMaker(router.Ourself, router.Peers) router.UDPListener = router.listenUDP(Port, po) router.listenTCP(Port) router.sniff(pio) diff --git a/router/types.go b/router/types.go index 524ac316..97d27dc5 100644 --- a/router/types.go +++ b/router/types.go @@ -12,13 +12,13 @@ import ( ) type Router struct { - Ourself *LocalPeer Iface *net.Interface + Ourself *LocalPeer Macs *MacCache Peers *Peers - UDPListener *net.UDPConn Routes *Routes ConnectionMaker *ConnectionMaker + UDPListener *net.UDPConn Password *[]byte ConnLimit int BufSz int @@ -29,10 +29,10 @@ type Peer struct { sync.RWMutex Name PeerName NameByte []byte - connections map[PeerName]Connection - version uint64 UID uint64 + version uint64 localRefCount uint64 + connections map[PeerName]Connection } type LocalPeer struct {