aboutsummaryrefslogtreecommitdiff
path: root/src/rpcwallet.cpp
AgeCommit message (Collapse)Author
2014-05-08Check redeemScript size does not exceed 520 byte limitPeter Todd
redeemScripts >520bytes can't be spent due to the MAX_SCRIPT_ELEMENT_SIZE limit; previously the addmultisigaddress and createmultisig RPC calls would let you violate that limit unknowingly. Also made the wallet code itself check the redeemScript prior to adding it to the wallet, which in the (rare) instance that a user has added an invalid oversized redeemScript to their wallet causes an error on startup. The affected key isn't added to the wallet; other keys are unaffected.
2014-03-27[Qt] fix style, formating, comment and indentation problemsPhilip Kaufmann
- introduced by #3920
2014-03-10Merge pull request #3717 from djpnewton/wallet-txcountJeff Garzik
add getwalletinfo RPC call with wallet transaction count
2014-02-27move wallet info stuff to "getwalletinfo" rpc (left original walletDaniel Newton
stuff in getinfo call for backwards compatibility) add wallet transaction count to getwalletinfo rpc call
2014-02-26Remove CWalletTx::vfSpentGavin Andresen
Use the spent outpoint multimap to figure out which wallet transaction outputs are unspent, instead of a vfSpent array that is saved to disk.
2014-02-21Remove "conflicted" as transaction category.Wladimir J. van der Laan
We were losing information about sent/received by overriding the category in case of a conflicted transaction. Hence, remove the "conflicted" category. Conflicted status of a transaction can still be determined by looking for confirmations<0.
2014-02-17Merge pull request #3679 from laanwj/2014_02_walletpassphrase_behaviorGavin Andresen
Document new `walletpassphrase` behavior in 0.9
2014-02-17Serialize only CTransaction data in gettransaction RPC hexWladimir J. van der Laan
Don't include trailing implementation-specific wallet metadata. Fixes 3a1c20b.
2014-02-16Merge pull request #3646Wladimir J. van der Laan
5770254 Copyright header updates s/2013/2014 on files whose last git commit was done in 2014. contrib/devtools/fix-copyright-headers.py script to be able to perform this maintenance task with ease during the rest of the year, every year. Modifications to contrib/devtools/README.md to document what fix-copyright-headers.py does. (gubatron)
2014-02-16Document new `walletpassphrase` behavior in 0.9Wladimir J. van der Laan
Also add a note to the release notes. Fixes #3672.
2014-02-14Track and report wallet transaction clonesGavin Andresen
Adds a "walletconflicts" array to transaction info; if a wallet transaction is mutated, the alternate transaction id or ids are reported there (usually the array will be empty). Metadata from the original transaction is copied to the mutant, so the transaction time and "from" account of the mutant are reported correctly.
2014-02-14Handle "conflicted" transactions properlyGavin Andresen
Extend CMerkleTx::GetDepthInMainChain with the concept of a "conflicted" transaction-- a transaction generated by the wallet that is not in the main chain or in the mempool, and, therefore, will likely never be confirmed. GetDepthInMainChain() now returns -1 for conflicted transactions (0 for unconfirmed-but-in-the-mempool, and >1 for confirmed). This makes getbalance, getbalance '*', and listunspent all agree when there are mutated transactions in the wallet. Before: listunspent: one 49BTC output getbalance: 96 BTC (change counted twice) getbalance '*': 46 BTC (spends counted twice) After: all agree, 49 BTC available to spend.
2014-02-13Merge pull request #3662Wladimir J. van der Laan
0542619 Rename IsConfirmed to IsTrusted to better match the intended behavior. (Gregory Maxwell)
2014-02-13Add raw transaction hex to `gettransaction` wallet RPCWladimir J. van der Laan
This allows getting raw transaction data from the wallet even if the transaction is no longer in the blockchain / mempool (for example if it got orphaned due to malleability abuse).
2014-02-12Rename IsConfirmed to IsTrusted to better match the intended behavior.Gregory Maxwell
This doesn't change the functionality at all.
2014-02-09Copyright header updates s/2013/2014 on files whose last git commit was done ↵gubatron
in 2014. contrib/devtools/fix-copyright-headers.py script to be able to perform this maintenance task with ease during the rest of the year, every year. Modifications to contrib/devtools/README.md to document what fix-copyright-headers.py does.
2014-01-30small changes to rpc command help message stringsPhilip Kaufmann
2014-01-29Re-add BTC/KB in help message for `settxfee`Wladimir J. van der Laan
Commit a22eed6a got reverted in a RPC documentation update, redo it.
2014-01-29Mention `*` value for account in documentation for `getbalance` RPCWladimir J. van der Laan
2014-01-17qt: allow `walletpassphrase` in debug console without -serverWladimir J. van der Laan
Currently it is only possible to use `walletpassphrase` to unlock the wallet when bitcoin is started in server mode. Almost everything that manipulates the wallet in the RPC console needs the wallet to be unlocked and is thus unusable without -server. This is pretty unintuitive to me, and I'm sure it's even more confusing to users. Solve this with a very minimal change: by making the GUI start a dummy RPC thread just to handle timeouts.
2013-12-20Merge pull request #3369Wladimir J. van der Laan
6027b46 Add rpc command 'getunconfirmedbalance' to obtain total unconfirmed balance (Michael Bauer)
2013-12-13Move `verifymessage` from rpcwallet to rpcmiscWladimir J. van der Laan
Enables it in --disable-wallet compiles.
2013-12-13Move `createmultisig` from rpcwallet to rpcmiscWladimir J. van der Laan
Enables it in --disable-wallet compiles.
2013-12-13Move `validateaddress` from rpcwallet to rpcmiscWladimir J. van der Laan
Enables it in --disable-wallet compiles. Delimit wallet-using part using #ifdef ENABLE_WALLET.
2013-12-13Move `settxfee` from rpcblockchain to rpcwalletWladimir J. van der Laan
`settxfee` only affects the wallet, not the block chain.
2013-12-09rpcwallet: use EnsureWalletIsUnlocked() where possiblePhilip Kaufmann
- replaces a pwalletMain->IsLocked() check - in keypoolrefill init kpSize to 0 as we have the logic to determine max kpSize in pwalletMain->TopUpKeyPool() anyway
2013-12-08Add rpc command 'getunconfirmedbalance' to obtain total unconfirmed balanceMichael Bauer
Conflicts: src/rpcserver.cpp
2013-12-04Move getinfo to rpcnet.cppWladimir J. van der Laan
Where to place `getinfo` is a difficult issue as it shows information from the wallet, net and block chain. However, I moved it out of rpcwallet as the command needs also to be available without wallet.
2013-12-04Move HelpExample* from rpcwallet to rpcserverWladimir J. van der Laan
General functions used throughout the RPC framework don't belong in rpcwallet.
2013-11-30Refactor: move GetValueIn(tx) to tx.GetValueIn()Gavin Andresen
GetValueIn makes more sense as a CTransaction member.
2013-11-27Split up bitcoinrpc (code movement only)Wladimir J. van der Laan
Split bitcoinrpc up into - rpcserver: bitcoind RPC server - rpcclient: bitcoin-cli RPC client - rpcprotocol: shared common HTTP/JSON-RPC protocol code One step towards making bitcoin-cli independent from the rest of the code, and thus a smaller executable that doesn't have to be linked against leveldb. This commit only does code movement, there are no functional changes.
2013-11-13Issue #1865 - Clean up RPC help messagessje
Based on the proposal, update the help message of rpc methods - strings arguments are in double quotes rather than square brackets - numeric arguments have no quotes (and no default value) - optional parameters are surrounded by round brackets - json arguments are strings but don't use double quotes Added 3 sections for the details - Arguments: lists each argument, it's type, required or not, a default, and a description - Result: The method result, with json format if applicable, type, and a description - Examples: examples calls using bitcoin-cli and curl for json rpc call Problems - maybe this is too verbose - lines might be too long - description are not good or complete - examples may be too much
2013-11-10Cleanup code using forward declarations.Brandon Dahler
Use misc methods of avoiding unnecesary header includes. Replace int typedefs with int##_t from stdint.h. Replace PRI64[xdu] with PRI[xdu]64 from inttypes.h. Normalize QT_VERSION ifs where possible. Resolve some indirect dependencies as direct ones. Remove extern declarations from .cpp files.
2013-10-24RPC: error code changes and prevent crash with walletpassphrasePhilip Kaufmann
- fix crash with walletpassphrase by checking if RPC server is running and give a friendly error message how to fix this (fixes #3100) - add 3 new RPCErrorCodes RPC_SERVER_NOT_STARTED, RPC_NODE_ALREADY_ADDED and RCP_NODE_NOT_ADDED (I checked the source to not use a number already in use for RPC_SERVER_NOT_STARTED) - use the new codes where needed / missing - add missing use of RPC_INVALID_PARAMETER
2013-10-22Merge branch 'bugfix_unknownoutputs' of git://github.com/luke-jr/bitcoinGavin Andresen
Conflicts: src/wallet.cpp Fixed LogPrint/printf merge conflict.
2013-10-20Merge pull request #3119Pieter Wuille
db0e8cc Bump Year Number to 2013 (super3)
2013-10-20Bump Year Number to 2013super3
2013-10-15Reimplement CBlockLocator's chain-related logic in CChain.Pieter Wuille
This removes a few unused CBlockLocator methods, and moves the construction and fork-finding logic to CChain (which can do these more efficiently, as it has a height-indexable chain available). It also makes CBlockLocator independent from the validation code.
2013-10-11Refactor/encapsulate chain globals into a CChain classPieter Wuille
2013-10-02RPC validateaddress: test pwalletMain for NULL (no-wallet mode)Jeff Garzik
2013-10-01Support absence of wallet (pwalletMain==NULL) in several locations,Jeff Garzik
notably RPC.
2013-09-12Make validateaddress provide redeemScriptPeter Todd
2013-09-02Merge pull request #2948 from jgarzik/changeaddrGregory Maxwell
RPC: add getrawchangeaddress, for raw transaction change destinations
2013-08-28RPC: add getrawchangeaddress, for raw transaction change destinationsJeff Garzik
2013-08-23Remove fAllowReuse from GetKeyFromPool.Gregory Maxwell
With the GUI password fix this was always false.
2013-08-22Payment Protocol: X509-validated payment requestsGavin Andresen
Add support for a Payment Protocol to Bitcoin-Qt. Payment messages are protocol-buffer encoded and communicated over http(s), so this adds a dependency on the Google protocol buffer library, and requires Qt with OpenSSL support.
2013-08-22Refactor: Move GetAccountAddresses to CWalletGavin Andresen
2013-08-22Refactor: CAddressBookData for mapAddressBookGavin Andresen
Straight refactor, so mapAddressBook stores a CAddressBookData (which just contains a std::string) instead of a std::string. Preparation for payment protocol work, which will add the notion of refund addresses to the address book.
2013-08-16Clarified the listsinceblock help testMicha
Specifically, the fact that the command relates to wallet transactions.
2013-08-14Merge pull request #2776 from jgarzik/keypoolsizeGavin Andresen
RPC: keypoolrefill now permits optional size parameter, to bump keypool