elements/src/wallet
MarcoFalke 32f1f021bf
Merge bitcoin/bitcoin#21817: refactor: Replace &foo[0] with foo.data()
fac30eec42 refactor: Replace &foo[0] with foo.data() (MarcoFalke)
faece47c47 refactor: Avoid &foo[0] on C-Style arrays (MarcoFalke)
face961109 refactor: Use only one temporary buffer in CreateObfuscateKey (MarcoFalke)
fa05dddc42 refactor: Use CPubKey vector constructor where possible (MarcoFalke)
fabb6dfe6e script: Replace address-of idiom with vector data() method (Guido Vranken)

Pull request description:

  The main theme of this refactor is to replace `&foo[0]` with `foo.data()`.

  The first commit is taken from #21781 with the rationale:

  * In CSignatureCache::ComputeEntryECDSA, change the way a vector pointer is resolved to prevent invoking undefined behavior if the vector is empty.

  The other commits aim to remove all `&foo[0]`, where `foo` is any kind of byte representation. The rationale:

  * Sometimes alternative code without any raw data pointers is easier to read (refer to the respective commit message for details)
  * If the raw data pointer is needed, `foo.data()` should be preferred, as pointed out in the developer notes. This addresses the instances that have been missed in commit 592404f03f, and https://github.com/bitcoin/bitcoin/pull/9804

ACKs for top commit:
  laanwj:
    Code review ACK fac30eec42
  practicalswift:
    cr ACK fac30eec42: patch looks correct
  promag:
    Code review ACK fac30eec42.

Tree-SHA512: e7e73146edbc78911a8e8c728b0a1c6b0ed9a88a008e650aa5dbffe72425bd42c76df70199a9cf7e02637448d7593e0eac52fd0f91f59240283e1390ee21bfa5
2021-05-05 18:24:09 +02:00
..
test move-only: Move constants to blockstorage 2021-04-27 10:32:54 +02:00
bdb.cpp scripted-diff: remove MakeUnique<T>() 2021-03-11 13:45:14 +08:00
bdb.h wallet: Add BerkeleyDB version sanity check at init time 2021-01-17 18:10:20 +01:00
coincontrol.cpp refactor: Drop CCoinControl::SetNull 2021-04-18 21:10:47 +01:00
coincontrol.h refactor: Drop CCoinControl::SetNull 2021-04-18 21:10:47 +01:00
coinselection.cpp refactor: post Optional<> removal cleanups 2021-03-17 14:56:20 +08:00
coinselection.h [docs] add doxygen comments to wallet code 2021-04-26 11:00:18 -07:00
context.cpp Remove g_rpc_chain global 2020-05-28 02:13:19 -04:00
context.h wallet: Pass unused args to StartWallets 2020-07-09 13:07:37 +02:00
crypter.cpp refactor: Replace &foo[0] with foo.data() 2021-05-04 06:55:31 +02:00
crypter.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
db.cpp wallet: List all wallets in non-SQLite or non-BDB builds 2020-12-04 11:03:28 -04:00
db.h refactor: post Optional<> removal cleanups 2021-03-17 14:56:20 +08:00
dump.cpp wallettool: Add createfromdump command 2020-12-16 12:33:06 -05:00
dump.h wallettool: Add createfromdump command 2020-12-16 12:33:06 -05:00
external_signer_scriptpubkeyman.cpp refactor: add missing includes to external signer code 2021-04-13 20:09:33 +08:00
external_signer_scriptpubkeyman.h refactor: add missing includes to external signer code 2021-04-13 20:09:33 +08:00
feebumper.cpp Merge #20536: wallet: Error with "Transaction too large" if the funded tx will end up being too large after signing 2021-03-09 10:42:21 +13:00
feebumper.h wallet: Avoid translating RPC errors when creating txs 2020-05-01 07:39:06 -04:00
fees.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
fees.h Remove uses of fee globals in wallet code 2019-02-22 15:43:02 -04:00
init.cpp tests: Skip SQLite fsyncs while testing 2021-04-12 19:29:03 -04:00
interfaces.cpp Move external signer out of wallet module 2021-04-08 17:56:00 +02:00
ismine.h doc: Add developer documentation to isminetype 2021-01-19 19:04:45 +08:00
load.cpp remove unnecessary newline from initWarning() argument 2021-03-24 04:31:48 -06:00
load.h scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
rpcdump.cpp refactor: Use CPubKey vector constructor where possible 2021-05-04 06:53:32 +02:00
rpcwallet.cpp rpc: Keep default argument value in correct type 2021-04-17 00:22:53 +01:00
rpcwallet.h refactor: replace util::Ref by std::any (C++17) 2021-03-29 23:29:42 +02:00
salvage.cpp refactor: Replace &foo[0] with foo.data() 2021-05-04 06:55:31 +02:00
salvage.h wallettool: Have RecoverDatabaseFile return errors and warnings 2020-07-26 20:22:45 -04:00
scriptpubkeyman.cpp refactor: Replace &foo[0] with foo.data() 2021-05-04 06:55:31 +02:00
scriptpubkeyman.h wallet: ExternalSigner: add GetDescriptors method 2021-02-23 14:34:31 +01:00
sqlite.cpp tests: Skip SQLite fsyncs while testing 2021-04-12 19:29:03 -04:00
sqlite.h doc: fix various typos 2021-01-04 12:31:31 +08:00
wallet.cpp refactor: Replace &foo[0] with foo.data() 2021-05-04 06:55:31 +02:00
wallet.h [docs] add doxygen comments to wallet code 2021-04-26 11:00:18 -07:00
walletdb.cpp refactor: post Optional<> removal cleanups 2021-03-17 14:56:20 +08:00
walletdb.h Include wallet/bdb.h where it is actually being used 2020-11-18 11:55:43 -05:00
wallettool.cpp refactor: Move all command dependend checks to ExecuteWalletToolFunc 2021-01-21 19:30:34 +01:00
wallettool.h refactor: Move all command dependend checks to ExecuteWalletToolFunc 2021-01-21 19:30:34 +01:00
walletutil.cpp scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
walletutil.h wallet: add external_signer flag 2021-02-23 14:34:30 +01:00