Age | Commit message (Collapse) | Author |
|
Bitcoin-Qt: add testnet check and icon to intro dialog
|
|
[QT] Don't ask for a passphrase to getnewaddress.
|
|
CreateNewBlock / getblocktemplate cleaning
|
|
Document and test OP_RESERVED weirdness
|
|
|
|
Seems it was forgotten about when IsPushOnly() and the unittests were
written. A particular oddity is that OP_RESERVED doesn't count towards
the >201 opcode limit unlike every other named opcode.
|
|
Fix out-of-bounds check
|
|
Partial solaris support
|
|
Add 'chainwork' to getblock
|
|
|
|
|
|
getblocktemplate only uses certain portions of the coinbase transaction,
notably ignoring the coinbase TX output entirely.
Use CreateNewBlock() rather than CreateNewBlockWithKey(), eliminating
the needless key passing.
Should be zero behavior changes.
|
|
rather than a key.
CreateNewBlockWithKey() helper is added to restore existing functionality,
making this an equivalent-transformation change.
|
|
With the GUI password fix this was always false.
|
|
With an encrypted wallet the GUI was prompting for a passphrase every time
the user requested a new address. This is unnecessary, increases the
exposure to keyboard sniffers, and discourages using fresh addresses for
every transaction.
Instead only prompt for a passphrase when the keypool runs out, also call
the new address function with the flag that prevents reuse.
Thanks to AlexNagy on IRC for pointing this out and who wouldn't take any
lip from a curmudgeonly developer and insisted on what he knew to be true.
|
|
|
|
WalletView:
- add new signal showNormalIfMinimized()
- emit the new signal in handleURI() to fix a bug, preventing the main
window to show up when using bitcoin: URIs
WalletStack:
- connect the showNormalIfMinimized() signal from WalletView with the
showNormalIfMinimized() slot in BitcoinGUI
- rework setCurrentWallet() to return a bool
- add check for valid walletModel in addWallet()
- add missing gui attribute initialisation in constructor
WalletFrame:
- remove unused or unneded class attributes gui and clientModel
- add a check for valid clientModel in setClientModel()
General:
- small code formatting changes
|
|
Payment Protocol Work
|
|
Add support for a Payment Protocol to Bitcoin-Qt.
Payment messages are protocol-buffer encoded and communicated over
http(s), so this adds a dependency on the Google protocol buffer
library, and requires Qt with OpenSSL support.
|
|
|
|
|
|
- move SelectParamsFromCommandLine() from init.cpp to bitcoin.cpp to allow
to use TestNet() for Bitcoin-Qt instead of GetBoolArg("-testnet", false)
- change order in bitcoind.cpp to match bitcoin.cpp functionality
- hamonize error message strings for missing datadir and failing
SelectParamsFromCommandLine() in bitcoin.cpp and bitcoind.cpp
- use TestNet() call in splashscreen.cpp
|
|
|
|
Straight refactor, so mapAddressBook stores a CAddressBookData
(which just contains a std::string) instead of a std::string.
Preparation for payment protocol work, which will add the notion
of refund addresses to the address book.
|
|
|
|
Replaces the validation check for "amount == 0" with an isDust check,
so very small output amounts are caught before the wallet
is unlocked, a transaction is created, etc.
|
|
- update translation master files
- include current translations from Transifex
- add several new languages
- fix a bug in bitcoin.qrc, which prevents some languages from beeing used
(wrong file extension .ts instead of .qm was used)
|
|
Update the bloom state on the real object, not the temporary one.
|
|
This resulted in just passing all transactions to filtered wallets
which worked surprisingly well, except where it didn't.
|
|
Add MurmurHash3() unit test
|
|
Performance optimization for bloom filters.
|
|
* On Mac OS X fsync does not guarantee write to disk. Use fcntl F_FULLFSYNC instead.
|
|
Useful as a source of test vectors to anyone re-implementing bloom
filters.
|
|
This reduces a peer's ability to attack network resources by
using a full bloom filter, but without reducing the usability
of bloom filters. It sets a default match everything filter
for peers and it generalizes a prior optimization to
cover more cases.
|
|
|
|
https://github.com/bitcoin/bitcoin/commit/8864019f6d88b13d3442843d9e6ebeb8dd938831
|
|
|
|
Clarified the listsinceblock help test
|
|
Use HandleError() consistently to handle leveldb errors
|
|
More unit tests for OP_NUMEQUAL
|
|
Make RPC password resistant to timing attacks
|
|
Fix reorganization crash
|
|
Only create signatures with even S, and verification mode to check.
|
|
BIP 32 derivation + test vectors
|
|
To fix a minor malleability found by Sergio Lerner (reported here:
https://bitcointalk.org/index.php?topic=8392.msg1245898#msg1245898)
The problem is that if (R,S) is a valid ECDSA signature for a given
message and public key, (R,-S) is also valid. Modulo N (the order
of the secp256k1 curve), this means that both (R,S) and (R,N-S) are
valid. Given that N is odd, S and N-S have a different lowest bit.
We solve the problem by forcing signatures to have an even S value,
excluding one of the alternatives.
This commit just changes the signing code to always produce even S
values, and adds a verification mode to check it. This code is not
enabled anywhere yet. Existing tests in key_tests.cpp verify that
the produced signatures are still valid.
|
|
|
|
|
|
Specifically, the fact that the command
relates to wallet transactions.
|
|
RPC: keypoolrefill now permits optional size parameter, to bump keypool
|
|
Detect any sufficiently long fork and alert the user just like any other alert
|