Versions in this module Expand all Collapse all v1 v1.0.1 Mar 15, 2017 v1.0.0 Feb 22, 2017 Changes in this version + const MaxPeerRequests + func DisableLog() + func SetDialer(dialer func(string, string) (net.Conn, error)) + func UseLogger(logger btclog.Logger) + type Addr wire.NetAddress + func (a *Addr) Network() string + func (a *Addr) String() string + type Connection interface + BytesRead func() uint64 + BytesWritten func() uint64 + Close func() + Connect func() error + Connected func() bool + LastRead func() time.Time + LastWrite func() time.Time + ReadMessage func() (wire.Message, error) + RemoteAddr func() net.Addr + WriteMessage func(wire.Message) error + func NewConnection(addr net.Addr, maxDown, maxUp int64) Connection + type Inventory struct + func NewInventory() *Inventory + func (I *Inventory) AddKnown(invVect *wire.InvVect) + func (I *Inventory) AddRequest(i int) + func (I *Inventory) FilterKnown(inv []*wire.InvVect) []*wire.InvVect + func (I *Inventory) IsKnown(invVect *wire.InvVect) bool + func (I *Inventory) NumRequests() int + func (I *Inventory) RemoveKnown(invVect *wire.InvVect) + type Listener interface + Accept func() (Connection, error) + Addr func() net.Addr + Close func() error + func Listen(service, addr string) (Listener, error) + type MruInventoryMap struct + func NewMruInventoryMap(limit uint) *MruInventoryMap + func (m *MruInventoryMap) Add(iv *wire.InvVect) + func (m *MruInventoryMap) Delete(iv *wire.InvVect) + func (m *MruInventoryMap) Exists(iv *wire.InvVect) bool + func (m *MruInventoryMap) Filter(invs []*wire.InvVect) []*wire.InvVect + func (m MruInventoryMap) String() string + type ObjectManager interface + DonePeer func(*Peer) + NewPeer func(*Peer) + QueueInv func(inv *wire.MsgInv, p *Peer) + QueueObject func(inv *wire.MsgObject, p *Peer) + ReadyPeer func(*Peer) + type Peer struct + Inbound bool + Inventory *Inventory + Persistent bool + StatsMtx sync.RWMutex + func NewPeer(s server, conn Connection, inventory *Inventory, send Send, ...) *Peer + func NewPeerHandshakeComplete(s server, conn Connection, inventory *Inventory, send Send, ...) *Peer + func (p *Peer) Addr() net.Addr + func (p *Peer) Connected() bool + func (p *Peer) Disconnect() + func (p *Peer) HandleAddrMsg(msg *wire.MsgAddr) error + func (p *Peer) HandleGetDataMsg(msg *wire.MsgGetData) error + func (p *Peer) HandleInvMsg(msg *wire.MsgInv) error + func (p *Peer) HandleObjectMsg(msg *wire.MsgObject) error + func (p *Peer) HandleRelayInvMsg(inv []*wire.InvVect) error + func (p *Peer) HandleVerAckMsg() error + func (p *Peer) HandleVersionMsg(msg *wire.MsgVersion) error + func (p *Peer) HandshakeComplete() bool + func (p *Peer) NetAddress() *wire.NetAddress + func (p *Peer) PrependAddr(str string) string + func (p *Peer) ProtocolVersion() uint32 + func (p *Peer) PushAddrMsg(addresses []*wire.NetAddress) error + func (p *Peer) PushGetDataMsg(ivl []*wire.InvVect) + func (p *Peer) PushInvMsg(invVect []*wire.InvVect) + func (p *Peer) PushObjectMsg(sha *wire.ShaHash) + func (p *Peer) PushVerAckMsg() + func (p *Peer) PushVersionMsg() + func (p *Peer) QueueMessage(msg wire.Message) + func (p *Peer) Start() error + func (p *Peer) VersionKnown() bool + type Send interface + QueueDataRequest func([]*wire.InvVect) error + QueueInventory func([]*wire.InvVect) error + QueueMessage func(wire.Message) error + Running func() bool + Start func(conn Connection) + Stop func() + func NewSend(inventory *Inventory, db database.Db) Send