mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-19 10:22:23 +00:00
swarm/pss: port to p2p/enode
This commit is contained in:
parent
421a83db7e
commit
8b3a50ab13
16 changed files with 48 additions and 356 deletions
|
|
@ -27,7 +27,7 @@ import (
|
|||
|
||||
"github.com/ethereum/go-ethereum/common/hexutil"
|
||||
"github.com/ethereum/go-ethereum/p2p"
|
||||
"github.com/ethereum/go-ethereum/p2p/discover"
|
||||
"github.com/ethereum/go-ethereum/p2p/enode"
|
||||
"github.com/ethereum/go-ethereum/p2p/protocols"
|
||||
"github.com/ethereum/go-ethereum/rlp"
|
||||
"github.com/ethereum/go-ethereum/rpc"
|
||||
|
|
@ -283,8 +283,7 @@ func (c *Client) RunProtocol(ctx context.Context, proto *p2p.Protocol) error {
|
|||
break
|
||||
}
|
||||
c.peerPool[topicobj][pubkeyid] = rw
|
||||
nid, _ := discover.HexID("0x00")
|
||||
p := p2p.NewPeer(nid, fmt.Sprintf("%v", addr), []p2p.Cap{})
|
||||
p := p2p.NewPeer(enode.ID{}, fmt.Sprintf("%v", addr), []p2p.Cap{})
|
||||
go proto.Run(p, c.peerPool[topicobj][pubkeyid])
|
||||
}
|
||||
go func() {
|
||||
|
|
@ -334,8 +333,7 @@ func (c *Client) AddPssPeer(pubkeyid string, addr []byte, spec *protocols.Spec)
|
|||
c.poolMu.Lock()
|
||||
c.peerPool[topic][pubkeyid] = rw
|
||||
c.poolMu.Unlock()
|
||||
nid, _ := discover.HexID("0x00")
|
||||
p := p2p.NewPeer(nid, fmt.Sprintf("%v", addr), []p2p.Cap{})
|
||||
p := p2p.NewPeer(enode.ID{}, fmt.Sprintf("%v", addr), []p2p.Cap{})
|
||||
go c.protos[topic].Run(p, c.peerPool[topic][pubkeyid])
|
||||
}
|
||||
return nil
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ import (
|
|||
"github.com/ethereum/go-ethereum/log"
|
||||
"github.com/ethereum/go-ethereum/node"
|
||||
"github.com/ethereum/go-ethereum/p2p"
|
||||
"github.com/ethereum/go-ethereum/p2p/discover"
|
||||
"github.com/ethereum/go-ethereum/p2p/enode"
|
||||
"github.com/ethereum/go-ethereum/p2p/simulations"
|
||||
"github.com/ethereum/go-ethereum/p2p/simulations/adapters"
|
||||
"github.com/ethereum/go-ethereum/rpc"
|
||||
|
|
@ -232,12 +232,11 @@ func setupNetwork(numnodes int) (clients []*rpc.Client, err error) {
|
|||
|
||||
func newServices() adapters.Services {
|
||||
stateStore := state.NewInmemoryStore()
|
||||
kademlias := make(map[discover.NodeID]*network.Kademlia)
|
||||
kademlia := func(id discover.NodeID) *network.Kademlia {
|
||||
kademlias := make(map[enode.ID]*network.Kademlia)
|
||||
kademlia := func(id enode.ID) *network.Kademlia {
|
||||
if k, ok := kademlias[id]; ok {
|
||||
return k
|
||||
}
|
||||
addr := network.NewAddrFromNodeID(id)
|
||||
params := network.NewKadParams()
|
||||
params.MinProxBinSize = 2
|
||||
params.MaxBinSize = 3
|
||||
|
|
@ -245,7 +244,7 @@ func newServices() adapters.Services {
|
|||
params.MaxRetries = 1000
|
||||
params.RetryExponent = 2
|
||||
params.RetryInterval = 1000000
|
||||
kademlias[id] = network.NewKademlia(addr.Over(), params)
|
||||
kademlias[id] = network.NewKademlia(id[:], params)
|
||||
return kademlias[id]
|
||||
}
|
||||
return adapters.Services{
|
||||
|
|
@ -269,7 +268,7 @@ func newServices() adapters.Services {
|
|||
return ps, nil
|
||||
},
|
||||
"bzz": func(ctx *adapters.ServiceContext) (node.Service, error) {
|
||||
addr := network.NewAddrFromNodeID(ctx.Config.ID)
|
||||
addr := network.NewAddr(ctx.Config.Node())
|
||||
hp := network.NewHiveParams()
|
||||
hp.Discovery = false
|
||||
config := &network.BzzConfig{
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ import (
|
|||
"github.com/ethereum/go-ethereum/crypto"
|
||||
"github.com/ethereum/go-ethereum/log"
|
||||
"github.com/ethereum/go-ethereum/node"
|
||||
"github.com/ethereum/go-ethereum/p2p/discover"
|
||||
"github.com/ethereum/go-ethereum/p2p/enode"
|
||||
"github.com/ethereum/go-ethereum/p2p/simulations"
|
||||
"github.com/ethereum/go-ethereum/p2p/simulations/adapters"
|
||||
"github.com/ethereum/go-ethereum/swarm/network"
|
||||
|
|
@ -203,12 +203,11 @@ func TestStart(t *testing.T) {
|
|||
|
||||
func newServices(allowRaw bool) adapters.Services {
|
||||
stateStore := state.NewInmemoryStore()
|
||||
kademlias := make(map[discover.NodeID]*network.Kademlia)
|
||||
kademlia := func(id discover.NodeID) *network.Kademlia {
|
||||
kademlias := make(map[enode.ID]*network.Kademlia)
|
||||
kademlia := func(id enode.ID) *network.Kademlia {
|
||||
if k, ok := kademlias[id]; ok {
|
||||
return k
|
||||
}
|
||||
addr := network.NewAddrFromNodeID(id)
|
||||
params := network.NewKadParams()
|
||||
params.MinProxBinSize = 2
|
||||
params.MaxBinSize = 3
|
||||
|
|
@ -216,7 +215,7 @@ func newServices(allowRaw bool) adapters.Services {
|
|||
params.MaxRetries = 1000
|
||||
params.RetryExponent = 2
|
||||
params.RetryInterval = 1000000
|
||||
kademlias[id] = network.NewKademlia(addr.Over(), params)
|
||||
kademlias[id] = network.NewKademlia(id[:], params)
|
||||
return kademlias[id]
|
||||
}
|
||||
return adapters.Services{
|
||||
|
|
@ -238,7 +237,7 @@ func newServices(allowRaw bool) adapters.Services {
|
|||
return ps, nil
|
||||
},
|
||||
"bzz": func(ctx *adapters.ServiceContext) (node.Service, error) {
|
||||
addr := network.NewAddrFromNodeID(ctx.Config.ID)
|
||||
addr := network.NewAddr(ctx.Config.Node())
|
||||
hp := network.NewHiveParams()
|
||||
hp.Discovery = false
|
||||
config := &network.BzzConfig{
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ import (
|
|||
|
||||
"github.com/ethereum/go-ethereum/common"
|
||||
"github.com/ethereum/go-ethereum/p2p"
|
||||
"github.com/ethereum/go-ethereum/p2p/discover"
|
||||
"github.com/ethereum/go-ethereum/p2p/enode"
|
||||
"github.com/ethereum/go-ethereum/swarm/log"
|
||||
)
|
||||
|
||||
|
|
@ -111,8 +111,7 @@ func testProtocol(t *testing.T) {
|
|||
}
|
||||
|
||||
// add right peer's public key as protocol peer on left
|
||||
nid, _ := discover.HexID("0x00") // this hack is needed to satisfy the p2p method
|
||||
p := p2p.NewPeer(nid, fmt.Sprintf("%x", common.FromHex(loaddrhex)), []p2p.Cap{})
|
||||
p := p2p.NewPeer(enode.ID{}, fmt.Sprintf("%x", common.FromHex(loaddrhex)), []p2p.Cap{})
|
||||
_, err = pssprotocols[lnodeinfo.ID].protocol.AddPeer(p, PingTopic, true, rpubkey)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ import (
|
|||
"github.com/ethereum/go-ethereum/crypto"
|
||||
"github.com/ethereum/go-ethereum/metrics"
|
||||
"github.com/ethereum/go-ethereum/p2p"
|
||||
"github.com/ethereum/go-ethereum/p2p/discover"
|
||||
"github.com/ethereum/go-ethereum/p2p/enode"
|
||||
"github.com/ethereum/go-ethereum/p2p/protocols"
|
||||
"github.com/ethereum/go-ethereum/rpc"
|
||||
"github.com/ethereum/go-ethereum/swarm/log"
|
||||
|
|
@ -70,7 +70,7 @@ type pssCacheEntry struct {
|
|||
// abstraction to enable access to p2p.protocols.Peer.Send
|
||||
type senderPeer interface {
|
||||
Info() *p2p.PeerInfo
|
||||
ID() discover.NodeID
|
||||
ID() enode.ID
|
||||
Address() []byte
|
||||
Send(context.Context, interface{}) error
|
||||
}
|
||||
|
|
@ -430,8 +430,7 @@ func (p *Pss) process(pssmsg *PssMsg) error {
|
|||
|
||||
func (p *Pss) executeHandlers(topic Topic, payload []byte, from *PssAddress, asymmetric bool, keyid string) {
|
||||
handlers := p.getHandlers(topic)
|
||||
nid, _ := discover.HexID("0x00") // this hack is needed to satisfy the p2p method
|
||||
peer := p2p.NewPeer(nid, fmt.Sprintf("%x", from), []p2p.Cap{})
|
||||
peer := p2p.NewPeer(enode.ID{}, fmt.Sprintf("%x", from), []p2p.Cap{})
|
||||
for f := range handlers {
|
||||
err := (*f)(payload, peer, asymmetric, keyid)
|
||||
if err != nil {
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ import (
|
|||
"github.com/ethereum/go-ethereum/metrics/influxdb"
|
||||
"github.com/ethereum/go-ethereum/node"
|
||||
"github.com/ethereum/go-ethereum/p2p"
|
||||
"github.com/ethereum/go-ethereum/p2p/discover"
|
||||
"github.com/ethereum/go-ethereum/p2p/enode"
|
||||
"github.com/ethereum/go-ethereum/p2p/protocols"
|
||||
"github.com/ethereum/go-ethereum/p2p/simulations"
|
||||
"github.com/ethereum/go-ethereum/p2p/simulations/adapters"
|
||||
|
|
@ -576,7 +576,7 @@ func TestMismatch(t *testing.T) {
|
|||
Name: pssProtocolName,
|
||||
Version: 0,
|
||||
}
|
||||
nid, _ := discover.HexID("0x01")
|
||||
nid := enode.ID{0x01}
|
||||
wrongpsspeer := network.NewPeer(&network.BzzPeer{
|
||||
Peer: protocols.NewPeer(p2p.NewPeer(nid, common.ToHex(wrongpssaddr.Over()), []p2p.Cap{wrongpsscap}), rw, nil),
|
||||
BzzAddr: &network.BzzAddr{OAddr: wrongpssaddr.Over(), UAddr: nil},
|
||||
|
|
@ -588,7 +588,7 @@ func TestMismatch(t *testing.T) {
|
|||
Name: "nopss",
|
||||
Version: 1,
|
||||
}
|
||||
nid, _ = discover.HexID("0x02")
|
||||
nid = enode.ID{0x02}
|
||||
nopsspeer := network.NewPeer(&network.BzzPeer{
|
||||
Peer: protocols.NewPeer(p2p.NewPeer(nid, common.ToHex(nopssaddr.Over()), []p2p.Cap{nopsscap}), rw, nil),
|
||||
BzzAddr: &network.BzzAddr{OAddr: nopssaddr.Over(), UAddr: nil},
|
||||
|
|
@ -923,11 +923,11 @@ func testSendAsym(t *testing.T) {
|
|||
|
||||
type Job struct {
|
||||
Msg []byte
|
||||
SendNode discover.NodeID
|
||||
RecvNode discover.NodeID
|
||||
SendNode enode.ID
|
||||
RecvNode enode.ID
|
||||
}
|
||||
|
||||
func worker(id int, jobs <-chan Job, rpcs map[discover.NodeID]*rpc.Client, pubkeys map[discover.NodeID]string, topic string) {
|
||||
func worker(id int, jobs <-chan Job, rpcs map[enode.ID]*rpc.Client, pubkeys map[enode.ID]string, topic string) {
|
||||
for j := range jobs {
|
||||
rpcs[j.SendNode].Call(nil, "pss_sendAsym", pubkeys[j.RecvNode], topic, hexutil.Encode(j.Msg))
|
||||
}
|
||||
|
|
@ -977,7 +977,7 @@ func TestNetwork10000(t *testing.T) {
|
|||
|
||||
func testNetwork(t *testing.T) {
|
||||
type msgnotifyC struct {
|
||||
id discover.NodeID
|
||||
id enode.ID
|
||||
msgIdx int
|
||||
}
|
||||
|
||||
|
|
@ -989,16 +989,16 @@ func testNetwork(t *testing.T) {
|
|||
|
||||
log.Info("network test", "nodecount", nodecount, "msgcount", msgcount, "addrhintsize", addrsize)
|
||||
|
||||
nodes := make([]discover.NodeID, nodecount)
|
||||
bzzaddrs := make(map[discover.NodeID]string, nodecount)
|
||||
rpcs := make(map[discover.NodeID]*rpc.Client, nodecount)
|
||||
pubkeys := make(map[discover.NodeID]string, nodecount)
|
||||
nodes := make([]enode.ID, nodecount)
|
||||
bzzaddrs := make(map[enode.ID]string, nodecount)
|
||||
rpcs := make(map[enode.ID]*rpc.Client, nodecount)
|
||||
pubkeys := make(map[enode.ID]string, nodecount)
|
||||
|
||||
sentmsgs := make([][]byte, msgcount)
|
||||
recvmsgs := make([]bool, msgcount)
|
||||
nodemsgcount := make(map[discover.NodeID]int, nodecount)
|
||||
nodemsgcount := make(map[enode.ID]int, nodecount)
|
||||
|
||||
trigger := make(chan discover.NodeID)
|
||||
trigger := make(chan enode.ID)
|
||||
|
||||
var a adapters.NodeAdapter
|
||||
if adapter == "exec" {
|
||||
|
|
@ -1038,7 +1038,7 @@ func testNetwork(t *testing.T) {
|
|||
|
||||
time.Sleep(1 * time.Second)
|
||||
|
||||
triggerChecks := func(trigger chan discover.NodeID, id discover.NodeID, rpcclient *rpc.Client, topic string) error {
|
||||
triggerChecks := func(trigger chan enode.ID, id enode.ID, rpcclient *rpc.Client, topic string) error {
|
||||
msgC := make(chan APIMsg)
|
||||
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
|
||||
defer cancel()
|
||||
|
|
@ -1542,12 +1542,11 @@ func setupNetwork(numnodes int, allowRaw bool) (clients []*rpc.Client, err error
|
|||
|
||||
func newServices(allowRaw bool) adapters.Services {
|
||||
stateStore := state.NewInmemoryStore()
|
||||
kademlias := make(map[discover.NodeID]*network.Kademlia)
|
||||
kademlia := func(id discover.NodeID) *network.Kademlia {
|
||||
kademlias := make(map[enode.ID]*network.Kademlia)
|
||||
kademlia := func(id enode.ID) *network.Kademlia {
|
||||
if k, ok := kademlias[id]; ok {
|
||||
return k
|
||||
}
|
||||
addr := network.NewAddrFromNodeID(id)
|
||||
params := network.NewKadParams()
|
||||
params.MinProxBinSize = 2
|
||||
params.MaxBinSize = 3
|
||||
|
|
@ -1555,7 +1554,7 @@ func newServices(allowRaw bool) adapters.Services {
|
|||
params.MaxRetries = 1000
|
||||
params.RetryExponent = 2
|
||||
params.RetryInterval = 1000000
|
||||
kademlias[id] = network.NewKademlia(addr.Over(), params)
|
||||
kademlias[id] = network.NewKademlia(id[:], params)
|
||||
return kademlias[id]
|
||||
}
|
||||
return adapters.Services{
|
||||
|
|
@ -1606,7 +1605,7 @@ func newServices(allowRaw bool) adapters.Services {
|
|||
return ps, nil
|
||||
},
|
||||
"bzz": func(ctx *adapters.ServiceContext) (node.Service, error) {
|
||||
addr := network.NewAddrFromNodeID(ctx.Config.ID)
|
||||
addr := network.NewAddr(ctx.Config.Node())
|
||||
hp := network.NewHiveParams()
|
||||
hp.Discovery = false
|
||||
config := &network.BzzConfig{
|
||||
|
|
@ -1620,16 +1619,12 @@ func newServices(allowRaw bool) adapters.Services {
|
|||
}
|
||||
|
||||
func newTestPss(privkey *ecdsa.PrivateKey, kad *network.Kademlia, ppextra *PssParams) *Pss {
|
||||
|
||||
var nid discover.NodeID
|
||||
copy(nid[:], crypto.FromECDSAPub(&privkey.PublicKey))
|
||||
addr := network.NewAddrFromNodeID(nid)
|
||||
|
||||
nid := enode.PubkeyToIDV4(&privkey.PublicKey)
|
||||
// set up routing if kademlia is not passed to us
|
||||
if kad == nil {
|
||||
kp := network.NewKadParams()
|
||||
kp.MinProxBinSize = 3
|
||||
kad = network.NewKademlia(addr.Over(), kp)
|
||||
kad = network.NewKademlia(nid[:], kp)
|
||||
}
|
||||
|
||||
// create pss
|
||||
|
|
|
|||
2
swarm/pss/testdata/snapshot_128.json
vendored
2
swarm/pss/testdata/snapshot_128.json
vendored
File diff suppressed because one or more lines are too long
2
swarm/pss/testdata/snapshot_16.json
vendored
2
swarm/pss/testdata/snapshot_16.json
vendored
File diff suppressed because one or more lines are too long
68
swarm/pss/testdata/snapshot_2.json
vendored
68
swarm/pss/testdata/snapshot_2.json
vendored
|
|
@ -1,67 +1 @@
|
|||
{
|
||||
"conns":[
|
||||
{
|
||||
"other":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"one":"7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66",
|
||||
"up":true
|
||||
}
|
||||
],
|
||||
"nodes":[
|
||||
{
|
||||
"node":{
|
||||
"config":{
|
||||
"private_key":"e567b7d9c554e5102cdc99b6523bace02dbb8951415c8816d82ba2d2e97fa23b",
|
||||
"name":"node01",
|
||||
"id":"7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66",
|
||||
"services":[
|
||||
"pss","bzz"
|
||||
]
|
||||
},
|
||||
"info":{
|
||||
"ip":"0.0.0.0",
|
||||
"listenAddr":"",
|
||||
"protocols":{
|
||||
"hive":"\n=========================================================================\nFri Sep 29 21:22:53 UTC 2017 KΛÐΞMLIΛ hive: queen's address: 73d6ad\npopulation: 5 (7), MinProxBinSize: 2, MinBinSize: 1, MaxBinSize: 3\n000 1 dfd4 | 3 8a1e (0) d776 (0) dfd4 (0)\n============ DEPTH: 1 ==========================================\n001 3 05da 159c 3451 | 3 05da (0) 159c (0) 3451 (0)\n002 0 | 0\n003 1 6e8d | 1 6e8d (0)\n004 0 | 0\n005 0 | 0\n006 0 | 0\n007 0 | 0\n008 0 | 0\n009 0 | 0\n010 0 | 0\n011 0 | 0\n012 0 | 0\n013 0 | 0\n014 0 | 0\n015 0 | 0\n=========================================================================",
|
||||
"bzz":"c9atSnUGnc7WYPpMuYFD7lVz33yxXZopWs8WVeloM4Q="
|
||||
},
|
||||
"ports":{
|
||||
"listener":0,
|
||||
"discovery":0
|
||||
},
|
||||
"name":"node01",
|
||||
"id":"7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66",
|
||||
"enode":"enode://7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66@0.0.0.0:0"
|
||||
},
|
||||
"up":true
|
||||
}
|
||||
},
|
||||
{
|
||||
"node":{
|
||||
"info":{
|
||||
"listenAddr":"",
|
||||
"ip":"0.0.0.0",
|
||||
"ports":{
|
||||
"discovery":0,
|
||||
"listener":0
|
||||
},
|
||||
"protocols":{
|
||||
"hive":"\n=========================================================================\nFri Sep 29 21:22:53 UTC 2017 KΛÐΞMLIΛ hive: queen's address: 6e8da8\npopulation: 5 (7), MinProxBinSize: 2, MinBinSize: 1, MaxBinSize: 3\n000 1 8a1e | 3 8a1e (0) d776 (0) dfd4 (0)\n============ DEPTH: 1 ==========================================\n001 3 3451 159c 05da | 3 05da (0) 159c (0) 3451 (0)\n002 0 | 0\n003 1 73d6 | 1 73d6 (0)\n004 0 | 0\n005 0 | 0\n006 0 | 0\n007 0 | 0\n008 0 | 0\n009 0 | 0\n010 0 | 0\n011 0 | 0\n012 0 | 0\n013 0 | 0\n014 0 | 0\n015 0 | 0\n=========================================================================",
|
||||
"bzz":"bo2oaruJSrNQRMjEVRRyJd+WyrSY2gZ6EY8fuaQX+eM="
|
||||
},
|
||||
"id":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"name":"node02",
|
||||
"enode":"enode://0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5@0.0.0.0:0"
|
||||
},
|
||||
"config":{
|
||||
"name":"node02",
|
||||
"id":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"services":[
|
||||
"pss","bzz"
|
||||
],
|
||||
"private_key":"c7526db70acd02f36d3b201ef3e1d85e38c52bee6931453213dbc5edec4d0976"
|
||||
},
|
||||
"up":true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
{"nodes":[{"node":{"config":{"id":"73d6ad4a75069dced660fa4cb98143ee5573df7cb15d9a295acf1655e9683384","private_key":"e567b7d9c554e5102cdc99b6523bace02dbb8951415c8816d82ba2d2e97fa23b","name":"node01","services":["pss","bzz"],"enable_msg_events":false,"port":0},"up":true}},{"node":{"config":{"id":"6e8da86abb894ab35044c8c455147225df96cab498da067a118f1fb9a417f9e3","private_key":"c7526db70acd02f36d3b201ef3e1d85e38c52bee6931453213dbc5edec4d0976","name":"node02","services":["pss","bzz"],"enable_msg_events":false,"port":0},"up":true}}],"conns":[{"one":"73d6ad4a75069dced660fa4cb98143ee5573df7cb15d9a295acf1655e9683384","other":"6e8da86abb894ab35044c8c455147225df96cab498da067a118f1fb9a417f9e3","up":true}]}
|
||||
2
swarm/pss/testdata/snapshot_256.json
vendored
2
swarm/pss/testdata/snapshot_256.json
vendored
File diff suppressed because one or more lines are too long
101
swarm/pss/testdata/snapshot_3.json
vendored
101
swarm/pss/testdata/snapshot_3.json
vendored
|
|
@ -1,100 +1 @@
|
|||
{
|
||||
"conns":[
|
||||
{
|
||||
"one":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"other":"6f6ee658538ea66a68c9cb914d09f228f6ee9942c337a8d5a2cb3a0f021e83dd0fab481ca8ebf56ed913f6ddf69caa3249459d43e61e5e5b162ded7e1c918c9c",
|
||||
"up":true
|
||||
},
|
||||
{
|
||||
"other":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"one":"7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66",
|
||||
"up":true
|
||||
}
|
||||
],
|
||||
"nodes":[
|
||||
{
|
||||
"node":{
|
||||
"config":{
|
||||
"private_key":"e567b7d9c554e5102cdc99b6523bace02dbb8951415c8816d82ba2d2e97fa23b",
|
||||
"name":"node01",
|
||||
"id":"7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66",
|
||||
"services":[
|
||||
"bzz","pss"
|
||||
]
|
||||
},
|
||||
"info":{
|
||||
"ip":"0.0.0.0",
|
||||
"listenAddr":"",
|
||||
"protocols":{
|
||||
"hive":"\n=========================================================================\nFri Sep 29 21:22:53 UTC 2017 KΛÐΞMLIΛ hive: queen's address: 73d6ad\npopulation: 5 (7), MinProxBinSize: 2, MinBinSize: 1, MaxBinSize: 3\n000 1 dfd4 | 3 8a1e (0) d776 (0) dfd4 (0)\n============ DEPTH: 1 ==========================================\n001 3 05da 159c 3451 | 3 05da (0) 159c (0) 3451 (0)\n002 0 | 0\n003 1 6e8d | 1 6e8d (0)\n004 0 | 0\n005 0 | 0\n006 0 | 0\n007 0 | 0\n008 0 | 0\n009 0 | 0\n010 0 | 0\n011 0 | 0\n012 0 | 0\n013 0 | 0\n014 0 | 0\n015 0 | 0\n=========================================================================",
|
||||
"bzz":"c9atSnUGnc7WYPpMuYFD7lVz33yxXZopWs8WVeloM4Q="
|
||||
},
|
||||
"ports":{
|
||||
"listener":0,
|
||||
"discovery":0
|
||||
},
|
||||
"name":"node01",
|
||||
"id":"7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66",
|
||||
"enode":"enode://7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66@0.0.0.0:0"
|
||||
},
|
||||
"up":true
|
||||
}
|
||||
},
|
||||
{
|
||||
"node":{
|
||||
"info":{
|
||||
"listenAddr":"",
|
||||
"ip":"0.0.0.0",
|
||||
"ports":{
|
||||
"discovery":0,
|
||||
"listener":0
|
||||
},
|
||||
"protocols":{
|
||||
"hive":"\n=========================================================================\nFri Sep 29 21:22:53 UTC 2017 KΛÐΞMLIΛ hive: queen's address: 6e8da8\npopulation: 5 (7), MinProxBinSize: 2, MinBinSize: 1, MaxBinSize: 3\n000 1 8a1e | 3 8a1e (0) d776 (0) dfd4 (0)\n============ DEPTH: 1 ==========================================\n001 3 3451 159c 05da | 3 05da (0) 159c (0) 3451 (0)\n002 0 | 0\n003 1 73d6 | 1 73d6 (0)\n004 0 | 0\n005 0 | 0\n006 0 | 0\n007 0 | 0\n008 0 | 0\n009 0 | 0\n010 0 | 0\n011 0 | 0\n012 0 | 0\n013 0 | 0\n014 0 | 0\n015 0 | 0\n=========================================================================",
|
||||
"bzz":"bo2oaruJSrNQRMjEVRRyJd+WyrSY2gZ6EY8fuaQX+eM="
|
||||
},
|
||||
"id":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"name":"node02",
|
||||
"enode":"enode://0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5@0.0.0.0:0"
|
||||
},
|
||||
"config":{
|
||||
"name":"node02",
|
||||
"id":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"services":[
|
||||
"bzz","pss"
|
||||
],
|
||||
"private_key":"c7526db70acd02f36d3b201ef3e1d85e38c52bee6931453213dbc5edec4d0976"
|
||||
},
|
||||
"up":true
|
||||
}
|
||||
},
|
||||
{
|
||||
"node":{
|
||||
"config":{
|
||||
"private_key":"61b5728f59bc43080c3b8eb0458fb30d7723e2747355b6dc980f35f3ed431199",
|
||||
"id":"6f6ee658538ea66a68c9cb914d09f228f6ee9942c337a8d5a2cb3a0f021e83dd0fab481ca8ebf56ed913f6ddf69caa3249459d43e61e5e5b162ded7e1c918c9c",
|
||||
"name":"node03",
|
||||
"services":[
|
||||
"bzz","pss"
|
||||
]
|
||||
},
|
||||
"info":{
|
||||
"ip":"0.0.0.0",
|
||||
"listenAddr":"",
|
||||
"protocols":{
|
||||
"hive":"\n=========================================================================\nFri Sep 29 21:22:53 UTC 2017 KΛÐΞMLIΛ hive: queen's address: 8a1eb7\npopulation: 3 (7), MinProxBinSize: 2, MinBinSize: 1, MaxBinSize: 3\n000 1 6e8d | 5 05da (0) 159c (0) 3451 (0) 73d6 (0)\n============ DEPTH: 1 ==========================================\n001 2 dfd4 d776 | 2 dfd4 (0) d776 (0)\n002 0 | 0\n003 0 | 0\n004 0 | 0\n005 0 | 0\n006 0 | 0\n007 0 | 0\n008 0 | 0\n009 0 | 0\n010 0 | 0\n011 0 | 0\n012 0 | 0\n013 0 | 0\n014 0 | 0\n015 0 | 0\n=========================================================================",
|
||||
"bzz":"ih63j/E98xjn+BFt/+6YzX2ZBWUPpT8Wdmt1SmPzh6w="
|
||||
},
|
||||
"ports":{
|
||||
"discovery":0,
|
||||
"listener":0
|
||||
},
|
||||
"name":"node03",
|
||||
"id":"6f6ee658538ea66a68c9cb914d09f228f6ee9942c337a8d5a2cb3a0f021e83dd0fab481ca8ebf56ed913f6ddf69caa3249459d43e61e5e5b162ded7e1c918c9c",
|
||||
"enode":"enode://6f6ee658538ea66a68c9cb914d09f228f6ee9942c337a8d5a2cb3a0f021e83dd0fab481ca8ebf56ed913f6ddf69caa3249459d43e61e5e5b162ded7e1c918c9c@0.0.0.0:0"
|
||||
},
|
||||
"up":true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
{"nodes":[{"node":{"config":{"id":"73d6ad4a75069dced660fa4cb98143ee5573df7cb15d9a295acf1655e9683384","private_key":"e567b7d9c554e5102cdc99b6523bace02dbb8951415c8816d82ba2d2e97fa23b","name":"node01","services":["bzz","pss"],"enable_msg_events":false,"port":0},"up":true}},{"node":{"config":{"id":"6e8da86abb894ab35044c8c455147225df96cab498da067a118f1fb9a417f9e3","private_key":"c7526db70acd02f36d3b201ef3e1d85e38c52bee6931453213dbc5edec4d0976","name":"node02","services":["bzz","pss"],"enable_msg_events":false,"port":0},"up":true}},{"node":{"config":{"id":"8a1eb78ff13df318e7f8116dffee98cd7d9905650fa53f16766b754a63f387ac","private_key":"61b5728f59bc43080c3b8eb0458fb30d7723e2747355b6dc980f35f3ed431199","name":"node03","services":["bzz","pss"],"enable_msg_events":false,"port":0},"up":true}}],"conns":[{"one":"6e8da86abb894ab35044c8c455147225df96cab498da067a118f1fb9a417f9e3","other":"8a1eb78ff13df318e7f8116dffee98cd7d9905650fa53f16766b754a63f387ac","up":true},{"one":"73d6ad4a75069dced660fa4cb98143ee5573df7cb15d9a295acf1655e9683384","other":"6e8da86abb894ab35044c8c455147225df96cab498da067a118f1fb9a417f9e3","up":true}]}
|
||||
2
swarm/pss/testdata/snapshot_32.json
vendored
2
swarm/pss/testdata/snapshot_32.json
vendored
File diff suppressed because one or more lines are too long
134
swarm/pss/testdata/snapshot_4.json
vendored
134
swarm/pss/testdata/snapshot_4.json
vendored
|
|
@ -1,133 +1 @@
|
|||
{
|
||||
"conns":[
|
||||
{
|
||||
"one":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"other":"6f6ee658538ea66a68c9cb914d09f228f6ee9942c337a8d5a2cb3a0f021e83dd0fab481ca8ebf56ed913f6ddf69caa3249459d43e61e5e5b162ded7e1c918c9c",
|
||||
"up":true
|
||||
},
|
||||
{
|
||||
"other":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"one":"7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66",
|
||||
"up":true
|
||||
},
|
||||
{
|
||||
"up":true,
|
||||
"other":"83388147883592bab4fdaddb4e56f8cb1c56dc5c2e910fc6a7277ac89b77cc7ce24892ed6984f3414589cb3b8c4b69356ff9aab7ca52fdd58f12dee2a2152523",
|
||||
"one":"6f6ee658538ea66a68c9cb914d09f228f6ee9942c337a8d5a2cb3a0f021e83dd0fab481ca8ebf56ed913f6ddf69caa3249459d43e61e5e5b162ded7e1c918c9c"
|
||||
}
|
||||
],
|
||||
"nodes":[
|
||||
{
|
||||
"node":{
|
||||
"config":{
|
||||
"private_key":"e567b7d9c554e5102cdc99b6523bace02dbb8951415c8816d82ba2d2e97fa23b",
|
||||
"name":"node01",
|
||||
"id":"7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66",
|
||||
"services":[
|
||||
"bzz","pss"
|
||||
]
|
||||
},
|
||||
"info":{
|
||||
"ip":"0.0.0.0",
|
||||
"listenAddr":"",
|
||||
"protocols":{
|
||||
"hive":"\n=========================================================================\nFri Sep 29 21:22:53 UTC 2017 KΛÐΞMLIΛ hive: queen's address: 73d6ad\npopulation: 5 (7), MinProxBinSize: 2, MinBinSize: 1, MaxBinSize: 3\n000 1 dfd4 | 3 8a1e (0) d776 (0) dfd4 (0)\n============ DEPTH: 1 ==========================================\n001 3 05da 159c 3451 | 3 05da (0) 159c (0) 3451 (0)\n002 0 | 0\n003 1 6e8d | 1 6e8d (0)\n004 0 | 0\n005 0 | 0\n006 0 | 0\n007 0 | 0\n008 0 | 0\n009 0 | 0\n010 0 | 0\n011 0 | 0\n012 0 | 0\n013 0 | 0\n014 0 | 0\n015 0 | 0\n=========================================================================",
|
||||
"bzz":"c9atSnUGnc7WYPpMuYFD7lVz33yxXZopWs8WVeloM4Q="
|
||||
},
|
||||
"ports":{
|
||||
"listener":0,
|
||||
"discovery":0
|
||||
},
|
||||
"name":"node01",
|
||||
"id":"7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66",
|
||||
"enode":"enode://7b12f55c7c012104e006775d03b89722b403fb0e1ecb79af8cadfa6947425aedb323fb9416c84b782d35f3216acb5d94a1dd31d60a3eba45f9051bf503de1b66@0.0.0.0:0"
|
||||
},
|
||||
"up":true
|
||||
}
|
||||
},
|
||||
{
|
||||
"node":{
|
||||
"info":{
|
||||
"listenAddr":"",
|
||||
"ip":"0.0.0.0",
|
||||
"ports":{
|
||||
"discovery":0,
|
||||
"listener":0
|
||||
},
|
||||
"protocols":{
|
||||
"hive":"\n=========================================================================\nFri Sep 29 21:22:53 UTC 2017 KΛÐΞMLIΛ hive: queen's address: 6e8da8\npopulation: 5 (7), MinProxBinSize: 2, MinBinSize: 1, MaxBinSize: 3\n000 1 8a1e | 3 8a1e (0) d776 (0) dfd4 (0)\n============ DEPTH: 1 ==========================================\n001 3 3451 159c 05da | 3 05da (0) 159c (0) 3451 (0)\n002 0 | 0\n003 1 73d6 | 1 73d6 (0)\n004 0 | 0\n005 0 | 0\n006 0 | 0\n007 0 | 0\n008 0 | 0\n009 0 | 0\n010 0 | 0\n011 0 | 0\n012 0 | 0\n013 0 | 0\n014 0 | 0\n015 0 | 0\n=========================================================================",
|
||||
"bzz":"bo2oaruJSrNQRMjEVRRyJd+WyrSY2gZ6EY8fuaQX+eM="
|
||||
},
|
||||
"id":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"name":"node02",
|
||||
"enode":"enode://0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5@0.0.0.0:0"
|
||||
},
|
||||
"config":{
|
||||
"name":"node02",
|
||||
"id":"0eec333dd211c2ea81db614fe58bf0300c15e50e1b044e47ef93067a6cdbc3bc666b40bdcc515bbf580355dbef9370294ef1ee92ee0525e78a8beed00c2b99f5",
|
||||
"services":[
|
||||
"bzz","pss"
|
||||
],
|
||||
"private_key":"c7526db70acd02f36d3b201ef3e1d85e38c52bee6931453213dbc5edec4d0976"
|
||||
},
|
||||
"up":true
|
||||
}
|
||||
},
|
||||
{
|
||||
"node":{
|
||||
"config":{
|
||||
"private_key":"61b5728f59bc43080c3b8eb0458fb30d7723e2747355b6dc980f35f3ed431199",
|
||||
"id":"6f6ee658538ea66a68c9cb914d09f228f6ee9942c337a8d5a2cb3a0f021e83dd0fab481ca8ebf56ed913f6ddf69caa3249459d43e61e5e5b162ded7e1c918c9c",
|
||||
"name":"node03",
|
||||
"services":[
|
||||
"bzz","pss"
|
||||
]
|
||||
},
|
||||
"info":{
|
||||
"ip":"0.0.0.0",
|
||||
"listenAddr":"",
|
||||
"protocols":{
|
||||
"hive":"\n=========================================================================\nFri Sep 29 21:22:53 UTC 2017 KΛÐΞMLIΛ hive: queen's address: 8a1eb7\npopulation: 3 (7), MinProxBinSize: 2, MinBinSize: 1, MaxBinSize: 3\n000 1 6e8d | 5 05da (0) 159c (0) 3451 (0) 73d6 (0)\n============ DEPTH: 1 ==========================================\n001 2 dfd4 d776 | 2 dfd4 (0) d776 (0)\n002 0 | 0\n003 0 | 0\n004 0 | 0\n005 0 | 0\n006 0 | 0\n007 0 | 0\n008 0 | 0\n009 0 | 0\n010 0 | 0\n011 0 | 0\n012 0 | 0\n013 0 | 0\n014 0 | 0\n015 0 | 0\n=========================================================================",
|
||||
"bzz":"ih63j/E98xjn+BFt/+6YzX2ZBWUPpT8Wdmt1SmPzh6w="
|
||||
},
|
||||
"ports":{
|
||||
"discovery":0,
|
||||
"listener":0
|
||||
},
|
||||
"name":"node03",
|
||||
"id":"6f6ee658538ea66a68c9cb914d09f228f6ee9942c337a8d5a2cb3a0f021e83dd0fab481ca8ebf56ed913f6ddf69caa3249459d43e61e5e5b162ded7e1c918c9c",
|
||||
"enode":"enode://6f6ee658538ea66a68c9cb914d09f228f6ee9942c337a8d5a2cb3a0f021e83dd0fab481ca8ebf56ed913f6ddf69caa3249459d43e61e5e5b162ded7e1c918c9c@0.0.0.0:0"
|
||||
},
|
||||
"up":true
|
||||
}
|
||||
},
|
||||
{
|
||||
"node":{
|
||||
"info":{
|
||||
"name":"node04",
|
||||
"id":"83388147883592bab4fdaddb4e56f8cb1c56dc5c2e910fc6a7277ac89b77cc7ce24892ed6984f3414589cb3b8c4b69356ff9aab7ca52fdd58f12dee2a2152523",
|
||||
"enode":"enode://83388147883592bab4fdaddb4e56f8cb1c56dc5c2e910fc6a7277ac89b77cc7ce24892ed6984f3414589cb3b8c4b69356ff9aab7ca52fdd58f12dee2a2152523@0.0.0.0:0",
|
||||
"ip":"0.0.0.0",
|
||||
"listenAddr":"",
|
||||
"protocols":{
|
||||
"bzz":"13aDNPedYmrbQz9EtwOoGFVeMzEFYDbvP40Sglhr8EQ=",
|
||||
"hive":"\n=========================================================================\nFri Sep 29 21:22:53 UTC 2017 KΛÐΞMLIΛ hive: queen's address: d77683\npopulation: 5 (7), MinProxBinSize: 2, MinBinSize: 1, MaxBinSize: 3\n000 3 3451 159c 05da | 5 6e8d (0) 73d6 (0) 3451 (0) 159c (0)\n============ DEPTH: 1 ==========================================\n001 1 8a1e | 1 8a1e (0)\n002 0 | 0\n003 0 | 0\n004 1 dfd4 | 1 dfd4 (0)\n005 0 | 0\n006 0 | 0\n007 0 | 0\n008 0 | 0\n009 0 | 0\n010 0 | 0\n011 0 | 0\n012 0 | 0\n013 0 | 0\n014 0 | 0\n015 0 | 0\n========================================================================="
|
||||
},
|
||||
"ports":{
|
||||
"listener":0,
|
||||
"discovery":0
|
||||
}
|
||||
},
|
||||
"config":{
|
||||
"services":[
|
||||
"bzz","pss"
|
||||
],
|
||||
"id":"83388147883592bab4fdaddb4e56f8cb1c56dc5c2e910fc6a7277ac89b77cc7ce24892ed6984f3414589cb3b8c4b69356ff9aab7ca52fdd58f12dee2a2152523",
|
||||
"name":"node04",
|
||||
"private_key":"075b07c29ceac4ffa2a114afd67b21dfc438126bc169bf7c154be6d81d86ed38"
|
||||
},
|
||||
"up":true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
{"nodes":[{"node":{"config":{"id":"73d6ad4a75069dced660fa4cb98143ee5573df7cb15d9a295acf1655e9683384","private_key":"e567b7d9c554e5102cdc99b6523bace02dbb8951415c8816d82ba2d2e97fa23b","name":"node01","services":["bzz","pss"],"enable_msg_events":false,"port":0},"up":true}},{"node":{"config":{"id":"6e8da86abb894ab35044c8c455147225df96cab498da067a118f1fb9a417f9e3","private_key":"c7526db70acd02f36d3b201ef3e1d85e38c52bee6931453213dbc5edec4d0976","name":"node02","services":["bzz","pss"],"enable_msg_events":false,"port":0},"up":true}},{"node":{"config":{"id":"8a1eb78ff13df318e7f8116dffee98cd7d9905650fa53f16766b754a63f387ac","private_key":"61b5728f59bc43080c3b8eb0458fb30d7723e2747355b6dc980f35f3ed431199","name":"node03","services":["bzz","pss"],"enable_msg_events":false,"port":0},"up":true}},{"node":{"config":{"id":"d7768334f79d626adb433f44b703a818555e3331056036ef3f8d1282586bf044","private_key":"075b07c29ceac4ffa2a114afd67b21dfc438126bc169bf7c154be6d81d86ed38","name":"node04","services":["bzz","pss"],"enable_msg_events":false,"port":0},"up":true}}],"conns":[{"one":"6e8da86abb894ab35044c8c455147225df96cab498da067a118f1fb9a417f9e3","other":"8a1eb78ff13df318e7f8116dffee98cd7d9905650fa53f16766b754a63f387ac","up":true},{"one":"73d6ad4a75069dced660fa4cb98143ee5573df7cb15d9a295acf1655e9683384","other":"6e8da86abb894ab35044c8c455147225df96cab498da067a118f1fb9a417f9e3","up":true},{"one":"8a1eb78ff13df318e7f8116dffee98cd7d9905650fa53f16766b754a63f387ac","other":"d7768334f79d626adb433f44b703a818555e3331056036ef3f8d1282586bf044","up":true}]}
|
||||
2
swarm/pss/testdata/snapshot_64.json
vendored
2
swarm/pss/testdata/snapshot_64.json
vendored
File diff suppressed because one or more lines are too long
2
swarm/pss/testdata/snapshot_8.json
vendored
2
swarm/pss/testdata/snapshot_8.json
vendored
File diff suppressed because one or more lines are too long
|
|
@ -65,7 +65,7 @@ The validation phase of the TestNetwork test is done using an RPC subscription:
|
|||
|
||||
```
|
||||
...
|
||||
triggerChecks := func(trigger chan discover.NodeID, id discover.NodeID, rpcclient *rpc.Client) error {
|
||||
triggerChecks := func(trigger chan enode.ID, id enode.ID, rpcclient *rpc.Client) error {
|
||||
msgC := make(chan APIMsg)
|
||||
ctx, cancel := context.WithTimeout(context.Background(), time.Second)
|
||||
defer cancel()
|
||||
|
|
|
|||
Loading…
Reference in a new issue