bitcoin/src/wallet
Wladimir J. van der Laan 98bc27fb59
Merge #11687: External wallet files
be8ab7d08 Create new wallet databases as directories rather than files (Russell Yanofsky)
26c06f24e Allow wallet files not in -walletdir directory (Russell Yanofsky)
d8a99f65e Allow wallet files in multiple directories (Russell Yanofsky)

Pull request description:

  This change consists of three commits:

  * The first commit is a pure refactoring that removes the restriction that two wallets can only be opened at the same time if they are contained in the same directory.
  * The second commit removes the restriction that `-wallet` filenames can only refer to files in the `-walletdir` directory.
  * The third commit makes second commit a little safer by changing bitcoin to create wallet databases as directories rather than files, so they can be safely backed up.

  All three commits should be straightforward:

  *  The first commit adds around 20 lines of new code and then updates a bunch of function signatures (generally updating them to take plain fs::path parameters, instead of combinations of strings, fs::paths, and objects like CDBEnv and CWalletDBWrapper).
  * The second commit removes two `-wallet` filename checks and adds some test cases to the multiwallet unit test.
  * The third commit just changes the mapping from specified wallet paths to bdb environment & data paths.

    ---

  **Note:** For anybody looking at this PR for the first time, I think you can skip the comments before _20 Nov_ and start reading at https://github.com/bitcoin/bitcoin/pull/11687#issuecomment-345625565. Comments before  _20 Nov_ were about an earlier version of the PR that didn't include the third commit, and then confusion from not seeing the first commit.

Tree-SHA512: 00bbb120fe0df847cf57014f75f1f7f1f58b0b62fa0b3adab4560163ebdfe06ccdfff33b4231693f03c5dc23601cb41954a07bcea9a4919c8d42f7d62bcf6024
2018-03-07 17:11:54 +01:00
..
test Merge #11687: External wallet files 2018-03-07 17:11:54 +01:00
coincontrol.h [wallet] Add change type to CCoinControl 2018-01-24 15:52:05 +00:00
crypter.cpp Merge #11403: SegWit wallet support 2018-01-10 20:55:41 -10:00
crypter.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
db.cpp Create new wallet databases as directories rather than files 2018-03-03 10:26:55 -05:00
db.h Allow wallet files in multiple directories 2018-03-03 10:26:55 -05:00
feebumper.cpp Merge #12356: Fix 'mempool min fee not met' debug output 2018-02-15 16:35:42 +01:00
feebumper.h feebumper: Use PreconditionChecks to determine bump eligibility 2018-01-29 18:31:33 -05:00
fees.cpp Disable wallet fallbackfee by default on mainnet 2018-02-25 09:33:46 +08:00
fees.h scripted-diff: Replace #include "" with #include <> (ryanofsky) 2017-11-16 08:23:01 +13:00
init.cpp Create new wallet databases as directories rather than files 2018-03-03 10:26:55 -05:00
init.h [trivial] fixup comment for VerifyWallets() 2017-09-07 16:22:11 -07:00
rpcdump.cpp Merge #11372: Address encoding cleanup 2018-03-07 00:09:48 +01:00
rpcwallet.cpp Merge #9991: listreceivedbyaddress Filter Address 2018-03-07 16:07:37 +01:00
rpcwallet.h Split signrawtransaction into wallet and non-wallet 2018-02-17 11:42:00 -05:00
wallet.cpp Merge #11687: External wallet files 2018-03-07 17:11:54 +01:00
wallet.h Create new wallet databases as directories rather than files 2018-03-03 10:26:55 -05:00
walletdb.cpp Merge #11687: External wallet files 2018-03-07 17:11:54 +01:00
walletdb.h Allow wallet files in multiple directories 2018-03-03 10:26:55 -05:00
walletutil.cpp Don't allow relative -walletdir paths 2018-01-18 15:09:27 -05:00
walletutil.h Cleanups for walletdir PR 2017-12-13 23:36:43 +13:00