diff options
| author | Suhas Daftuar <[email protected]> | 2020-02-07 04:30:41 -0500 |
|---|---|---|
| committer | Suhas Daftuar <[email protected]> | 2020-07-19 02:10:42 -0400 |
| commit | 4eb515574e1012bc8ea5dafc3042dcdf4c766f26 (patch) | |
| tree | 831030efbac957e854bc017702ab50890025a79c /src/validationinterface.cpp | |
| parent | Delay getdata requests from peers using txid-based relay (diff) | |
| download | discoin-4eb515574e1012bc8ea5dafc3042dcdf4c766f26.tar.xz discoin-4eb515574e1012bc8ea5dafc3042dcdf4c766f26.zip | |
Make TX_WITNESS_STRIPPED its own rejection reason
Previously, TX_WITNESS_MUTATED could be returned during transaction validation
for either transactions that had a witness that was non-standard, or for
transactions that had no witness but were invalid due to segwit validation
rules.
However, for txid/wtxid-relay considerations, net_processing distinguishes the
witness stripped case separately, because it affects whether a wtxid should be
able to be added to the reject filter. It is safe to add the wtxid of a
witness-mutated transaction to the filter (as that wtxid shouldn't collide with
the txid, and hence it wouldn't interfere with transaction relay from
txid-relay peers), but it is not safe to add the wtxid (== txid) of a
witness-stripped transaction to the filter, because that would interfere with
relay of another transaction with the same txid (but different wtxid) when
relaying from txid-relay peers.
Also updates the comment explaining this logic, and explaining that we can get
rid of this complexity once there's a sufficient deployment of wtxid-relaying
peers on the network.
Diffstat (limited to 'src/validationinterface.cpp')
0 files changed, 0 insertions, 0 deletions