@streamr/dht 0.0.1-tatum.1 → 0.0.1-tatum.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/dist/src/connection/ConnectionManager.d.ts +6 -0
  2. package/dist/src/connection/ConnectionManager.js +6 -3
  3. package/dist/src/connection/ConnectionManager.js.map +1 -1
  4. package/dist/src/connection/ConnectivityChecker.d.ts +3 -2
  5. package/dist/src/connection/ConnectivityChecker.js +21 -19
  6. package/dist/src/connection/ConnectivityChecker.js.map +1 -1
  7. package/dist/src/connection/WebRTC/WebRtcConnector.d.ts +2 -0
  8. package/dist/src/connection/WebRTC/WebRtcConnector.js +14 -1
  9. package/dist/src/connection/WebRTC/WebRtcConnector.js.map +1 -1
  10. package/dist/src/connection/WebSocket/WebSocketConnector.d.ts +5 -3
  11. package/dist/src/connection/WebSocket/WebSocketConnector.js +18 -12
  12. package/dist/src/connection/WebSocket/WebSocketConnector.js.map +1 -1
  13. package/dist/src/connection/WebSocket/WebSocketServer.d.ts +2 -2
  14. package/dist/src/connection/WebSocket/WebSocketServer.js +27 -36
  15. package/dist/src/connection/WebSocket/WebSocketServer.js.map +1 -1
  16. package/dist/src/dht/DhtNode.d.ts +6 -2
  17. package/dist/src/dht/DhtNode.js +8 -6
  18. package/dist/src/dht/DhtNode.js.map +1 -1
  19. package/dist/src/dht/discovery/PeerDiscovery.d.ts +4 -2
  20. package/dist/src/dht/discovery/PeerDiscovery.js +18 -33
  21. package/dist/src/dht/discovery/PeerDiscovery.js.map +1 -1
  22. package/dist/src/exports.d.ts +1 -1
  23. package/dist/src/exports.js.map +1 -1
  24. package/dist/src/helpers/errors.d.ts +1 -1
  25. package/dist/src/helpers/errors.js +3 -3
  26. package/dist/src/helpers/errors.js.map +1 -1
  27. package/dist/src/helpers/protoClasses.js +0 -2
  28. package/dist/src/helpers/protoClasses.js.map +1 -1
  29. package/dist/src/proto/packages/dht/protos/DhtRpc.client.js +1 -1
  30. package/dist/src/proto/packages/dht/protos/DhtRpc.d.ts +10 -50
  31. package/dist/src/proto/packages/dht/protos/DhtRpc.js +8 -35
  32. package/dist/src/proto/packages/dht/protos/DhtRpc.js.map +1 -1
  33. package/dist/src/proto/packages/proto-rpc/protos/ProtoRpc.js +1 -1
  34. package/package.json +4 -4
  35. package/protos/DhtRpc.proto +5 -15
  36. package/src/connection/ConnectionManager.ts +15 -3
  37. package/src/connection/ConnectivityChecker.ts +25 -23
  38. package/src/connection/WebRTC/WebRtcConnector.ts +14 -0
  39. package/src/connection/WebSocket/WebSocketConnector.ts +22 -12
  40. package/src/connection/WebSocket/WebSocketServer.ts +31 -19
  41. package/src/dht/DhtNode.ts +13 -7
  42. package/src/dht/discovery/PeerDiscovery.ts +17 -8
  43. package/src/exports.ts +1 -1
  44. package/src/helpers/errors.ts +1 -1
  45. package/src/helpers/protoClasses.ts +1 -5
  46. package/src/proto/google/protobuf/any.ts +1 -1
  47. package/src/proto/google/protobuf/empty.ts +1 -1
  48. package/src/proto/google/protobuf/timestamp.ts +1 -1
  49. package/src/proto/packages/dht/protos/DhtRpc.client.ts +1 -1
  50. package/src/proto/packages/dht/protos/DhtRpc.server.ts +1 -1
  51. package/src/proto/packages/dht/protos/DhtRpc.ts +17 -69
  52. package/src/proto/packages/proto-rpc/protos/ProtoRpc.ts +1 -1
  53. package/test/end-to-end/Layer0-Layer1.test.ts +1 -1
  54. package/test/end-to-end/Layer0.test.ts +1 -1
  55. package/test/end-to-end/Layer0MixedConnectionTypes.test.ts +1 -1
  56. package/test/end-to-end/Layer0WebRTC-Layer1.test.ts +3 -2
  57. package/test/end-to-end/Layer0WebRTC.test.ts +1 -1
  58. package/test/end-to-end/Layer1-Scale-WebRTC.test.ts +1 -1
  59. package/test/end-to-end/Layer1-Scale-WebSocket.test.ts +1 -1
  60. package/test/end-to-end/WebSocketConnectionRequest.test.ts +1 -1
  61. package/test/integration/ConnectionManager.test.ts +9 -9
  62. package/test/integration/SimultaneousConnections.test.ts +9 -6
  63. package/test/integration/WebSocketConnectionManagement.test.ts +3 -2
  64. package/test/unit/webrtcReplaceInternalIpWithExternalIp.ts +18 -0
