Refactor peer.
This commit is contained in:
parent
e2ba6efad2
commit
623c060eaa
|
@ -1,8 +1,9 @@
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/conformal/btcwire"
|
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
"github.com/conformal/btcwire"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TODO: Break Client/Peer/Crawler into separate modules.
|
// TODO: Break Client/Peer/Crawler into separate modules.
|
||||||
|
@ -55,7 +56,8 @@ func (c *Crawler) handleAddress(address string) *[]string {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Send getaddr.
|
// 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)
|
logger.Warningf("[%s] GetAddr failed: %v", address, err)
|
||||||
return &r
|
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
|
// 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
|
// when we get a smaller-than-normal set size or when we've received too
|
||||||
// many unrelated messages.
|
// many unrelated messages.
|
||||||
msg, _, err := btcwire.ReadMessage(peer.conn, client.pver, client.btcnet)
|
msg, _, err := peer.ReadMessage()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Warningf("[%s] Failed to read message: %v", address, err)
|
logger.Warningf("[%s] Failed to read message: %v", address, err)
|
||||||
continue
|
continue
|
||||||
|
|
11
peer.go
11
peer.go
|
@ -2,8 +2,9 @@ package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/conformal/btcwire"
|
|
||||||
"net"
|
"net"
|
||||||
|
|
||||||
|
"github.com/conformal/btcwire"
|
||||||
)
|
)
|
||||||
|
|
||||||
type Peer struct {
|
type Peer struct {
|
||||||
|
@ -85,3 +86,11 @@ func (p *Peer) Handshake() error {
|
||||||
|
|
||||||
return nil
|
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