Signatures using segregated witness commit to the amount being spent,
so that value must be passed into signrawtransactionwithkey and
signrawtransactionwithwallet. This ensures an error is issued if that
doesn't happen, rather than just assuming the value is 0 and producing
a signature that is almost certainly invalid.
Github-Pull: #13547
Rebased-From: a3b065b51fb333d976108a1fe34b7f663fd67285
Prior to this change, it would mark only the first layer of
child transactions abandoned, due to always following the input hashTx
rather than the current now tx.
Github-Pull: #13652
Rebased-From: 89e70f9d7fe384ef9de4fa3828d4c80523290186
Tree-SHA512: 403da0cc400a807e5a30038bd505881a68208c3f9e96ad5a7755e763666982bc3c19564ac13a5757612c8b6efc331fb2ad0edbaf7e830993b84bc64624423e54
Currently, error messages (such as InitError) are displayed as-is, which
means Qt does auto detection on the format.
This means that it's possible to inject HTML from the command line
though e.g. specifying a wallet name with HTML in it. This isn't
a direct security risk because fetching content from internet is
disabled (and as far as I know we never report strings received
from the network this way). However, it can be confusing.
So explicitly force the format as text.
Github-Pull: #12617
Rebased-From: 6fbc0986fa2d49a1cb65b60eca71c25c84842a54
#ifdef is not correct since defination is defined to 0 or 1. Should change to #if
Github-Pull: #12573
Rebased-From: 18307849b405f9e2067eaa8091b105838f413707
Larger values seem to trigger a bug on macos+libevent (resulting in the
rpc server stopping).
Github-Pull: #12905
Rebased-From: 662d19ff7217d0e6c7975ca311933f640955a53e
Log messages should terminate with a '\n', or the following log will be
written to the same line without a timestamp. Fix a couple of cases
where the message is not terminated with a \n.
Github-Pull: #12887
Rebased-From: 5b10ab0116245ee73b493e2248ad2f8bb8e34f21
I thought we had removed this a long time ago, TBH, its really
confusing feedback to users that we display whether a tx was
broadcast to immediate neighbor nodes, given that has little
indication of whether the tx propagated very far.
Github-Pull: #13622
Rebased-From: beef7ec4be725beea870a2da510d2817487601ec
A transaction with 1 segwit input and 1 P2WPHK output has non-witness size of 82 bytes. Anything smaller than this have unnecessary malloc overhead and are not relayed/mined.
Github-Pull: #11423
Rebased-From: 7485488e907e236133a016ba7064c89bf9ab6da3
Tests showing that CONST_SCRIPTCODE is applied only to non-segwit transactions
Github-Pull: #11423
Rebased-From: 0f8719bb035187076eeac025e2c786feb0f452d7
This disables OP_CODESEPARATOR in non-segwit scripts (even in an unexecuted branch), and makes a positive FindAndDelete result invalid. This ensures that the scriptCode serialized in SignatureHash() is always the same as the script passing to the EvalScript.
Github-Pull: #11423
Rebased-From: 9dabfe49c066301ef75bcfcb089fd308366127c4
After a recent bug discovered in callback ordering in MainSignals,
this test checks invariants in ordering of
BlockConnected / BlockDisconnected / UpdatedChainTip signals
Github-Pull: #13023
Rebased-From: dd435ad40267f5c50ff17533c696f9302829a6a6
If multiple threads are invoking ActivateBestChain, it was possible to have
them working towards different tips, and we could arrive at a less work tip
than we should. Fix this by introducing a ChainState lock which must
be held for the entire duration of ActivateBestChain to enforce
exclusion in ABC.
Github-Pull: #13023
Rebased-From: a3ae8e68739023e5dba9e5cb190e707ed4603316