aboutsummaryrefslogtreecommitdiffstats
path: root/swarm/network
diff options
context:
space:
mode:
Diffstat (limited to 'swarm/network')
-rw-r--r--swarm/network/depo.go2
-rw-r--r--swarm/network/hive.go12
-rw-r--r--swarm/network/kademlia/address.go2
-rw-r--r--swarm/network/kademlia/kaddb.go8
-rw-r--r--swarm/network/kademlia/kademlia.go2
-rw-r--r--swarm/network/kademlia/kademlia_test.go10
-rw-r--r--swarm/network/protocol.go2
-rw-r--r--swarm/network/syncer.go11
8 files changed, 30 insertions, 19 deletions
diff --git a/swarm/network/depo.go b/swarm/network/depo.go
index 8695bf5d9..17540d2f9 100644
--- a/swarm/network/depo.go
+++ b/swarm/network/depo.go
@@ -55,7 +55,7 @@ func (self *Depo) HandleUnsyncedKeysMsg(req *unsyncedKeysMsgData, p *peer) error
var err error
for _, req := range unsynced {
// skip keys that are found,
- chunk, err = self.localStore.Get(storage.Key(req.Key[:]))
+ chunk, err = self.localStore.Get(req.Key[:])
if err != nil || chunk.SData == nil {
missing = append(missing, req)
}
diff --git a/swarm/network/hive.go b/swarm/network/hive.go
index d37b7e400..2504a4610 100644
--- a/swarm/network/hive.go
+++ b/swarm/network/hive.go
@@ -70,19 +70,25 @@ type HiveParams struct {
*kademlia.KadParams
}
-func NewHiveParams(path string) *HiveParams {
- kad := kademlia.NewKadParams()
+//create default params
+func NewDefaultHiveParams() *HiveParams {
+ kad := kademlia.NewDefaultKadParams()
// kad.BucketSize = bucketSize
// kad.MaxProx = maxProx
// kad.ProxBinSize = proxBinSize
return &HiveParams{
CallInterval: callInterval,
- KadDbPath: filepath.Join(path, "bzz-peers.json"),
KadParams: kad,
}
}
+//this can only finally be set after all config options (file, cmd line, env vars)
+//have been evaluated
+func (self *HiveParams) Init(path string) {
+ self.KadDbPath = filepath.Join(path, "bzz-peers.json")
+}
+
func NewHive(addr common.Hash, params *HiveParams, swapEnabled, syncEnabled bool) *Hive {
kad := kademlia.New(kademlia.Address(addr), params.KadParams)
return &Hive{
diff --git a/swarm/network/kademlia/address.go b/swarm/network/kademlia/address.go
index 16c5ce532..4c38a846f 100644
--- a/swarm/network/kademlia/address.go
+++ b/swarm/network/kademlia/address.go
@@ -67,7 +67,7 @@ func proximity(one, other Address) (ret int) {
for i := 0; i < len(one); i++ {
oxo := one[i] ^ other[i]
for j := 0; j < 8; j++ {
- if (uint8(oxo)>>uint8(7-j))&0x01 != 0 {
+ if (oxo>>uint8(7-j))&0x01 != 0 {
return i*8 + j
}
}
diff --git a/swarm/network/kademlia/kaddb.go b/swarm/network/kademlia/kaddb.go
index 3e4b261fd..b37ced5ba 100644
--- a/swarm/network/kademlia/kaddb.go
+++ b/swarm/network/kademlia/kaddb.go
@@ -211,12 +211,12 @@ func (self *KadDb) findBest(maxBinSize int, binSize func(int) int) (node *NodeRe
}
// if node is scheduled to connect
- if time.Time(node.After).After(time.Now()) {
+ if node.After.After(time.Now()) {
log.Debug(fmt.Sprintf("kaddb record %v (PO%03d:%d) skipped. seen at %v (%v ago), scheduled at %v", node.Addr, po, cursor, node.Seen, delta, node.After))
continue ROW
}
- delta = time.Since(time.Time(node.Seen))
+ delta = time.Since(node.Seen)
if delta < self.initialRetryInterval {
delta = self.initialRetryInterval
}
@@ -230,7 +230,7 @@ func (self *KadDb) findBest(maxBinSize int, binSize func(int) int) (node *NodeRe
log.Debug(fmt.Sprintf("kaddb record %v (PO%03d:%d) ready to be tried. seen at %v (%v ago), scheduled at %v", node.Addr, po, cursor, node.Seen, delta, node.After))
// scheduling next check
- interval = time.Duration(delta * time.Duration(self.connRetryExp))
+ interval = delta * time.Duration(self.connRetryExp)
after = time.Now().Add(interval)
log.Debug(fmt.Sprintf("kaddb record %v (PO%03d:%d) selected as candidate connection %v. seen at %v (%v ago), selectable since %v, retry after %v (in %v)", node.Addr, po, cursor, rounds, node.Seen, delta, node.After, after, interval))
@@ -330,7 +330,7 @@ func (self *KadDb) load(path string, cb func(*NodeRecord, Node) error) (err erro
}
}
n++
- if (node.After == time.Time{}) {
+ if node.After.IsZero() {
node.After = time.Now()
}
self.index[node.Addr] = node
diff --git a/swarm/network/kademlia/kademlia.go b/swarm/network/kademlia/kademlia.go
index bf976a3e1..0abc42a19 100644
--- a/swarm/network/kademlia/kademlia.go
+++ b/swarm/network/kademlia/kademlia.go
@@ -52,7 +52,7 @@ type KadParams struct {
ConnRetryExp int
}
-func NewKadParams() *KadParams {
+func NewDefaultKadParams() *KadParams {
return &KadParams{
MaxProx: maxProx,
ProxBinSize: proxBinSize,
diff --git a/swarm/network/kademlia/kademlia_test.go b/swarm/network/kademlia/kademlia_test.go
index 417ccecae..88858908a 100644
--- a/swarm/network/kademlia/kademlia_test.go
+++ b/swarm/network/kademlia/kademlia_test.go
@@ -63,7 +63,7 @@ func TestOn(t *testing.T) {
if !ok1 || !ok2 {
t.Errorf("oops")
}
- kad := New(addr, NewKadParams())
+ kad := New(addr, NewDefaultKadParams())
err := kad.On(&testNode{addr: other}, nil)
_ = err
}
@@ -72,7 +72,7 @@ func TestBootstrap(t *testing.T) {
test := func(test *bootstrapTest) bool {
// for any node kad.le, Target and N
- params := NewKadParams()
+ params := NewDefaultKadParams()
params.MaxProx = test.MaxProx
params.BucketSize = test.BucketSize
params.ProxBinSize = test.BucketSize
@@ -127,7 +127,7 @@ func TestFindClosest(t *testing.T) {
test := func(test *FindClosestTest) bool {
// for any node kad.le, Target and N
- params := NewKadParams()
+ params := NewDefaultKadParams()
params.MaxProx = 7
kad := New(test.Self, params)
var err error
@@ -198,7 +198,7 @@ var (
func TestProxAdjust(t *testing.T) {
r := rand.New(rand.NewSource(time.Now().UnixNano()))
self := gen(Address{}, r).(Address)
- params := NewKadParams()
+ params := NewDefaultKadParams()
params.MaxProx = 7
kad := New(self, params)
@@ -232,7 +232,7 @@ func TestSaveLoad(t *testing.T) {
r := rand.New(rand.NewSource(time.Now().UnixNano()))
addresses := gen([]Address{}, r).([]Address)
self := RandomAddress()
- params := NewKadParams()
+ params := NewDefaultKadParams()
params.MaxProx = 7
kad := New(self, params)
diff --git a/swarm/network/protocol.go b/swarm/network/protocol.go
index 2f880df57..a418c1dbb 100644
--- a/swarm/network/protocol.go
+++ b/swarm/network/protocol.go
@@ -309,7 +309,7 @@ func (self *bzz) handleStatus() (err error) {
Version: uint64(Version),
ID: "honey",
Addr: self.selfAddr(),
- NetworkId: uint64(self.NetworkId),
+ NetworkId: self.NetworkId,
Swap: &bzzswap.SwapProfile{
Profile: self.swapParams.Profile,
PayProfile: self.swapParams.PayProfile,
diff --git a/swarm/network/syncer.go b/swarm/network/syncer.go
index a3814e423..6d729fcb9 100644
--- a/swarm/network/syncer.go
+++ b/swarm/network/syncer.go
@@ -131,9 +131,8 @@ type SyncParams struct {
}
// constructor with default values
-func NewSyncParams(bzzdir string) *SyncParams {
+func NewDefaultSyncParams() *SyncParams {
return &SyncParams{
- RequestDbPath: filepath.Join(bzzdir, "requests"),
RequestDbBatchSize: requestDbBatchSize,
KeyBufferSize: keyBufferSize,
SyncBufferSize: syncBufferSize,
@@ -144,6 +143,12 @@ func NewSyncParams(bzzdir string) *SyncParams {
}
}
+//this can only finally be set after all config options (file, cmd line, env vars)
+//have been evaluated
+func (self *SyncParams) Init(path string) {
+ self.RequestDbPath = filepath.Join(path, "requests")
+}
+
// syncer is the agent that manages content distribution/storage replication/chunk storeRequest forwarding
type syncer struct {
*SyncParams // sync parameters
@@ -378,7 +383,7 @@ func (self *syncer) syncHistory(state *syncState) chan interface{} {
}
select {
// blocking until history channel is read from
- case history <- storage.Key(key):
+ case history <- key:
n++
log.Trace(fmt.Sprintf("syncer[%v]: history: %v (%v keys)", self.key.Log(), key.Log(), n))
state.Latest = key