aboutsummaryrefslogtreecommitdiff
path: root/src/wallet.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Prefer 'unsigned int' for loop index variables tested against ::size()Jeff Garzik2012-04-221-2/+2
| | | | | | | | | C++ STL ::size() generally returns unsigned, which implies that "int idx" style of loop variable will generate a signed-vs-unsigned comparison warning when testing the loop exit condition "idx < blah.size()" Update areas of the bitcoin code where loop variables may be more properly and correctly defined as unsigned.
* Further reduce header dependenciesPieter Wuille2012-04-171-1/+2
| | | | | | | This commit removes the dependency of serialize.h on PROTOCOL_VERSION, and makes this parameter required instead of implicit. This is much saner, as it makes the places where changing a version number can have an influence obvious.
* Move CWalletDB code to new walletdb module.Jeff Garzik2012-04-171-1/+2
| | | | | In addition to standard code separation, this change opens the door to fixing several include inter-dependencies.
* Remove headers.hPieter Wuille2012-04-171-1/+5
|
* Fix loop index var types, fixing many minor sign comparison warningsJeff Garzik2012-04-151-7/+7
| | | | | foo.size() typically returns an unsigned integral type; make loop variables match those types' signedness.
* fix warnings: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]Wladimir J. van der Laan2012-04-151-0/+2
|
* Use scoped locks instead of CRITICAL_BLOCKPieter Wuille2012-04-091-38/+43
|
* qtui.h/noui.h interface cleanupWladimir J. van der Laan2012-04-041-1/+1
| | | | | | | - rename wxMessageBox, remove redundant arguments to noui/qtui calls - also, add flag to force blocking, modal dialog box for disk space warning etc - clarify function naming - no more special MessageBox needed from AppInit2, as window object is created before calling AppInit2
* Update UI through async calls MainFrameRepaint and AddressBookRepaint ↵Wladimir J. van der Laan2012-04-041-0/+2
| | | | | | | | instead of a timer. - Overall, this is better design - This fixes problems with the address book UI not updating when the address book is changed through RPC - Move Statusbar change detection responsibility to ClientModel
* Introduce explicit -walletupgrade optionPieter Wuille2012-03-221-17/+22
| | | | | | | | | | | | | | Do not automatically change the wallet format unless the user takes an explicit action that implies an upgrade (encrypting, for now), or uses -walletupgrade. -walletupgrade optionally takes an integer argument: the client version up to which upgrading is allowed. Without an argument, it is upgraded to latest supported version. If an argument to -walletupgrade is provided at the time the wallet is created, the new wallet will initially not use features beyond that version. Third, the current wallet version number is reported in getinfo.
* Merge pull request #864 from sipa/fix_856Pieter Wuille2012-02-191-2/+46
|\ | | | | Make compressed pubkeys require client >=0.5.99
| * Make compressed pubkeys require 0.6.0Pieter Wuille2012-02-181-1/+8
| |
| * Move GenerateNewKey back to CWalletPieter Wuille2012-02-181-0/+10
| |
| * Add SetMinVersion to CWalletPieter Wuille2012-02-181-2/+29
| |
* | Free pwalletdbEncryption after encryping walletPieter Wuille2012-02-181-1/+1
|/ | | | Fixes a memory leak.
* Update all copyrights to 2012Gavin Andresen2012-02-071-1/+1
|
* Replace OP_EVAL (BIP 12) with Pay-to-script-hash (BIP 16).Gavin Andresen2012-01-131-3/+3
|
* Fix broken ExtractAddress (refactored, made callers check for addresses in ↵Gavin Andresen2011-12-221-2/+2
| | | | keystore if they care)
* Revert "Use standard C99 (and Qt) types for 64-bit integers"Wladimir J. van der Laan2011-12-211-64/+62
| | | | This reverts commit 21d9f36781604e4ca9fc35dc65265593423b73e9.
* Use standard C99 (and Qt) types for 64-bit integersLuke Dashjr2011-12-201-62/+64
|
* Merge pull request #677 from luke-jr/minfee_modesGavin Andresen2011-12-201-1/+2
|\ | | | | API: GetMinFee modes
| * GetMinFee takes a mode parameter (GMF_{BLOCK,RELAY,SEND}) instead of fForRelayLuke Dashjr2011-12-141-1/+2
| |
* | Merge branch 'op_eval'Gavin Andresen2011-12-201-7/+32
|\ \
| * | Fix logic for IsChange() for send-to-self transactions.Gavin Andresen2011-12-191-1/+1
| | |
| * | Use block times for 'hard' OP_EVAL switchover, and refactored EvalScriptGavin Andresen2011-12-191-3/+11
| | | | | | | | | | | | | | | | | | 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.
| * | OP_EVAL implementationGavin Andresen2011-12-191-2/+20
| | | | | | | | | | | | | | | | | | 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.
| * | Support 3 new multisignature IsStandard transactionsGavin Andresen2011-12-191-5/+4
| | | | | | | | | | | | | | | Initial support for (a and b), (a or b), and 2-of-3 escrow transactions (where a, b, and c are keys).
* | | Use std::numeric_limits<> for typesafe INT_MAX/etcGavin Andresen2011-12-191-1/+1
|/ /
* | Key import and exportPieter Wuille2011-12-171-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | Introduces two new RPC calls: * dumpprivkey: retrieve the private key corresponding to an address * importprivkey: add a private key to your wallet The private key format is analoguous to the address format. It is a 51-character base58-encoded string, that includes a version number and a checksum. Includes patch by mhanne: * add optional account parameter for importprivkey, if omitted use default
* | Preparations for key import/exportPieter Wuille2011-12-171-1/+45
| |
* | Make CWalletTx::pwallet privatePieter Wuille2011-12-171-3/+3
| |
* | Implement an mlock()'d string class for storing passphrasesDylan Noblesmith2011-11-261-3/+3
| | | | | | | | | | | | | | SecureString is identical to std::string except with secure_allocator substituting for std::allocator. This makes casting between them impossible, so converting between the two at API boundaries requires calling ::c_str() for now.
* | Never remove database files on shutdown, it caused unreadable wallets on ↵Gavin Andresen2011-11-201-3/+1
| | | | | | | | some testers' machines.
* | Only remove database log files on shutdown after wallet encryption/rewritev0.5.0rc6Gavin Andresen2011-11-171-2/+3
| |
* | Create new keypool for newly encrypted wallets.Gavin Andresen2011-11-171-1/+32
| |
* | Obsolete keypool and make sure database removes log files on shutdown.Gavin Andresen2011-11-151-7/+14
| |
* | ResilveringPieter Wuille2011-11-141-0/+10
| |
* | Some extra commentsPieter Wuille2011-11-071-0/+6
| |
* | Add returns to avoid annoying compile-time warnings.Matt Corallo2011-10-251-0/+1
| |
* | remove cryptopp dependency, add simple unittest for SHA256Transform()Nils Schneider2011-09-301-1/+0
| |
* | update to work with new lock system, add protocol.* to build systemWladimir J. van der Laan2011-09-021-1/+1
| |
* | Merge branch 'master' of https://github.com/bitcoin/bitcoinWladimir J. van der Laan2011-09-021-122/+117
|\| | | | | | | | | Conflicts: src/main.cpp
| * obtain cs_wallet mutex to protect vchDefaultKeyGavin Andresen2011-09-011-9/+12
| |
| * Logic running with -keypool=0 was wrong (empty keys were being returned). ↵Gavin Andresen2011-09-011-7/+24
| | | | | | | | | | | | Fixes #445 Renames GetOrReuseKeyFromKeyPool to GetKeyFromPool, with fAllowReuse arg and bool result.
| * Fixed potential deadlocks in GUI code.Gavin Andresen2011-08-311-16/+0
| | | | | | | | | | 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.
| * Fix rpc-hanging deadlocksGavin Andresen2011-08-311-109/+100
| | | | | | | | | | 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.
* | Merge branch 'master' of https://github.com/bitcoin/bitcoinWladimir J. van der Laan2011-08-161-1/+2
|\|
| * Unify copyright notices.Matt Corallo2011-08-091-1/+2
| | | | | | | | | | | | To a variation on: // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2011 The Bitcoin developers
* | Merge branch 'master' of https://github.com/bitcoin/bitcoinWladimir J. van der Laan2011-07-271-1/+1
|\| | | | | | | | | Conflicts: src/script.cpp
| * Bugfix: don't overuse limited ExtractAddressPieter Wuille2011-07-261-1/+1
| | | | | | | | | | | | ExtractAddress was called with the keystore as argument in RPC and UI, limiting results to own keys. This caused empty "address" fields.