improved generateHandshakeAddress()
This commit is contained in:
parent
fab6e66439
commit
4c19336fcf
2 changed files with 22 additions and 10 deletions
|
|
@ -502,7 +502,7 @@ class Mediator {
|
|||
|
||||
await throwOnInvalidToken(token)
|
||||
|
||||
await API.Actions.generateHandshakeAddress(user)
|
||||
await API.Actions.generateHandshakeAddress()
|
||||
|
||||
this.socket.emit(Action.GENERATE_NEW_HANDSHAKE_NODE, {
|
||||
ok: true,
|
||||
|
|
@ -1105,7 +1105,7 @@ const register = async (alias, pass) => {
|
|||
|
||||
return authenticate(alias, pass).then(async pub => {
|
||||
await API.Actions.setDisplayName('anon' + pub.slice(0, 8), user)
|
||||
await API.Actions.generateHandshakeAddress(user)
|
||||
await API.Actions.generateHandshakeAddress()
|
||||
await API.Actions.generateOrderAddress(user)
|
||||
return pub
|
||||
})
|
||||
|
|
|
|||
|
|
@ -364,17 +364,15 @@ const blacklist = (publicKey, user) =>
|
|||
})
|
||||
|
||||
/**
|
||||
* @param {UserGUNNode} user
|
||||
* @returns {Promise<void>}
|
||||
*/
|
||||
const generateHandshakeAddress = user =>
|
||||
new Promise((res, rej) => {
|
||||
if (!user.is) {
|
||||
throw new Error(ErrorCode.NOT_AUTH)
|
||||
}
|
||||
const generateHandshakeAddress = async () => {
|
||||
const gun = require('../Mediator').getGun()
|
||||
const user = require('../Mediator').getUser()
|
||||
|
||||
const address = uuidv1()
|
||||
|
||||
await new Promise((res, rej) => {
|
||||
user.get(Key.CURRENT_HANDSHAKE_ADDRESS).put(address, ack => {
|
||||
if (ack.err) {
|
||||
rej(new Error(ack.err))
|
||||
|
|
@ -384,6 +382,20 @@ const generateHandshakeAddress = user =>
|
|||
})
|
||||
})
|
||||
|
||||
await new Promise((res, rej) => {
|
||||
gun
|
||||
.get(Key.HANDSHAKE_NODES)
|
||||
.get(address)
|
||||
.put({ unused: 0 }, ack => {
|
||||
if (ack.err) {
|
||||
rej(new Error(ack.err))
|
||||
} else {
|
||||
res()
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string} recipientPublicKey
|
||||
* @param {GUNNode} gun
|
||||
|
|
@ -1098,7 +1110,7 @@ const disconnect = async pub => {
|
|||
})
|
||||
})
|
||||
|
||||
await generateHandshakeAddress(require('../Mediator').getUser())
|
||||
await generateHandshakeAddress()
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue