elements/src
Wladimir J. van der Laan adea5e1b54
Merge #18023: Fix some asmap issues
c86bc14408 Make asmap Interpret tolerant of malicious map data (Pieter Wuille)
38c2395d7a Use ASNs for mapped IPv4 addresses correctly (Pieter Wuille)
6f8c937312 Mark asmap const in statistics code (Pieter Wuille)
d58bcdc4b5 Avoid asmap copies in initialization (Pieter Wuille)

Pull request description:

  Here are a few things to improve in the asmap implementation. The first two commits are just code improvements. The last one is a bugfix (the exsting code wouldn't correctly apply ASN lookups to mapped/embedded IPv4 addresses).

ACKs for top commit:
  practicalswift:
    ACK c86bc14408 -- patch looks correct
  naumenkogs:
    utACK c86bc14
  laanwj:
    ACK c86bc14408
  jonatack:
    ACK c86bc14408 code looks correct, built/ran tests, bitcoind with -asmap pointed to asmap/demo.map

Tree-SHA512: 1036f43152754d621bfbecfd3b7c7276e4670598fcaed42a3d275e51fa2cf3653e2c9e9cfa714f6c7719362541510e92171e076ac4169b55a0cc8908b2d514c0
2020-02-05 13:59:42 +01:00
..
bench Merge #17261: Make ScriptPubKeyMan an actual interface and the wallet to have multiple 2020-01-30 17:21:21 +13:00
compat scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
config
consensus scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
crypto Merge #17691: doc: Add missed copyright headers 2020-01-16 15:58:35 -05:00
index scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
interfaces Refactor: Replace SigningProvider pointers with unique_ptrs 2020-01-23 16:35:08 -05:00
leveldb
logging scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
node Merge #17156: psbt: check that various indexes and amounts are within bounds 2020-01-29 19:39:50 +08:00
policy scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
primitives scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
qt gui: Drop PeerTableModel dependency to ClientModel 2020-02-03 14:48:40 +00:00
rpc Merge #16702: p2p: supplying and using asmap to improve IP bucketing in addrman 2020-01-29 13:55:43 +01:00
script Merge #17261: Make ScriptPubKeyMan an actual interface and the wallet to have multiple 2020-01-30 17:21:21 +13:00
secp256k1
support scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
test Merge #18029: tests: Add fuzzing harness for AS-mapping (asmap) 2020-02-05 11:40:22 +01:00
univalue Update univalue subtree 2019-10-30 16:24:02 -04:00
util Merge #18023: Fix some asmap issues 2020-02-05 13:59:42 +01:00
wallet Merge #17585: rpc: deprecate getaddressinfo label 2020-02-02 21:35:46 +13:00
zmq scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
.clang-format util: Add AllowShortCaseLabelsOnASingleLine option 2019-10-14 13:24:54 +03:00
addrdb.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
addrdb.h Convert addrdb/addrman to new serialization 2020-01-02 11:05:36 -08:00
addrman.cpp Merge #16702: p2p: supplying and using asmap to improve IP bucketing in addrman 2020-01-29 13:55:43 +01:00
addrman.h Merge #16702: p2p: supplying and using asmap to improve IP bucketing in addrman 2020-01-29 13:55:43 +01:00
amount.h
arith_uint256.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
arith_uint256.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
attributes.h
banman.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
banman.h scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
base58.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
base58.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
bech32.cpp Add some general std::vector utility functions 2019-10-16 08:56:57 -07:00
bech32.h Assert that the HRP is lowercase in Bech32::Encode 2019-09-05 13:25:11 +12:00
bitcoin-cli-res.rc
bitcoin-cli.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
bitcoin-tx-res.rc
bitcoin-tx.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
bitcoin-wallet-res.rc
bitcoin-wallet.cpp bitcoin-wallet: Use PACKAGE_NAME in usage help 2020-01-14 18:19:00 +00:00
bitcoind-res.rc
bitcoind.cpp Merge #16839: Replace Connman and BanMan globals with NodeContext local 2019-10-30 12:35:41 +01:00
blockencodings.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
blockencodings.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
blockfilter.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
blockfilter.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
bloom.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
bloom.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
chain.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
chain.h Convert chain to new serialization 2020-01-13 08:24:44 -08:00
chainparams.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
chainparams.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
chainparamsbase.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
chainparamsbase.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
chainparamsseeds.h contrib: Remove invalid nodes from seeds list 2019-10-02 08:51:12 +02:00
checkqueue.h refactor: Remove redundant conditional 2020-01-21 14:07:42 +00:00
clientversion.cpp
clientversion.h
coins.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
coins.h Convert compression.h to new serialization framework 2020-01-21 20:29:11 -08:00
compat.h
compressor.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
compressor.h Convert compression.h to new serialization framework 2020-01-21 20:29:11 -08:00
core_io.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
core_memusage.h
core_read.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
core_write.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
cuckoocache.h Use correct C++11 header for std::swap() 2019-11-29 21:23:25 +02:00
dbwrapper.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
dbwrapper.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
dummywallet.cpp scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
flatfile.cpp
flatfile.h
fs.cpp scripted-diff: Add missed copyright headers 2020-01-04 20:18:28 +02:00
fs.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
hash.cpp
hash.h
httprpc.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
httprpc.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
httpserver.cpp net: Avoid using C-style NUL-terminated strings as arguments in the netbase interface 2020-01-08 12:35:59 +00:00
httpserver.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
indirectmap.h
init.cpp Merge #18023: Fix some asmap issues 2020-02-05 13:59:42 +01:00
init.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
key.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
key.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
key_io.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
key_io.h
limitedmap.h
logging.cpp scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
logging.h scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
Makefile.am Merge #16702: p2p: supplying and using asmap to improve IP bucketing in addrman 2020-01-29 13:55:43 +01:00
Makefile.bench.include [test] move wallet helper functions into test library 2019-11-25 16:40:09 +01:00
Makefile.leveldb.include
Makefile.qt.include Merge #17513: refactor, qt: Nuke some circular dependencies 2019-11-21 19:38:39 +01:00
Makefile.qt_locale.include Restore English translation option 2020-01-06 22:58:47 -05:00
Makefile.qttest.include build: Create test utility library from src/test/util/ 2019-11-21 21:13:08 +01:00
Makefile.test.include tests: Add fuzzing harness for AS-mapping (asmap) 2020-01-30 16:04:38 +00:00
Makefile.test_util.include [test] move wallet helper functions into test library 2019-11-25 16:40:09 +01:00
memusage.h
merkleblock.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
merkleblock.h
miner.cpp rpc: Remove mempool global from miner 2019-12-23 06:12:10 +07:00
miner.h rpc: Remove mempool global from miner 2019-12-23 06:12:10 +07:00
net.cpp Mark asmap const in statistics code 2020-01-31 14:51:37 -08:00
net.h Mark asmap const in statistics code 2020-01-31 14:51:37 -08:00
net_permissions.cpp net: Avoid using C-style NUL-terminated strings as arguments in the netbase interface 2020-01-08 12:35:59 +00:00
net_permissions.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
net_processing.cpp net: reference instead of copy in BlockConnected range loop 2020-02-02 10:27:47 +01:00
net_processing.h Use rolling bloom filter of recent block tx's for AlreadyHave() check 2020-01-29 09:37:21 -05:00
net_types.h refactor: Remove addrdb.h dependency from node.h 2019-10-29 11:30:12 +02:00
netaddress.cpp Use ASNs for mapped IPv4 addresses correctly 2020-01-31 14:51:37 -08:00
netaddress.h Merge #18023: Fix some asmap issues 2020-02-05 13:59:42 +01:00
netbase.cpp Merge #17754: net: Don't allow resolving of std::string with embedded NUL characters. Add tests. 2020-01-22 20:20:45 +01:00
netbase.h net: Avoid using C-style NUL-terminated strings as arguments in the netbase interface 2020-01-08 12:35:59 +00:00
netmessagemaker.h
noui.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
noui.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
optional.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
outputtype.cpp Store p2sh scripts in AddAndGetDestinationForScript 2020-01-23 16:35:08 -05:00
outputtype.h List output types in an array in order to be iterated over 2020-01-23 16:35:06 -05:00
pow.cpp
pow.h
prevector.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
protocol.cpp p2p: Remove BIP61 reject messages 2019-10-02 10:39:14 -04:00
protocol.h Merge #17474: Bugfix: GUI: Recognise NETWORK_LIMITED in formatServicesStr 2019-12-11 17:00:27 -05:00
psbt.cpp Merge #17156: psbt: check that various indexes and amounts are within bounds 2020-01-29 19:39:50 +08:00
psbt.h Fix doxygen errors 2020-01-16 18:25:11 -08:00
pubkey.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
pubkey.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
random.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
random.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
randomenv.cpp Put bounds on the number of CPUID leaves explored 2019-11-20 10:54:08 -08:00
randomenv.h [MOVEONLY] Move perfmon data gathering to new randomenv module 2019-11-12 14:50:44 -08:00
rest.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
reverse_iterator.h
reverselock.h
scheduler.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
scheduler.h scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
serialize.h Add FORMATTER_METHODS, similar to SERIALIZE_METHODS, but for formatters 2020-01-18 07:43:22 -08:00
shutdown.cpp
shutdown.h
span.h
streams.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
sync.cpp scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
sync.h scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
threadinterrupt.cpp
threadinterrupt.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
threadsafety.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
timedata.cpp scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
timedata.h
tinyformat.h util: Update tinyformat to upstream 2019-12-06 10:02:08 +01:00
torcontrol.cpp net: Avoid using C-style NUL-terminated strings as arguments in the netbase interface 2020-01-08 12:35:59 +00:00
torcontrol.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
txdb.cpp Convert compression.h to new serialization framework 2020-01-21 20:29:11 -08:00
txdb.h scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
txmempool.cpp Make UpdateTransactionsFromBlock use Epochs 2020-01-14 19:30:13 -08:00
txmempool.h Merge #17925: Improve UpdateTransactionsFromBlock with Epochs 2020-02-03 11:54:34 +01:00
ui_interface.cpp scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
ui_interface.h scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
uint256.cpp refactor: define a UINT256_ONE global constant 2020-01-23 16:35:08 -05:00
uint256.h refactor: define a UINT256_ONE global constant 2020-01-23 16:35:08 -05:00
undo.h Convert compression.h to new serialization framework 2020-01-21 20:29:11 -08:00
validation.cpp Merge #16974: Walk pindexBestHeader back to ChainActive().Tip() if it is invalid 2020-02-03 12:28:38 +01:00
validation.h scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
validationinterface.cpp scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
validationinterface.h scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
version.h
versionbits.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
versionbits.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
versionbitsinfo.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
versionbitsinfo.h
walletinitinterface.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
warnings.cpp scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
warnings.h scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00