Commit Graph

525 Commits

Author SHA1 Message Date
Christopher Jeffrey
340d4e3272
bip152: minor. 2017-07-23 22:17:55 -07:00
Christopher Jeffrey
6c901a19fa
bip152: add extra limit to avoid hashdos. 2017-07-23 21:22:32 -07:00
Christopher Jeffrey
69b862df42
bip152: minor refactor. 2017-07-23 20:56:27 -07:00
Christopher Jeffrey
906a6bf13a
http/tcp: remove reject listener on success. 2017-07-23 08:18:06 -07:00
Christopher Jeffrey
c347add2fd
pool: refactor assertion. 2017-07-23 08:17:43 -07:00
Christopher Jeffrey (JJ)
63423c7748 Merge pull request #245 from nodar-chkuaselidze/fix/config-bip150
Fix Pool bip150 assert
2017-07-23 07:03:10 -07:00
Node
361ffd2705 Fix bip150 and bip151 configuration parsing 2017-07-20 16:44:41 +04:00
Mokhtar Naamani
c9f736d33f net/http: correctly reject promise return by listen() 2017-07-19 00:21:35 +03:00
Christopher Jeffrey
98c975de8b
pool: fix bad orphan event handling. 2017-07-17 22:39:11 -07:00
Christopher Jeffrey
37da047a34
digest: avoid extra allocations. 2017-07-17 14:26:43 -07:00
Christopher Jeffrey
278265536e
external: minor. 2017-07-17 14:26:41 -07:00
Christopher Jeffrey
647b6909c6
dns: add custom timeout. 2017-07-17 14:26:41 -07:00
Christopher Jeffrey
972d98e0db
hostlist: es6 fixes. 2017-07-17 14:26:39 -07:00
Christopher Jeffrey
1b94d670c2
upnp: minor. 2017-07-17 14:26:39 -07:00
Christopher Jeffrey
3f3516ca18
coinview: remove old serialization methods. 2017-07-17 14:26:39 -07:00
Christopher Jeffrey
15d0b88308
bip152/merkleblock: use Map objects. 2017-07-17 14:26:39 -07:00
Christopher Jeffrey
296e65d0fd
refactor: use es6 template strings everywhere. 2017-07-17 14:26:39 -07:00
Christopher Jeffrey
3af014119a
refactor: switch to template strings for errors. 2017-07-17 14:26:38 -07:00
Christopher Jeffrey
10672784e5
refactor: rename tx functions. more es6 features. 2017-07-17 14:26:38 -07:00
Christopher Jeffrey
c53f4cf89e
refactor: switch to const/let. 2017-07-17 14:26:37 -07:00
Christopher Jeffrey
e00472891d
refactor: start using for...of. 2017-07-17 14:26:37 -07:00
Christopher Jeffrey
78d62c73b8
refactor: start using multiple return values. 2017-07-17 14:26:37 -07:00
Christopher Jeffrey
aa05bb5df7
refactor: use es6 maps for everything. 2017-07-17 14:26:37 -07:00
Christopher Jeffrey
275580f4ac
refactor: fix linting for empty modules. 2017-06-28 13:04:04 -07:00
Christopher Jeffrey
24cd81a1bd
webpack: use -browser convention instead of aliases. 2017-06-28 12:45:38 -07:00
Christopher Jeffrey
be1ec1c22d
utils: refactor. 2017-06-27 09:28:37 -07:00
Christopher Jeffrey
62e7f97359
refactor: module index. 2017-06-27 09:28:18 -07:00
Christopher Jeffrey
d4cc22e1c5
refactor: crypto. 2017-06-27 07:27:53 -07:00
Christopher Jeffrey
fa3e98b274
crypto: rename ec to secp256k1. 2017-06-27 02:48:19 -07:00
Christopher Jeffrey
b26b82ab97
util: start using path module. remove some functions. 2017-06-27 01:24:27 -07:00
Christopher Jeffrey
8358fa59c6
util: drop all homemade polyfills. 2017-06-27 00:36:13 -07:00
Christopher Jeffrey
722118df6c
external/gcs: docs. 2017-06-26 13:36:01 -07:00
Christopher Jeffrey
edd095bfae
pool: refactor http ip discovery. 2017-06-26 04:27:21 -07:00
Christopher Jeffrey
b65d2dcae7
peer: allong pong msg to bypass lock. 2017-06-26 04:06:55 -07:00
Christopher Jeffrey
724c9f66e7
peer: remove co.wait call. 2017-06-26 03:49:50 -07:00
Christopher Jeffrey
d3b24da2e1
lint: require strict mode. 2017-06-24 05:11:54 -07:00
Christopher Jeffrey
2ef4d137e6
pkg: switch from jshint to eslint. 2017-06-24 04:45:46 -07:00
Christopher Jeffrey
84eccc29fa
refactor: switch to async/await. see #227. 2017-06-24 02:39:06 -07:00
Christopher Jeffrey
015fb8b0b6
siphash: return objects instead of buffers. 2017-06-16 14:30:25 -07:00
Christopher Jeffrey
a3c7a49c80
refactor: replace util.equal with Buffer#equals. 2017-06-12 03:00:08 -07:00
Christopher Jeffrey
28cd43045d
refactor: avoid using new Buffer() due to its new perf implications. 2017-05-30 21:11:10 -07:00
Christopher Jeffrey
46b34677f1
address/wallet: refactor usage of Address.getHash. 2017-05-25 23:27:37 -07:00
Christopher Jeffrey
75c279169c
peer: comments. 2017-05-19 22:05:46 -07:00
Christopher Jeffrey
0ceca23cb5
chain/mempool: store peer id and punish invalid orphans. 2017-05-19 17:02:06 -07:00
Christopher Jeffrey
0b13452df1
net: implement peer ids. 2017-05-15 03:53:30 -07:00
Christopher Jeffrey
e0c2eb122b
rpc: improve some network rpc calls. 2017-05-13 03:51:01 -07:00
Christopher Jeffrey (JJ)
a3b0d10c30 Merge pull request #169 from dionyziz/fix_promise_docs
Pool.hasTX does not return promise
2017-05-12 15:47:31 -07:00
Christopher Jeffrey
a1d0948f2e
net: add --only option. fixes #210. 2017-05-12 12:02:55 -07:00
Dionysis Zindros
6d274a1988 Pool.hasTX does not return promise 2017-03-18 19:20:28 +02:00
Christopher Jeffrey
f778a8c1b5
bip152: do not use Block.totalTX. 2017-03-16 15:46:16 -07:00
Christopher Jeffrey
9388256e48
hostlist: fix flushing. 2017-03-16 00:39:30 -07:00
Christopher Jeffrey
7d6ebd0201
node: make hostlist persistence optional. 2017-03-14 06:10:37 -07:00
Christopher Jeffrey
a266391f1b
logger: truncate log files. 2017-03-14 06:10:36 -07:00
Christopher Jeffrey
eb601eece6
node: start using logger contexts. 2017-03-14 06:10:35 -07:00
Christopher Jeffrey
1401860fd4
pool: less error emission. 2017-03-14 06:10:35 -07:00
Christopher Jeffrey
1a8a9afade
config/wallet: refactor config handling. add wallet server. 2017-03-14 06:10:35 -07:00
Christopher Jeffrey
5cbbdbfb2f
refactor: config, plugins, and walletdb. 2017-03-14 06:10:34 -07:00
Christopher Jeffrey
a81733a720
node/config: refactor config and options. 2017-03-14 06:09:29 -07:00
Christopher Jeffrey
604362effd
pool: increase blocktxn limit. 2017-03-07 22:43:46 -08:00
Christopher Jeffrey
75f4e9616f
pool: fix discoverSeeds. 2017-03-07 22:41:13 -08:00
Christopher Jeffrey
19525826e3
pool: better stalling for compact blocks. 2017-03-07 20:54:44 -08:00
Christopher Jeffrey
4aecaf9158
pool/peer: do not allow duplicate txs in merkle blocks. 2017-03-07 20:13:32 -08:00
Christopher Jeffrey
bfca120f4f
pool: lint. minor. 2017-03-07 20:04:26 -08:00
Christopher Jeffrey
871225bbe4
pool/peer: split request map into two maps. 2017-03-07 19:49:50 -08:00
Christopher Jeffrey
2bbeb40ac5
net: resend sync on peer disconnection. 2017-03-07 18:59:46 -08:00
Christopher Jeffrey
11a2bc1356
net: less banning for bip152. 2017-03-07 18:01:05 -08:00
Christopher Jeffrey
cdbad54a8c
net: improvements. see comments.
- Improved local address handling.
- Enabled upnp discovery.
- Added retry for dns seeds.
- Improved hostlist in general.
2017-03-07 17:10:47 -08:00
Christopher Jeffrey
614a952015
net: hardcoded seeds (primarily for browser). 2017-03-07 13:57:09 -08:00
Christopher Jeffrey
c38a4fc031
net: listen after connecting to outbound. 2017-03-05 15:40:09 -08:00
Christopher Jeffrey
a96868ff8e
pool: track peer heights. 2017-03-04 15:40:59 -08:00
Christopher Jeffrey
beefcfba67
chain: return null on orphan blocks. 2017-03-04 15:37:27 -08:00
Christopher Jeffrey
694bab4ad0
net: less strict bip152 behavior. 2017-03-02 18:17:26 -08:00
Christopher Jeffrey
7b516ddd1e
net: more stall behavior. 2017-03-02 17:47:02 -08:00
Christopher Jeffrey
75877d2f22
upnp: rename resolve to discover. 2017-03-02 15:54:06 -08:00
Christopher Jeffrey
04735a1a37
upnp/ip: move some upnp functions to ip. 2017-03-02 15:50:25 -08:00
Christopher Jeffrey
beaf9ee37e
upnp: minor. 2017-03-02 12:20:55 -08:00
Christopher Jeffrey
d09ed2442c
upnp: lint. 2017-03-02 12:18:25 -08:00
Christopher Jeffrey
c0a6952bb2
upnp: minor. 2017-03-02 12:14:04 -08:00
Christopher Jeffrey
36377d5a7f
upnp: better params for addPortMapping. 2017-03-02 12:04:09 -08:00
Christopher Jeffrey
0791bad973
upnp: do not throw when getting network interfaces. 2017-03-02 11:58:26 -08:00
Christopher Jeffrey
525e6f21b7
upnp: better timeouts. 2017-03-02 11:54:04 -08:00
Christopher Jeffrey
da5851ed51
net: add upnp support for port mappings and external ip. 2017-03-02 11:40:30 -08:00
Christopher Jeffrey
53f607e19f
hostlist: minor. 2017-03-01 11:39:14 -08:00
Christopher Jeffrey
da69c5d888
hostlist: persist to file. 2017-03-01 11:29:11 -08:00
Christopher Jeffrey
161fe6e2a1
net: increase timeout for getdata. see #144. 2017-03-01 09:25:26 -08:00
Christopher Jeffrey
89ff0796c7
refactor: do not require json files. 2017-03-01 08:48:53 -08:00
Christopher Jeffrey
a4201e6bd5
peer: better stall detection. 2017-02-28 10:08:17 -08:00
Christopher Jeffrey
56ccfaa980
merkleblock/minerblock: fix hasTX calls. 2017-02-28 09:32:17 -08:00
Christopher Jeffrey
7688d80e74
block/chain: refactor block verification and caching. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
2a69b7ab7a
pool: account for header download time before invoking stall behavior. 2017-02-28 09:13:03 -08:00
Christopher Jeffrey
4c4cf9e6a4
peer: timeout inv spamming. 2017-02-24 16:25:29 -08:00
Christopher Jeffrey
fb997d43bb
pool: increase max header chain failures. 2017-02-23 20:56:21 -08:00
Christopher Jeffrey
e8b0a9ef83
pool: fix uncatchable error. 2017-02-08 15:57:13 -08:00
Christopher Jeffrey
c12a0630aa
pool: do not request duplicate txs. 2017-02-08 14:40:55 -08:00
Christopher Jeffrey
d3f94dbc6a
mempool: force broadcasting on addTX fail. 2017-02-07 13:56:30 -08:00
Christopher Jeffrey
ef95b69e5e
minor: refactor. move asyncobject. 2017-02-04 14:52:13 -08:00
Christopher Jeffrey
4e7df6ef87
docs: get jsdoc compiling again. 2017-02-03 22:47:26 -08:00
Christopher Jeffrey
b4a21cad2d
proxysocket: do not stop reads. 2017-02-03 10:25:04 -08:00
Christopher Jeffrey
91f36b3d1c
net: expose more of the tcp interface. 2017-02-03 09:59:02 -08:00
Christopher Jeffrey
f20aae676a
pool: do not reset chain when checkpoints=false. 2017-02-02 17:55:38 -08:00
Christopher Jeffrey
65f7b94c07
hostlist: lint. 2017-01-31 16:28:26 -08:00
Christopher Jeffrey
95fab44015
hostlist: allow multiple refs even if full. 2017-01-30 15:47:55 -08:00
Christopher Jeffrey
9cd70fb589
hostlist: improve hash perf. 2017-01-30 15:44:29 -08:00
Christopher Jeffrey
3d0254054c
peer: remove useless call. 2017-01-29 16:49:09 -08:00
Christopher Jeffrey
cc6ccfe9d9
peer: only request cmpctblock if we received sendcmpct. 2017-01-29 16:26:36 -08:00
Christopher Jeffrey
fae56d1387
pool: less log spam. 2017-01-29 16:08:59 -08:00
Christopher Jeffrey
4085321145
net: better compact block debug logs. 2017-01-29 13:19:30 -08:00
Christopher Jeffrey
695509b1b3
peer: fix potential memory leak. 2017-01-27 18:10:51 -08:00
Christopher Jeffrey
394df48408
pool: some cleanup. 2017-01-27 00:11:34 -08:00
Mokhtar Naamani
e651338ff3 pool: graceful disconnect - minor fix 2017-01-27 10:01:35 +02:00
Mokhtar Naamani
06d25a9007 pool: graceful disconnect - simpler approach 2017-01-27 09:56:58 +02:00
Mokhtar Naamani
de36d64d4a pool: graceful disconnect 2017-01-26 18:21:13 +02:00
Christopher Jeffrey
bae2aa33dd
parser: minor. 2017-01-26 03:00:14 -08:00
Christopher Jeffrey
f576ab6e6c
pool: always relay onion addresses. 2017-01-26 03:00:13 -08:00
Christopher Jeffrey
e05fb77d33
socks: more checks for tor resolve. 2017-01-26 03:00:13 -08:00
Christopher Jeffrey (JJ)
2552b3fca3 Merge pull request #123 from mnaamani/fix-pool-broadcast-item
pool: fix BroadcastItem multiple reject methods
2017-01-25 13:35:31 -08:00
Mokhtar Naamani
e1147cdf3d pool: fix BroadcastItem multiple reject methods 2017-01-25 21:20:16 +02:00
Christopher Jeffrey
64114460ad
socks: refactor addr parsing. 2017-01-25 02:31:40 -08:00
Christopher Jeffrey
00dccf0d5d
socks: minor. 2017-01-25 02:01:45 -08:00
Christopher Jeffrey
c6aad6448c
socks: error handling. 2017-01-25 01:20:58 -08:00
Christopher Jeffrey
b8cd9893fb
net: fix socket and dns callbacks. 2017-01-24 18:34:01 -08:00
Christopher Jeffrey
32fd1d6dba
dns: fix tor resolution. 2017-01-24 18:30:47 -08:00
Christopher Jeffrey
5073c1508f
net: tor support for outgoing conns. 2017-01-24 18:25:44 -08:00
Christopher Jeffrey
5288e8a619
socks: refactor errors. 2017-01-24 18:21:41 -08:00
Christopher Jeffrey
3a0b7d07d3
socks: fix no auth and proxying. 2017-01-24 06:03:27 -08:00
Christopher Jeffrey
a87484f2e8
socks: misc fixes. 2017-01-24 05:17:52 -08:00
Christopher Jeffrey
0de1302ca9
socks: fix state handling. 2017-01-24 03:58:18 -08:00
Christopher Jeffrey
6c9dd723cd
net: add socks proxy. 2017-01-24 03:52:08 -08:00
Christopher Jeffrey
b8324e0b09
ip: rename some functions. 2017-01-23 23:08:21 -08:00
Christopher Jeffrey
07c3177227
ip: better tor support. 2017-01-23 22:44:17 -08:00
Christopher Jeffrey
2c0f8ce226
peer: block type fix for compact blocks. 2017-01-23 21:23:01 -08:00
Christopher Jeffrey
caf8043dcb
peer: fix handleDrain. 2017-01-23 21:21:05 -08:00
Christopher Jeffrey
592191c44c
peer: less aggresive stall behavior. 2017-01-23 20:43:17 -08:00
Christopher Jeffrey
cfeafb6273
net: wait for peer drain on block serving. 2017-01-23 20:30:02 -08:00
Christopher Jeffrey
e6dd78abe1
minor: lint. 2017-01-23 19:43:19 -08:00
Christopher Jeffrey
016d0da096
ip/netaddress: better ip parsing. 2017-01-23 19:36:19 -08:00
Christopher Jeffrey
2a6ee729a0
pool: disable bip37 by default. 2017-01-23 15:06:20 -08:00
Christopher Jeffrey
c6b439f21c
chain/pool: remove witness option. 2017-01-23 14:51:40 -08:00
Christopher Jeffrey
c44fc3bcef
pool: disable checkpoints properly. rename prop for consistency. 2017-01-23 13:40:29 -08:00
Christopher Jeffrey
e7413aabb7
chain/pool: disable checkpoints on checkpoint failure. see #121. 2017-01-23 13:25:01 -08:00
Christopher Jeffrey
30ab5c2a88
http/pool: more options fixes. 2017-01-23 03:58:47 -08:00
Christopher Jeffrey
dc9f31f36f
pool: fix port for options. 2017-01-23 03:50:54 -08:00
Christopher Jeffrey
cbb45db801
config: rename useCheckpoints. allow implicit noAuth on localhost. 2017-01-23 03:19:19 -08:00
Christopher Jeffrey
2fdbdfc087
network: remove witness field. 2017-01-23 03:03:38 -08:00
Christopher Jeffrey
e32f521a43
packets: limit chain locators. 2017-01-22 20:05:07 -08:00
Christopher Jeffrey
00f24dc11e
peer: minor. change log level. 2017-01-22 19:57:37 -08:00
Christopher Jeffrey
25899827fd
net: remove noDiscovery. exempt bip150 packets from lock. 2017-01-22 14:48:03 -08:00
Christopher Jeffrey
6cca0aac1c
pool: minor fixes. 2017-01-21 17:27:15 -08:00
Christopher Jeffrey
d516035473
pool: minor. 2017-01-21 17:06:10 -08:00
Christopher Jeffrey
6e13fe57c0
pool: refactor header sync. 2017-01-21 16:59:20 -08:00