|
|
|
@ -144,6 +144,18 @@ func (s *Ethereum) InboundPeers() []*Peer { |
|
|
|
|
return inboundPeers[:length] |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (s *Ethereum) InOutPeers() []*Peer { |
|
|
|
|
// Create a new peer slice with at least the length of the total peers
|
|
|
|
|
inboundPeers := make([]*Peer, s.peers.Len()) |
|
|
|
|
length := 0 |
|
|
|
|
eachPeer(s.peers, func(p *Peer, e *list.Element) { |
|
|
|
|
inboundPeers[length] = p |
|
|
|
|
length++ |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
return inboundPeers[:length] |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (s *Ethereum) Broadcast(msgType ethwire.MsgType, data interface{}) { |
|
|
|
|
msg := ethwire.NewMessage(msgType, data) |
|
|
|
|
eachPeer(s.peers, func(p *Peer, e *list.Element) { |
|
|
|
@ -151,6 +163,10 @@ func (s *Ethereum) Broadcast(msgType ethwire.MsgType, data interface{}) { |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (s *Ethereum) Peers() *list.List { |
|
|
|
|
return s.peers |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (s *Ethereum) ReapDeadPeers() { |
|
|
|
|
for { |
|
|
|
|
eachPeer(s.peers, func(p *Peer, e *list.Element) { |
|
|
|
|