Commit Graph

841 Commits

Author SHA1 Message Date
Nils Schneider e1739cbf38 merged translations from transifex: da de es es_CL nb nl ru zh_TW 2011-11-08 14:51:28 +01:00
Pieter Wuille d825e6a31b Some extra comments 2011-11-07 00:11:34 +01:00
Ang Iong Chun 1615c14756 add zh_TW locale 2011-11-06 10:26:11 +08:00
Wladimir J. van der Laan 81a28d7a6f Merge pull request #606 from dooglus/add-english-translation
Add English translation to fix plural(s).
2011-11-04 13:15:42 -07:00
Chris Moore 2989b462a5 Add English translation to fix plural(s). 2011-11-04 13:04:49 -07:00
Gavin Andresen 8c69b6621c Merge git://github.com/p2k/bitcoin-qt 2011-11-03 11:06:57 -04:00
Clark Gaebel f873b84d6e Added simple critical section test cases. 2011-11-02 18:10:41 -04:00
p2k 6eaa1b36fc Mac Deployment Script
See notes.txt in contrib/macdeploy.

Also added a dash to the application name in src/qt/bitcoin.cpp
2011-11-02 14:58:50 +01:00
Clark Gaebel 3083cf100a Cleaned up the critical section macros. 2011-11-02 04:33:55 -04:00
Jeff Garzik 02d630c37f Remove vladimir's DNS seed, at his request. 2011-10-31 12:42:01 -04:00
Wladimir J. van der Laan 8d3e1becf0 Save translators some work
- Remove duplicate translation strings (that somehow came from old wx UI and ended up in bitcoinstrings.cpp)
2011-10-29 23:09:58 +02:00
Matt Corallo 472bbb750c Update openssl to 1.0.0e. 2011-10-25 11:54:46 -04:00
Matt Corallo 5f2e76b8c7 Optionally include additional QT plugins when required to build. 2011-10-25 11:51:34 -04:00
Matt Corallo 0767e69199 Add returns to avoid annoying compile-time warnings. 2011-10-25 11:40:59 -04:00
Matt Corallo 25a9a1f62b Only define __STDC_LIMIT_MACROS if not already defined. 2011-10-25 11:39:17 -04:00
Gavin Andresen d760b5c979 Merge pull request #586 from cjdelisle/hardening-bug-workaround
Added a workaround for an Ubuntu bug which causes -fstack-protector-all t
2011-10-24 11:29:32 -07:00
Wladimir J. van der Laan 5c92622ad6 Translation lookup logic improvements
- use wildcard for TRANSLATIONS in bitcoin-qt.pro to automatically build all translations present in src/qt/locale (thanks @tcatm)
- first load translations/<language>.qm, then translations/<language>_<TERRITORY>.qm, so that territory-specific translations take precedence, but the fallback is on the base language if no territory-specific translation exists.
2011-10-23 13:42:11 +02:00
Wladimir J. van der Laan 3a30f34f1a Revert "translation fixes"
This reverts commit f86ecd4a06.
2011-10-23 11:20:39 +02:00
Wladimir J. van der Laan f86ecd4a06 translation fixes
- use wildcard for TRANSLATIONS in bitcoin-qt.pro to automatically build all translations present in src/qt/locale (thanks @tcatm)
- rename language files to the usual <lang>_<TERRITORY>
- include recently added language files for es_ES and nb_NO
2011-10-23 10:35:00 +02:00
Nils Schneider 38a9edba20 update translations: nb, es_CL (from transifex) 2011-10-22 23:21:03 +02:00
Nick Bosma 7298ebb432 Added Caps Lock check and warning at askpassphrasedialog. 2011-10-18 16:07:52 +02:00
cjdelisle 1e5f939381 Added a workaround for an Ubuntu bug which causes -fstack-protector-all to be disregarded. 2011-10-16 20:38:23 -04:00
Wladimir J. van der Laan b68a8a6b34 Merge pull request #583 from laanwj/qt3
More Qt GUI updates
- Make USE_SSL qmake build flag actually work
- Improve mac experience, general UI improvements
- Add keyboard shortcut to switch between tabs
2011-10-15 08:33:10 -07:00
Wladimir J. van der Laan fbea7eca65 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-10-11 21:07:09 +02:00
Gavin Andresen 755e2819b0 Merge pull request #578 from luke-jr/bitcoind_build_improvements
Allow users to customize CXX, CXXFLAGS, and LDFLAGS normally
2011-10-10 13:57:47 -07:00
Gavin Andresen e44a00ae0d bitcoind does not need to link with gthread-2.0 2011-10-10 16:03:14 -04:00
Luke Dashjr a1e0bb5a09 Allow users to customize CXX, CXXFLAGS, and LDFLAGS normally 2011-10-10 13:42:43 -04:00
Gavin Andresen e99b8eae65 Merge pull request #577 from paraipanakos/master
Spanish translation for new qt gui
2011-10-10 08:20:53 -07:00
Gavin Andresen ab877a2dde Merge pull request #576 from luke-jr/bitcoind_build_improvements
bitcoind build improvements
2011-10-10 08:20:28 -07:00
Gavin Andresen b50ac8f73e Mac OSX release process changes
Rename App Bundle "Bitcoin-Qt.app" instead of "Bitcoin Qt" for
consistency with Windows/Linux.
Update create_osx_dmg.sh script to use macdeployqt tool.
Add ifdef STATIC to makefile.osx to build bitcoind static or dynamic.
2011-10-10 11:13:32 -04:00
Alex B 53f21f6ee7 Added Spanish translation for qt 2011-10-09 23:54:07 +02:00
Wladimir J. van der Laan d85f245800 Add alt-1..alt-5 shortcut to switch between tabs 2011-10-09 21:40:03 +02:00
p2k 527137e3ee Improved Mac experience; QDoubleSpinBox for BitcoinAmountField
Now it can't be told if this is was a Windows App before. All Mac design principles are fulfilled and some cosmetics have been applied to suit the native look and feel. The biggest change there is the proper use of the Dock icon which takes the role of the Tray icon on Mac.

The QDoubleSpinBox improves entering of Bitcoin amounts, no two separate fields are required anymore. All functionality and validation effects have been retained; pressing the comma key will be internally translated to a period to keep it consistent throughout the application and eases entering in countries which use the comma as decimal separator.

