Commit graph

3817 commits

Author SHA1 Message Date
Gregory Maxwell
907a2aa4c7 Internal RNG for approximateBestSubset to prevent degenerate behavior.
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.
2013-02-18 14:13:39 -08:00
Pieter Wuille
f7f3a96b74 Improve block database load error reporting 2013-02-17 23:25:42 +01:00
Gavin Andresen
1d83141803 Merge branch 'loaderror' of git://github.com/sipa/bitcoin 2013-02-16 19:08:57 -05:00
Pieter Wuille
398774181a Improve block database load error reporting 2013-02-16 19:46:00 +01:00
Wladimir J. van der Laan
06bbb7a166 Merge pull request #2314 from laanwj/2013_01_remove_outdated_buildinst
remove outdated QT windows build instructions
2013-02-16 09:59:44 -08:00
Wladimir J. van der Laan
4e70db2a03 remove outdated windows Qt build instructions 2013-02-16 18:59:02 +01:00
Wladimir J. van der Laan
5258fbe492 Merge pull request #2283 from Diapolo/translations
translations update (bitcoinstrings.cpp + bitcoin_en.ts)
2013-02-16 07:36:50 -08:00
Pieter Wuille
9f2467ad62 Transactions-based verification progress 2013-02-16 14:51:00 +01:00
Wladimir J. van der Laan
24cde0b7d1 Change progress bar from block-based to time-based
This is less confusing to most people, and doesn't rely on estimates
of the total number of blocks received from other nodes.
2013-02-16 14:51:00 +01:00
Gavin Andresen
efb6d9aae7 Minor build fixes
Two changes: make some linux-specific linker options linux and linker specific.
And in the cross-compile environment, prefer the $HOME/qt/bin tools to
whatever might be somewhere else in the path.
2013-02-15 19:55:44 -05:00
Gavin Andresen
fbd860287e Pass compiler flags down into leveldb make
Fixes issue#2288. Includes cleanups from Luke's pull 2243.
2013-02-15 19:55:44 -05:00
Andrew Poelstra
3913a99087 Enable dumpprivkey in safe mode 2013-02-14 11:55:55 -08:00
Gavin Andresen
8269a0953e Reimplement click-to-pay links. Add OSX support.
Switch to using Qt's QLocalServer/QLocalSocket to handle bitcoin
payment links (bitcoin:... URIs)

Reason for switch: the boost::interprocess mechanism seemed flaky,
and doesn't mesh as well with "The Qt Way"

qtipcserver.cpp/h is replaced by paymentserver.cpp/h

