0
0
Fork 0
mirror of https://github.com/bitcoin/bitcoin.git synced 2025-02-05 10:17:30 -05:00
bitcoin-bitcoin-core/src
Pieter Wuille 0b188b751f Clean up context dependent checks in descriptor parsing
This changes all context dependent checks in the parser to be
disjunctions of equality checks, rather than also including inequalities.
This makes sure that adding a new context enum in the future won't change
semantics for existing checks.

The error messages are also made a bit more consistent.
2021-03-29 17:44:13 -07:00
..
bench Merge #20861: BIP 350: Implement Bech32m and use it for v1+ segwit addresses 2021-03-18 20:37:21 +01:00
compat compat: remove memcpy -> memmove backwards compatibility alias 2021-03-10 14:31:10 +08:00
config
consensus scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
crc32c build: Update crc32c subtree 2020-12-08 19:26:30 +01:00
crypto refactor: Improve encapsulation between MuHash3072 and Num3072 2021-01-24 16:28:27 +01:00
index scripted-diff: remove MakeUnique<T>() 2021-03-11 13:45:14 +08:00
interfaces refactor: post Optional<> removal cleanups 2021-03-17 14:56:20 +08:00
leveldb
logging Remove use of non-standard zero variadic macros 2020-04-30 18:02:04 +08:00
node Merge #21390: test: Test improvements for UTXO set hash tests 2021-03-26 08:52:59 +01:00
policy refactor: Use C++17 std::array deduction for ALL_FEE_ESTIMATE_HORIZONS 2021-01-03 18:38:31 +01:00
primitives scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
qt Merge #21531: test: remove qt byteswap compattests 2021-03-29 11:52:58 +02:00
rpc Merge #20286: rpc: deprecate addresses and reqSigs from rpc outputs 2021-03-29 15:14:31 +02:00
script Clean up context dependent checks in descriptor parsing 2021-03-29 17:44:13 -07:00
secp256k1 Update secp256k1 subtree to latest master 2020-10-27 23:08:48 -07:00
support Merge #20464: refactor: Treat CDataStream bytes as uint8_t 2021-02-01 15:17:28 +01:00
test Clean up context dependent checks in descriptor parsing 2021-03-29 17:44:13 -07:00
univalue Update univalue subtree 2020-11-19 15:48:24 +01:00
util Merge #21317: util: Make Assume() usable as unary expression 2021-03-22 08:35:21 +01:00
wallet Merge #20286: rpc: deprecate addresses and reqSigs from rpc outputs 2021-03-29 15:14:31 +02:00
zmq scripted-diff: remove MakeUnique<T>() 2021-03-11 13:45:14 +08:00
.clang-format [tools] Allow argument/parameter bin packing in clang-format 2021-02-18 10:07:37 +00:00
addrdb.cpp log: Clarify log message when file does not exist 2021-02-18 15:08:35 +01:00
addrdb.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
addrman.cpp refactor: remove boost::thread_group usage 2021-01-29 15:39:44 +08:00
addrman.h [addrman] Don't repeat "Bucketing method was updated" log multiple times 2021-01-29 12:39:55 +00:00
amount.h
arith_uint256.cpp
arith_uint256.h
attributes.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
banman.cpp log: Clarify log message when file does not exist 2021-02-18 15:08:35 +01:00
banman.h Clean up separated ban/discourage interface 2020-07-03 20:43:55 -07:00
base58.cpp refactor: replace sizeof(a)/sizeof(a[0]) by std::size (C++17) 2021-01-31 17:35:16 +01:00
base58.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
bech32.cpp naming nits 2021-03-17 17:59:22 -07:00
bech32.h naming nits 2021-03-17 17:59:22 -07:00
bitcoin-cli-res.rc Drop the leading 0 from the version number 2020-11-18 12:00:57 -05:00
bitcoin-cli.cpp Merge #18335: bitcoin-cli: print useful error if bitcoind rpc work queue exceeded 2021-03-19 20:52:16 +01:00
bitcoin-tx-res.rc Drop the leading 0 from the version number 2020-11-18 12:00:57 -05:00
bitcoin-tx.cpp rpc: deprecate addresses and reqSigs from rpc outputs 2021-03-23 10:51:43 -04:00
bitcoin-util-res.rc Add bitcoin-util command line utility 2021-01-12 18:34:25 +10:00
bitcoin-util.cpp Merge #20938: build: fix linking against -latomic when building for riscv 2021-01-18 18:33:24 +01:00
bitcoin-wallet-res.rc Drop the leading 0 from the version number 2020-11-18 12:00:57 -05:00
bitcoin-wallet.cpp util: Add ArgsManager::GetCommand() and use it in bitcoin-wallet 2021-01-21 19:31:28 +01:00
bitcoind-res.rc Drop the leading 0 from the version number 2020-11-18 12:00:57 -05:00
bitcoind.cpp refactor: post Optional<> removal cleanups 2021-03-17 14:56:20 +08:00
blockencodings.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
blockencodings.h Get rid of -Wthread-safety-precise warnings 2020-05-28 09:55:39 +03:00
blockfilter.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
blockfilter.h [indexes] Fix default [de]serialization of BlockFilter. 2020-05-26 17:27:15 -04:00
bloom.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
bloom.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
chain.cpp
chain.h simplify ChainstateManager::SnapshotBlockhash() return semantics 2021-02-12 07:53:29 -06:00
chainparams.cpp Merge #15946: Allow maintaining the blockfilterindex when using prune 2021-02-18 09:40:42 +01:00
chainparams.h p2p, refactor: pass and use uint16_t CService::port as uint16_t 2021-03-16 19:52:31 +01:00
chainparamsbase.cpp scripted-diff: remove MakeUnique<T>() 2021-03-11 13:45:14 +08:00
chainparamsbase.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
chainparamsseeds.h net: Hardcoded seeds update for 0.21 2020-10-25 14:25:00 +01:00
checkqueue.h refactor: Drop boost::thread stuff in CCheckQueue 2020-09-24 06:55:34 +03:00
clientversion.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
clientversion.h refactor: Move STRINGIZE macro to macros.h 2021-02-01 22:30:05 +02:00
coins.cpp simplify ChainstateManager::SnapshotBlockhash() return semantics 2021-02-12 07:53:29 -06:00
coins.h Merge #18030: doc: Coin::IsSpent() can also mean never existed 2021-03-23 11:11:02 +01:00
compat.h net: extend Sock with methods for robust send & read until terminator 2021-03-01 17:36:16 +01:00
compressor.cpp
compressor.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
core_io.h rpc: deprecate addresses and reqSigs from rpc outputs 2021-03-23 10:51:43 -04:00
core_memusage.h
core_read.cpp doc: fix various typos 2021-01-04 12:31:31 +08:00
core_write.cpp rpc: deprecate addresses and reqSigs from rpc outputs 2021-03-23 10:51:43 -04:00
cuckoocache.h doc: Use https URLs where possible 2021-01-04 12:23:16 +08:00
dbwrapper.cpp
dbwrapper.h Merge #20464: refactor: Treat CDataStream bytes as uint8_t 2021-02-01 15:17:28 +01:00
dummywallet.cpp wallet: add -signer argument for external signer command 2021-02-23 14:34:30 +01:00
flatfile.cpp log: Move "Pre-allocating up to position 0x[...] in [...].dat" log message to debug category 2021-02-10 20:46:25 +00:00
flatfile.h Merge #18317: Serialization improvements step 6 (all except wallet/gui) 2020-05-20 07:30:29 -04:00
fs.cpp Replace fs::absolute calls with AbsPathJoin calls 2021-01-15 22:48:15 +01:00
fs.h Replace fs::absolute calls with AbsPathJoin calls 2021-01-15 22:48:15 +01:00
hash.cpp doc: Use https URLs where possible 2021-01-04 12:23:16 +08:00
hash.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
httprpc.cpp scripted-diff: remove MakeUnique<T>() 2021-03-11 13:45:14 +08:00
httprpc.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
httpserver.cpp Merge #18335: bitcoin-cli: print useful error if bitcoind rpc work queue exceeded 2021-03-19 20:52:16 +01:00
httpserver.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
i2p.cpp i2p: limit the size of incoming messages 2021-03-16 11:00:57 +01:00
i2p.h i2p: limit the size of incoming messages 2021-03-16 11:00:57 +01:00
indirectmap.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
init.cpp remove unnecessary newline from initWarning() argument 2021-03-24 04:31:48 -06:00
init.h bitcoind: Add -daemonwait option to wait for initialization 2021-03-04 18:24:00 +01:00
key.cpp doc: Use https URLs where possible 2021-01-04 12:23:16 +08:00
key.h
key_io.cpp Use Bech32m encoding for v1+ segwit addresses 2021-03-16 10:48:36 -07:00
key_io.h Better error messages for invalid addresses 2021-01-24 02:44:53 +01:00
logging.cpp net: implement the necessary parts of the I2P SAM protocol 2021-03-01 18:19:37 +01:00
logging.h net: implement the necessary parts of the I2P SAM protocol 2021-03-01 18:19:37 +01:00
Makefile.am Merge #21415: refactor: remove Optional & nullopt 2021-03-17 12:17:33 +01:00
Makefile.bench.include net: Add libnatpmp support 2021-01-07 18:07:09 +02:00
Makefile.crc32c.include build: Update crc32c subtree 2020-12-08 19:26:30 +01:00
Makefile.leveldb.include build: Enable -Wsuggest-override 2020-05-12 18:03:39 +03:00
Makefile.qt.include Qt: add Android packaging support 2021-03-21 22:33:27 +01:00
Makefile.qt_locale.include qt: Pre-splitoff translations update 2020-10-27 19:40:44 +01:00
Makefile.qttest.include test: remove qt byteswap compattests 2021-03-29 11:12:26 +08:00
Makefile.test.include Merge #21142: fuzz: Add tx_pool fuzz target 2021-03-23 09:59:40 +01:00
Makefile.test_fuzz.include build: compile libnatpmp with -DNATPMP_STATICLIB on Windows 2021-03-04 12:34:46 +08:00
Makefile.test_util.include build: compile libnatpmp with -DNATPMP_STATICLIB on Windows 2021-03-04 12:34:46 +08:00
mapport.cpp net: Add -natpmp command line option 2021-01-07 18:07:09 +02:00
mapport.h net: Add -natpmp command line option 2021-01-07 18:07:09 +02:00
memusage.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
merkleblock.cpp doc: fix various typos 2021-01-04 12:31:31 +08:00
merkleblock.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
miner.cpp refactor: post Optional<> removal cleanups 2021-03-17 14:56:20 +08:00
miner.h refactor: post Optional<> removal cleanups 2021-03-17 14:56:20 +08:00
net.cpp Merge #21328: net, refactor: pass uint16 CService::port as uint16 2021-03-19 20:47:10 +01:00
net.h Merge #21328: net, refactor: pass uint16 CService::port as uint16 2021-03-19 20:47:10 +01:00
net_permissions.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
net_permissions.h Reduce MAX_PEER_TX_ANNOUNCEMENTS for non-PF_RELAY peers 2020-10-12 12:14:53 -07:00
net_processing.cpp p2p: Don't send FEEFILTER in blocksonly mode 2021-03-23 18:57:59 +01:00
net_processing.h Merge #21162: Net Processing: Move RelayTransaction() into PeerManager 2021-03-18 14:57:50 +08:00
net_types.h
netaddress.cpp net: add I2P to the reachability map 2021-03-01 18:19:46 +01:00
netaddress.h net: extend CNetAddr::SetSpecial() to support I2P 2021-03-01 13:22:11 +01:00
netbase.cpp p2p, refactor: pass and use uint16_t CService::port as uint16_t 2021-03-16 19:52:31 +01:00
netbase.h p2p, refactor: pass and use uint16_t CService::port as uint16_t 2021-03-16 19:52:31 +01:00
netmessagemaker.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
noui.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
noui.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
outputtype.cpp refactor: Use C++17 std::array deduction for OUTPUT_TYPES 2021-01-03 18:37:59 +01:00
outputtype.h refactor: Use C++17 std::array deduction for OUTPUT_TYPES 2021-01-03 18:37:59 +01:00
pow.cpp
pow.h
prevector.h prevector: Avoid unnamed struct, which is a GNU extension 2020-04-30 18:02:03 +08:00
protocol.cpp refactor: init vectors via std::{begin,end} to avoid pointer arithmetic 2021-01-31 17:35:01 +01:00
protocol.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
psbt.cpp Merge #20464: refactor: Treat CDataStream bytes as uint8_t 2021-02-01 15:17:28 +01:00
psbt.h refactor: post Optional<> removal cleanups 2021-03-17 14:56:20 +08:00
pubkey.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
pubkey.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
random.cpp refactor: replace sizeof(a)/sizeof(a[0]) by std::size (C++17) 2021-01-31 17:35:16 +01:00
random.h Add templated GetRandomDuration<> 2020-04-30 09:19:14 -04:00
randomenv.cpp util: Allow use of C++14 chrono literals 2020-12-08 16:47:36 +01:00
randomenv.h
rest.cpp Merge #20429: refactor: replace (sizeof(a)/sizeof(a[0])) with C++17 std::size 2021-02-18 07:53:37 +01:00
reverse_iterator.h
scheduler.cpp Add include for std::bind. 2021-01-13 02:05:00 +01:00
scheduler.h refactor: remove boost::thread_group usage 2021-01-29 15:39:44 +08:00
serialize.h Support bypassing range check in ReadCompactSize 2020-10-09 10:32:19 +02:00
shutdown.cpp shutdown: Use RAII TokenPipe in shutdown 2021-03-04 18:24:00 +01:00
shutdown.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
signet.cpp scripted-diff: remove Optional & nullopt 2021-03-15 10:41:30 +08:00
signet.h scripted-diff: remove Optional & nullopt 2021-03-15 10:41:30 +08:00
span.h Merge #19387: span: update constructors to match c++20 draft spec and add lifetimebound attribute 2020-11-25 15:18:33 +01:00
streams.h Merge #20464: refactor: Treat CDataStream bytes as uint8_t 2021-02-01 15:17:28 +01:00
sync.cpp refactor: remove straggling boost::mutex usage 2021-01-26 15:57:28 +08:00
sync.h Merge #20495: sync: Use decltype(auto) return type for WITH_LOCK 2021-01-12 15:56:19 +08:00
threadinterrupt.cpp
threadinterrupt.h
threadsafety.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
timedata.cpp Avoid the use of abs64 in timedata 2020-10-12 19:50:16 -07:00
timedata.h
tinyformat.h refactor: Improve use of explicit keyword 2020-12-01 18:36:39 +01:00
torcontrol.cpp torcontrol: Move TorControlReply, TorControlConnection and TorController to improve testability 2021-03-02 12:21:32 +00:00
torcontrol.h tests: Add fuzzing harness for TorController 2021-03-02 12:21:32 +00:00
txdb.cpp scripted-diff: remove MakeUnique<T>() 2021-03-11 13:45:14 +08:00
txdb.h txdb: add CCoinsViewDB::ChangeCacheSize 2020-07-01 14:44:24 -04:00
txmempool.cpp refactor: return std::nullopt instead of {} 2021-03-22 11:22:06 +08:00
txmempool.h fuzz: Add tx_pool fuzz targets 2021-03-18 18:43:52 +01:00
txorphanage.cpp scripted-diff: Update txorphanage naming convention 2021-02-27 01:08:09 +10:00
txorphanage.h txorphanage: comment improvements 2021-03-02 19:40:11 +10:00
txrequest.cpp scripted-diff: remove MakeUnique<T>() 2021-03-11 13:45:14 +08:00
txrequest.h Report and verify expirations 2020-10-12 12:14:53 -07:00
uint256.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
uint256.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
undo.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
validation.cpp refactor: return std::nullopt instead of {} 2021-03-22 11:22:06 +08:00
validation.h Merge #21415: refactor: remove Optional & nullopt 2021-03-17 12:17:33 +01:00
validationinterface.cpp Add 'sequence' zmq publisher to track all block (dis)connects, mempool deltas 2020-09-22 11:34:30 -04:00
validationinterface.h Add 'sequence' zmq publisher to track all block (dis)connects, mempool deltas 2020-09-22 11:34:30 -04:00
version.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
versionbits.cpp
versionbits.h validation: Remove global ::VersionBitsTip{State,SinceHeight,Statistics} 2021-03-01 17:56:07 -05:00
versionbitsinfo.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
versionbitsinfo.h
walletinitinterface.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
warnings.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
warnings.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00