diff options
author | fanquake <fanquake@gmail.com> | 2019-09-19 08:37:59 +0800 |
---|---|---|
committer | fanquake <fanquake@gmail.com> | 2019-09-19 08:51:30 +0800 |
commit | 9bf5768dd628b3a7c30dd42b5ed477a92c4d3540 (patch) | |
tree | def2c27db1839a801ee089425f73a3d507794726 | |
parent | 59c138d2f1497275725eb2b2c8749472f3e7a5ef (diff) | |
parent | c4b0c08f7c91bcef48dd023982ff132795575247 (diff) |
Merge #16885: doc: Update tx-size-small comment with relevant CVE disclosure
c4b0c08f7c91bcef48dd023982ff132795575247 Update tx-size-small comment with relevant CVE disclosure (Gregory Sanders)
Pull request description:
Code first introduced under https://github.com/bitcoin/bitcoin/pull/11423 with essentially no description and no discussion.
ACKs for top commit:
MarcoFalke:
ACK c4b0c08f7c91bcef48dd023982ff132795575247
fanquake:
ACK c4b0c08f7c91bcef48dd023982ff132795575247
Tree-SHA512: 95d5c92998b8b1e944c477dbaee265b62612b6e815099ab31d9ff580b4dff777abaf7f326a284644709f918aa1510412d62310689b1250ef6e64de7b19ca9f71
-rw-r--r-- | src/validation.cpp | 3 | ||||
-rw-r--r-- | test/functional/data/invalid_txs.py | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/src/validation.cpp b/src/validation.cpp index 9696b65ea7..39780e1c6d 100644 --- a/src/validation.cpp +++ b/src/validation.cpp @@ -574,7 +574,8 @@ bool MemPoolAccept::PreChecks(ATMPArgs& args, Workspace& ws) // Do not work on transactions that are too small. // A transaction with 1 segwit input and 1 P2WPHK output has non-witness size of 82 bytes. - // Transactions smaller than this are not relayed to reduce unnecessary malloc overhead. + // Transactions smaller than this are not relayed to mitigate CVE-2017-12842 by not relaying + // 64-byte transactions. if (::GetSerializeSize(tx, PROTOCOL_VERSION | SERIALIZE_TRANSACTION_NO_WITNESS) < MIN_STANDARD_TX_NONWITNESS_SIZE) return state.Invalid(ValidationInvalidReason::TX_NOT_STANDARD, false, REJECT_NONSTANDARD, "tx-size-small"); diff --git a/test/functional/data/invalid_txs.py b/test/functional/data/invalid_txs.py index 9dc06422c4..fd69bbd2c7 100644 --- a/test/functional/data/invalid_txs.py +++ b/test/functional/data/invalid_txs.py @@ -99,6 +99,8 @@ class InputMissing(BadTxTemplate): return tx +# The following check prevents exploit of lack of merkle +# tree depth commitment (CVE-2017-12842) class SizeTooSmall(BadTxTemplate): reject_reason = "tx-size-small" expect_disconnect = False |