hostlist: refactor seed handling.
This commit is contained in:
parent
fcae101c0f
commit
6d1c918793
@ -71,7 +71,6 @@ function Chain(options) {
|
|||||||
|
|
||||||
this.network = this.options.network;
|
this.network = this.options.network;
|
||||||
this.logger = this.options.logger;
|
this.logger = this.options.logger;
|
||||||
this.db = new ChainDB(this);
|
|
||||||
|
|
||||||
this.locker = new Lock(true);
|
this.locker = new Lock(true);
|
||||||
this.invalid = new LRU(100);
|
this.invalid = new LRU(100);
|
||||||
@ -88,6 +87,8 @@ function Chain(options) {
|
|||||||
this.orphanCount = 0;
|
this.orphanCount = 0;
|
||||||
this.orphanSize = 0;
|
this.orphanSize = 0;
|
||||||
|
|
||||||
|
this.db = new ChainDB(this);
|
||||||
|
|
||||||
this._init();
|
this._init();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2304,10 +2305,10 @@ function ChainOptions(options) {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
ChainOptions.prototype.fromOptions = function fromOptions(options) {
|
ChainOptions.prototype.fromOptions = function fromOptions(options) {
|
||||||
if (options.network != null)
|
if (options.network != null) {
|
||||||
this.network = Network.get(options.network);
|
this.network = Network.get(options.network);
|
||||||
|
this.witness = this.network.witness;
|
||||||
this.witness = this.network.witness;
|
}
|
||||||
|
|
||||||
if (options.logger != null) {
|
if (options.logger != null) {
|
||||||
assert(typeof options.logger === 'object');
|
assert(typeof options.logger === 'object');
|
||||||
|
|||||||
@ -555,8 +555,10 @@ HTTPServer.prototype._init = function _init() {
|
|||||||
|
|
||||||
if (cmd.method !== 'getblocktemplate' && cmd.method !== 'getwork') {
|
if (cmd.method !== 'getblocktemplate' && cmd.method !== 'getwork') {
|
||||||
this.logger.debug('Handling RPC call: %s.', cmd.method);
|
this.logger.debug('Handling RPC call: %s.', cmd.method);
|
||||||
if (cmd.method !== 'submitblock')
|
if (cmd.method !== 'submitblock'
|
||||||
|
&& cmd.method !== 'getmemorypool') {
|
||||||
this.logger.debug(cmd.params);
|
this.logger.debug(cmd.params);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|||||||
@ -10,6 +10,7 @@ var assert = require('assert');
|
|||||||
var util = require('../utils/util');
|
var util = require('../utils/util');
|
||||||
var IP = require('../utils/ip');
|
var IP = require('../utils/ip');
|
||||||
var co = require('../utils/co');
|
var co = require('../utils/co');
|
||||||
|
var Network = require('../protocol/network');
|
||||||
var NetAddress = require('../primitives/netaddress');
|
var NetAddress = require('../primitives/netaddress');
|
||||||
var List = require('../utils/list');
|
var List = require('../utils/list');
|
||||||
var murmur3 = require('../utils/murmur3');
|
var murmur3 = require('../utils/murmur3');
|
||||||
@ -17,7 +18,6 @@ var StaticWriter = require('../utils/staticwriter');
|
|||||||
var Map = require('../utils/map');
|
var Map = require('../utils/map');
|
||||||
var common = require('./common');
|
var common = require('./common');
|
||||||
var dns = require('./dns');
|
var dns = require('./dns');
|
||||||
var Network = require('../protocol/network');
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Host List
|
* Host List
|
||||||
@ -35,6 +35,7 @@ function HostList(options) {
|
|||||||
this.proxyServer = null;
|
this.proxyServer = null;
|
||||||
this.resolve = dns.resolve;
|
this.resolve = dns.resolve;
|
||||||
this.banTime = common.BAN_TIME;
|
this.banTime = common.BAN_TIME;
|
||||||
|
this.rawSeeds = this.network.seeds;
|
||||||
|
|
||||||
this.seeds = [];
|
this.seeds = [];
|
||||||
this.banned = {};
|
this.banned = {};
|
||||||
@ -65,8 +66,13 @@ function HostList(options) {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
HostList.prototype._initOptions = function initOptions(options) {
|
HostList.prototype._initOptions = function initOptions(options) {
|
||||||
if (options.network != null)
|
if (!options)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (options.network != null) {
|
||||||
this.network = Network.get(options.network);
|
this.network = Network.get(options.network);
|
||||||
|
this.rawSeeds = this.network.seeds;
|
||||||
|
}
|
||||||
|
|
||||||
if (options.logger != null) {
|
if (options.logger != null) {
|
||||||
assert(typeof options.logger === 'object');
|
assert(typeof options.logger === 'object');
|
||||||
@ -93,8 +99,10 @@ HostList.prototype._initOptions = function initOptions(options) {
|
|||||||
this.banTime = options.banTime;
|
this.banTime = options.banTime;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (options.seeds)
|
if (options.seeds) {
|
||||||
assert(Array.isArray(options.seeds));
|
assert(Array.isArray(options.seeds));
|
||||||
|
this.rawSeeds = options.seeds;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -113,12 +121,7 @@ HostList.prototype._init = function init(options) {
|
|||||||
for (i = 0; i < this.maxBuckets; i++)
|
for (i = 0; i < this.maxBuckets; i++)
|
||||||
this.used.push(new List());
|
this.used.push(new List());
|
||||||
|
|
||||||
if (options.seeds) {
|
this.setSeeds(this.rawSeeds);
|
||||||
this.setSeeds(options.seeds);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.setSeeds(this.network.seeds);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user