Commit Graph
91 Commits
Author SHA1 Message Date
Luke Dashjr d67b0434f2 Merge branch '0.5.x' into 0.6.0.x
Conflicts:
	src/main.cpp
2012-05-22 22:57:10 +00:00
Luke Dashjr 3b36da6d27 Merge branch '0.4.x' into 0.5.x
Conflicts:
	src/ui.cpp
	src/ui.h
	src/uibase.cpp
	src/xpm/about.xpm
2012-05-22 22:55:49 +00:00
Jeff GarzikandLuke Dashjr b6862f7b74 Prevent crashes due to missing or corrupted database records
Any problems seen during deserialization will throw an uncaught
exception, crashing the entire bitcoin process.  Properly return an
error instead, so that we may at least log the error and gracefully
shutdown other portions of the app.
2012-05-22 22:47:51 +00:00
FordyandLuke Dashjr 58ac600b2c Update License in File Headers
I originally created a pull to replace the "COPYING" in crypter.cpp and
crypter.h, but it turned out that COPYING was actually the correct
file.
2012-05-20 20:15:41 +00:00
FordyandLuke Dashjr b2de28c740 Update License in File Headers
I originally created a pull to replace the "COPYING" in crypter.cpp and
crypter.h, but it turned out that COPYING was actually the correct
file.
2012-05-20 20:10:24 +00:00
FordyandLuke Dashjr d11488abd0 Update License in File Headers
I originally created a pull to replace the "COPYING" in crypter.cpp and
crypter.h, but it turned out that COPYING was actually the correct
file.
2012-05-20 20:06:11 +00:00
Luke Dashjr 457ff3a437 Merge branch '0.5.x' into 0.6.0.x 2012-05-06 05:35:58 +00:00
Luke Dashjr 5da2dce524 Merge branch '0.4.x' into 0.5.x 2012-05-06 05:35:50 +00:00
Luke Dashjr 607739befb Bugfix: %-12I64d is not valid and causes the parameter to be skipped, use %12"PRI64d" instead
Conflicts:

	src/walletdb.cpp
2012-05-06 05:27:08 +00:00
Wladimir J. van der LaanandLuke Dashjr 1bdfa94a01 fix warnings: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses] 2012-04-15 19:43:45 -04:00
Gavin Andresen f146061d24 Merge pull request #1010 from sipa/fastblocks2
Use transactions-updated as flush condition
2012-03-29 12:10:30 -07:00
Pieter Wuille 25c5eca893 Use transactions-updated as flush condition
The normal checkpointing during the block chain download is reduced
to every five minutes only, but forced every 200000 updated transactions.
2012-03-29 21:00:31 +02:00
Gavin Andresen 6293a9f87f Workaround hangs when upgrading old addr.dat files 2012-03-29 13:34:07 -04:00
Gavin Andresen 9f18347034 Auto-remove logs, and decrease logfile size to 10M 2012-03-29 09:03:11 -04:00
Luke Dashjr 6085033f31 Merge branch '0.4.x' into 0.5.0.x 2012-03-26 20:06:55 -04:00
Pieter Wuille 53cb1a49e7 Use erase instead of rewrite to remove old addr entries 2012-03-26 20:22:38 +02:00
Pieter WuilleandLuke Dashjr fea0a27ddc Check minversion before loading the rest of the wallet
When a 0.6 wallet with compressed pubkeys is created, it writes a
minversion record to prevent older clients from reading it. If the 0.5
loading it sees a key record before seeing the minversion record however,
it will fail with DB_CORRUPT instead of DB_TOO_NEW.
2012-03-22 16:25:36 -04:00
Gavin Andresen 958fe01c32 Merge branch 'checklevel' of https://github.com/sipa/bitcoin 2012-03-22 12:18:56 -04:00
Gavin Andresen e12d131734 Merge pull request #975 from sipa/versioncheck
Check minversion before loading the rest of the wallet
2012-03-22 09:18:11 -07:00
Gavin Andresen a6b4a11385 Merge branch 'addrman' of https://github.com/sipa/bitcoin 2012-03-22 09:19:01 -04:00
Pieter Wuille ef12c2184d Check minversion before loading the rest of the wallet
When a 0.6 wallet with compressed pubkeys is created, it writes a
minversion record to prevent older clients from reading it. If the 0.5
loading it sees a key record before seeing the minversion record however,
it will fail with DB_CORRUPT instead of DB_TOO_NEW.
2012-03-22 04:59:59 +01:00
Pieter Wuille 4538e45c46 Add -checklevel and improve -checkblocks
-checkblocks now takes a numeric argument: the number of blocks that must
be verified at the end of the chain. Default is 2500, and 0 means all
blocks.

-checklevel specifies how thorough the verification must be:
0: only check whether the block exists on disk
1: verify block validity (default)
2: verify transaction index validity
3: check transaction hashes
4: check whether spent txouts were spent within the main chain
5: check whether all prevouts are marked spent
6: check whether spent txouts were spent by a valid transaction that consumes them
2012-03-22 03:19:23 +01:00
Luke Dashjr 17a5fd9248 Merge branch '0.4.x' into 0.5.0.x 2012-03-21 13:19:25 -04:00
Pieter Wuille 89516bd4e0 Speed up block downloading 2012-03-21 01:32:00 +01:00
Luke Dashjr 1194f00350 Print more diagnostic info for the various DB_CORRUPT conditions 2012-03-19 12:52:22 -04:00
Luke Dashjr 3cc0624932 Print more diagnostic info for the various DB_CORRUPT conditions 2012-03-12 14:01:15 -04:00
Gavin AndresenandPieter Wuille 972060ce0e bitcoind changes to stop storing settings in wallet.dat. 2012-02-26 23:21:33 +01:00
Pieter Wuille 4a10d4c6dc Fix addrProxy setting
Before 0.6 addrProxy was a CAddress, but netbase changed it to CService.
Retain compatibility by wrapping/unwrapping with a CAddress when saving
or loading.

