@@ -11,6 +11,7 @@ import (
11
11
inet "github.com/jbenet/go-ipfs/net"
12
12
msg "github.com/jbenet/go-ipfs/net/message"
13
13
peer "github.com/jbenet/go-ipfs/peer"
14
+ pb "github.com/jbenet/go-ipfs/routing/dht/pb"
14
15
kb "github.com/jbenet/go-ipfs/routing/kbucket"
15
16
u "github.com/jbenet/go-ipfs/util"
16
17
@@ -128,7 +129,7 @@ func (dht *IpfsDHT) HandleMessage(ctx context.Context, mes msg.NetMessage) msg.N
128
129
}
129
130
130
131
// deserialize msg
131
- pmes := new (Message )
132
+ pmes := new (pb. Message )
132
133
err := proto .Unmarshal (mData , pmes )
133
134
if err != nil {
134
135
log .Error ("Error unmarshaling data" )
@@ -140,7 +141,7 @@ func (dht *IpfsDHT) HandleMessage(ctx context.Context, mes msg.NetMessage) msg.N
140
141
141
142
// Print out diagnostic
142
143
log .Debugf ("%s got message type: '%s' from %s" ,
143
- dht .self , Message_MessageType_name [int32 (pmes .GetType ())], mPeer )
144
+ dht .self , pb . Message_MessageType_name [int32 (pmes .GetType ())], mPeer )
144
145
145
146
// get handler for this msg type.
146
147
handler := dht .handlerForMsgType (pmes .GetType ())
@@ -174,7 +175,7 @@ func (dht *IpfsDHT) HandleMessage(ctx context.Context, mes msg.NetMessage) msg.N
174
175
175
176
// sendRequest sends out a request using dht.sender, but also makes sure to
176
177
// measure the RTT for latency measurements.
177
- func (dht * IpfsDHT ) sendRequest (ctx context.Context , p peer.Peer , pmes * Message ) (* Message , error ) {
178
+ func (dht * IpfsDHT ) sendRequest (ctx context.Context , p peer.Peer , pmes * pb. Message ) (* pb. Message , error ) {
178
179
179
180
mes , err := msg .FromObject (p , pmes )
180
181
if err != nil {
@@ -185,7 +186,7 @@ func (dht *IpfsDHT) sendRequest(ctx context.Context, p peer.Peer, pmes *Message)
185
186
186
187
// Print out diagnostic
187
188
log .Debugf ("Sent message type: '%s' to %s" ,
188
- Message_MessageType_name [int32 (pmes .GetType ())], p )
189
+ pb . Message_MessageType_name [int32 (pmes .GetType ())], p )
189
190
190
191
rmes , err := dht .sender .SendRequest (ctx , mes )
191
192
if err != nil {
@@ -198,7 +199,7 @@ func (dht *IpfsDHT) sendRequest(ctx context.Context, p peer.Peer, pmes *Message)
198
199
rtt := time .Since (start )
199
200
rmes .Peer ().SetLatency (rtt )
200
201
201
- rpmes := new (Message )
202
+ rpmes := new (pb. Message )
202
203
if err := proto .Unmarshal (rmes .Data (), rpmes ); err != nil {
203
204
return nil , err
204
205
}
@@ -210,7 +211,7 @@ func (dht *IpfsDHT) sendRequest(ctx context.Context, p peer.Peer, pmes *Message)
210
211
func (dht * IpfsDHT ) putValueToNetwork (ctx context.Context , p peer.Peer ,
211
212
key string , value []byte ) error {
212
213
213
- pmes := newMessage ( Message_PUT_VALUE , string (key ), 0 )
214
+ pmes := pb . NewMessage ( pb . Message_PUT_VALUE , string (key ), 0 )
214
215
pmes .Value = value
215
216
rpmes , err := dht .sendRequest (ctx , p , pmes )
216
217
if err != nil {
@@ -225,10 +226,10 @@ func (dht *IpfsDHT) putValueToNetwork(ctx context.Context, p peer.Peer,
225
226
226
227
func (dht * IpfsDHT ) putProvider (ctx context.Context , p peer.Peer , key string ) error {
227
228
228
- pmes := newMessage ( Message_ADD_PROVIDER , string (key ), 0 )
229
+ pmes := pb . NewMessage ( pb . Message_ADD_PROVIDER , string (key ), 0 )
229
230
230
231
// add self as the provider
231
- pmes .ProviderPeers = peersToPBPeers ([]peer.Peer {dht .self })
232
+ pmes .ProviderPeers = pb . PeersToPBPeers ([]peer.Peer {dht .self })
232
233
233
234
rpmes , err := dht .sendRequest (ctx , p , pmes )
234
235
if err != nil {
@@ -290,9 +291,9 @@ func (dht *IpfsDHT) getValueOrPeers(ctx context.Context, p peer.Peer,
290
291
291
292
// getValueSingle simply performs the get value RPC with the given parameters
292
293
func (dht * IpfsDHT ) getValueSingle (ctx context.Context , p peer.Peer ,
293
- key u.Key , level int ) (* Message , error ) {
294
+ key u.Key , level int ) (* pb. Message , error ) {
294
295
295
- pmes := newMessage ( Message_GET_VALUE , string (key ), level )
296
+ pmes := pb . NewMessage ( pb . Message_GET_VALUE , string (key ), level )
296
297
return dht .sendRequest (ctx , p , pmes )
297
298
}
298
299
@@ -301,7 +302,7 @@ func (dht *IpfsDHT) getValueSingle(ctx context.Context, p peer.Peer,
301
302
// one to get the value from? Or just connect to one at a time until we get a
302
303
// successful connection and request the value from it?
303
304
func (dht * IpfsDHT ) getFromPeerList (ctx context.Context , key u.Key ,
304
- peerlist []* Message_Peer , level int ) ([]byte , error ) {
305
+ peerlist []* pb. Message_Peer , level int ) ([]byte , error ) {
305
306
306
307
for _ , pinfo := range peerlist {
307
308
p , err := dht .ensureConnectedToPeer (pinfo )
@@ -379,17 +380,17 @@ func (dht *IpfsDHT) FindLocal(id peer.ID) (peer.Peer, *kb.RoutingTable) {
379
380
return nil , nil
380
381
}
381
382
382
- func (dht * IpfsDHT ) findPeerSingle (ctx context.Context , p peer.Peer , id peer.ID , level int ) (* Message , error ) {
383
- pmes := newMessage ( Message_FIND_NODE , string (id ), level )
383
+ func (dht * IpfsDHT ) findPeerSingle (ctx context.Context , p peer.Peer , id peer.ID , level int ) (* pb. Message , error ) {
384
+ pmes := pb . NewMessage ( pb . Message_FIND_NODE , string (id ), level )
384
385
return dht .sendRequest (ctx , p , pmes )
385
386
}
386
387
387
- func (dht * IpfsDHT ) findProvidersSingle (ctx context.Context , p peer.Peer , key u.Key , level int ) (* Message , error ) {
388
- pmes := newMessage ( Message_GET_PROVIDERS , string (key ), level )
388
+ func (dht * IpfsDHT ) findProvidersSingle (ctx context.Context , p peer.Peer , key u.Key , level int ) (* pb. Message , error ) {
389
+ pmes := pb . NewMessage ( pb . Message_GET_PROVIDERS , string (key ), level )
389
390
return dht .sendRequest (ctx , p , pmes )
390
391
}
391
392
392
- func (dht * IpfsDHT ) addProviders (key u.Key , peers []* Message_Peer ) []peer.Peer {
393
+ func (dht * IpfsDHT ) addProviders (key u.Key , peers []* pb. Message_Peer ) []peer.Peer {
393
394
var provArr []peer.Peer
394
395
for _ , prov := range peers {
395
396
p , err := dht .peerFromInfo (prov )
@@ -413,7 +414,7 @@ func (dht *IpfsDHT) addProviders(key u.Key, peers []*Message_Peer) []peer.Peer {
413
414
}
414
415
415
416
// nearestPeersToQuery returns the routing tables closest peers.
416
- func (dht * IpfsDHT ) nearestPeersToQuery (pmes * Message , count int ) []peer.Peer {
417
+ func (dht * IpfsDHT ) nearestPeersToQuery (pmes * pb. Message , count int ) []peer.Peer {
417
418
level := pmes .GetClusterLevel ()
418
419
cluster := dht .routingTables [level ]
419
420
@@ -423,7 +424,7 @@ func (dht *IpfsDHT) nearestPeersToQuery(pmes *Message, count int) []peer.Peer {
423
424
}
424
425
425
426
// betterPeerToQuery returns nearestPeersToQuery, but iff closer than self.
426
- func (dht * IpfsDHT ) betterPeersToQuery (pmes * Message , count int ) []peer.Peer {
427
+ func (dht * IpfsDHT ) betterPeersToQuery (pmes * pb. Message , count int ) []peer.Peer {
427
428
closer := dht .nearestPeersToQuery (pmes , count )
428
429
429
430
// no node? nil
@@ -462,7 +463,7 @@ func (dht *IpfsDHT) getPeer(id peer.ID) (peer.Peer, error) {
462
463
return p , nil
463
464
}
464
465
465
- func (dht * IpfsDHT ) peerFromInfo (pbp * Message_Peer ) (peer.Peer , error ) {
466
+ func (dht * IpfsDHT ) peerFromInfo (pbp * pb. Message_Peer ) (peer.Peer , error ) {
466
467
467
468
id := peer .ID (pbp .GetId ())
468
469
@@ -485,7 +486,7 @@ func (dht *IpfsDHT) peerFromInfo(pbp *Message_Peer) (peer.Peer, error) {
485
486
return p , nil
486
487
}
487
488
488
- func (dht * IpfsDHT ) ensureConnectedToPeer (pbp * Message_Peer ) (peer.Peer , error ) {
489
+ func (dht * IpfsDHT ) ensureConnectedToPeer (pbp * pb. Message_Peer ) (peer.Peer , error ) {
489
490
p , err := dht .peerFromInfo (pbp )
490
491
if err != nil {
491
492
return nil , err
0 commit comments