completely remove go-key dep
License: MIT Signed-off-by: Jeromy <why@ipfs.io>
Jeromy committed
Nov 28, 2016 at 21:42 UTC
f0f88adea0b1d8b1e8246c502133db2df85df64b
13 files changed
+55
-124
core/builder.go
+4
-4
@@ -1,6 +1,7 @@
1
package core
2
3
import (
4
+ "context"
5
"crypto/rand"
6
"encoding/base64"
7
"errors"
@@ -17,14 +18,13 @@ import (
18
repo "github.com/ipfs/go-ipfs/repo"
19
cfg "github.com/ipfs/go-ipfs/repo/config"
20
20
- context "context"
21
retry "gx/ipfs/QmPF5kxTYFkzhaY5LmkExood7aTTZBHWQC6cjdDQBuGrjp/retry-datastore"
22
metrics "gx/ipfs/QmRg1gKTHzc3CZXSKzem8aR4E3TubFhbgXwfVuWnSK5CC5/go-metrics-interface"
23
goprocessctx "gx/ipfs/QmSF8fPo3jgVBAy8fpdjjYqgG87dkJgUprRBHRd2tmfgpP/goprocess/context"
24
pstore "gx/ipfs/QmXXCcQ7CLg5a81Ui9TTR35QcR4y7ZyihxwfjqaHfUVcVo/go-libp2p-peerstore"
25
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
25
ds "gx/ipfs/QmbzuUusHqaLLoNTDEVLcSF6vZDHZDLPC7p4bztRvvkXxU/go-datastore"
26
dsync "gx/ipfs/QmbzuUusHqaLLoNTDEVLcSF6vZDHZDLPC7p4bztRvvkXxU/go-datastore/sync"
27
+ peer "gx/ipfs/QmfMmLGoKzCHDN7cGgk64PJr4iipzidDRME8HABSJqvmhC/go-libp2p-peer"
28
ci "gx/ipfs/QmfWDLQjGjVe4fr5CoztYW2DYYjRysMJrFe1RCsXLPTf46/go-libp2p-crypto"
29
)
30
@@ -91,7 +91,7 @@ func defaultRepo(dstore repo.Datastore) (repo.Repo, error) {
91
return nil, err
92
}
93
94
- data, err := pub.Hash()
94
+ pid, err := peer.IDFromPublicKey(pub)
95
if err != nil {
96
return nil, err
97
}
@@ -103,7 +103,7 @@ func defaultRepo(dstore repo.Datastore) (repo.Repo, error) {
103
104
c.Bootstrap = cfg.DefaultBootstrapAddresses
105
c.Addresses.Swarm = []string{"/ip4/0.0.0.0/tcp/4001"}
106
- c.Identity.PeerID = key.Key(data).B58String()
106
+ c.Identity.PeerID = pid.Pretty()
107
c.Identity.PrivKey = base64.StdEncoding.EncodeToString(privkeyb)
108
109
return &repo.Mock{
core/commands/publish.go
+5
-5
@@ -1,18 +1,18 @@
1
package commands
2
3
import (
4
+ "context"
5
"errors"
6
"fmt"
7
"io"
8
"strings"
9
"time"
10
10
- context "context"
11
-
11
cmds "github.com/ipfs/go-ipfs/commands"
12
core "github.com/ipfs/go-ipfs/core"
13
path "github.com/ipfs/go-ipfs/path"
15
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
14
+
15
+ peer "gx/ipfs/QmfMmLGoKzCHDN7cGgk64PJr4iipzidDRME8HABSJqvmhC/go-libp2p-peer"
16
crypto "gx/ipfs/QmfWDLQjGjVe4fr5CoztYW2DYYjRysMJrFe1RCsXLPTf46/go-libp2p-crypto"
17
)
18
@@ -147,13 +147,13 @@ func publish(ctx context.Context, n *core.IpfsNode, k crypto.PrivKey, ref path.P
147
return nil, err
148
}
149
150
- hash, err := k.GetPublic().Hash()
150
+ pid, err := peer.IDFromPrivateKey(k)
151
if err != nil {
152
return nil, err
153
}
154
155
return &IpnsEntry{
156
- Name: key.Key(hash).String(),
156
+ Name: pid.Pretty(),
157
Value: ref.String(),
158
}, nil
159
}
fuse/ipns/ipns_unix.go
+8
-8
@@ -5,22 +5,23 @@
5
package ipns
6
7
import (
8
+ "context"
9
"errors"
10
"fmt"
11
"os"
12
12
- "context"
13
fuse "github.com/ipfs/go-ipfs/Godeps/_workspace/src/bazil.org/fuse"
14
fs "github.com/ipfs/go-ipfs/Godeps/_workspace/src/bazil.org/fuse/fs"
15
- logging "gx/ipfs/QmSpJByNKFX1sCsHBEp3R73FL4NF6FnQTEGyNAXHm2GS52/go-log"
15
16
core "github.com/ipfs/go-ipfs/core"
17
dag "github.com/ipfs/go-ipfs/merkledag"
18
mfs "github.com/ipfs/go-ipfs/mfs"
19
path "github.com/ipfs/go-ipfs/path"
20
ft "github.com/ipfs/go-ipfs/unixfs"
22
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
21
+
22
+ logging "gx/ipfs/QmSpJByNKFX1sCsHBEp3R73FL4NF6FnQTEGyNAXHm2GS52/go-log"
23
cid "gx/ipfs/QmcEcrBAMrwMyhSjXt4yfyPpzgSuV8HLHavnfmiKCSRqZU/go-cid"
24
+ peer "gx/ipfs/QmfMmLGoKzCHDN7cGgk64PJr4iipzidDRME8HABSJqvmhC/go-libp2p-peer"
25
ci "gx/ipfs/QmfWDLQjGjVe4fr5CoztYW2DYYjRysMJrFe1RCsXLPTf46/go-libp2p-crypto"
26
)
27
@@ -135,11 +136,11 @@ func CreateRoot(ipfs *core.IpfsNode, keys map[string]ci.PrivKey, ipfspath, ipnsp
136
roots := make(map[string]*keyRoot)
137
links := make(map[string]*Link)
138
for alias, k := range keys {
138
- pkh, err := k.GetPublic().Hash()
139
+ pid, err := peer.IDFromPrivateKey(k)
140
if err != nil {
141
return nil, err
142
}
142
- name := key.Key(pkh).B58String()
143
+ name := pid.Pretty()
144
145
kr := &keyRoot{k: k, alias: alias}
146
fsn, err := loadRoot(ipfs.Context(), kr, ipfs, name)
@@ -241,13 +242,12 @@ func (r *Root) ReadDirAll(ctx context.Context) ([]fuse.Dirent, error) {
242
243
var listing []fuse.Dirent
244
for alias, k := range r.Keys {
244
- pub := k.GetPublic()
245
- hash, err := pub.Hash()
245
+ pid, err := peer.IDFromPrivateKey(k)
246
if err != nil {
247
continue
248
}
249
ent := fuse.Dirent{
250
- Name: key.Key(hash).B58String(),
250
+ Name: pid.Pretty(),
251
Type: fuse.DT_Dir,
252
}
253
link := fuse.Dirent{
merkledag/merkledag_test.go
+4
-5
@@ -22,7 +22,6 @@ import (
22
uio "github.com/ipfs/go-ipfs/unixfs/io"
23
24
node "gx/ipfs/QmUsVJ7AEnGyjX8YWnrwq9vmECVGwBQNAKPpgz5KSg8dcq/go-ipld-node"
25
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
25
u "gx/ipfs/Qmb912gdngC1UWwTkhuW8knyRbcWeu5kqkxBpveLmW8bSr/go-ipfs-util"
26
cid "gx/ipfs/QmcEcrBAMrwMyhSjXt4yfyPpzgSuV8HLHavnfmiKCSRqZU/go-cid"
27
)
@@ -56,8 +55,8 @@ func TestNode(t *testing.T) {
55
}
56
57
h := n.Multihash()
59
- k := n.Key()
60
- if k != key.Key(h) {
58
+ k := n.Cid().Hash()
59
+ if k.String() != h.String() {
60
t.Error("Key is not equivalent to multihash")
61
} else {
62
fmt.Println("key: ", k)
@@ -84,7 +83,7 @@ func SubtestNodeStat(t *testing.T, n *ProtoNode) {
83
return
84
}
85
87
- k := n.Key()
86
+ k := n.Cid()
87
88
expected := node.NodeStat{
89
NumLinks: len(n.Links()),
@@ -92,7 +91,7 @@ func SubtestNodeStat(t *testing.T, n *ProtoNode) {
91
LinksSize: len(enc) - len(n.Data()), // includes framing.
92
DataSize: len(n.Data()),
93
CumulativeSize: int(cumSize),
95
- Hash: k.B58String(),
94
+ Hash: k.String(),
95
}
96
97
actual, err := n.Stat()
merkledag/node.go
+1
-6
@@ -6,7 +6,6 @@ import (
6
7
node "gx/ipfs/QmUsVJ7AEnGyjX8YWnrwq9vmECVGwBQNAKPpgz5KSg8dcq/go-ipld-node"
8
mh "gx/ipfs/QmYDds3421prZgqKbLpEK7T9Aa2eVdQ7o3YarX1LVLdP2J/go-multihash"
9
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
9
cid "gx/ipfs/QmcEcrBAMrwMyhSjXt4yfyPpzgSuV8HLHavnfmiKCSRqZU/go-cid"
10
)
11
@@ -204,7 +203,7 @@ func (n *ProtoNode) Stat() (*node.NodeStat, error) {
203
}
204
205
return &node.NodeStat{
207
- Hash: n.Key().B58String(),
206
+ Hash: n.Cid().String(),
207
NumLinks: len(n.links),
208
BlockSize: len(enc),
209
LinksSize: len(enc) - len(n.data), // includes framing.
@@ -213,10 +212,6 @@ func (n *ProtoNode) Stat() (*node.NodeStat, error) {
212
}, nil
213
}
214
216
-func (n *ProtoNode) Key() key.Key {
217
- return key.Key(n.Multihash())
218
-}
219
-
215
func (n *ProtoNode) Loggable() map[string]interface{} {
216
return map[string]interface{}{
217
"node": n.String(),
namesys/resolve_test.go
+4
-6
@@ -1,16 +1,15 @@
1
package namesys
2
3
import (
4
+ "context"
5
"errors"
6
"testing"
7
"time"
8
8
- context "context"
9
path "github.com/ipfs/go-ipfs/path"
10
mockrouting "github.com/ipfs/go-ipfs/routing/mock"
11
testutil "github.com/ipfs/go-ipfs/thirdparty/testutil"
12
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
13
- u "gx/ipfs/Qmb912gdngC1UWwTkhuW8knyRbcWeu5kqkxBpveLmW8bSr/go-ipfs-util"
12
+
13
ds "gx/ipfs/QmbzuUusHqaLLoNTDEVLcSF6vZDHZDLPC7p4bztRvvkXxU/go-datastore"
14
dssync "gx/ipfs/QmbzuUusHqaLLoNTDEVLcSF6vZDHZDLPC7p4bztRvvkXxU/go-datastore/sync"
15
peer "gx/ipfs/QmfMmLGoKzCHDN7cGgk64PJr4iipzidDRME8HABSJqvmhC/go-libp2p-peer"
@@ -36,13 +35,12 @@ func TestRoutingResolve(t *testing.T) {
35
t.Fatal(err)
36
}
37
39
- pubkb, err := pubk.Bytes()
38
+ pid, err := peer.IDFromPublicKey(pubk)
39
if err != nil {
40
t.Fatal(err)
41
}
42
44
- pkhash := u.Hash(pubkb)
45
- res, err := resolver.Resolve(context.Background(), key.Key(pkhash).B58String())
43
+ res, err := resolver.Resolve(context.Background(), pid.Pretty())
44
if err != nil {
45
t.Fatal(err)
46
}
namesys/routing.go
+5
-10
@@ -1,21 +1,19 @@
1
package namesys
2
3
import (
4
+ "context"
5
"fmt"
6
"strings"
7
"time"
8
8
- "context"
9
- lru "gx/ipfs/QmVYxfoJQiZijTgPNHCHgHELvQpbsJNTg6Crmc3dQkj3yy/golang-lru"
10
- mh "gx/ipfs/QmYDds3421prZgqKbLpEK7T9Aa2eVdQ7o3YarX1LVLdP2J/go-multihash"
11
- proto "gx/ipfs/QmZ4Qi3GaRbjcx28Sme5eMH7RQjGkt8wHxt2a65oLaeFEV/gogo-protobuf/proto"
12
-
9
pb "github.com/ipfs/go-ipfs/namesys/pb"
10
path "github.com/ipfs/go-ipfs/path"
15
- routing "gx/ipfs/QmUrCwTDvJgmBbJVHu1HGEyqDaod3dR6sEkZkpxZk4u47c/go-libp2p-routing"
16
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
11
12
logging "gx/ipfs/QmSpJByNKFX1sCsHBEp3R73FL4NF6FnQTEGyNAXHm2GS52/go-log"
13
+ routing "gx/ipfs/QmUrCwTDvJgmBbJVHu1HGEyqDaod3dR6sEkZkpxZk4u47c/go-libp2p-routing"
14
+ lru "gx/ipfs/QmVYxfoJQiZijTgPNHCHgHELvQpbsJNTg6Crmc3dQkj3yy/golang-lru"
15
+ mh "gx/ipfs/QmYDds3421prZgqKbLpEK7T9Aa2eVdQ7o3YarX1LVLdP2J/go-multihash"
16
+ proto "gx/ipfs/QmZ4Qi3GaRbjcx28Sme5eMH7RQjGkt8wHxt2a65oLaeFEV/gogo-protobuf/proto"
17
u "gx/ipfs/Qmb912gdngC1UWwTkhuW8knyRbcWeu5kqkxBpveLmW8bSr/go-ipfs-util"
18
cid "gx/ipfs/QmcEcrBAMrwMyhSjXt4yfyPpzgSuV8HLHavnfmiKCSRqZU/go-cid"
19
ci "gx/ipfs/QmfWDLQjGjVe4fr5CoztYW2DYYjRysMJrFe1RCsXLPTf46/go-libp2p-crypto"
@@ -179,9 +177,6 @@ func (r *routingResolver) resolveOnce(ctx context.Context, name string) (path.Pa
177
}
178
}
179
182
- hsh, _ := pubkey.Hash()
183
- log.Debugf("pk hash = %s", key.Key(hsh))
184
-
180
// check sig with pk
181
if ok, err := pubkey.Verify(ipnsEntryDataForSig(entry), entry.GetSignature()); err != nil || !ok {
182
return "", fmt.Errorf("Invalid value. Not signed by PrivateKey corresponding to %v", pubkey)
package.json
-6
@@ -211,12 +211,6 @@
211
"name": "go-cid",
212
"version": "0.7.5"
213
},
214
- {
215
- "author": "whyrusleeping",
216
- "hash": "QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9",
217
- "name": "go-key",
218
- "version": "1.0.3"
219
- },
214
{
215
"author": "whyrusleeping",
216
"hash": "QmU4VzzKNLJXJ72SedXBQKyf5Jo8W89iWpbWQjHn9qef8N",
path/resolver_test.go
+7
-8
@@ -10,25 +10,23 @@ import (
10
path "github.com/ipfs/go-ipfs/path"
11
12
node "gx/ipfs/QmUsVJ7AEnGyjX8YWnrwq9vmECVGwBQNAKPpgz5KSg8dcq/go-ipld-node"
13
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
13
util "gx/ipfs/Qmb912gdngC1UWwTkhuW8knyRbcWeu5kqkxBpveLmW8bSr/go-ipfs-util"
14
)
15
17
-func randNode() (*merkledag.ProtoNode, key.Key) {
16
+func randNode() *merkledag.ProtoNode {
17
node := new(merkledag.ProtoNode)
18
node.SetData(make([]byte, 32))
19
util.NewTimeSeededRand().Read(node.Data())
21
- k := node.Key()
22
- return node, k
20
+ return node
21
}
22
23
func TestRecurivePathResolution(t *testing.T) {
24
ctx := context.Background()
25
dagService := dagmock.Mock()
26
29
- a, _ := randNode()
30
- b, _ := randNode()
31
- c, cKey := randNode()
27
+ a := randNode()
28
+ b := randNode()
29
+ c := randNode()
30
31
err := b.AddNodeLink("grandchild", c)
32
if err != nil {
@@ -47,7 +45,7 @@ func TestRecurivePathResolution(t *testing.T) {
45
}
46
}
47
50
- aKey := a.Key()
48
+ aKey := a.Cid()
49
50
segments := []string{aKey.String(), "child", "grandchild"}
51
p, err := path.FromSegments("/ipfs/", segments...)
@@ -61,6 +59,7 @@ func TestRecurivePathResolution(t *testing.T) {
59
t.Fatal(err)
60
}
61
62
+ cKey := c.Cid()
63
key := node.Cid()
64
if key.String() != cKey.String() {
65
t.Fatal(fmt.Errorf(
pin/indirect.go
deleted
-39
@@ -1,39 +0,0 @@
1
-package pin
2
-
3
-import (
4
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
5
-)
6
-
7
-type indirectPin struct {
8
- refCounts map[key.Key]uint64
9
-}
10
-
11
-func newIndirectPin() *indirectPin {
12
- return &indirectPin{
13
- refCounts: make(map[key.Key]uint64),
14
- }
15
-}
16
-
17
-func (i *indirectPin) Increment(k key.Key) {
18
- i.refCounts[k]++
19
-}
20
-
21
-func (i *indirectPin) Decrement(k key.Key) {
22
- if i.refCounts[k] == 0 {
23
- log.Warningf("pinning: bad call: asked to unpin nonexistent indirect key: %v", k)
24
- return
25
- }
26
- i.refCounts[k]--
27
- if i.refCounts[k] == 0 {
28
- delete(i.refCounts, k)
29
- }
30
-}
31
-
32
-func (i *indirectPin) HasKey(k key.Key) bool {
33
- _, found := i.refCounts[k]
34
- return found
35
-}
36
-
37
-func (i *indirectPin) GetRefs() map[key.Key]uint64 {
38
- return i.refCounts
39
-}
pin/set.go
-9
@@ -14,7 +14,6 @@ import (
14
"github.com/ipfs/go-ipfs/pin/internal/pb"
15
16
node "gx/ipfs/QmUsVJ7AEnGyjX8YWnrwq9vmECVGwBQNAKPpgz5KSg8dcq/go-ipld-node"
17
- "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
17
"gx/ipfs/QmZ4Qi3GaRbjcx28Sme5eMH7RQjGkt8wHxt2a65oLaeFEV/gogo-protobuf/proto"
18
cid "gx/ipfs/QmcEcrBAMrwMyhSjXt4yfyPpzgSuV8HLHavnfmiKCSRqZU/go-cid"
19
)
@@ -308,11 +307,3 @@ func storeSet(ctx context.Context, dag merkledag.DAGService, cids []*cid.Cid, in
307
internalKeys(c)
308
return n, nil
309
}
311
-
312
-func copyRefcounts(orig map[key.Key]uint64) map[key.Key]uint64 {
313
- r := make(map[key.Key]uint64, len(orig))
314
- for k, v := range orig {
315
- r[k] = v
316
- }
317
- return r
318
-}
routing/supernode/server.go
+16
-16
@@ -1,14 +1,14 @@
1
package supernode
2
3
import (
4
+ "context"
5
"errors"
6
"fmt"
7
8
proxy "github.com/ipfs/go-ipfs/routing/supernode/proxy"
9
+ dshelp "github.com/ipfs/go-ipfs/thirdparty/ds-help"
10
9
- context "context"
11
pstore "gx/ipfs/QmXXCcQ7CLg5a81Ui9TTR35QcR4y7ZyihxwfjqaHfUVcVo/go-libp2p-peerstore"
11
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
12
proto "gx/ipfs/QmZ4Qi3GaRbjcx28Sme5eMH7RQjGkt8wHxt2a65oLaeFEV/gogo-protobuf/proto"
13
dhtpb "gx/ipfs/QmaMRCpeKL34rdT7t3bEndrENbVdD6gcCZr3YdkDUk6jue/go-libp2p-kad-dht/pb"
14
datastore "gx/ipfs/QmbzuUusHqaLLoNTDEVLcSF6vZDHZDLPC7p4bztRvvkXxU/go-datastore"
@@ -55,7 +55,7 @@ func (s *Server) handleMessage(
55
switch req.GetType() {
56
57
case dhtpb.Message_GET_VALUE:
58
- rawRecord, err := getRoutingRecord(s.routingBackend, key.Key(req.GetKey()))
58
+ rawRecord, err := getRoutingRecord(s.routingBackend, req.GetKey())
59
if err != nil {
60
return "", nil
61
}
@@ -69,7 +69,7 @@ func (s *Server) handleMessage(
69
// log.Event(ctx, "validationFailed", req, p)
70
// return "", nil
71
// }
72
- putRoutingRecord(s.routingBackend, key.Key(req.GetKey()), req.GetRecord())
72
+ putRoutingRecord(s.routingBackend, req.GetKey(), req.GetRecord())
73
return p, req
74
75
case dhtpb.Message_FIND_NODE:
@@ -89,7 +89,7 @@ func (s *Server) handleMessage(
89
if providerID == p {
90
store := []*dhtpb.Message_Peer{provider}
91
storeProvidersToPeerstore(s.peerstore, p, store)
92
- if err := putRoutingProviders(s.routingBackend, key.Key(req.GetKey()), store); err != nil {
92
+ if err := putRoutingProviders(s.routingBackend, req.GetKey(), store); err != nil {
93
return "", nil
94
}
95
} else {
@@ -99,7 +99,7 @@ func (s *Server) handleMessage(
99
return "", nil
100
101
case dhtpb.Message_GET_PROVIDERS:
102
- providers, err := getRoutingProviders(s.routingBackend, key.Key(req.GetKey()))
102
+ providers, err := getRoutingProviders(s.routingBackend, req.GetKey())
103
if err != nil {
104
return "", nil
105
}
@@ -116,8 +116,8 @@ func (s *Server) handleMessage(
116
var _ proxy.RequestHandler = &Server{}
117
var _ proxy.Proxy = &Server{}
118
119
-func getRoutingRecord(ds datastore.Datastore, k key.Key) (*pb.Record, error) {
120
- dskey := k.DsKey()
119
+func getRoutingRecord(ds datastore.Datastore, k string) (*pb.Record, error) {
120
+ dskey := dshelp.NewKeyFromBinary(k)
121
val, err := ds.Get(dskey)
122
if err != nil {
123
return nil, err
@@ -133,12 +133,12 @@ func getRoutingRecord(ds datastore.Datastore, k key.Key) (*pb.Record, error) {
133
return &record, nil
134
}
135
136
-func putRoutingRecord(ds datastore.Datastore, k key.Key, value *pb.Record) error {
136
+func putRoutingRecord(ds datastore.Datastore, k string, value *pb.Record) error {
137
data, err := proto.Marshal(value)
138
if err != nil {
139
return err
140
}
141
- dskey := k.DsKey()
141
+ dskey := dshelp.NewKeyFromBinary(k)
142
// TODO namespace
143
if err := ds.Put(dskey, data); err != nil {
144
return err
@@ -146,8 +146,8 @@ func putRoutingRecord(ds datastore.Datastore, k key.Key, value *pb.Record) error
146
return nil
147
}
148
149
-func putRoutingProviders(ds datastore.Datastore, k key.Key, newRecords []*dhtpb.Message_Peer) error {
150
- log.Event(context.Background(), "putRoutingProviders", &k)
149
+func putRoutingProviders(ds datastore.Datastore, k string, newRecords []*dhtpb.Message_Peer) error {
150
+ log.Event(context.Background(), "putRoutingProviders")
151
oldRecords, err := getRoutingProviders(ds, k)
152
if err != nil {
153
return err
@@ -185,8 +185,8 @@ func storeProvidersToPeerstore(ps pstore.Peerstore, p peer.ID, providers []*dhtp
185
}
186
}
187
188
-func getRoutingProviders(ds datastore.Datastore, k key.Key) ([]*dhtpb.Message_Peer, error) {
189
- e := log.EventBegin(context.Background(), "getProviders", &k)
188
+func getRoutingProviders(ds datastore.Datastore, k string) ([]*dhtpb.Message_Peer, error) {
189
+ e := log.EventBegin(context.Background(), "getProviders")
190
defer e.Done()
191
var providers []*dhtpb.Message_Peer
192
if v, err := ds.Get(providerKey(k)); err == nil {
@@ -201,8 +201,8 @@ func getRoutingProviders(ds datastore.Datastore, k key.Key) ([]*dhtpb.Message_Pe
201
return providers, nil
202
}
203
204
-func providerKey(k key.Key) datastore.Key {
205
- return datastore.KeyWithNamespaces([]string{"routing", "providers", k.String()})
204
+func providerKey(k string) datastore.Key {
205
+ return datastore.KeyWithNamespaces([]string{"routing", "providers", k})
206
}
207
208
func verify(ps pstore.Peerstore, r *pb.Record) error {
routing/supernode/server_test.go
+1
-2
@@ -3,14 +3,13 @@ package supernode
3
import (
4
"testing"
5
6
- key "gx/ipfs/QmYEoKZXHoAToWfhGF3vryhMn3WWhE1o2MasQ8uzY5iDi9/go-key"
6
dhtpb "gx/ipfs/QmaMRCpeKL34rdT7t3bEndrENbVdD6gcCZr3YdkDUk6jue/go-libp2p-kad-dht/pb"
7
datastore "gx/ipfs/QmbzuUusHqaLLoNTDEVLcSF6vZDHZDLPC7p4bztRvvkXxU/go-datastore"
8
)
9
10
func TestPutProviderDoesntResultInDuplicates(t *testing.T) {
11
routingBackend := datastore.NewMapDatastore()
13
- k := key.Key("foo")
12
+ k := "foo"
13
put := []*dhtpb.Message_Peer{
14
convPeer("bob", "127.0.0.1/tcp/4001"),
15
convPeer("alice", "10.0.0.10/tcp/4001"),