Refactor peer.
This commit is contained in:
parent
e2ba6efad2
commit
623c060eaa
|
@ -1,8 +1,9 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"github.com/conformal/btcwire"
|
||||
"time"
|
||||
|
||||
"github.com/conformal/btcwire"
|
||||
)
|
||||
|
||||
// TODO: Break Client/Peer/Crawler into separate modules.
|
||||
|
@ -55,7 +56,8 @@ func (c *Crawler) handleAddress(address string) *[]string {
|
|||
}
|
||||
|
||||
// Send getaddr.
|
||||
if err := btcwire.WriteMessage(peer.conn, btcwire.NewMsgGetAddr(), client.pver, client.btcnet); err != nil {
|
||||
err = peer.WriteMessage(btcwire.NewMsgGetAddr())
|
||||
if err != nil {
|
||||
logger.Warningf("[%s] GetAddr failed: %v", address, err)
|
||||
return &r
|
||||
}
|
||||
|
@ -70,7 +72,7 @@ func (c *Crawler) handleAddress(address string) *[]string {
|
|||
// We can't really tell when we're done receiving peers, so we stop either
|
||||
// when we get a smaller-than-normal set size or when we've received too
|
||||
// many unrelated messages.
|
||||
msg, _, err := btcwire.ReadMessage(peer.conn, client.pver, client.btcnet)
|
||||
msg, _, err := peer.ReadMessage()
|
||||
if err != nil {
|
||||
logger.Warningf("[%s] Failed to read message: %v", address, err)
|
||||
continue
|
||||
|
|
11
peer.go
11
peer.go
|
@ -2,8 +2,9 @@ package main
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/conformal/btcwire"
|
||||
"net"
|
||||
|
||||
"github.com/conformal/btcwire"
|
||||
)
|
||||
|
||||
type Peer struct {
|
||||
|
@ -85,3 +86,11 @@ func (p *Peer) Handshake() error {
|
|||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (p *Peer) WriteMessage(msg btcwire.Message) error {
|
||||
return btcwire.WriteMessage(p.conn, btcwire.NewMsgGetAddr(), p.client.pver, p.client.btcnet)
|
||||
}
|
||||
|
||||
func (p *Peer) ReadMessage() (btcwire.Message, []byte, error) {
|
||||
return btcwire.ReadMessage(p.conn, p.client.pver, p.client.btcnet)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue