aboutsummaryrefslogtreecommitdiff
path: root/src/wallet.h
AgeCommit message (Collapse)Author
2015-02-03c++11: MOVEONLY: break circular dependency in walletCory Fields
c++11 (libc++'s stdlib implementation anyway) doesn't allow for map types to be forward-declared. for example: class foo; std::map<int, foo> bar; // error, foo has not been defined. class foo{}; Since CWallet and CWalletTx are inter-dependent, but only std::map<*,CWalletTx> is used, forward-declare CWallet instead and define CWalletTx first. Despite the mangled git diff, this change only amounts to moving ~320 lines in a single chunk.
2015-02-03c++11: MOVEONLY: move function definitions out of the headerCory Fields
These need to be moved out of the header in order to resolve a circular dependency between CWallet and CTxWallet. See next commit.
2015-02-03Merge pull request #5732Wladimir J. van der Laan
1371e6f Change "insane" to "absurd" (referring to high fees) in text strings and identifiers. (Daira Hopwood)
2015-01-31Change "insane" to "absurd" (referring to high fees) in text strings and ↵Daira Hopwood
identifiers. Note that this will also require translation changes in Transifex for the key "A fee higher than %1 is considered an insanely high fee." which is now "A fee higher than %1 is considered an absurdly high fee." Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2015-01-31Remove whitespaces before double colon in errors and logsPavel Janík
2015-01-26Merge pull request #4805Wladimir J. van der Laan
44bc988 [Wallet] Do not flush the wallet in AddToWalletIfInvolvingMe(..) (Cozz Lovan)
2015-01-05Replace direct use of 0 with SetNull and IsNullWladimir J. van der Laan
Replace x=0 with .SetNull(), x==0 with IsNull(), x!=0 with !IsNull(). Replace uses of uint256(0) with uint256().
2014-12-23Merge pull request #5485Wladimir J. van der Laan
aa279d6 Enforce minRelayTxFee on wallet created tx and add a maxtxfee option. (Gregory Maxwell)
2014-12-19Enforce minRelayTxFee on wallet created tx and add a maxtxfee option.Gregory Maxwell
Previously the minRelayTxFee was only enforced on user specified values. It was possible for smartfee to produce a fee below minRelayTxFee which would just result in the transaction getting stuck because it can't be relayed. This also introduces a maxtxfee option which sets an absolute maximum for any fee created by the wallet, with an intention of increasing user confidence that the automatic fees won't burn them. This was frequently a concern even before smartfees. If the configured fee policy won't even allow the wallet to meet the relay fee the transaction creation may be aborted.
2014-12-19Added "Core" to copyright headerssandakersmann
Github-Pull: #5494 Rebased-From: 15de949bb9277e442302bdd8dee299a8d6deee60
2014-12-10Merge pull request #5399Wladimir J. van der Laan
4be639e Use RPC_INVALID_PARAMETER instead of RPC_WALLET_ERROR for invalid amount. No return at the end of void function. (Pavel Janík) b93173d Move SendMoney() to rpcwallet.cpp. (Pavel Janík)
2014-12-03MOVEONLY: core/ -> primitives/Luke Dashjr
2014-12-02Move SendMoney() to rpcwallet.cpp.Pavel Janík
2014-11-19[Wallet] Add global boolean whether to pay at least the custom fee ↵Cozz Lovan
(default=true)
2014-11-19[Wallet] Add global boolean whether to send free transactions (default=true)Cozz Lovan
2014-10-30Merge pull request #5146Wladimir J. van der Laan
5b40d88 Update comments in wallet to be doxygen compatible (Michael Ford)
2014-10-28Merge pull request #5100Pieter Wuille
99f41b9 MOVEONLY: core.o -> core/block.o (jtimon) 561e9e9 MOVEONLY: Move script/compressor out of script and put CTxOutCompressor (from core) with it (jtimon) 999a2ab MOVEONLY: separate CTxUndo out of core (jtimon) 4a3587d MOVEONLY: Separate CTransaction and dependencies from core (jtimon) eda3733 MOVEONLY: Move CFeeRate and Amount constants to amount.o (jtimon)
2014-10-28Update comments in wallet to be doxygen compatibleMichael Ford
2014-10-27MOVEONLY: core.o -> core/block.ojtimon
2014-10-27MOVEONLY: Separate CTransaction and dependencies from corejtimon
2014-10-27MOVEONLY: Move CFeeRate and Amount constants to amount.ojtimon
2014-10-24Make CBlockIndex* returned by GetDepthInMainChain const.Daniel Kraft
Make the CBlockIndex* (optionally) returned by GetDepthInMainChain const. This prevents accidental modification. The result is for reading its properties rather than modifying it.
2014-10-20Rename CWalletInterface to CValidationInterfacePieter Wuille
It's useful for much more than wallets.
2014-10-13Merge pull request #4937Wladimir J. van der Laan
ccca27a [Wallet] Watch-only fixes (Cozz Lovan)
2014-10-08Merge pull request #4996Pieter Wuille
d0c4197 change exit(1) to an assert in CWallet::EncryptWallet (Philip Kaufmann) 870da77 fix possible memory leaks in CWallet::EncryptWallet (Philip Kaufmann) f606bb9 fix a possible memory leak in CWalletDB::Recover (Philip Kaufmann)
2014-10-03[Wallet] Do not flush the wallet in AddToWalletIfInvolvingMe(..)Cozz Lovan
2014-10-03[Wallet] Watch-only fixesCozz Lovan
2014-10-01fix possible memory leaks in CWallet::EncryptWalletPhilip Kaufmann
- add missing deletes for pwalletdbEncryption - add an assert before trying to reserve memory for pwalletdbEncryption - add a destructor to CWallet, which ensures deletion of pwalletdbEncryption on object destruction
2014-09-26Use a typedef for monetary valuesMark Friedenbach
2014-09-22Merge pull request #4787Wladimir J. van der Laan
4b0deb3 Clean up CMerkleTx::SetMerkleBranch. (Daniel Kraft)
2014-09-14header include cleanupPhilip Kaufmann
- ensures alphabetical ordering for includes etc. in source file headers
2014-09-10Rename scriptutils.o to wallet_ismine.ojtimon
2014-09-08Separate script/standardjtimon
2014-09-02Rename IMPLEMENT_SERIALIZE to ADD_SERIALIZE_METHODSPieter Wuille
2014-09-01Serializer simplifications after IMPLEMENT_SERIALIZE overhaulPieter Wuille
2014-09-01Merge pull request #4737Pieter Wuille
31e9a83 Use CSizeComputer to avoid counting sizes in SerializationOp (Pieter Wuille) 84881f8 rework overhauled serialization methods to non-static (Kamil Domanski) 5d96b4a remove fields of ser_streamplaceholder (Kamil Domanski) 3d796f8 overhaul serialization code (Kamil Domanski)
2014-09-01Merge pull request #4779Wladimir J. van der Laan
093303a add missing header end comments (Philip Kaufmann)
2014-08-31Use CSizeComputer to avoid counting sizes in SerializationOpPieter Wuille
2014-08-31rework overhauled serialization methods to non-staticKamil Domanski
Thanks to Pieter Wuille for most of the work on this commit. I did not fixup the overhaul commit, because a rebase conflicted with "remove fields of ser_streamplaceholder". I prefer not to risk making a mistake while resolving it.
2014-08-31overhaul serialization codeKamil Domanski
The implementation of each class' serialization/deserialization is no longer passed within a macro. The implementation now lies within a template of form: template <typename T, typename Stream, typename Operation> inline static size_t SerializationOp(T thisPtr, Stream& s, Operation ser_action, int nType, int nVersion) { size_t nSerSize = 0; /* CODE */ return nSerSize; } In cases when codepath should depend on whether or not we are just deserializing (old fGetSize, fWrite, fRead flags) an additional clause can be used: bool fRead = boost::is_same<Operation, CSerActionUnserialize>(); The IMPLEMENT_SERIALIZE macro will now be a freestanding clause added within class' body (similiar to Qt's Q_OBJECT) to implement GetSerializeSize, Serialize and Unserialize. These are now wrappers around the "SerializationOp" template.
2014-08-30Clean up CMerkleTx::SetMerkleBranch.Daniel Kraft
The case SetMerkleBranch(NULL) was never actually used, and thus the involved code (loading the block from disk) can be removed and the implementation simplified.
2014-08-29Move CMerkleTx to wallet.cpp/hWladimir J. van der Laan
It is only used by the wallet so it has no place in main.
2014-08-28add missing header end commentsPhilip Kaufmann
- ensures a consistent usage in header files - also add a blank line after the copyright header where missing - also remove orphan new-lines at the end of some files
2014-08-28Fix a few "Uninitialized scalar field" warningsWladimir J. van der Laan
Fix a few warnings reported by Coverity. None of these is critical, but making sure that class fields are initialized can avoid heisenbugs.
2014-08-26Merge pull request #4673Wladimir J. van der Laan
1c5f0af [Qt] Add column Watch-only to transactions list (Cozz Lovan) 939ed97 Add boolean HaveWatchonly and signal NotifyWatchonlyChanged (Cozz Lovan)
2014-08-26Split up util.cpp/hWladimir J. van der Laan
Split up util.cpp/h into: - string utilities (hex, base32, base64): no internal dependencies, no dependency on boost (apart from foreach) - money utilities (parsesmoney, formatmoney) - time utilities (gettime*, sleep, format date): - and the rest (logging, argument parsing, config file parsing) The latter is basically the environment and OS handling, and is stripped of all utility functions, so we may want to rename it to something else than util.cpp/h for clarity (Matt suggested osinterface). Breaks dependency of sha256.cpp on all the things pulled in by util.
2014-08-26Move functions in wallet.h to implementation fileWladimir J. van der Laan
Breaks compile-time dependency of wallet.h on util.
2014-08-20Remove all other print() methodsWladimir J. van der Laan
All unused.
2014-08-11Add boolean HaveWatchonly and signal NotifyWatchonlyChangedCozz Lovan
2014-08-09Add a way to limit deserialized string lengthsPieter Wuille
and use it for most strings being serialized.