Click-to-pay now also works on OSX, with a custom Info.plist
that registers Bitcoin-Qt as a handler for bitcoin: URLs and
an event listener on the main QApplication that handles
QFileOpenEvents (Qt translates 'url clicked' AppleEvents into
QFileOpenEvents automagically).
2013-02-12 15:41:31 -05:00
Gavin Andresen
2f0fa79db2 Merge pull request #2286 from gavinandresen/fix2285
Do not use C++11 std::vector.data()
2013-02-11 16:01:24 -08:00
Jeff Garzik
e48aa6076a Merge pull request #2295 from sipa/tidydir
Add script to clean up datadirs
2013-02-10 21:02:12 -08:00
Jeff Garzik
f166e0dd2f Merge pull request #2297 from sipa/notes
Some improvements to the release notes
2013-02-10 21:01:47 -08:00
Pieter Wuille
1ed2cfc452 Some improvements to the release notes 2013-02-10 22:50:21 +01:00
Pieter Wuille
33c055c4f1 Add script to clean up datadirs 2013-02-10 21:19:25 +01:00
Wladimir J. van der Laan
6749082294 Merge pull request #2289 from laanwj/201301_qimage_bits
Use QImage.bits instead of QImage.constBits to ease backporting
2013-02-10 09:27:31 -08:00
Petter Reinholdtsen
17121ec4fe Use QImage.bits instead of QImage.constBits to ease backporting
Image.constBits was introduced in Qt 4.7.  Should be ok here to use
QImage.bits which allows linking against the Qt in Squeeze.
2013-02-09 19:18:53 +01:00
Gavin Andresen
ba1d08008e Do not use C++11 std::vector.data()
std::vector.data() is a C++11 feature that makes my OSX build machine unhappy.
2013-02-07 18:54:22 -05:00
Philip Kaufmann
f561f3f37f translations update (bitcoinstrings.cpp + bitcoin_en.ts) 2013-02-07 07:39:58 +01:00
Gavin Andresen
f50706796b Merge commit 'd38c6488d067c2e88726e2ca99bc76fd67dab49b' 2013-02-06 16:06:43 -05:00
Gavin Andresen
8f66aedfaa Merge pull request #2279 from sipa/cvrbip30
Bugfix CValidationResult for BIP30 + add DoS
2013-02-06 12:58:52 -08:00
Gavin Andresen
817c44a00d Merge pull request #2264 from gmaxwell/signrawtransaction_for_regular_missing_txins
Signrawtransaction shouldn't require redeemScript for non-p2sh txins.
2013-02-06 10:02:28 -08:00
Gavin Andresen
43ba1a19b8 Merge pull request #2259 from Criptomonedas/dontresend
Do not call ResendWalletTransactions when reindexing or importing
2013-02-06 09:17:36 -08:00
Pieter Wuille
7cdc37c0a4 Bugfix CValidationResult for BIP30 + add DoS 2013-02-06 16:33:51 +01:00
Rubén Darío Ponticelli
e90b831e83 Do not call ResendWalletTransactions when reindexing, importing or on IBD
Calling ResendWalletTransactions when reindexing, importing or on IBD spams
other nodes with our old transactions, because they become unconfirmed.
2013-02-05 18:29:41 -03:00
Gavin Andresen
79892883d7 Merge branch 'reindexgen' of git://github.com/sipa/bitcoin 2013-02-05 10:15:06 -05:00
Gavin Andresen
1d0851eca8 Merge pull request #2273 from gavinandresen/txsize
Make transactions larger than 100K non-standard
2013-02-05 07:12:27 -08:00
Gavin Andresen
41e1a0d766 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.
2013-02-05 10:08:35 -05:00
Gavin Andresen
0e2e4fdf27 Merge pull request #2253 from luke-jr/bugfix_valstate
Bugfixes for CValidationState
2013-02-04 17:28:20 -08:00
Jeff Garzik
353b7f4a9c Merge pull request #2237 from petertodd/testnet-dnsseed
Add DNS seed support for testnet
2013-02-04 06:51:03 -08:00
Jeff Garzik
2daa2c13e1 Merge pull request #2250 from colindean/doc/root-readme
update and reformat README.md
2013-02-04 06:43:20 -08:00
Gregory Maxwell
21c6d3aead Signrawtransaction shouldn't require redeemScript for non-p2sh txins.
The redeemScript functionality broke plain offline signing, this
change makes it only look for that parameter when signing a p2sh
input.
2013-02-01 22:59:42 -05:00
Pieter Wuille
386037615a Make sure the genesis block is present after reindex 2013-02-01 23:29:59 +01:00
Gavin Andresen
3d29d5d623 Merge pull request #2257 from fanquake/docs
Update default URL in verify.sh
2013-02-01 13:11:35 -08:00
Wladimir J. van der Laan
77052ab0f3 Merge pull request #2260 from Diapolo/translations
translations update (bitcoinstrings.cpp and bitcoin_en.ts)
2013-02-01 09:29:42 -08:00
Philip Kaufmann
5711a20883 translations update (bitcoinstrings.cpp and bitcoin_en.ts) 2013-02-01 18:24:17 +01:00
Wladimir J. van der Laan
9acaa73820 Merge pull request #2258 from Diapolo/Qt_copyright_about
Bitcoin-Qt: better copyright year handling in AboutDialog
2013-02-01 00:04:07 -08:00
Philip Kaufmann
8823b4ac3b Bitcoin-Qt: better copyright year handling in AboutDialog
- 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
2013-02-01 08:52:01 +01:00
fanquake
ced7f77df5 Update default URL in verify.sh
The current default URL doesn't seem to exist.

Unsure wether this should be updated to point to 0.7.2 now or wether
just to wait untill 0.8.0 is out and point there?

Commit also fixes a minor typo in the macdeploy notes.txt
2013-02-01 13:10:44 +08:00
Luke Dashjr
8c4e43130b Bugfix: Enable ConnectBestBlock to properly report back validation problems, 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
2013-01-31 03:53:21 +00:00
Colin Dean
20d5945505 update and reformat README.md
* updated references to files which have since been moved
* added reference to licensing
* added brief summary in case a non-technical user happens upon repo first
* miscellaneous Markdown-isms to make the doc more attractive
* remove unused symlink README -> README.md

I double-checked the makefiles and whatnot to ensure that the README symlink is
not being referenced. It is not. Rather, `doc/README` and
`doc/README_windows.txt` are copied for distribution.
2013-01-30 19:01:52 -05:00
Gavin Andresen
5b989722be Merge pull request #2245 from gavinandresen/check216116
New checkpoint at block 216116 for the 0.8.0 release
2013-01-30 15:26:04 -08:00
Gavin Andresen
8fd65c944f Merge pull request #2236 from sipa/largefiles
Support large files on 32-bit Linux
2013-01-30 15:25:30 -08:00
Wladimir J. van der Laan
4dfae2fd2f Merge pull request #2248 from gavinandresen/issue2239
Prevent Qt crash at startup with an empty data directory
2013-01-30 14:37:15 -08:00
Gavin Andresen
cb2e1bdaa9 Merge pull request #2244 from sipa/files
Added information about used data files
2013-01-30 12:38:11 -08:00
Gavin Andresen
85b534b23e Prevent Qt crash at startup with an empty data directory 2013-01-30 15:24:37 -05:00
Gavin Andresen
d38c6488d0 Bump version numbers for 0.8 release
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
2013-01-30 14:19:09 -05:00