File tree 4 files changed +25
-29
lines changed
4 files changed +25
-29
lines changed Original file line number Diff line number Diff line change @@ -15,16 +15,6 @@ const {
15
15
verifySignature
16
16
} = require ( './message/sign' )
17
17
18
- /**
19
- * @typedef {Object } InMessage
20
- * @property {string } from
21
- * @property {string } receivedFrom
22
- * @property {string[] } topicIDs
23
- * @property {Buffer } data
24
- * @property {Buffer } [signature]
25
- * @property {Buffer } [key]
26
- */
27
-
28
18
function validateRegistrar ( registrar ) {
29
19
// registrar handling
30
20
if ( typeof registrar !== 'object' ) {
@@ -267,7 +257,7 @@ class PubsubBaseProtocol extends EventEmitter {
267
257
268
258
/**
269
259
* Validates the given message. The signature will be checked for authenticity.
270
- * @param {InMessage } message
260
+ * @param {rpc.RPC.Message } message
271
261
* @returns {Promise<Boolean> }
272
262
*/
273
263
async validate ( message ) { // eslint-disable-line require-await
Original file line number Diff line number Diff line change @@ -53,7 +53,7 @@ async function verifySignature (message) {
53
53
* Returns the PublicKey associated with the given message.
54
54
* If no, valid PublicKey can be retrieved an error will be returned.
55
55
*
56
- * @param {InMessage } message
56
+ * @param {Message } message
57
57
* @returns {Promise<PublicKey> }
58
58
*/
59
59
async function messagePublicKey ( message ) {
@@ -66,12 +66,7 @@ async function messagePublicKey (message) {
66
66
throw new Error ( 'Public Key does not match the originator' )
67
67
} else {
68
68
// should be available in the from property of the message (peer id)
69
- let from
70
- if ( typeof message . from === 'string' ) {
71
- from = PeerId . createFromB58String ( message . from )
72
- } else {
73
- from = PeerId . createFromBytes ( message . from )
74
- }
69
+ const from = PeerId . createFromBytes ( message . from )
75
70
76
71
if ( from . pubKey ) {
77
72
return from . pubKey
Original file line number Diff line number Diff line change @@ -73,24 +73,39 @@ exports.ensureArray = (maybeArray) => {
73
73
* Ensures `message.from` is base58 encoded
74
74
* @param {Object } message
75
75
* @param {Buffer|String } message.from
76
- * @param {PeerId } peerId
77
76
* @return {Object }
78
77
*/
79
- exports . normalizeInRpcMessage = ( message , peerId ) => {
78
+ exports . normalizeInRpcMessage = ( message ) => {
80
79
const m = Object . assign ( { } , message )
81
80
if ( Buffer . isBuffer ( message . from ) ) {
82
81
m . from = multibase . encode ( 'base58btc' , message . from ) . toString ( ) . slice ( 1 )
83
82
}
84
- if ( peerId ) {
85
- m . receivedFrom = peerId . toB58String ( )
86
- }
87
83
return m
88
84
}
89
85
86
+ /**
87
+ * The same as `normalizeInRpcMessage`, but performed on an array of messages
88
+ * @param {Object[] } messages
89
+ * @return {Object[] }
90
+ */
91
+ exports . normalizeInRpcMessages = ( messages ) => {
92
+ if ( ! messages ) {
93
+ return messages
94
+ }
95
+ return messages . map ( exports . normalizeInRpcMessage )
96
+ }
97
+
90
98
exports . normalizeOutRpcMessage = ( message ) => {
91
99
const m = Object . assign ( { } , message )
92
100
if ( typeof message . from === 'string' || message . from instanceof String ) {
93
101
m . from = multibase . decode ( 'z' + message . from )
94
102
}
95
103
return m
96
104
}
105
+
106
+ exports . normalizeOutRpcMessages = ( messages ) => {
107
+ if ( ! messages ) {
108
+ return messages
109
+ }
110
+ return messages . map ( exports . normalizeOutRpcMessage )
111
+ }
Original file line number Diff line number Diff line change @@ -59,9 +59,7 @@ describe('utils', () => {
59
59
{ from : stringId } ,
60
60
{ from : stringId }
61
61
]
62
- for ( let i = 0 ; i < m . length ; i ++ ) {
63
- expect ( utils . normalizeInRpcMessage ( m [ i ] ) ) . to . deep . eql ( expected [ i ] )
64
- }
62
+ expect ( utils . normalizeInRpcMessages ( m ) ) . to . deep . eql ( expected )
65
63
} )
66
64
67
65
it ( 'converts an OUT msg.from to binary' , ( ) => {
@@ -75,8 +73,6 @@ describe('utils', () => {
75
73
{ from : binaryId } ,
76
74
{ from : binaryId }
77
75
]
78
- for ( let i = 0 ; i < m . length ; i ++ ) {
79
- expect ( utils . normalizeOutRpcMessage ( m [ i ] ) ) . to . deep . eql ( expected [ i ] )
80
- }
76
+ expect ( utils . normalizeOutRpcMessages ( m ) ) . to . deep . eql ( expected )
81
77
} )
82
78
} )
You can’t perform that action at this time.
0 commit comments