aboutsummaryrefslogtreecommitdiffstats
path: root/whisper/peer.go
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2015-03-22 01:18:19 +0800
committerobscuren <geffobscura@gmail.com>2015-03-22 01:18:19 +0800
commit7f85608f30a2e34005c8d15566849229c758c2f1 (patch)
tree7aeb9d8bdfda7ec10ea38688a96ed245028764ad /whisper/peer.go
parent09766d1729f7530093aec7e9acd3e5339b2c2028 (diff)
parentfcacfabe1959c4aff6a63cb4e275f65328660601 (diff)
downloaddexon-7f85608f30a2e34005c8d15566849229c758c2f1.tar.gz
dexon-7f85608f30a2e34005c8d15566849229c758c2f1.tar.zst
dexon-7f85608f30a2e34005c8d15566849229c758c2f1.zip
Merge branch 'conversion' into develop
Diffstat (limited to 'whisper/peer.go')
-rw-r--r--whisper/peer.go28
1 files changed, 10 insertions, 18 deletions
diff --git a/whisper/peer.go b/whisper/peer.go
index 4bd9428f5..338166c25 100644
--- a/whisper/peer.go
+++ b/whisper/peer.go
@@ -10,7 +10,7 @@ import (
)
const (
- protocolVersion = 0x02
+ protocolVersion uint64 = 0x02
)
type peer struct {
@@ -66,23 +66,19 @@ out:
}
func (self *peer) broadcast(envelopes []*Envelope) error {
- envs := make([]interface{}, len(envelopes))
- i := 0
- for _, envelope := range envelopes {
- if !self.known.Has(envelope.Hash()) {
- envs[i] = envelope
- self.known.Add(envelope.Hash())
- i++
+ envs := make([]*Envelope, 0, len(envelopes))
+ for _, env := range envelopes {
+ if !self.known.Has(env.Hash()) {
+ envs = append(envs, env)
+ self.known.Add(env.Hash())
}
}
-
- if i > 0 {
- if err := p2p.EncodeMsg(self.ws, envelopesMsg, envs[:i]...); err != nil {
+ if len(envs) > 0 {
+ if err := p2p.Send(self.ws, envelopesMsg, envs); err != nil {
return err
}
- self.peer.DebugDetailln("broadcasted", i, "message(s)")
+ self.peer.DebugDetailln("broadcasted", len(envs), "message(s)")
}
-
return nil
}
@@ -92,7 +88,7 @@ func (self *peer) addKnown(envelope *Envelope) {
func (self *peer) handleStatus() error {
ws := self.ws
- if err := ws.WriteMsg(self.statusMsg()); err != nil {
+ if err := p2p.SendItems(ws, statusMsg, protocolVersion); err != nil {
return err
}
msg, err := ws.ReadMsg()
@@ -115,7 +111,3 @@ func (self *peer) handleStatus() error {
}
return msg.Discard() // ignore anything after protocol version
}
-
-func (self *peer) statusMsg() p2p.Msg {
- return p2p.NewMsg(statusMsg, protocolVersion)
-}