@@ -6,7 +6,7 @@ describe('Layer1 Scale', () => {
6
6
  const epPeerDescriptor: PeerDescriptor = {
7
7
  kademliaId: PeerID.fromString('0').value,
8
8
  type: NodeType.NODEJS,
9
- websocket: { ip: '127.0.0.1', port: 43228 },
9
+ websocket: { host: '127.0.0.1', port: 43228, tls: false },
10
10
  nodeName: 'entrypoint'
11
11
  }
12
12
 
@@ -6,7 +6,7 @@ describe('Layer1 Scale', () => {
6
6
  const epPeerDescriptor: PeerDescriptor = {
7
7
  kademliaId: PeerID.fromString('entrypoint').value,
8
8
  type: NodeType.NODEJS,
9
- websocket: { ip: '127.0.0.1', port: 43225 },
9
+ websocket: { host: '127.0.0.1', port: 43225, tls: false },
10
10
  nodeName: 'entrypoint'
11
11
  }
12
12
 
@@ -9,7 +9,7 @@ describe('WebSocket IConnection Requests', () => {
9
9
  const epPeerDescriptor: PeerDescriptor = {
10
10
  kademliaId: PeerID.fromString('3').value,
11
11
  type: NodeType.NODEJS,
12
- websocket: { ip: '127.0.0.1', port: 10021 }
12
+ websocket: { host: '127.0.0.1', port: 10021, tls: false }
13
13
  }
14
14
  let epDhtNode: DhtNode
15
15
  let node1: DhtNode
@@ -52,7 +52,7 @@ describe('ConnectionManager', () => {
52
52
  })
53
53
 
54
54
  await connectionManager.start((report) => {
55
- expect(report.ip).toEqual('127.0.0.1')
55
+ expect(report.host).toEqual('127.0.0.1')
56
56
  expect(report.openInternet).toEqual(true)
57
57
  return createPeerDescriptor(report)
58
58
  })
@@ -66,7 +66,7 @@ describe('ConnectionManager', () => {
66
66
  transportLayer: mockTransport,
67
67
  websocketPortRange: { min: 9992, max: 9992 },
68
68
  entryPoints: [
69
- { kademliaId: Uint8Array.from([1, 2, 3]), type: NodeType.NODEJS, websocket: { ip: '127.0.0.1', port: 12345 } }
69
+ { kademliaId: Uint8Array.from([1, 2, 3]), type: NodeType.NODEJS, websocket: { host: '127.0.0.1', port: 12345, tls: false } }
70
70
  ]
71
71
  })
72
72
 
@@ -85,7 +85,7 @@ describe('ConnectionManager', () => {
85
85
  })
86
86
 
87
87
  await connectionManager1.start((report) => {
88
- expect(report.ip).toEqual('127.0.0.1')
88
+ expect(report.host).toEqual('127.0.0.1')
89
89
  expect(report.openInternet).toEqual(true)
90
90
  return createPeerDescriptor(report)
91
91
  })
@@ -94,12 +94,12 @@ describe('ConnectionManager', () => {
94
94
  transportLayer: mockConnectorTransport2,
95
95
  websocketPortRange: { min: 9994, max: 9994 },
96
96
  entryPoints: [
97
- { kademliaId: Uint8Array.from([1, 2, 3]), type: NodeType.NODEJS, websocket: { ip: '127.0.0.1', port: 9993 } }
97
+ { kademliaId: Uint8Array.from([1, 2, 3]), type: NodeType.NODEJS, websocket: { host: '127.0.0.1', port: 9993, tls: false } }
98
98
  ]
99
99
  })
100
100
 
101
101
  await connectionManager2.start((report) => {
102
- expect(report.ip).toEqual('127.0.0.1')
102
+ expect(report.host).toEqual('127.0.0.1')
103
103
  expect(report.openInternet).toEqual(true)
104
104
  return createPeerDescriptor(report)
105
105
  })
@@ -118,7 +118,7 @@ describe('ConnectionManager', () => {
118
118
  let peerDescriptor: PeerDescriptor | undefined
119
119
 
120
120
  await connectionManager1.start((report) => {
121
- expect(report.ip).toEqual('127.0.0.1')
121
+ expect(report.host).toEqual('127.0.0.1')
122
122
  expect(report.openInternet).toEqual(true)
123
123
  peerDescriptor = createPeerDescriptor(report)
124
124
  return peerDescriptor
@@ -134,7 +134,7 @@ describe('ConnectionManager', () => {
134
134
 
135
135
  let peerDescriptor2: PeerDescriptor | undefined
136
136
  await connectionManager2.start((report2) => {
137
- expect(report2.ip).toEqual('127.0.0.1')
137
+ expect(report2.host).toEqual('127.0.0.1')
138
138
  expect(report2.openInternet).toEqual(true)
139
139
  peerDescriptor2 = createPeerDescriptor(report2)
140
140
  return peerDescriptor2
@@ -187,7 +187,7 @@ describe('ConnectionManager', () => {
187
187
 
188
188
  let peerDescriptor: PeerDescriptor | undefined
189
189
  await connectionManager1.start((report) => {
190
- expect(report.ip).toEqual('127.0.0.1')
190
+ expect(report.host).toEqual('127.0.0.1')
191
191
  expect(report.openInternet).toEqual(true)
192
192
  peerDescriptor = createPeerDescriptor(report)
193
193
  return peerDescriptor
@@ -316,7 +316,7 @@ describe('ConnectionManager', () => {
316
316
  })
317
317
 
318
318
  await connectionManager1.start((report) => {
319
- expect(report.ip).toEqual('127.0.0.1')
319
+ expect(report.host).toEqual('127.0.0.1')
320
320
  expect(report.openInternet).toEqual(true)
321
321
  return createPeerDescriptor(report)
322
322
  })
@@ -87,8 +87,9 @@ describe('SimultaneousConnections', () => {
87
87
  nodeName: 'mock1WebSocket',
88
88
  type: NodeType.NODEJS,
89
89
  websocket: {
90
- ip: '127.0.0.1',
91
- port: 43432
90
+ host: '127.0.0.1',
91
+ port: 43432,
92
+ tls: false
92
93
  }
93
94
  }
94
95
 
@@ -97,8 +98,9 @@ describe('SimultaneousConnections', () => {
97
98
  nodeName: 'mock2WebSocket',
98
99
  type: NodeType.NODEJS,
99
100
  websocket: {
100
- ip: '127.0.0.1',
101
- port: 43433
101
+ host: '127.0.0.1',
102
+ port: 43433,
103
+ tls: false
102
104
  }
103
105
  }
104
106
 
@@ -170,8 +172,9 @@ describe('SimultaneousConnections', () => {
170
172
  nodeName: 'mock1WebSocketServer',
171
173
  type: NodeType.NODEJS,
172
174
  websocket: {
173
- ip: '127.0.0.1',
174
- port: 43432
175
+ host: '127.0.0.1',
176
+ port: 43432,
177
+ tls: false
175
178
  }
176
179
  }
177
180
 
@@ -22,8 +22,9 @@ describe('WebSocket Connection Management', () => {
22
22
  kademliaId: PeerID.fromString('peerWithServer').value,
23
23
  type: NodeType.NODEJS,
24
24
  websocket: {
25
- ip: '127.0.0.1',
26
- port: 12223
25
+ host: '127.0.0.1',
26
+ port: 12223,
27
+ tls: false
27
28
  }
28
29
  }
29
30
 
@@ -0,0 +1,18 @@
1
+ import { replaceInternalIpWithExternalIp } from '../../src/connection/WebRTC/WebRtcConnector'
2
+
3
+ describe('replaceIpIfCandidateTypeIsHost', () => {
4
+
5
+ const hostCandidate = 'candidate:1 1 UDP 2013266431 127.0.0.1 30000 typ host'
6
+ const srflxCandidate = 'candidate:1 1 UDP 2013266431 127.0.0.1 30000 typ srflx'
7
+
8
+ it('replaces ip if candidate type is host', () => {
9
+ const replaced = replaceInternalIpWithExternalIp(hostCandidate, '0.0.0.0')
10
+ expect(replaced).toEqual('candidate:1 1 UDP 2013266431 0.0.0.0 30000 typ host')
11
+ })
12
+
13
+ it('does not replace candidate if type is not host', () => {
14
+ const replaced = replaceInternalIpWithExternalIp(srflxCandidate, '0.0.0.0')
15
+ expect(replaced).toEqual(srflxCandidate)
16
+ })
17
+
18
+ })