Adding full wallet message

This commit is contained in:
Matias Pando 2014-09-09 15:07:36 -03:00
commit ee9fbc6654
2 changed files with 13 additions and 2 deletions

View file

@ -386,6 +386,8 @@ WalletFactory.prototype.joinCreateSession = function(secret, nickname, passphras
w.sendWalletReady(s.pubKey);
//w.seedCopayer(s.pubKey);
return cb(null, w);
} else {
return cb('walletFull', w);
}
});
});

View file

@ -83,6 +83,14 @@ Network.prototype._sendHello = function(copayerId,secretNumber) {
});
};
Network.prototype._sendRejectConnection = function(copayerId) {
this.send(copayerId, {
type: 'rejectConnection',
copayerId: this.copayerId,
});
};
Network.prototype._deletePeer = function(peerId) {
delete this.isInboundPeerAuth[peerId];
delete this.copayerForPeer[peerId];
@ -189,26 +197,27 @@ Network.prototype._onMessage = function(enc) {
this._deletePeer(sender);
return;
}
log.debug('receiving ' + JSON.stringify(payload));
var self = this;
switch (payload.type) {
case 'hello':
if (typeof payload.secretNumber === 'undefined' || payload.secretNumber !== this.secretNumber)
{
this._sendRejectConnection(sender);
this._deletePeer(enc.pubkey, 'incorrect secret number');
return;
}
// if we locked allowed copayers, check if it belongs
if (this.allowedCopayerIds && !this.allowedCopayerIds[payload.copayerId]) {
this._sendRejectConnection(sender);
this._deletePeer(sender);
return;
}
//ensure claimed public key is actually the public key of the peer
//e.g., their public key should hash to be their peerId
if (sender !== payload.copayerId) {
this._sendRejectConnection(sender);
this._deletePeer(enc.pubkey, 'incorrect pubkey for peerId');
return;
}