Age | Commit message (Collapse) | Author |
|
2e36866 Show nodeid instead of addresses (for anonymity) unless otherwise requested. (R E Broadley)
|
|
0da6b3f Remove signal DoubleSpendDetected, use function (Tom Harding)
88dd359 Check signatures before respend relay (Tom Harding)
|
|
|
|
|
|
|
|
Require at least 11 samples before giving fee/priority estimates.
And have wallet-created transactions go throught the fee-sanity-check
code path.
|
|
The wallet now uses the mempool fee estimator with a new
command-line option: -txconfirmtarget (default: 1) instead
of using hard-coded fees or priorities.
A new bitcoind that hasn't seen enough transactions to estimate
will fall back to the old hard-coded minimum priority or
transaction fee.
-paytxfee option overrides -txconfirmtarget.
Relaying and mining code isn't changed.
For Qt, the coin control dialog now uses priority estimates to
label transaction priority (instead of hard-coded constants);
unspent outputs were consistently labeled with a much higher
priority than is justified by the free transactions actually
being accepted into blocks.
I did not implement any GUI for setting -txconfirmtarget; I would
suggest getting rid of the "Pay transaction fee" GUI and replace
it with either "target number of confirmations" or maybe
a "faster confirmation <--> lower fee" slider or select box.
|
|
8969828 [Qt] New status bar Unit Display Control and related changes. (gubatron)
|
|
Also add to HelpMessage() what specifications are valid.
|
|
Also removes the need for forward reference to RelayableRespend.
|
|
fallback'
Passes tests:
```
$ ./bitcoin-qt 'bitcoin:?r=http://www.example.com/'
.. fixed the original problem - this launches mainnet.
$ ./bitcoin-qt 'bitcoin:mngeNQbTKnmaMbx8EXCYdwUbnt9JJD52cC'
.. launches testnet
$ ./bitcoin-qt -testnet 'bitcoin:1NXXeQRyMFFFRfyUix2o7mk1vhvk2Nxp78'
.. sanity check - launches mainnet.
```
Fixes #4355. Closes #4411.
|
|
fda3fed libsecp256k1 integration (Pieter Wuille)
5566826 secp256k1: Add build-side changes for libsecp256k1 (Cory Fields)
b150b09 secp256k1: add libtool as a dependency (Cory Fields)
|
|
Sorry, my own fault this time.
|
|
Check that all inputs are completely valid before actually
relaying a double-spend.
|
|
|
|
Note: This is added to our existing automake targets rather than as a
libtool-style lib. The switch to libtool-style targets can come later if it
proves to not add any complications.
|
|
By changing the logging stream for warnings from qDebug to qWarning,
these will always be logged to debug.log.
|
|
More important messages should end up in the log no matter
if -debug=qt is set.
|
|
4aaa017 rework help messages for fee-related options (Philip Kaufmann)
|
|
This makes it possible to switch to a more efficient map type
without changing all occurences manually.
Merges half of #4413.
|
|
- also make comment about rc-files in clientversion.h generic
Merges #4429.
|
|
5d59921 add missing BOOST_FOREACH indentation in ThreadSocketHandler() (Philip Kaufmann)
9e9ca2b small cleanup of #ifdefs in BindListenPort() (Philip Kaufmann)
|
|
|
|
e35b37b RPC client: Simplify command line string-to-JSON-value conversion code (Jeff Garzik)
|
|
Merging #3883 broke the Qt5 build, define the color in the standard
way.
|
|
Relay and alert user to double spends
|
|
Add a skiplist to the CBlockIndex structure.
|
|
de79aaa Move non-trivial uint256.h methods to uint256.cpp (Pieter Wuille)
|
|
|
|
This allows fast (O(log n)) access to far predecessor blocks.
Use it to speed up CChain::FindFork and CChain::GetLocator.
|
|
|
|
After pull #4288, RPC messages indicating errors have a Content-Length unrelated
to their actual contents, rendering bitcoin-cli and curl unable to decode the
reply.
This patch sets the Content-Length field based on the actual content returned.
Additionally, pull #4288 clobbered the error descriptions provided in
ErrorReply, which bitcoin-cli relies upon; this patch moves #4288 http-error
descriptions to an HTTPError method, allowing HTTPReply to pass content on
unchanged.
|
|
|
|
675bcd5 Correct comment for 15-of-15 p2sh script size (Michael Ford)
|
|
6ecf3ed Display unknown commands received. (R E Broadley)
|
|
86fe1b8 update coding.md to reflect changes by pull (Philip Kaufmann)
e10dcf2 ensure clean and consistent "namespace" usage (Philip Kaufmann)
|
|
The original comment forgets to account for the script push which will
need an OP_PUSHDATA2 + 2-bytes for the 513 script bytes.
props davecgh
fixes #4224
|
|
|
|
0dd5d3a Show only one zero instead of many when getblocks request received with a hashStop of uint256(0) (R E Broadley)
|
|
|
|
hashStop of uint256(0)
|
|
|
|
33c62c9 set shutdown title to main window title (Philip Kaufmann)
|
|
-respendnotify=<cmd> Execute command when a network tx respends wallet
tx input (%s=respend TxID, %t=wallet TxID)
Add respendsobserved array to gettransaction, listtransactions, and
listsinceblock RPCs. This omits the malleated clones that are included
in the walletconflicts array.
Add RPC help for respendsobserved and walletconflicts (help was missing
for the latter).
|
|
Respend transactions that conflict with transactions already in the
wallet are added to it. They are not displayed unless they also involve
the wallet, or get into a block. If they do not involve the wallet,
they continue not to affect balance.
Transactions that involve the wallet, and have conflicting non-equivalent
transactions, are highlighted in red. When the conflict first occurs, a
modal dialog is thrown.
CWallet::SyncMetaData is changed to sync only to equivalent transactions.
When a conflict is added to the wallet, counter nConflictsReceived is
incremented. This acts like a change in active block height for the
purpose of triggering UI updates.
|
|
Allows network wallets and other clients to see transactions that respend
a prevout already spent in an unconfirmed transaction in this node's mempool.
Knowledge of an attempted double-spend is of interest to recipients of the
first spend. In some cases, it will allow these recipients to withhold
goods or services upon being alerted of a double-spend that deprives them
of payment.
As before, respends are not added to the mempool.
Anti-Denial-of-Service-Attack provisions:
- Use a bloom filter to relay only one respend per mempool prevout
- Rate-limit respend relays to a default of 100 thousand bytes/minute
- Define tx2.IsEquivalentTo(tx1): equality when scriptSigs are not considered
- Do not relay these equivalent transactions
Remove an unused variable declaration in txmempool.cpp.
|
|
|
|
Relax IsStandard rules for pay-to-script-hash transactions
|
|
- this ensures we don't show Bitcoin-Qt as that is still our
internal application name
- fixes #4427
|
|
6a5c124 [Qt] don't allow translation of our example btc address (Philip Kaufmann)
|