Age | Commit message (Collapse) | Author |
|
This fixes test_bitcoin failures on openbsd reported by dhill on IRC.
On some systems rand() is a simple LCG over 2^31 and so it produces
an even-odd sequence. ApproximateBestSubset was only using the least
significant bit and so every run of the iterative solver would be the
same for some inputs, resulting in some pretty dumb decisions.
Using something other than the least significant bit would paper over
the issue but who knows what other way a system's rand() might get us
here. Instead we use an internal RNG with a period of something like
2^60 which is well behaved. This also makes it possible to make the
selection deterministic for the tests, if we wanted to implement that.
|
|
Do not use C++11 std::vector.data()
|
|
Image.constBits was introduced in Qt 4.7. Should be ok here to use
QImage.bits which allows linking against the Qt in Squeeze.
|
|
std::vector.data() is a C++11 feature that makes my OSX build machine unhappy.
|
|
|
|
Bugfix CValidationResult for BIP30 + add DoS
|
|
gmaxwell/signrawtransaction_for_regular_missing_txins
Signrawtransaction shouldn't require redeemScript for non-p2sh txins.
|
|
|
|
Calling ResendWalletTransactions when reindexing, importing or on IBD spams
other nodes with our old transactions, because they become unconfirmed.
|
|
|
|
Make transactions larger than 100K non-standard
|
|
Extremely large transactions with lots of inputs can cost the network
almost as much to process as they cost the sender in fees.
We would never create transactions larger than 100K big; this change
makes transactions larger than 100K non-standard, so they are not
relayed/mined by default. This is most important for miners that might
create blocks larger than 250K big, who could be vulnerable to a
make-your-blocks-so-expensive-to-verify-they-get-orphaned attack.
|
|
Bugfixes for CValidationState
|
|
Add DNS seed support for testnet
|
|
The redeemScript functionality broke plain offline signing, this
change makes it only look for that parameter when signing a p2sh
input.
|
|
|
|
|
|
- this change allows us to keep the translation without the need to
re-translate any string, when we update the copyright year
- copyright symbol is changed to HTML to ensure we get no encoding
issues and it's removed from the translation string so translators don't
break it by mistake
|
|
and ensure orphan processing (when their parents are found) cannot be used to counter-DDoS the node providing the parent
Also fix a minor typo
|
|
New checkpoint at block 216116 for the 0.8.0 release
|
|
Support large files on 32-bit Linux
|
|
|
|
Version numbers changed from 0.7.99 to 0.8.0
Set CLIENT_VERSION_IS_RELEASE to remove pre-release warning
Updated copyright in COPYING and doc/READMEs to 2013
Updated doc/release-notes.txt
|
|
|
|
|
|
|
|
|
|
Improve error handling during validation
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Two cleanups before 0.8
|
|
|
|
|
|
|
|
Addnode optimization and addnode access via RPC
|
|
Treat non-final transactions as non-standard
|
|
|
|
|
|
|
|
|
|
Also moves the DNS lookup of -addnode nodes into the repeated
loop, allowing -addnode to follow DNS changes.
|
|
At least one service that accepted zero-confirmation transactions
was vulnerable because an attacker could send a transaction
with a lock time far in the future, and then have plenty of time in
which to get a double-spend mined (perhaps from a miner who wasn't
on the network when the first transaction was broadcast).
That is a variation on the "Finney attack". We still don't
recommend anybody accept 0-confirmation transactions as final
payment for anything. This change keeps non-final transactions
from appearing in the wallet, and, assuming most of the network
accepts this change, will prevent them from being relayed until
they are final.
|
|
Remove IsFromMe() check in CTxMemPool::accept()
|
|
|
|
- fetch current translations from Transifex
- update bitcoinstrings.cpp and bitcoin_en.ts
|
|
Add optional transaction index to databases
|