MarcoFalke
26d768db6f
Use __func__ to get function name for output printing
2018-10-24 22:09:28 +03:00
Pieter Wuille
152011e50d
Use a signal to continue init after genesis activation
2018-10-24 22:06:59 +03:00
Wladimir J. van der Laan
81d9a0d657
net: Ignore notfound P2P messages
...
Github-Pull: #8427
Rebased-From: 5c9e49d12c931f9c7ddaac0144739dcd7263e554
2018-10-24 22:01:40 +03:00
rodasmith
a02e75a50f
fix op order to append first alert
...
Github-Pull: #8697
Rebased-From: 1d635ae61b26d1dd613c1cc1cac796627af2a31e
2018-10-24 22:01:09 +03:00
Gregory Maxwell
58d52ee75a
Do not add random inbound peers to addrman.
...
We should learn about new peers via address messages.
An inbound peer connecting to us tells us nothing about
its ability to accept incoming connections from us, so
we shouldn't assume that we can connect to it based on
this.
The vast majority of nodes on the network do not accept
incoming connections, adding them will only slow down
the process of making a successful connection in the
future.
Nodes which have configured themselves to not announce would prefer we
not violate their privacy by announcing them in GETADDR responses.
2018-10-24 22:00:45 +03:00
Pieter Wuille
fb9f18a268
Fix some locks
...
This makes sure that cs_filter is never held while taking cs_main
or CNode::cs_vSend.
2018-10-24 22:00:27 +03:00
Pieter Wuille
da944d430d
Check for compatibility with download in FindNextBlocksToDownload
2018-10-24 21:58:31 +03:00
Suhas Daftuar
a1cc8adc8d
Prevent fingerprinting, disk-DoS with compact blocks
...
- Ignore GETBLOCKTXN requests for unknown blocks
Don't disconnect peers, or else we leak information that could be
used for fingerprinting.
- Ignore CMPCTBLOCK messages for pruned blocks
Also ignores CMPCTBLOCK announcements that have too little work. This is to
prevent disk-exhaustion DoS.
Github-Pull: #8408
Rebased-From: 1de2a46632946990a7863020b61172232f8c5796 1d06e49834814eed45e07393dcffd7b6683311b2
2018-10-24 21:51:43 +03:00
lateminer
bddddba7f3
Fix DoS vulnerability in mempool acceptance
2018-10-24 21:50:53 +03:00
mrbandrews
2f077dc049
Tests: Rework blockstore to avoid re-serialization.
2018-10-24 21:44:26 +03:00
Jonas Schnelli
c8ab3c44ef
Log/report in 10% steps during VerifyDB
2018-10-24 21:39:41 +03:00
Kaz Wesley
ed20890e82
drop vAddrToSend after sending big addr message
...
We send a newly-accepted peer a 1000-entry addr message, and then only use
vAddrToSend for small messages. Deallocate vAddrToSend after it's been used for
the big message to save about 40 kB per connected inbound peer.
2018-10-24 21:39:30 +03:00
Kaz Wesley
1ed6d18a3c
IsInitialBlockDownload: usually avoid locking
...
Optimistically test the latch bool before taking the lock.
For all IsInitialBlockDownload calls after the first to return false,
this avoids the need to lock cs_main.
2018-10-24 21:38:43 +03:00
instagibbs
099dbe4bb9
comment nit: miners don't vote
2018-10-24 21:37:28 +03:00
mrbandrews
ee5df5c99f
Catch exceptions from non-canonical encoding and print only to log
2018-10-24 21:37:03 +03:00
Pavel Janík
a5a7b5ce44
Remove useless argument to AlertNotify.
2018-10-24 21:35:20 +03:00
Kaz Wesley
cf16a6e0d1
lock cs_main for chainActive
2018-10-24 21:31:26 +03:00
Kaz Wesley
7d7c806637
lock cs_main for State/Misbehaving
...
ProcessMessage calls State(...) and Misbehaving(...) without holding the
required lock; add LOCK(cs_main) blocks.
2018-10-24 21:27:36 +03:00
Alex Morcos
ee9e86ad0c
Avoid unnecessary database access for unknown transactions
2018-10-24 21:22:44 +03:00
lateminer
e8fe530012
Update ZeroMQ to 4.2.5
2018-10-24 21:09:21 +03:00
lateminer
039f574d86
Add missing nBytesPerSigOp declaration
...
policy/policy.cpp
2018-10-23 23:44:05 +03:00
lateminer
7e41e6974f
Remove redundant chainparams declaration
...
main.cpp
2018-10-23 23:30:04 +03:00
Pieter Wuille
1b70520ceb
Align constant names for maximum compact block / blocktxn depth
2018-10-23 23:24:58 +03:00
lateminer
1534febd08
Move DEFAULT_BYTES_PER_SIGOP to policy/policy.h
2018-10-23 23:11:23 +03:00
lateminer
9b55796d56
Reduce default number of blocks to check at startup
...
https://github.com/bitcoin/bitcoin/pull/8611
2018-10-23 23:01:33 +03:00
Gregory Maxwell
8a98c894d4
Increase maximum orphan size to 100,000 bytes.
...
Although this increases node memory usage in the worst case by perhaps
30MB, the current behavior causes severe issues with dependent tx relay.
2018-10-23 22:53:13 +03:00
Gregory Maxwell
e0505fced9
Treat orphans as implicit inv for parents, discard when parents rejected.
...
An orphan whos parents were rejected is never going to connect, so there
is little utility in keeping it.
Orphans also helpfully tell us what we're missing, so go ahead and treat
it as INVed.
2018-10-23 22:53:04 +03:00
Gregory Maxwell
654a62c131
Adds an expiration time for orphan tx.
...
This prevents higher order orphans and other junk from
holding positions in the orphan map. Parents delayed
twenty minutes are more are unlikely to ever arrive.
The freed space will improve the orphan matching success rate for
other transactions.
2018-10-23 22:52:51 +03:00
Pieter Wuille
10ae5af2c5
Track orphan by prev COutPoint rather than prev hash
2018-10-23 22:39:39 +03:00
instagibbs
61b8aea708
Rename ReconsiderBlock func to reflect real behavior
2018-10-23 22:24:41 +03:00
instagibbs
46038d59ea
Remove state arg from ReconsiderBlock
2018-10-23 22:24:01 +03:00
Jorge Timón
4a2d793f2a
Globals: Explicitly pass const CChainParams& to UpdateTip()
2018-10-23 22:22:50 +03:00
face
7e7f211dea
Pass CChainParams to DisconnectTip()
2018-10-23 22:22:19 +03:00
Patrick Strateman
c934f568b7
Always disconnect old nodes which request filtered connections.
2018-10-23 22:17:56 +03:00
Luke Dashjr
7828e48b69
Remove -enforcenodebloom
2018-10-23 22:15:45 +03:00
lateminer
afa46b1aef
Use nAbsurdFee instead of maxTxFee in AcceptToMemoryPoolWorker()
...
main.cpp
2018-10-23 22:09:14 +03:00
MarcoFalke
159b4c71e3
[doxygen] Actually display comment
2018-10-23 22:05:23 +03:00
lateminer
af95ba010d
Improve block validity/ConnectBlock() comments
...
https://github.com/bitcoin/bitcoin/pull/7444
2018-10-23 22:03:49 +03:00
lateminer
d7b72d14d8
Do not throw an error for proof-of-stake blocks in CreateNewBlock()
...
miner.cpp
2018-10-23 21:28:04 +03:00
lateminer
f085b9e0d7
Update .gitignore
2018-10-23 19:59:14 +03:00
lateminer
e7fe6aa451
Add ZeroMQ patches
2018-10-23 19:58:57 +03:00
Suhas Daftuar
a4361e1863
Add warning if -blockminsize is used.
2018-10-23 01:25:24 +03:00
Gregory Maxwell
87e790f776
Blacklist -whitelistalwaysrelay; replaced by -whitelistrelay.
2018-10-23 01:23:56 +03:00
MarcoFalke
1dc2c96818
[travis] Run contrib/devtools/check-doc.py early
2018-10-23 01:22:51 +03:00
MarcoFalke
32e5de8277
[travis] Fail when documentation is outdated
2018-10-23 01:20:12 +03:00
Suhas Daftuar
671c4b68cc
Remove -blockminsize option
2018-10-23 01:18:38 +03:00
lateminer
74cf4b83e5
Refactor CreateNewBlock to be a method of the BlockAssembler class
2018-10-23 01:15:28 +03:00
lateminer
635495ba38
Use CNetAddr() instead of "0.0.0.0"
...
net.cpp
2018-10-22 22:47:28 +03:00
lateminer
79085ea232
Add missing fMayBanPeerIfInvalid parameter in ProcessNewBlock() call
...
main.cpp
2018-10-22 22:37:05 +03:00
Alex Morcos
16047baaf6
Populate services in GetLocalAddress
2018-10-22 22:12:31 +03:00