Additionally, Notificator now supports Growl, Mac's native notification system. This is provided via Apple Script in order to avoid linking to Growl on compile time. Other changes involve encapsulation of Toolbar and Menubar creation, loading of Qt's own translation and some clean up.
2011-10-09 21:19:44 +02:00
Wladimir J. van der Laan d934e7e3dd Make "Quit" menu saner
- Use 'x' for Exit shortcut
- Set Ctrl-Q as global quit key sequence
2011-10-09 21:06:28 +02:00
Wladimir J. van der Laan 8828da5f56 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-10-09 20:26:40 +02:00
Luke Dashjr b4d0588d06 Add support to makefile.unix for the same parameters used by bitcoin-qt.pro, dynamic linking unless STATIC=1 is passed 2011-10-09 14:23:20 -04:00
Gavin Andresen eab61cd0b2 Merge branch 'master' of github.com:bitcoin/bitcoin 2011-10-09 13:36:10 -04:00
Gavin Andresen 4db9705dd8 Merge pull request #573 from luke-jr/bugfix_bits_string
Bugfix: getmemorypool "bits" should be a hex-string
2011-10-09 10:32:22 -07:00
Gavin Andresen 94eaab7710 Bump version to 0.5.0.0 2011-10-08 17:29:47 -04:00
Gavin Andresen 0b3f3657c8 Remove old wx translations, updated qt translations 2011-10-08 17:29:21 -04:00
Gavin Andresen c1131a28ad Remove ui_res from makefiles 2011-10-07 14:35:36 -04:00
Gavin Andresen 6853e627f1 Fix build on windows and mac
Replaced all occurrences of #if* __WXMSW__ with WIN32,
and all occurrences of __WXMAC_OSX__ with MAC_OSX, and made
sure those are defined appropriately in the makefile and bitcoin-qt.pro.
2011-10-07 11:02:21 -04:00
Luke Dashjr 903a255836 Bugfix: "bits" should be a hex-string, not a number (that just doesn't make sense) 2011-10-06 12:47:28 -04:00
Victor Leschuk b95e6376d0 Fix for 64bit build 2011-10-06 19:53:42 +04:00
Gavin Andresen 32ebde4612 Merge pull request #564 from luke-jr/optimize_remove_CheckWork_delay
Remove 2 second sleep from CheckWork
2011-10-06 07:54:50 -07:00
David Joel Schwartz ae81b82fb8 Use C's const char* for status strings rather than C++'s std::string, which is slower 2011-10-05 14:48:33 -04:00
Gavin Andresen 9e5322d23a Fix miner_test unit test bug 2011-10-05 14:33:49 -04:00
Gavin Andresen 3a6e468d9a Merge branch 'listsinceblock' of https://github.com/cdhowie/bitcoin 2011-10-05 11:38:24 -04:00
Gavin Andresen 4ffbdcc0f5 Auto-build dependencies 2011-10-05 11:28:08 -04:00
Gavin Andresen e9e7bb968b Update mac Makefile and build instructions to use MacPorts 2011-10-05 11:10:06 -04:00
Gavin Andresen ff3b235580 Merge pull request #545 from tcatm/remove-addr.txt
remove code that reads addr.txt in LoadAddreses()
2011-10-05 07:41:07 -07:00
Gavin Andresen b898c8fce6 Merge branch 'no-cryptopp' of https://github.com/tcatm/bitcoin 2011-10-05 10:38:10 -04:00
Gavin Andresen 8bc52d0692 Merge pull request #558 from luke-jr/bugfix_CreateThread_ThreadSocketHandler_errReporting
Bugfix: ThreadSocketHandler creation error
2011-10-05 07:27:56 -07:00
Gavin Andresen 9ec4fa7b50 Merge pull request #561 from luke-jr/optimize_conn_adjtime
Only GetAdjustedTime once for the retry loop
2011-10-05 07:22:52 -07:00
Luke Dashjr 3552497ae5 Send "Connection: close" HTTP header with JSON-RPC requests (client) 2011-10-05 10:15:07 -04:00
David Joel Schwartz 514b18722a Remove 2 second sleep from CheckWork 2011-10-04 00:04:43 -04:00
Luke Dashjr 65ba3e2f50 Bugfix: report error creating ThreadSocketHandler thread just like the rest 2011-10-03 23:45:42 -04:00
Luke Dashjr a4e6ae101a Only GetAdjustedTime once for the retry loop 2011-10-03 23:41:47 -04:00
Gavin Andresen 3504801778 Declare integer constant LL 2011-10-03 13:10:31 -04:00
Nils Schneider 74567f7ef1 remove code that reads addr.txt in LoadAddreses() 2011-10-01 22:27:02 +02:00
Gavin Andresen 1ff3583e41 Merge pull request #543 from laanwj/utiltests
Remove possibility of 63 bit overflow in ParseMoney
2011-10-01 12:00:24 -07:00
Forrest Voight 074d584a04 Added RPC call 'getmemorypool' that provides everything needed to construct a block with a custom generation transaction and submit a solution
getmemorypool [data]
If [data] is not specified, returns data needed to construct a block to work on:
  "version" : block version
  "previousblockhash" : hash of current highest block
  "transactions" : contents of non-coinbase transactions that should be included in the next block
  "coinbasevalue" : maximum allowable input to coinbase transaction, including the generation award and transaction fees
  "time" : timestamp appropriate for next block
  "bits" : compressed target of next block
If [data] is specified, tries to solve the block and returns true if it was successful.
2011-10-01 14:42:54 -04:00
Wladimir J. van der Laan 2f7f2a5fca remove possibility of 63 bit overflow in ParseMoney
- also, add unit tests for various functions in util.cpp/util.h
2011-10-01 17:29:46 +02:00
Wladimir J. van der Laan 608dacf689 only install translator when not empty 2011-10-01 13:23:00 +02:00
Nils Schneider 452506fc41 simpler ByteReverse 2011-09-30 20:00:30 +02:00
Nils Schneider 6ccff2cbde remove cryptopp dependency, add simple unittest for SHA256Transform() 2011-09-30 20:00:22 +02:00
Gavin Andresen f4769e44a3 Merge pull request #524 from sipa/signandverif
Sign and verify message with bitcoin address
2011-09-30 05:04:26 -07:00
Gavin Andresen 9a7e5ed3b0 Merge pull request #539 from laanwj/qt2
Qt GUI updates
2011-09-29 10:50:40 -07:00
Nils Schneider 7dd4001b40 Merge pull request #537 from tcatm/remove-deprecated-rpcs
remove deprecated RPCs
2011-09-29 09:39:11 -07:00
Wladimir J. van der Laan 20091df725 Add assertion size>0 to MedianFilter 2011-09-29 17:17:42 +02:00
Wladimir J. van der Laan 002a4dcad0 Merge branch 'master' of https://github.com/bitcoin/bitcoin
Conflicts:
	.gitignore (used upstream version)
	bitcoin-qt.pro
2011-09-28 21:52:32 +02:00
Wladimir J. van der Laan a8b95ce6ed use median filter for peer-reported reported number of blocks
- fixes problem that one misconfigured or malicious node can mess up progress bar
- implementation in src/util.h
- testcase in src/test/util_tests.cpp
2011-09-28 21:35:58 +02:00
Nils Schneider f8acc29fca deprecate midstate and hash1 in getwork 2011-09-28 17:54:44 +02:00
Nils Schneider eec44dad17 remove deprecated RPCs 2011-09-28 17:43:31 +02:00
Wladimir J. van der Laan 5902040874 translation handling improvements
- automatically build binary translation files in qmake/make
- roll translations into resource file and executable, to simply installation
2011-09-27 20:47:51 +02:00
Pieter Wuille 3a570dc80a Use key recovery for message signatures
Instead of encoding the public key inside the signature string, use
key recovery to do verification. This allows 88-character base64-encoded
signature strings instead of 188-character ones.
2011-09-27 19:48:22 +02:00
Pieter Wuille 01cc526318 Compact signatures and key recovery
Introduce a new type of signatures that are only 65 bytes long, and allow
reconstruction of the public key that was used to create the signature.
2011-09-27 19:48:22 +02:00
Pieter Wuille d9867551fc base64-based sign/verify 2011-09-27 19:48:22 +02:00
Pieter Wuille b53d6284eb Incorporate pubkey in signature, check based on address
Include the public key in the signature string, to allow verification
based on address.
2011-09-27 19:48:22 +02:00
Khalahan cc2567e32f Sign and verify message with bitcoin address and public key
Add padding to input (fixed string + address) before hashing
2011-09-27 19:48:22 +02:00
Pieter Wuille e93bf37e86 Test case for base64 encode/decode 2011-09-27 19:48:10 +02:00
Pieter Wuille 4b603f1cd6 Inline base64 encoder/decoder
This replaces the openssl-based base64 encoder and decoder with a more
efficient internal one. Tested against the rfc4648 test vectors.

Decoder is based on JoelKatz' version.
2011-09-27 19:47:35 +02:00
JoelKatz 4e67a6216b Faster Base64 decoder. 2011-09-27 19:47:34 +02:00
Janne Pulkkinen a1ef0d19b1 Removing the if statement entirely - not needed. 2011-09-27 19:20:24 +03:00
Gavin Andresen a8c108bca1 Remove DoS penalty for SigOpCount or immature transactions 2011-09-27 11:19:57 -04:00
Janne Pulkkinen 609acbf43d Send Coins page not cleared when changing tabs. Clear all button for clearing the entries 2011-09-27 17:46:19 +03:00
Gavin Andresen 81cadd74d2 Fix build: put back rules to build cryptopp files 2011-09-26 11:15:01 -04:00
Gavin Andresen 565c4771b6 Remove wxWidgets
Makefiles now build bitcoind only.
qmake/make in top-level directory is used to build Bitcoin QT
Deleted almost all #ifdef GUI from the code (left one possibly controversial one)
Deleted xpm/ files.
2011-09-26 10:04:04 -04:00
Gavin Andresen b14bd4df58 Skip verifying transaction signatures during initial block-chain download 2011-09-26 09:20:22 -04:00
Gavin Andresen 6b8a5ab622 Bump version to 0.4.1 2011-09-26 09:16:56 -04:00
Gavin Andresen 5df25e78db Merge pull request #513 from cjdelisle/feature-hardening
Hardening
2011-09-26 06:12:59 -07:00
Gavin Andresen 17e2c24645 Merge pull request #517 from gavinandresen/DoSprevention
Denial-of-service prevention
2011-09-26 06:06:16 -07:00
Gavin Andresen f7f2a36925 Merge pull request #521 from laanwj/qt
Qt GUI
2011-09-26 06:05:11 -07:00
Wladimir J. van der Laan 010c4fc0b5 Change define to determine use of DBUS to USE_DBUS, to prevent overlap with Qt-defined QT_DBUS 2011-09-24 11:56:33 +02:00
Wladimir J. van der Laan 0961c2fc0d Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-09-23 13:42:04 +02:00
Wladimir J. van der Laan b8afa21fad show balance in sendcoins screen (issue #24) 2011-09-22 19:05:04 +02:00
Gavin Andresen 806704c237 More denial-of-service misbehavior detection: version/addr/inv/getdata messages 2011-09-21 12:50:13 -04:00
Gavin Andresen 3e52aaf212 Transaction/Block denial-of-service detection/response 2011-09-21 12:50:12 -04:00
Gavin Andresen 15f3ad4dbd Framework for banning mis-behaving peers 2011-09-21 12:49:53 -04:00
Gavin Andresen 54d02f158d SetMockTime() for cleaner unit testing 2011-09-21 12:01:56 -04:00
Jeff Garzik 700f942692 Merge pull request #522 from sipa/minorfix
SocketHandler thread can be detached
2011-09-20 11:47:02 -07:00
Wladimir J. van der Laan 9b490f71b0 put Q_OBJECT everywhere it should be (removes warnings when running lupdate) 2011-09-19 13:08:24 +02:00
Pieter Wuille 88367a5fb8 SocketHandler thread can be detached 2011-09-19 13:08:22 +02:00
Wladimir J. van der Laan e122e42354 assure that base bitcoind and bitcoin still build 2011-09-18 12:44:38 +02:00
Nils Schneider e674680ddd missed printf in AbortMessage(); merged printfs in EndMessage 2011-09-17 21:36:58 +02:00
Nils Schneider 59090133c0 log low-level network messages only when fDebug is set 2011-09-17 18:29:41 +02:00
Wladimir J. van der Laan 5dd7318db7 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-09-16 06:55:47 +02:00
flower c1e667222a make German translation up-to-date 2011-09-13 18:55:50 +02:00
cjdelisle 3f94dfa25f Add some hardening to protect against unknown/future exploits. 2011-09-12 17:09:55 -04:00
Wladimir J. van der Laan 83312d7c6c remove transparency effect and windows-specific code for now, it's not working as supposed 2011-09-11 21:06:23 +02:00
p2k 2c1fd3c395 Some Mac OS X specific things
* Added application icon for Mac OS X * Added instructions for compiling
under Mac OS X * Added Portfile for compiling miniupnpc with MacPorts
2011-09-11 17:42:20 +02:00
Wladimir J. van der Laan d33cc2b5e3 clarify function signature (GetNumBlocksOfPeers) and use number of 'frozen' blocks as initial value for number of peer blocks 2011-09-11 10:49:30 +02:00
Janne Pulkkinen 78b3bf56f7 The synchronization progress bar now compares the amount of total blocks to amount of blocks downloaded at application start-up. Could be probably implemented better. 2011-09-11 10:29:29 +02:00
Wladimir J. van der Laan a0d2f9a12d Merge branch 'master' of https://github.com/bitcoin/bitcoin
Conflicts:
	.gitignore
2011-09-07 18:57:11 +02:00
Wladimir J. van der Laan f077d1ad62 fix the build (moved code use 'this' instead of 'window') 2011-09-07 18:16:38 +02:00
Janne Pulkkinen 94723e27ad Pull request #21: windows fixes/cleanup by Matoking 2011-09-07 17:45:07 +02:00
Gavin Andresen 5a3dea451d Merge branch 'unique_coinbase' of git://gitorious.org/~Luke-Jr/bitcoin/luke-jr-bitcoin into unique_coinbase 2011-09-07 10:51:57 -04:00
Gavin Andresen 9406696578 Fix AddAddress cs_mapaddresses/db transaction deadlock 2011-09-06 20:28:15 -04:00
Luke Dashjr 83f4cd156e Bugfix: Use timestamp in coinbase rather than "bits", needed to ensure coinbase txn is unique even if address is the same 2011-09-06 16:43:40 -04:00
Luke Dashjr 49c8e53ee2 Save coinbase, not just extraNonce 2011-09-06 16:43:35 -04:00
Luke Dashjr b760e25458 Merge branch 'getwork_dedupe' into unique_coinbase 2011-09-06 16:43:32 -04:00
Gavin Andresen e4626e94f4 Merge pull request #491 from gavinandresen/manytxfix
Optimize database writes for transactions with lots of TxIns.
2011-09-06 10:47:27 -07:00
Gavin Andresen e077cce617 Optimize database writes for transactions with lots of TxIns.
Patch from ArtForz, who discovered the problem.
2011-09-05 14:33:07 -04:00
Wladimir J. van der Laan cf9195c808 (k)ubuntu 10.04+ notification support (based on @zwierzak his code) 2011-09-03 21:05:12 +02:00
Luke Dashjr a687d4f574 Support for boost filesystem version 3 2011-09-03 11:24:45 -04:00
Wladimir J. van der Laan 0a70a3f4d8 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-09-03 09:09:34 +02:00
Gavin Andresen 7464e647de Bumped version numbers to 0.4.0rc1 2011-09-02 13:34:56 -04:00
Gavin Andresen ec74e8a443 Versions 0.3.20 THROUGH 0.3.23 have trouble with blockchain downloads; avoid them 2011-09-02 12:56:10 -04:00
Gavin Andresen b53e277ba1 Stay connected to seed nodes; disconnecting causes problems if you are trying to make the initial blockchain download. 2011-09-02 12:25:25 -04:00
Wladimir J. van der Laan b2d1129f27 bitcoin-qt cannot be used as command line rpc client 2011-09-02 18:05:08 +02:00
Wladimir J. van der Laan c5aa1b139a update to work with new lock system, add protocol.* to build system 2011-09-02 18:02:22 +02:00
Gavin Andresen c591cc50eb If compiled -DDEBUG_LOCKORDER and run with -debug, print out every mutex lock/unlock (helpful for debugging something-is-holding-a-mutex-too-long problems) 2011-09-02 12:01:42 -04:00
Gavin Andresen fb45259967 Do not try to download blockchain from 0.3.23 nodes 2011-09-02 12:00:01 -04:00
Wladimir J. van der Laan 7a15d4ff67 Merge branch 'master' of https://github.com/bitcoin/bitcoin
Conflicts:
	src/main.cpp
2011-09-02 17:35:30 +02:00
Gavin Andresen 86fd7c5af6 Give hard-coded seed nodes a random last-seen time, to randomize order they're tried. 2011-09-02 11:01:45 -04:00
Daniel Folkinshteyn bca179e8bd Update the list of seednodes.
Nodes culled from MagicalTux's database of bitcoin nodes,
http://dump.bitcoin.it/misc/
by version and longevity, and tested for connectivity.
2011-09-02 00:02:45 -04:00
Gavin Andresen 2f4c30fd85 Fix bad merge: getaccountaddress was broken for new accounts 2011-09-01 18:40:18 -04:00
Gavin Andresen 36d9b2311d Fixed regression I introduced: wallets with lots of transactions were unusable in GUI. 2011-09-01 15:44:47 -04:00
Gavin Andresen 783c636c73 Merge pull request #467 from gavinandresen/keypoolzero
Logic running with -keypool=0 was wrong (empty keys were being returned).
2011-09-01 12:01:29 -07:00
Gavin Andresen dd7868364d Merge branch 'code-cleanup' of git://github.com/muggenhor/bitcoin 2011-09-01 11:52:07 -04:00
Gavin Andresen ed02c95d50 obtain cs_wallet mutex to protect vchDefaultKey 2011-09-01 10:58:08 -04:00
Gavin Andresen 123e5bd998 Fix RPC call name in error message. 2011-09-01 10:12:59 -04:00
Gavin Andresen 7db3b75b3e Logic running with -keypool=0 was wrong (empty keys were being returned). Fixes #445
Renames GetOrReuseKeyFromKeyPool to GetKeyFromPool, with fAllowReuse arg and bool result.
2011-09-01 10:12:59 -04:00
Gavin Andresen f662cefd85 Merge pull request #470 from fabianhjr/master
Checkpoints
2011-09-01 06:58:14 -07:00
Gavin Andresen e3c26b2573 SetCrypted() obtains keystore lock, to be safe. 2011-08-31 14:00:41 -04:00
Gavin Andresen 471426fb3b Fixed potential deadlocks in GUI code.
Also changed semantics of CWalletTx::GetTxTime(); now always returns the time the transaction was received by this node, not the average block time.
And added information about -DDEBUG_LOCKORDER to coding.txt.
2011-08-31 12:55:16 -04:00
Gavin Andresen 6cc4a62c0e Fix rpc-hanging deadlocks
Collapsed multiple wallet mutexes to a single cs_wallet, to avoid deadlocks with wallet methods that acquired locks in different order.
Also change master RPC call handler to acquire cs_main and cs_wallet locks before executing RPC calls; requiring each RPC call to acquire the right set of locks in the right order was too error-prone.
2011-08-31 12:55:16 -04:00
Gavin Andresen b0243da77c Highlight mis-matching locks 2011-08-31 12:53:57 -04:00
Jeff Garzik 21189a42a7 Merge pull request #463 from TheBlueMatt/encreadme
Encryption readme update and minor rpc.cpp fixes
2011-08-31 09:32:42 -07:00
Jeff Garzik 8af99d1893 Merge pull request #464 from TheBlueMatt/upnp1.6
Upgrade dependancies and tweak build process.
2011-08-31 09:16:56 -07:00
Wladimir J. van der Laan f43f46c175 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-08-31 17:06:38 +02:00
Wladimir J. van der Laan 6c85cbecf1 comments and readme update 2011-08-31 16:08:31 +02:00
Wladimir J. van der Laan b7bcaf940d Wallet encryption part 2: ask passphrase when needed, add menu options 2011-08-31 14:19:43 +02:00
Misbakh-Soloviev Vadim A 3f0816e3d9 add russian translation and add unicode compatibility (merges pull request #20) 2011-08-28 14:14:29 +02:00
Gavin Andresen 829e21733b CHECKMULTISIG unit tests. 2011-08-26 18:43:58 -04:00
Wladimir J. van der Laan ae8adeb90a Wallet encryption part 1: show wallet encryption status 2011-08-23 20:08:42 +02:00
Matt Corallo b4ada906c0 Upgrade dependancies and tweak build process.
* Upgrade to use miniupnpc 1.6
* Upgrade to wxWidgets 2.9.2
* Upgrade to Bost 1.47 for Win32 Builds
2011-08-23 13:00:34 -04:00
Wladimir J. van der Laan adce862c27 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-08-22 14:43:37 +02:00
Giel van Schijndel e4dde849ae Move CInv to protocol.[ch]pp
This commit does *not* and should not modify *any* code, it only moves
it from net.h and splits it across protocol.cpp and protocol.hpp.

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-19 07:24:38 +02:00
Giel van Schijndel 33e28c9948 Move CAddress to protocol.[ch]pp
This commit does *not* and should not modify *any* code, it only moves
it from net.h and splits it across protocol.cpp and protocol.hpp.

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-19 07:24:38 +02:00
Giel van Schijndel 507fd9d15b Start moving protocol-specific code to protocol.[ch]pp
Move CMessageHeader from net.h to protocol.[ch]pp, with the
implementation in the .cpp compilation unit (compiling once is enough).

This commit does *not* and should not modify *any* code, it only moves
it from net.h and splits it across protocol.cpp and protocol.hpp.

Indentation changes aside the closest thing to a modification of code is
the addition of the 'TODO' comment (the execution of which requires code
modifications and thus doesn't belong in this commit).

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-19 07:24:38 +02:00
Giel van Schijndel 82dc6426b4 Move func 'REF' from util.h to serialize.h
util.h doesn't use REF, serialize.h does, creating a dependency of
serialize.h on util.h, but util.h already depends on serialize.h.  To
resolve this circular dependency the function 'REF' has now been moved
closer to one of its two points of use.

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-19 07:24:38 +02:00
Giel van Schijndel e49b83bb12 Cleanup makefiles such that diffs to them are smaller
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-19 07:24:37 +02:00
Giel van Schijndel 99860de3c9 Make some global variables less-global (static)
Explicitly make these global variables less-global to reduce the maximum
scope of this global state.

In my experience global variables tend to be a major source of bugs. As
such the less accessible they are the less likely they are to be the
source of a bug.

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-19 07:24:37 +02:00
Gavin Andresen 865ed8a1e5 Compile with DEBUG_LOCKORDER to detect inconsistent lock orderings that can cause deadlocks 2011-08-17 10:22:28 -04:00
Wladimir J. van der Laan 317c733572 add russian translation by msva 2011-08-16 17:30:58 +02:00
Gavin Andresen c7286112ef Remove unused ScanMessageStart function 2011-08-16 11:20:56 -04:00
Jeff Garzik b2fd0ca1cb src/makefile.unix: remove -DFOURWAYSSE2
Spotted by Venkatesh Srinivas <me@endeavour.zapto.org>
2011-08-16 10:10:39 -04:00
Wladimir J. van der Laan 8c4738d5a7 fix issue #13 2011-08-16 11:18:27 +02:00
Wladimir J. van der Laan b90c9ecb13 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-08-16 10:28:24 +02:00
Fabian H jr. d0d9486f44 Updated checkpoints, maybe Tx fee should be reduced to 0.0001 from 0.0005 and maximum minimum tx should be 0.0010. 2011-08-15 21:33:00 -03:00
Gavin Andresen eb72eae304 Don't std::advance past beginning of transactions array. Fixes #465 2011-08-12 15:39:12 -04:00
Matt Corallo 8acb491eef Fix incorrect RPC error messages 2011-08-11 19:41:21 +02:00
Gavin Andresen 498a2c9b16 Merge pull request #458 from TheBlueMatt/copyright
Unify copyright notices.
2011-08-11 10:34:29 -07:00
Wladimir J. van der Laan 0a76546ae9 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-08-11 10:17:21 +02:00
Gavin Andresen c648b589be Merge pull request #459 from jgarzik/char-msgstart
Use 'unsigned char' rather than 'char' for pchMessageStart.
2011-08-10 20:01:37 -07:00
Gavin Andresen 72173ffaca Merge pull request #460 from jgarzik/make-tuple
Qualify make_tuple with boost:: namespace.
2011-08-10 20:01:14 -07:00
Venkatesh Srinivas 25133bd74b Use 'unsigned char' rather than 'char' for pchMessageStart.
Regarding https://bitcointalk.org/index.php?topic=28022.0

main.cpp has: "char pchMessageStart[4] = { 0xf9, 0xbe, 0xb4, 0xd9 };"
Per discussion on the thread linked, leaving the signedness of
pchMessageStart is unsafe for values > 0x80. This patch specifies
'unsigned char' in main.cpp and net.h.

Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2011-08-10 22:42:43 -04:00
Venkatesh Srinivas 7c3002bf27 Qualify make_tuple with boost:: namespace.
db.cpp has a number of uses of make_tuple and has 'using namespace
std' and 'using namespace boost'. Without qualifying make_tuple,
std::make_tuple is preferred, which is incorrect. This patch qualifies
make_tuple.

Signed-off-by: Jeff Garzik <jgarzik@exmulti.com>
2011-08-10 22:40:10 -04:00
Venkatesh Srinivas ec93a0e219 Test for SO_NOSIGPIPE rather than assuming all BSDs support it.
Signed-off-by: Jeff Garzik <jgarzik@exmulti.com>
2011-08-10 22:36:20 -04:00
Gavin Andresen 9f0ac16942 Do-nothing MapPort() ifndef USE_UPNP. fixes #450 2011-08-09 12:38:17 -04:00
Matt Corallo b2120e223a Unify copyright notices.
To a variation on:
// Copyright (c) 2009-2010 Satoshi Nakamoto
// Copyright (c) 2011 The Bitcoin developers
2011-08-09 13:32:52 +02:00
Matt Corallo 2c3691d53d Cleanup test suite output to be more useful. 2011-08-08 14:31:08 -04:00
Matt Corallo 3c8cecda1f Add file for transaction tests. 2011-08-08 14:31:08 -04:00
Vegard Nossum a8330e0049 Add a file for script tests 2011-08-08 14:31:08 -04:00
Vegard Nossum 5f6a654d3e Add prototype for EvalScript() to script.h
This is needed for the script unit tests.
2011-08-08 14:31:08 -04:00
Vegard Nossum e707d29dd6 Fix testing setup
There were some problems with the existing testing setup:

 - Makefile rules for test-file compilation used CFLAGS instead of
   CXXFLAGS in makefile.unix
2011-08-08 14:31:08 -04:00
Matt Corallo 02962ba848 Add missing include to serialize.h 2011-08-08 14:31:08 -04:00
Vegard Nossum 8a62fec3ee Add missing includes to net.h 2011-08-08 14:31:08 -04:00
Vegard Nossum 437173f430 Add missing include to script.h 2011-08-08 14:31:08 -04:00
Vegard Nossum fcedd45c3c Add missing includes to key.h 2011-08-08 14:31:07 -04:00
Gavin Andresen 4e5d88ce26 Merge pull request #443 from TheBlueMatt/dupin
Check for duplicate txins in CheckTransaction.
2011-08-08 11:16:40 -07:00
Wladimir J. van der Laan b0849613bf QtUI code cleanup / comment improvements 2011-08-08 17:38:17 +02:00
Wladimir J. van der Laan fb390d3505 add TODOs in parseBitcoinURL 2011-08-07 17:07:04 +02:00
Wladimir J. van der Laan c359ac9128 allow empty/missing amounts in URL 2011-08-07 16:17:02 +02:00
Wladimir J. van der Laan 856aacf388 don't include <QDebug> 2011-08-07 16:09:49 +02:00
Wladimir J. van der Laan db7f023417 Accept "bitcoin:" URL drops from browsers 2011-08-07 16:04:48 +02:00
Wladimir J. van der Laan 330c190958 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-08-06 18:45:15 +02:00
Wladimir J. van der Laan e74e8a184a reorganize transaction model data function, and transaction tooltip 2011-08-06 18:40:45 +02:00
Wladimir J. van der Laan d4e3cb4c03 improve sync spinner 2011-08-05 20:32:26 +02:00
Wladimir J. van der Laan 00f4f8d54c speling fix 2011-08-05 15:37:49 +02:00
Wladimir J. van der Laan 126185aaa7 improve tooltip over transactions 2011-08-05 15:35:52 +02:00
Wladimir J. van der Laan ffccb56914 select new address immediately after creation 2011-08-04 21:36:14 +02:00
Jeff Garzik bd1e54bc0b Merge branch 'tmp2' 2011-08-04 15:22:05 -04:00
Jeff Garzik eb20f3c8f5 Merge pull request #448 from sipa/cbitcoinaddress
avoid strAddress + validity checks
2011-08-04 11:47:15 -07:00
Jeff Garzik 95699e1730 Merge pull request #446 from WakiMiko/upnp-desc
Identify as "Bitcoin + version number" when mapping UPnP port
2011-08-04 11:40:44 -07:00
Jeff Garzik 32de8cd062 Merge pull request #451 from TheBlueMatt/tornolisten
Don't listen if on TOR (resolves #441).
2011-08-04 11:40:06 -07:00
Wladimir J. van der Laan 2351a3fc9f minimize amount of text in status bar; show only icons, if the user wants explanation they can view the tooltip 2011-08-04 19:04:42 +02:00
Wladimir J. van der Laan 1b39201966 when clicking a transaction on the overview page, send the user to the transactions page 2011-08-04 04:41:01 +02:00
Wladimir J. van der Laan 186f3e2f0c Clarity: change definition of "confirmed" to "counts towards balance" 2011-08-04 04:40:01 +02:00
Matt Corallo 01a509fa26 Don't listen if on TOR (resolves #441). 2011-08-03 22:16:29 +02:00
Wladimir J. van der Laan 2ccd47596b fix drawing on gtk 2011-08-03 21:28:11 +02:00
Wladimir J. van der Laan 82303fc3ca unconfirmed amount = grey 2011-08-03 21:04:15 +02:00
Matt Corallo 918150048a Make it clear that setting proxy requires restart to fully apply. 2011-08-03 21:02:07 +02:00
Wladimir J. van der Laan a99ac8d3f4 show last few transactions on overview page 2011-08-03 20:52:18 +02:00
Wladimir J. van der Laan 2566b30c38 make amount field the same width as decimals field 2011-08-03 14:06:13 +02:00
Pieter Wuille 4d2ef6e5b6 avoid strAddress + validity checks
Avoid references to addresses using strings, and use CBitcoinAddress
as much as possible. Also added some validity checks on addresses
entered using RPC.
2011-08-03 13:01:09 +02:00
Wladimir J. van der Laan 5762295ec3 update readme and splash screen text 2011-08-02 22:03:41 +02:00
Wladimir J. van der Laan 10d680cff4 add splash screen 2011-08-02 21:48:59 +02:00
Johannes Henninger 1565698169 Identify as "Bitcoin + version number" when mapping UPnP port
Makes Bitcoin identify itself as "Bitcoin + version number" instead of
the nondescript "libminiupnpc" when forwarding a port via UPnP.
2011-08-01 16:34:59 +02:00
Wladimir J. van der Laan d8f5c59a59 show n/a for mined transactions (and send to self) instead of empty field 2011-07-31 17:43:46 +02:00
Wladimir J. van der Laan 05bcf7089e address icons 2011-07-31 17:05:34 +02:00
Matt Corallo 33208fb557 Check for duplicate txins in CheckTransaction. 2011-07-31 14:20:10 +02:00
Wladimir J. van der Laan dedf83a19b Properly html-escape labels 2011-07-31 12:56:46 +02:00
Wladimir J. van der Laan a5e1325879 comment update 2011-07-30 19:28:41 +02:00
Wladimir J. van der Laan f0ec774d9c make sure address book model is up to date after sending coins 2011-07-30 19:21:46 +02:00
Han Lin Yap 8c2143d4d8 Comment "deprecated" 2011-07-30 19:58:22 +03:00
Wladimir J. van der Laan 04f38adf73 Remove unused variable 2011-07-30 18:48:05 +02:00
Wladimir J. van der Laan 2f5d380943 Hide addresses in transaction overview by default, they can be re-shown as a configuration option 2011-07-30 17:42:02 +02:00
Wladimir J. van der Laan 1aafe34a08 Make dot in amount field more apparent 2011-07-30 17:01:31 +02:00
Wladimir J. van der Laan 19fba3cd24 Make debug info more interesting (show SHA160 addresses for inputs) 2011-07-29 23:11:40 +02:00
Wladimir J. van der Laan 3b59297b36 Remove no longer valid comment 2011-07-29 16:16:12 +02:00
Wladimir J. van der Laan 53d65b5500 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-07-29 14:45:54 +02:00
Wladimir J. van der Laan ee014e5b10 Full support for other units, add configuration option for default unit (used when displaying amounts) 2011-07-29 14:36:35 +02:00
Wladimir J. van der Laan b5b1d1a66b Merge branch 'master' of https://github.com/bitcoin/bitcoin
Conflicts:
	src/script.cpp
2011-07-27 21:44:55 +02:00
Wladimir J. van der Laan 7df001be94 normalize SIGNAL/SLOT signatures (http://marcmutz.wordpress.com/effective-qt/prefer-to-use-normalised-signalslot-signatures/) 2011-07-27 20:54:10 +02:00
Wladimir J. van der Laan 384625c1a6 also accept numbers without dot/decimals for parsing, fixes transaction filter row 2011-07-27 20:52:00 +02:00
Matt Corallo 687c82558c Fix EncryptKeys crash introduced by a9ba4710, identified by TD. 2011-07-27 18:02:39 +02:00
Jeff Garzik a139ed74f2 CAddrDB::LoadAddresses: properly initialize CAddress
Fixes issue #424
2011-07-26 15:15:55 -04:00
Pieter Wuille b63241d451 Bugfix: don't overuse limited ExtractAddress
ExtractAddress was called with the keystore as argument in RPC and
UI, limiting results to own keys. This caused empty "address"
fields.
2011-07-26 19:41:47 +02:00
Wladimir J. van der Laan dd61035645 show amounts in <b>bold</b> in confirmation dialog 2011-07-26 17:37:26 +02:00
Wladimir J. van der Laan 690c723e5f make SetHash160 return a value (as specified in the function signature) 2011-07-26 16:59:31 +02:00
Wladimir J. van der Laan 5326a31249 make SetHash160 return a value (as specified in the function signature) 2011-07-26 16:54:32 +02:00
Wladimir J. van der Laan 491ad6db50 Merge remote branch 'upstream/master'
Conflicts:
	src/bitcoinrpc.cpp
2011-07-26 16:47:23 +02:00
Wladimir J. van der Laan 83c8d678aa Reset unit to default when clearing the field, to prevent confusion 2011-07-26 13:31:59 +02:00
Wladimir J. van der Laan f2b10f6469 refuse to format nor parse invalid units 2011-07-26 13:27:33 +02:00
Wladimir J. van der Laan 587e52855a allow multiple units in bitcoin amount widget (for example, for sending) using a combobox 2011-07-26 13:08:34 +02:00
Wladimir J. van der Laan ca1dbe10ed Negative transaction color changed to red (was grey due to mistake) 2011-07-26 09:16:50 +02:00
JoelKatz 67ed7d9d49 Fix UNIX-specific thread handle leak. 2011-07-25 15:06:45 -07:00
Wladimir J. van der Laan e780b94bd3 fix unit names (μBTC) 2011-07-25 22:28:12 +02:00
Wladimir J. van der Laan e285ffcd05 preparations for multiple unit (uBTC, mBTC, BTC) support, fix amount entry issue 2011-07-25 21:38:54 +02:00
Wladimir J. van der Laan bbae0fc9ef put color constants in guiconstants.h 2011-07-25 18:39:52 +02:00
Jeff Garzik a9ba47101a Merge pull request #403 from sipa/cbitcoinaddress
keys indexed by address + introduced CBitcoinaddress
2011-07-24 15:38:38 -07:00
Wladimir J. van der Laan daa1a7398f better exit icon 2011-07-24 19:09:29 +02:00
Wladimir J. van der Laan f5472574a7 make all tab icons blue/gray for more consistencyx 2011-07-24 18:32:21 +02:00
Wladimir J. van der Laan 591dcaf681 improve tooltip texts 2011-07-24 18:06:07 +02:00
Pieter Wuille a7dd11c6da Fix for small change outputs
With the separation of CENT and MIN_TX_FEE, it is now reasonable
to create change outputs between 0.01 and 0.0005, as these are
spendable according to the policy, even though they require a fee
to be paid.

Also, when enough fee was already present, everything can go into
a change output, without further increasing the fee.
2011-07-24 16:37:09 +02:00
Wladimir J. van der Laan 8a13456f3a add windows program (.exe) icon 2011-07-24 15:53:27 +02:00
Wladimir J. van der Laan 1a925b8e60 Merge pull request #9 from celil-kj/master
allow decimals such as .05 for amount of bitcoins to send
2011-07-24 02:41:19 +02:00
Celil 2eac3a6dec Allow ammount field to be empty so that one can specify .05 instead of
having to type the leading zero as in 0.05
2011-07-22 16:55:50 -07:00
Wladimir J. van der Laan 7beada58cd Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-07-22 21:41:24 +02:00
Wladimir J. van der Laan 8b936b617f Implement range... transaction filter 2011-07-22 18:30:25 +02:00
Wladimir J. van der Laan 73cd5e5212 fix clear() (clear red/invalid status) 2011-07-22 17:06:37 +02:00
Matt Corallo 643160f6e7 Actually use mapAlreadyAskedFor.
Previously, mapAlreadyAskedFor was read from, but never added to.
The original intent was to use mapAlreadyAskedFor to keep track
of the time an item was requested and "Each retry is 2 minutes
after the last".
This implements that intent.
2011-07-21 22:06:20 +02:00
Wladimir J. van der Laan 174b3eddc0 one remove/delete icon is enough and the red minus better matches the add icon 2011-07-18 21:02:17 +02:00
Wladimir J. van der Laan 8ea1c9a418 Merge branch 'notebook' 2011-07-18 18:50:35 +02:00
Wladimir J. van der Laan 68e327ae7b move buttons to bottom of send coins tab, outside of scroll area 2011-07-18 18:39:49 +02:00
Wladimir J. van der Laan 24c835b0b6 windows build fix 2011-07-18 18:34:53 +02:00
Abraham Jewowich 03f8b54565 Fix bug with accessing vchData[0] when vchData is empty.
Fix typo in CBase58Data::CompareTo
2011-07-18 06:26:54 -07:00
Wladimir J. van der Laan a75e1e3292 Fix "Last received block was generated Up to date" 2011-07-18 06:55:05 +02:00
Wladimir J. van der Laan 1907b96d69 put sendcoins entries in scroll area, so that window does not become bigger than screen with many recipients 2011-07-17 17:42:41 +02:00
Wladimir J. van der Laan 8dcffd4d07 show rotating spinner when block download out of date, tick otherwise 2011-07-17 17:31:37 +02:00
Wladimir J. van der Laan 5df0b03c95 make initial block download reporting somewhat better by tracking version responses 2011-07-17 14:17:13 +02:00
Pieter Wuille cb61b8dc4c split off CBase58Data from CBitcoinAddress
Split off features unrelated to addresses from CBitcoinAddress to
CBase58Data, so they can be reused.
2011-07-17 12:09:17 +02:00
Pieter Wuille 2ffba736e9 Use CBitcoinAddress instead of string/uint160
Instead of conversion functions between pubkey/uint160/address in
base58.h, have a fully fledged class CBitcoinAddress (CAddress was
already taken) to represent addresses.
2011-07-17 12:09:14 +02:00
Pieter Wuille 03fbd79049 get rid of mapPubKeys
Make CKeyStore's interface work on uint160's instead of pubkeys, so
no separate global mapPubKeys is necessary anymore.
2011-07-17 12:07:59 +02:00
Wladimir J. van der Laan 9b9cd3dd20 add missing icon 2011-07-16 19:35:41 +02:00
Wladimir J. van der Laan 9958e09dbc Revert "Now that send coins / receive coins etc are tabs, remove them from menu, and reorganize menu bar"
This reverts commit ea37fb9187.
2011-07-16 19:28:15 +02:00
Wladimir J. van der Laan a5e6d72339 add sendmany support 2011-07-16 19:25:02 +02:00
Eric Hosmer 88cab1e4a3 Added crypter to makefile.vc. 2011-07-15 23:38:46 -04:00
Wladimir J. van der Laan d421117620 Merge branch 'master' of https://github.com/bitcoin/bitcoin 2011-07-15 16:42:44 +02:00
Wladimir J. van der Laan 19366be186 Merge remote-tracking branch 'satoshi/qtui'
Conflicts (resolved by copying files from remote branch):
	.gitignore
	src/cryptopp/cpu.cpp
	src/cryptopp/cpu.h
	src/cryptopp/cryptlib.h
	src/cryptopp/iterhash.h
	src/cryptopp/misc.h
	src/cryptopp/secblock.h
	src/cryptopp/sha.cpp
	src/cryptopp/sha.h
	src/cryptopp/smartptr.h
	src/json/json_spirit_reader.cpp
	src/json/json_spirit_value.cpp
	src/json/json_spirit_writer.cpp
2011-07-15 15:12:17 +02:00
Wladimir J. van der Laan a35ee96336 Add call to request unconfirmed balance 2011-07-15 15:09:49 +02:00
Wladimir J. van der Laan ea37fb9187 Now that send coins / receive coins etc are tabs, remove them from menu, and reorganize menu bar 2011-07-15 14:55:21 +02:00
Celil 608810a3e7 Fix error when export is cancelled without specifying a filename. 2011-07-14 17:11:11 -07:00
Chris Howie 76aed0141c listsinceblock now shows txns with 0 confirms, as well as allows the lastblock return property to be targeted to the block with the specified depth 2011-07-14 15:56:29 -04:00
Chris Howie 5b2f35167f Add listsinceblock command for retrieving all wallet transactions in blocks after the specified block 2011-07-14 15:56:21 -04:00
Wladimir J. van der Laan 77b615ceba solve warnings at startup 2011-07-14 21:21:17 +02:00
Matt Corallo 3a10d1c493 Fix bad return values in LoadWallet. 2011-07-14 18:15:50 +02:00
Pieter Wuille 24271c542b Merge pull request #412 from sgimenez/db-transactions
Single DB transactions
2011-07-14 05:29:09 -07:00
Stéphane Gimenez d655a26c9d Single DB transaction for addresses from DNS seeds 2011-07-14 03:50:06 +02:00
Matt Corallo a2606bad09 Fix Build in GetReservedKey() in wallet.cpp 2011-07-14 03:34:07 +02:00
Patrick Varilly 8c41469140 Single DB transaction for all addresses in a message
Cuts disk activity at startup immensely
2011-07-14 03:29:07 +02:00
Matt Corallo cee69980b0 Generate Warning when using default key. 2011-07-14 03:28:31 +02:00
Matt Corallo 0d7b28e52e Fix crashes when a wallet is locked and GetReservedKey() is called 2011-07-14 03:11:40 +02:00
Jeff Garzik 9cd22ab862 Merge pull request #406 from muggenhor/warning-fixes
Warning fixes
2011-07-13 08:55:49 -07:00
Jeff Garzik b8cbbc2c28 Merge pull request #405 from sipa/syncdefault
Bugfix: add autogenerated addresses to address book
2011-07-13 08:53:57 -07:00
Giel van Schijndel 84c3c2ebe7 fix warning: control reaches end of non-void function [-Wreturn-type]
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-13 14:25:45 +02:00
Giel van Schijndel 93752b8a39 fix warning: variable ‘nMinDepth’ set but not used [-Wunused-but-set-variable]
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-13 13:43:24 +02:00
Matt Corallo d5e9d0000d Fix makefile.linux-mingw 2011-07-13 13:12:49 +02:00
Pieter Wuille d5115a71a1 Bugfix: add autogenerated addresses to address book 2011-07-13 13:05:08 +02:00
Jeff Garzik 24a0def8cd Bump version to 0.3.25
Yes, we might release as v0.4, but let's just do a simple increment
for now.
2011-07-13 01:19:26 -04:00
Jeff Garzik 116df55e21 Update CWallet::LoadWallet for proper return type. 2011-07-13 01:07:49 -04:00
Giel van Schijndel d0538a81bb fix warning: unused function 'SigIllHandlerSSE2' [-Wunused-function]
Only declare & define SigIllHandlerSSE2 when its used.

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-13 05:10:15 +02:00
Giel van Schijndel 858cebed7d fix warning: unused variable 'X' [-Wunused-variable]
Remove several unused variables.

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-13 05:10:15 +02:00
Giel van Schijndel 225f222c9f fix warning: X enumeration values not handled in switch [-Wswitch-enum]
Add default cases to opcode switches to assert that they should never
occur.

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-13 05:10:15 +02:00
Giel van Schijndel d7f1d200ab fix warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
Don't check for a negative parameter count, because not only will it
never happen, it doesn't make any sense either.

Invalid sockets (as returned by socket(2)) are always exactly -1 (not
just negative as negative file descriptors are technically not
prohibited by POSIX) on POSIX systems.  Since we store them in SOCKET
(unsigned int), however, that really is ~0U (or MAX_UINT) which happens
to be what INVALID_SOCKET is already defined to, so an additional check
for being negative is not only unnecessary (unsigned integers aren't
*ever* negative) its redundant as well (the INVALID_SOCKET comparison is
enough).

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-13 05:07:44 +02:00
Giel van Schijndel f85c097449 fix warnings: using the result of an assignment as a condition without parentheses [-Wparentheses]
Don't unnecessarily assign to variables within the *boolean* expression
of a conditional.

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-13 05:07:44 +02:00
Giel van Schijndel ecf1c79aad fix warnings: expression result unused [-Wunused-value]
In the assert()s take advantage of the fact that string constants
("string") are effectively of type 'const char []', which when used in
an expression yield a non-NULL pointer.

An assertion that should always fail can thus be formulated as:
  assert(!"fail);

An assertion where a text message should be added to the expression can
be written as such:
  assert("message" && expression);

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-13 05:07:44 +02:00
Giel van Schijndel df40181417 fix warning on 64bit systems: cast to pointer from integer of different size [-Wint-to-pointer-cast]
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-07-13 05:07:44 +02:00
Matt Corallo 0ca8324f59 Update makefile.linux-mingw to work with crypter and UPnP fix. 2011-07-12 22:44:00 -04:00
Jeff Garzik 0fa89d8e81 Merge pull request #381 from TheBlueMatt/nminversion
Add minversion to wallet.
2011-07-12 19:34:30 -07:00
Jeff Garzik 0bad8e4237 Merge pull request #352 from TheBlueMatt/newenc
Wallet Private Key Encryption (on CWallet)
2011-07-12 19:10:12 -07:00
Matt Corallo 7414733bea Make an invalid addrIncoming so that old clients crash.
This prevents old clients from opening, and thus corrupting
or otherwise causing harm to encrypted wallets.
2011-07-13 02:11:25 +02:00
Matt Corallo 96f34cd5c4 Use DB Transactions when encrypting wallet.
This speeds up the encryption process significantly.
2011-07-13 02:11:25 +02:00
Pieter Wuille 0efda1a79e Do not use obsolete CPrivKey for passing keys around 2011-07-13 02:11:25 +02:00
Matt Corallo fbeb5fb483 Add the walletlock RPC method to lock the wallet manually. 2011-07-13 02:11:25 +02:00
Matt Corallo 81598083e7 Dynamically remove/insert the Options for encryption in the menus. 2011-07-13 02:11:25 +02:00
Matt Corallo 98545d2cdf Push unlocked_until in getinfo. 2011-07-13 02:11:25 +02:00
Matt Corallo ddebdd9a8f Set the number of SHA512 rounds based on the speed of the computer. 2011-07-13 02:11:25 +02:00
Matt Corallo 4e87d341f7 Add wallet privkey encryption.
This commit adds support for ckeys, or enCrypted private keys, to the wallet.
All keys are stored in memory in their encrypted form and thus the passphrase
is required from the user to spend coins, or to create new addresses.

Keys are encrypted with AES-256-CBC using OpenSSL's EVP library. The key is
calculated via EVP_BytesToKey using SHA512 with (by default) 25000 rounds and
a random salt.

By default, the user's wallet remains unencrypted until they call the RPC
command encryptwallet <passphrase> or, from the GUI menu, Options->
Encrypt Wallet.

When the user is attempting to call RPC functions which require the password
to unlock the wallet, an error will be returned unless they call
walletpassphrase <passphrase> <time to keep key in memory> first.

A keypoolrefill command has been added which tops up the users keypool
(requiring the passphrase via walletpassphrase first).
keypoolsize has been added to the output of getinfo to show the user the
number of keys left before they need to specify their passphrase (and call
keypoolrefill).

Note that walletpassphrase will automatically fill keypool in a separate
thread which it spawns when the passphrase is set. This could cause some
delays in other threads waiting for locks on the wallet passphrase, including
one which could cause the passphrase to be stored longer than expected,
however it will not allow the passphrase to be used longer than expected as
ThreadCleanWalletPassphrase will attempt to get a lock on the key as soon
as the specified lock time has arrived.

When the keypool runs out (and wallet is locked) GetOrReuseKeyFromPool
returns vchDefaultKey, meaning miners may start to generate many blocks to
vchDefaultKey instead of a new key each time.

A walletpassphrasechange <oldpassphrase> <newpassphrase> has been added to
allow the user to change their password via RPC.

Whenever keying material (unencrypted private keys, the user's passphrase,
the wallet's AES key) is stored unencrypted in memory, any reasonable attempt
is made to mlock/VirtualLock that memory before storing the keying material.
This is not true in several (commented) cases where mlock/VirtualLocking the
memory is not possible.

Although encryption of private keys in memory can be very useful on desktop
systems (as some small amount of protection against stupid viruses), on an
RPC server, the password is entered fairly insecurely. Thus, the only main
advantage encryption has for RPC servers is for RPC servers that do not spend
coins, except in rare cases, eg. a webserver of a merchant which only receives
payment except for cases of manual intervention.

Thanks to jgarzik for the original patch and sipa, gmaxwell and many others
for all their input.

Conflicts:

	src/wallet.cpp
2011-07-13 02:11:25 +02:00
Wladimir J. van der Laan 4a843976e0 also show balloon on sent transaction, to notify when coins sent 2011-07-11 21:01:53 +02:00
Wladimir J. van der Laan df5ccbd2b2 Show unconfirmed balance on overview page 2011-07-11 20:42:10 +02:00
Wladimir J. van der Laan eee0d2391c Make tooltip on refresh more clear 2011-07-11 19:35:08 +02:00
Doug Huff a48c671957 Make mlock() and munlock() portable to systems that require the address to be on a page boundary. 2011-07-10 18:15:05 +02:00
Wladimir J. van der Laan c87cdc9160 wxp/mingw build fixes 2011-07-09 15:58:05 +02:00
Wladimir J. van der Laan 0b814f9ea3 add better windows7/vista look by nico_w 2011-07-09 15:26:57 +02:00
Wladimir J. van der Laan 7668631d1b remove placeholder text from ui form, code generator screws up on older qt 2011-07-09 14:00:00 +02:00
Wladimir J. van der Laan f54d59ba4a add export functionality for address book / receiving addresses 2011-07-09 10:54:17 +02:00
Wladimir J. van der Laan 2eace48d9a remove magic number: change threshold for nLockTime to constant 2011-07-09 10:30:23 +02:00
Wladimir J. van der Laan fa989f42c1 remove magic number: change threshold for nLockTime to constant 2011-07-09 10:25:12 +02:00
Wladimir J. van der Laan aa496b75c2 remove magic number: change threshold for nLockTime to constant 2011-07-09 10:11:28 +02:00
Wladimir J. van der Laan 51d7cc07f1 Add context menu on transaction list: copy label, copy address, edit label, show details 2011-07-08 22:27:36 +02:00
Wladimir J. van der Laan 35105534e7 Transaction list: less terse tooltip 2011-07-08 19:56:28 +02:00
Wladimir J. van der Laan 3ddf10e5ca send coins dialog: make sure send button remain default button (triggered with enter) 2011-07-08 19:51:24 +02:00
Wladimir J. van der Laan 83b8237046 forgot synced icons 2011-07-08 19:25:35 +02:00
Wladimir J. van der Laan d8aeb8dd2a Reorganize "send coins" tab 2011-07-08 19:09:13 +02:00
Wladimir J. van der Laan 84c8506e90 Display a "freshness" indicator instead of nr of blocks 2011-07-08 18:05:23 +02:00
Dylan Noblesmith c1aacf0be3 mlock() all private keys in memory
Inline comment and idea come from the encprivkeys branch
by Matt Corallo <matt@bluematt.me>.
2011-07-08 15:46:47 +02:00
Pieter Wuille acd6501610 Prepare codebase for Encrypted Keys. 2011-07-08 15:46:47 +02:00
Wladimir J. van der Laan 610121480c "Status" doesn't fit into narrow first column in transaction history, make the header empty 2011-07-07 21:25:17 +02:00
Wladimir J. van der Laan ba3d0255fc Add German translation by nico_w 2011-07-07 21:19:25 +02:00
Wladimir J. van der Laan 0002bdddfa add [testnet] to whatever the current window title is 2011-07-07 18:38:37 +02:00
Wladimir J. van der Laan 94fe42a945 Selection/tab navigation fixes 2011-07-07 18:25:27 +02:00
Wladimir J. van der Laan 3479849dc4 convert to full tab-based ui 2011-07-07 17:33:15 +02:00
Wladimir J. van der Laan 5eaa1b435c Qt handles the "..." for too long table rows. Remove this functionality from TransactionTableModel... 2011-07-07 16:57:19 +02:00
Wladimir J. van der Laan ae3d0aba15 Sync to bitcoin git e94010b239 2011-07-07 15:22:54 +02:00
Wladimir J. van der Laan 42c405ad23 temp patch for qtui 2011-07-07 15:18:35 +02:00
Wladimir J. van der Laan 33c75fd9aa CKeyStore::AddKey must return a boolean 2011-07-07 15:16:26 +02:00
Wladimir J. van der Laan fbaee7a853 Export functionality for transaction list 2011-07-07 14:27:16 +02:00