Commit Graph

379 Commits

Author SHA1 Message Date
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
Christopher Jeffrey
219671c620
pool: do not emit tx if we have a mempool. 2017-01-21 15:38:39 -08:00
Christopher Jeffrey
51a25bf15f
net/nodeclient: always resend bloom filter. see #119. 2017-01-21 15:20:03 -08:00
Christopher Jeffrey
f3f585defc
pool: cleanup. 2017-01-21 13:59:13 -08:00
Christopher Jeffrey
b212eed282
net: handle public ip and port better. 2017-01-21 13:56:41 -08:00
Christopher Jeffrey
dc839062bf
pool: minor. 2017-01-21 13:20:44 -08:00
Christopher Jeffrey
545c0004e9
pool: minor. 2017-01-21 13:07:49 -08:00
Christopher Jeffrey
be4145e163
pool/peer: fixes. cleanup. 2017-01-21 13:03:53 -08:00
Christopher Jeffrey
58f8035add
pool: noncelist. 2017-01-21 12:57:01 -08:00
Christopher Jeffrey
f67eeee936
pool: minor. 2017-01-21 05:22:46 -08:00
Christopher Jeffrey
518a113e97
pool: fix error. 2017-01-21 05:19:53 -08:00
Christopher Jeffrey
44201193e8
pool: noncelist. 2017-01-21 05:18:18 -08:00
Christopher Jeffrey
3abfdb3770
pool: cleanup. 2017-01-21 04:15:16 -08:00
Christopher Jeffrey
59e73b24ca
parser: minor. 2017-01-21 03:56:30 -08:00
Christopher Jeffrey
4008caff51
peer: minor. 2017-01-21 03:49:44 -08:00
Christopher Jeffrey
4692849593
peer: abstract all deps. 2017-01-21 03:43:26 -08:00
Christopher Jeffrey
6016d96202
pool: move sync method out of peer. 2017-01-20 22:24:45 -08:00
Christopher Jeffrey
b60e0e20a4
pool: stricter standards for requests. 2017-01-20 20:51:36 -08:00
Christopher Jeffrey
7a5f4a1928
pool: fix spv. 2017-01-20 19:20:42 -08:00
Christopher Jeffrey
08b41a2dc4
peer: throw on destroyed write. 2017-01-20 17:40:06 -08:00
Christopher Jeffrey
f0f9f798c5
pool: fix inv. do not hold lock for bip151 msgs. 2017-01-20 17:23:14 -08:00
Christopher Jeffrey
cdcdb7bd52
pool: add forceInv for getdata. 2017-01-20 17:09:00 -08:00
Christopher Jeffrey
d035eb10eb
pool: getblocks fix again. 2017-01-20 17:01:51 -08:00
Christopher Jeffrey
4a45290f36
pool: fix getblocks. 2017-01-20 16:58:14 -08:00
Christopher Jeffrey
0c055ba236
pool: minor. 2017-01-20 16:49:55 -08:00
Christopher Jeffrey
3fb2150dc4
pool: allow use of headersFirst without checkpoints. 2017-01-20 15:04:13 -08:00
Christopher Jeffrey
fe52210c5e
pool: fix block logs. 2017-01-20 13:44:20 -08:00
Christopher Jeffrey
18c4a83ed3
pool: refactor and add compact block mode 1 support. 2017-01-20 09:39:58 -08:00
Christopher Jeffrey
7543049180
pool: refactor packet handling. 2017-01-19 17:31:38 -08:00
Christopher Jeffrey
2d952306e6
net: refactor packet handling. 2017-01-19 15:32:18 -08:00
Christopher Jeffrey
8cd951c994
pool: fix verify error handling. 2017-01-19 06:29:45 -08:00
Christopher Jeffrey
0a756aba34
pool: refactor logging. 2017-01-19 05:05:56 -08:00
Christopher Jeffrey
72e4ddc2b0
net: cleanup after removal. 2017-01-19 04:45:17 -08:00
Christopher Jeffrey
b6593adf75
net: remove alert system. 2017-01-19 04:41:58 -08:00
Christopher Jeffrey
e407c08668
net: drop getutxos impl. 2017-01-19 04:39:25 -08:00
Christopher Jeffrey
66ec0ae36e
net: better headers first. 2017-01-19 04:35:12 -08:00
Christopher Jeffrey
9c352c5d2b
net: better locks. 2017-01-19 01:18:57 -08:00
Christopher Jeffrey
05353e0e1a
peer: do not flush merkle blocks early. 2017-01-18 21:59:46 -08:00
Christopher Jeffrey
2ee6cea969
net: better dos protection for merkleblocks. 2017-01-18 21:54:35 -08:00
Christopher Jeffrey
4cba97a0a8
wallet/net: ensure low FPR of bloom filters. see #118. 2017-01-18 20:53:01 -08:00
Christopher Jeffrey
cdad00944c
pool: minor. 2017-01-17 08:15:41 -08:00
Christopher Jeffrey
1e3cc80e2d
networks: update testnet slowHeight. 2017-01-16 19:31:59 -08:00
Christopher Jeffrey
e15ee2308d
bip152: fix size calculation. 2017-01-16 14:09:46 -08:00
Christopher Jeffrey
d840144f3e
hostlist/authdb: dns resolution refactor. 2017-01-16 12:44:02 -08:00
Christopher Jeffrey
120ceef984
peer: timeout bip150 and bip151 properly. 2017-01-16 11:43:45 -08:00
Christopher Jeffrey
f2d092f23c
net: add priority nodes. 2017-01-16 04:30:10 -08:00
Christopher Jeffrey
db49f44c8a
peer: refactor version packet handling. 2017-01-16 03:33:54 -08:00
Christopher Jeffrey
212a69697e
tcp: make server promise based. 2017-01-16 01:55:10 -08:00
Christopher Jeffrey
63b39cec56
pool: dns resolution for authdb. 2017-01-16 01:31:14 -08:00
Christopher Jeffrey
ded8097a03
dns: add lookup function. 2017-01-16 01:29:38 -08:00
Christopher Jeffrey
491462f551
bip150: add dns resolution. comments. 2017-01-15 23:46:19 -08:00
Christopher Jeffrey
1e9b7363c2
bip151: cleanup handshake properly. 2017-01-15 23:43:19 -08:00
Christopher Jeffrey
9affb11b22
bip152: comments. 2017-01-15 23:42:39 -08:00
Christopher Jeffrey
afb15787ad
peer: better error messages. 2017-01-15 18:03:31 -08:00
Christopher Jeffrey
fe0ea9ac76
pool: minor. 2017-01-15 17:57:17 -08:00
Christopher Jeffrey
6d1c918793
hostlist: refactor seed handling. 2017-01-15 13:03:57 -08:00
Christopher Jeffrey
fcae101c0f
bip151: extra assertions. refactor. 2017-01-14 23:19:46 -08:00
Christopher Jeffrey
c0031e062a
peer: minor. 2017-01-14 19:46:18 -08:00
Christopher Jeffrey
199699d73a
node: better option handling. 2017-01-14 19:35:59 -08:00
Christopher Jeffrey
a486bd3a18
refactor: options. 2017-01-14 17:59:54 -08:00
Christopher Jeffrey
9dbfaf3127
pool: rename ignoreDiscovery. 2017-01-14 09:11:07 -08:00
Christopher Jeffrey
f0e7aa9d82
net: handle server differently. 2017-01-14 07:54:07 -08:00
Christopher Jeffrey
e8cc724488
node/net: refactor node bootstrapping. 2017-01-14 07:21:16 -08:00
Christopher Jeffrey
80d01b52c3
net: avoid 0-len getdatas for blocks. 2017-01-14 06:53:51 -08:00
Christopher Jeffrey
fd2f158169
net: avoid requesting duplicate blocks. avoid reconnecting to banned peers. 2017-01-14 06:43:49 -08:00
Christopher Jeffrey
699e71d84a
net: send peer addr in version msg. 2017-01-13 16:45:05 -08:00
Christopher Jeffrey
b77b814be4
bip152: fix empty block filling. 2017-01-13 15:27:13 -08:00
Christopher Jeffrey
166fe0ad6e
chain: remove bestHeight tracking. 2017-01-13 12:50:50 -08:00
Christopher Jeffrey
7c021cf842
utils: rename locker to lock for consistency. 2017-01-11 21:20:26 -08:00
Christopher Jeffrey
65ab296d2e
bloom: cleanup instantiation. 2017-01-11 12:10:04 -08:00
Christopher Jeffrey
dbaae30700
net: only add timeouts for outbound peers. 2017-01-10 18:03:19 -08:00
Christopher Jeffrey
eabbfbf98b
net: fix getdata bug. 2017-01-10 16:12:42 -08:00
Christopher Jeffrey
c605638daf
pool: some request refactoring. 2017-01-10 16:10:55 -08:00
Christopher Jeffrey
d338f62078
protocol: constants changes. 2017-01-10 04:57:41 -08:00
Christopher Jeffrey
4c557744a2
refactor: address, amount, uri, errors. 2017-01-09 23:07:02 -08:00
Christopher Jeffrey
84fce9aad4
minor: some comments. 2017-01-09 15:20:56 -08:00
Christopher Jeffrey
cd4a0cc964
network: remove segnet3 support. 2017-01-08 22:38:41 -08:00
Christopher Jeffrey
c7ce8c778b
peer: some comments. do not kill on late pong. 2017-01-08 22:29:57 -08:00
Christopher Jeffrey
fb0b2b53d7
net: use Map object for requested items. 2017-01-07 00:19:40 -08:00
Christopher Jeffrey
d396cdd0fd
constants: minor. 2017-01-06 21:14:11 -08:00
Christopher Jeffrey
5caf6210b9
refactor: move constants around. 2017-01-06 09:57:55 -08:00
Christopher Jeffrey
d1a4e53896
bloom/net: move bloom constants. net services, move inv types. 2017-01-06 01:57:49 -08:00
Christopher Jeffrey
3da4542ecb
pool: remove failsafe. 2017-01-05 19:25:34 -08:00
Christopher Jeffrey
b3ccd8a105
pool: fix handle headers. 2017-01-05 14:37:37 -08:00
Christopher Jeffrey
8ca683f4f3
peer: add inv queue. 2017-01-05 14:35:29 -08:00
Christopher Jeffrey
5fb64e7bac
pool: refactor reject handling. 2017-01-05 14:35:29 -08:00
Christopher Jeffrey
94d4e80373
co: stop using co.wrap. 2017-01-05 14:35:29 -08:00
Christopher Jeffrey
cca763ca95
peer: avoid compactblock dos. 2017-01-05 14:35:28 -08:00
Christopher Jeffrey
cd8e464079
net: redesign stall behavior and block management. 2017-01-05 14:35:28 -08:00
Christopher Jeffrey
eb12b0e608
net: misc. 2017-01-05 14:35:28 -08:00
Christopher Jeffrey
f8fa536129
pool: fix startSync. 2016-12-31 03:21:36 -08:00
Christopher Jeffrey
da7640cd27
peer: minor. 2016-12-29 15:35:03 -08:00
Christopher Jeffrey
943c5d2d12
net: treat services as a u32. 2016-12-27 15:28:19 -08:00
Christopher Jeffrey
dd6bd8db4a
net: move hostlist. 2016-12-27 14:38:32 -08:00
Christopher Jeffrey
74dbff2377
net: add addrman serialization. 2016-12-27 14:29:46 -08:00
Christopher Jeffrey
3ada25564e
chain: refactor orphan list. 2016-12-24 22:32:45 -08:00
Christopher Jeffrey
f3bd64689d
peer: minor. 2016-12-24 13:10:14 -08:00
Christopher Jeffrey
6ea846ee9a
pool: minor. 2016-12-22 22:27:09 -08:00
Christopher Jeffrey
5a0632f449
pool: schedule txs like blocks. 2016-12-22 13:26:04 -08:00
Christopher Jeffrey
8b8a65868b
peer: fix getutxos handler. 2016-12-22 05:16:04 -08:00
Christopher Jeffrey
4f8e401dbc
peer: cleanup events after connect timeout. 2016-12-22 04:01:49 -08:00
Christopher Jeffrey
0eaa26a374
pool: minor. 2016-12-21 16:17:23 -08:00
Christopher Jeffrey
c10f689435
net: fix hosts.toArray (again). 2016-12-21 16:04:48 -08:00
Christopher Jeffrey
8ce823e31c
pool: minor. 2016-12-21 15:53:59 -08:00
Christopher Jeffrey
35fba9f3ae
pool: fix hostlist.toArray. 2016-12-21 15:49:46 -08:00
Christopher Jeffrey
1a4984d533
net: add hasServices method. 2016-12-21 15:31:55 -08:00
Christopher Jeffrey
14f2851929
pool: add ban and unban calls once again. 2016-12-21 15:13:01 -08:00
Christopher Jeffrey
cc4dd23c83
pool: fix potential infinite loop with addrman. 2016-12-21 15:05:41 -08:00
Christopher Jeffrey
24e6ed7a26
net: rewrite hostlist. bitcoind-style management. 2016-12-21 13:18:03 -08:00
Christopher Jeffrey
25101f1784
net: refactor host and peer list. 2016-12-20 15:45:12 -08:00
Christopher Jeffrey
127a52aaf1
refactor: rename network address. 2016-12-20 12:47:19 -08:00
Christopher Jeffrey
bd4bfa142f
pool: refactor dns discovery. 2016-12-19 16:58:02 -08:00
Christopher Jeffrey
cc2d49ea10
request: refactor mime types. 2016-12-19 16:50:32 -08:00
Christopher Jeffrey
b38d859382
pool: refactor dns discovery. 2016-12-19 07:32:42 -08:00
Christopher Jeffrey
291c7f72fe
pool: rediscover seeds when no hosts are available. 2016-12-19 07:11:09 -08:00
Christopher Jeffrey
3e3e4c84ba
network/pool: improve dns discovery. 2016-12-19 05:20:47 -08:00
Christopher Jeffrey
6617bd7d49
peer: lint. 2016-12-19 04:01:02 -08:00
Christopher Jeffrey
6d2659a31c
locker: revert to old drain behavior. 2016-12-19 03:58:34 -08:00
Christopher Jeffrey
1df11caf71
peer: lock fixes. dos fixes. 2016-12-18 22:14:50 -08:00
Christopher Jeffrey
3732260350
util: refactor locker. 2016-12-18 21:19:35 -08:00
Christopher Jeffrey
856957eee9
peer: fix witness checking for inbound. 2016-12-18 03:35:16 -08:00
Christopher Jeffrey
82d1345311
net: refactor inv type handling. 2016-12-18 01:44:04 -08:00
Christopher Jeffrey
514e735a96
net: refactor reject msg. broadcast orphans. 2016-12-17 14:08:43 -08:00
Christopher Jeffrey
9036ea263d
peer: less spammy logs. 2016-12-17 02:50:03 -08:00
Christopher Jeffrey
6a87a9588b
peer: refactor ack handling. 2016-12-17 02:10:28 -08:00
Christopher Jeffrey
dcfc19408f
node: minor fixes. 2016-12-17 00:18:28 -08:00
Christopher Jeffrey
1365d0ff1d
net: refactor peer.pending. 2016-12-16 22:48:16 -08:00
Christopher Jeffrey
edf47d67c8
primitives: refresh call. 2016-12-16 22:02:05 -08:00
Christopher Jeffrey
a23a5437a4
net: fix peer error handling. 2016-12-16 20:48:47 -08:00
Christopher Jeffrey
5683d708dd
browser: add dns resolution. 2016-12-16 18:05:04 -08:00
Christopher Jeffrey
2c2ad461af
net: add dns. 2016-12-16 17:18:55 -08:00
Christopher Jeffrey
af8194112e
net: refactor pool. 2016-12-16 17:18:20 -08:00
Christopher Jeffrey
8ccefb8e71
peer: refactor. 2016-12-16 15:08:59 -08:00
Christopher Jeffrey
4269d16fee
refactor: lint. 2016-12-16 14:49:35 -08:00
Christopher Jeffrey
7971e56765
peer: use list for request queue. 2016-12-16 14:40:30 -08:00
Christopher Jeffrey
463ebd9bd3
pool: misc refactor. 2016-12-16 13:53:05 -08:00
Christopher Jeffrey
761b6d6636
net: refactor host management. 2016-12-16 13:50:45 -08:00
Christopher Jeffrey
dc58c99ba2
net: refactor sending and announcing. 2016-12-16 04:10:02 -08:00
Christopher Jeffrey
69a9b5873f
net: use linked lists. 2016-12-16 03:18:08 -08:00
Christopher Jeffrey
ca9fc63309
net: minor. 2016-12-13 20:21:04 -08:00
Christopher Jeffrey
14c9a37cd9
packets: more serialization nonsense. 2016-12-13 02:58:49 -08:00
Christopher Jeffrey
dfefc7182f
serialization: more sizes. 2016-12-11 19:16:02 -08:00
Christopher Jeffrey
3b9e4d6c6e
refactor: use static writers everywhere. 2016-12-11 17:26:42 -08:00
Christopher Jeffrey
72d5eec710
block/bip152/merkleblock: refactor some block things. 2016-12-11 10:10:00 -08:00
Christopher Jeffrey
59645ac3ec
refactor: remove extra properties from tx and block. 2016-12-11 05:35:31 -08:00
Christopher Jeffrey
4e9bec4cd3
refactor: lint. 2016-12-07 17:52:53 -08:00
Christopher Jeffrey
136a48b4b4
pool: refactor requests. 2016-12-06 17:12:54 -08:00