This commit retains compatibility with 0.6.0rc1 (which wrote the setting
as a CService) by trying to parse twice.
2012-02-25 21:13:34 +01:00
Pieter Wuille 5fee401fe1 CAddrMan: stochastic address manager
Design goals:
 * Only keep a limited number of addresses around, so that addr.dat does not grow without bound.
 * Keep the address tables in-memory, and occasionally write the table to addr.dat.
 * Make sure no (localized) attacker can fill the entire table with his nodes/addresses.

See comments in addrman.h for more detailed information.
2012-02-24 13:41:04 +01:00
Pieter Wuille 0b807a417f Add SetMinVersion to CWallet 2012-02-18 15:42:29 +01:00
sje397 4efbda3f25 Added 'Backup Wallet' menu option
- icon from the LGPL Nuvola set (like the tick) - http://www.icon-king.com/projects/nuvola/
- include 'boost/version.hpp' in db.cpp so that the overwrite version of copy can be used
- catch exceptions in BackupWallet (e.g. filesystem_error thrown when trying to overwrite without the overwrite flag set)
- include db.h in walletmodel.cpp for BackupWallet function
- updated doc/assets-attribution.txt and contrib/debian/copyright with copyright info for new icon
2012-02-15 23:29:59 +11:00
Luke Dashjr 4bbd72cca1 Update copyrights to 2012 for files modified this year 2012-02-07 22:43:39 -05:00
Luke Dashjr 4664aae3fe Update copyrights to 2012 for files modified this year 2012-02-07 22:30:50 -05:00
Gavin Andresen 882164196e Update all copyrights to 2012 2012-02-07 11:28:30 -05:00
Gavin Andresen 9d952d17bb Look for flushwallet/listen/irc/dnsseed/upnp instead of noflushwallet/etc. And switch default for irc to 0. 2012-02-07 09:14:31 -05:00
Luke Dashjr 882e00e215 Merge branch '0.4.x' into 0.5.0.x
Conflicts:
	src/main.cpp
2012-02-02 20:17:41 -05:00
Pieter WuilleandLuke Dashjr d841fc969a Full checking of all loaded keys 2012-02-02 20:03:26 -05:00
Pieter WuilleandLuke Dashjr c1c6de6ad4 Check consistency of private keys
Reported by onlineproof on IRC: Bitcoin does not verify whether private
keys and public keys correspond, when loading a wallet.
2012-02-02 17:49:39 -05:00
Pieter Wuille 91f43a33f8 Full checking of all loaded keys 2012-01-26 19:26:43 +01:00
Pieter Wuille b25cc627a3 Check consistency of private keys
Reported by onlineproof on IRC: Bitcoin does not verify whether private
keys and public keys correspond, when loading a wallet.
2012-01-25 03:05:16 +01:00
Gavin Andresen 922e8e2929 Replace OP_EVAL (BIP 12) with Pay-to-script-hash (BIP 16). 2012-01-13 10:22:23 -05:00
Pieter Wuille 11529c6e4f Compressed pubkeys
This patch enabled compressed pubkeys when -compressedpubkeys is passed.
These are 33 bytes instead of 65, and require only marginally more CPU
power when verifying. Compressed pubkeys have a different corresponding
address, so it is determined at generation. When -compressedpubkeys is
given, all newly generated addresses will use a compressed key, while
older/other addresses keep using normal keys. Unpatched clients will
relay and verify these transactions.
2012-01-09 15:18:19 +01:00
Wladimir J. van der Laan bde280b9a4 Revert "Use standard C99 (and Qt) types for 64-bit integers"
This reverts commit 21d9f36781.
2011-12-21 22:33:19 +01:00
Luke Dashjr 21d9f36781 Use standard C99 (and Qt) types for 64-bit integers 2011-12-20 16:52:59 -05:00
Gavin Andresen 2a45a494b0 Use block times for 'hard' OP_EVAL switchover, and refactored EvalScript
so it takes a flag for how to interpret OP_EVAL.
Also increased IsStandard size of scriptSigs to 500 bytes, so
a 3-of-3 multisig transaction IsStandard.
2011-12-19 13:24:48 -05:00
Gavin Andresen e679ec969c OP_EVAL implementation
OP_EVAL is a new opcode that evaluates an item on the stack as a script.
It enables a new type of bitcoin address that needs an arbitrarily
complex script to redeem.
2011-12-19 12:40:19 -05:00
Gavin Andresen 99a289f531 Merge pull request #574 from sipa/dumpprivkey
Dumpprivkey
2011-12-19 07:27:25 -08:00
Gavin Andresen f8ded588a2 Implement BIP 14 : separate protocol version from client version 2011-12-19 10:24:23 -05:00
Pieter WuilleandPieter Wuille 4c6e22953e Make CWalletTx::pwallet private 2011-12-17 21:49:47 +01:00
Pieter WuilleandLuke Dashjr 36b1eb7631 close old db when rewriting 2011-11-20 13:53:07 -05:00