mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-17 09:23:48 +00:00
whisper: fixed full node
This commit is contained in:
parent
8979a83284
commit
4b34c24cff
1 changed files with 12 additions and 7 deletions
|
|
@ -54,6 +54,8 @@ func newPeer(host *Whisper, remote *p2p.Peer, rw p2p.MsgReadWriter) *Peer {
|
|||
powRequirement: 0.0,
|
||||
known: set.New(),
|
||||
quit: make(chan struct{}),
|
||||
bloomFilter: makeFullNodeBloom(),
|
||||
fullNode: true,
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -229,12 +231,15 @@ func (peer *Peer) bloomMatch(env *Envelope) bool {
|
|||
func (peer *Peer) setBloomFilter(bloom []byte) {
|
||||
peer.bloomFilter = bloom
|
||||
peer.fullNode = isFullNode(bloom)
|
||||
if peer.fullNode {
|
||||
if peer.bloomFilter == nil {
|
||||
peer.bloomFilter = make([]byte, bloomFilterSize)
|
||||
for i := 0; i < bloomFilterSize; i++ {
|
||||
peer.bloomFilter[i] = 0xFF
|
||||
}
|
||||
}
|
||||
if peer.fullNode && peer.bloomFilter == nil {
|
||||
peer.bloomFilter = makeFullNodeBloom()
|
||||
}
|
||||
}
|
||||
|
||||
func makeFullNodeBloom() []byte {
|
||||
bloom := make([]byte, bloomFilterSize)
|
||||
for i := 0; i < bloomFilterSize; i++ {
|
||||
bloom[i] = 0xFF
|
||||
}
|
||||
return bloom
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue