broadcast option.

This commit is contained in:
Christopher Jeffrey 2016-05-07 00:52:55 -07:00
parent 41a864d130
commit b85a98b4ca
No known key found for this signature in database
GPG Key ID: 8962AB9DE6666BBD
3 changed files with 20 additions and 5 deletions

View File

@ -9,12 +9,12 @@ process.on('uncaughtException', function(err) {
process.exit(1);
});
var node = bcoin.fullnode({
// passphrase: 'node',
var node = new bcoin.fullnode({
prune: process.argv.indexOf('--prune') !== -1,
useCheckpoints: process.argv.indexOf('--checkpoints') !== -1,
listen: process.argv.indexOf('--listen') !== -1,
selfish: process.argv.indexOf('--selfish') !== -1,
broadcast: process.argv.indexOf('--broadcast') !== -1,
mine: process.argv.indexOf('--mine') !== -1
});

View File

@ -87,6 +87,7 @@ Fullnode.prototype._init = function _init() {
witness: network.witness,
listen: this.options.listen,
selfish: this.options.selfish,
broadcast: this.options.broadcast,
spv: false
});

View File

@ -229,9 +229,23 @@ Pool.prototype.connect = function connect() {
if (this.connected)
return;
if (this.mempool && this.options.broadcast) {
this.mempool.on('tx', function(tx) {
self.broadcast(tx);
if (this.options.broadcast) {
if (this.mempool) {
this.mempool.on('tx', function(tx) {
self.broadcast(tx);
});
}
// Normally we would also broadcast
// competing chains, but we want to
// avoid getting banned if an evil
// miner sends us an invalid competing
// chain that we can't connect and
// verify yet.
this.chain.on('block', function(block) {
if (!self.synced)
return;
self.broadcast(block);
});
}