aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-09-12Merge #16639: [0.17] abort when attempting to fund a transaction above -maxtxfeeWladimir J. van der Laan
0e7c7465bf2b9911da094d9790480f94e158f9a5 wallet: Fix -maxtxfee check by moving it to CWallet::CreateTransaction (João Barbosa) e9adb96f8854d21a02d80b4295f1a2e57579cc18 [wallet] abort when attempting to fund a transaction above maxtxfee (Sjors Provoost) Pull request description: Backport #16257. Cherry-picked from the 0.18 backport in #16414, but without the [wip] messages and without the last commit (which adds a test in a file that didn't exist in 0.17). ACKs for top commit: laanwj: ACK 0e7c7465bf2b9911da094d9790480f94e158f9a5 Tree-SHA512: a0fd603518487854be0b3815f34a8dabd2ed258850c032b08894a7c55cb135df5d3c103f76c5294e8065fec6d610e064acf01d24c77f02eaf996698a1e45d512
2019-09-10qt: Final translations update for 0.17 branchWladimir J. van der Laan
Translations for 0.17 have been closed. Pick up the last version from transifex for 0.17.2. Tree-SHA512: 3bc3d55fa5b4a5d0f73481cdf0470ac766c153ab0535f60a36780c63acbec56656850a94fb6e02dbca4485b2ef7c5130cd9c58109a4b72870221b91b372be9a3
2019-08-29[0.17.2] Fix translationsGChuf
2019-08-27qt: 0.17.2 translation updatefanquake
2019-08-19wallet: Fix -maxtxfee check by moving it to CWallet::CreateTransactionJoão Barbosa
Github-Pull: #16322 Rebased-From: 5c1b9714cb0a13be28324f91f4ec9ca66a1de8c7
2019-08-19[wallet] abort when attempting to fund a transaction above maxtxfeeSjors Provoost
FundTransaction calls GetMinimumFee which, when the fee rate is absurdly high, quietly reduced the fee to -maxtxfee. Becaue an absurdly high fee rate is usually the result of a fat finger, aborting seems safer behavior. Github-Pull: #16257 Rebased-From: 806b0052c3b45415862f74f20ba5f389e5b673de
2019-06-07Add test for GCC bug 90348Pieter Wuille
Github-Pull: #15985 Rebased-From: 58e291cfad12fa85af87d093acfa7b44702e3521
2019-03-12wallet: Close wallet env lock fileJoão Barbosa
Close .walletlock file when a BerkeleyEnvironment is deleted. Github-Pull: #15297 Rebased-From: 2f8b8f4
2019-03-12wallet: Close dbenv error file db.logJoão Barbosa
The error file db.log is opened by BerkeleyEnvironment instance and should be closed after dbenv is closed. Github-Pull: #15297 Rebased-From: 8602a1e
2019-03-12Tests: add unit tests for GetWalletEnvPierre Rochard
Github-Pull: #11911 Rebased-From: 88b1d95
2019-03-12Trivial: add doxygen-compatible comments relating to BerkeleyEnvironmentPierre Rochard
Github-Pull: #11911 Rebased-From: 14bc2a1
2019-03-12Free BerkeleyEnvironment instances when not in useRussell Yanofsky
Instead of adding BerkeleyEnvironment objects permanently to the g_dbenvs map, use reference counted shared pointers and remove map entries when the last BerkeleyEnvironment reference goes out of scope. This change was requested by Matt Corallo <git@bluematt.me> and makes code that sets up mock databases cleaner. The mock database environment will now go out of scope and be reset on destruction so there is no need to call BerkeleyEnvironment::Reset() during wallet construction to clear out prior state. This change does affect bitcoin behavior slightly. On startup, instead of same wallet environments staying open throughout VerifyWallets() and OpenWallets() calls, VerifyWallets() will open and close an environment once for each wallet, and OpenWallets() will create its own environment(s) later. Github-Pull: #11911 Rebased-From: f1f4bb7
2019-03-11wallet: Create IsDatabaseLoaded functionChun Kuan Lee
Github-Pull: #14552 Rebased-From: 5912031
2019-03-11Refactor: Move m_db pointers into BerkeleyDatabaseRussell Yanofsky
This is a refactoring change that doesn't affect behavior. The motivation behind the change is give BerkeleyEnvironment objects access to BerkeleyDatabase objects so it will be possible to simplify the duplicate wallet check and more reliably avoid opening the same databases twice. Github-Pull: #14552 Rebased-From: c456fbd
2019-03-11wallet: Add trailing wallet.dat when detecting duplicate wallet if it's a ↵Chun Kuan Lee
directory. Github-Pull: #14552 Rebased-From: 15c93f0
2019-03-11wallet: Fix duplicate fileidChun Kuan Lee
Github-Pull: #14320 Rebased-From: 2d796fa
2019-03-11wallet: Refactor to use WalletLocationJoão Barbosa
Github-Pull: #14350 Rebased-From: 65f3672
2019-03-11wallet: Add WalletLocation utility classJoão Barbosa
Github-Pull: #14350 Rebased-From: 01a4c09
2019-03-11No longer shutdown after encrypting the walletAndrew Chow
Since the database environment is flushed, closed, and reopened during EncryptWallet, there is no need to shut down the software anymore. Github-Pull: #12493 Rebased-From: c1dde3a
2019-03-11Move BerkeleyEnvironment deletion from internal method to callsiteAndrew Chow
Instead of having the object destroy itself, having the caller destroy it. Github-Pull: #12493 Rebased-From: a769461
2019-03-11After encrypting the wallet, reload the database environmentAndrew Chow
Calls ReloadDbEnv after encrypting the wallet so that the database environment is flushed, closed, and reopened to prevent unencrypted keys from being saved on disk. Github-Pull: #12493 Rebased-From: d7637c5
2019-03-11Add function to close all Db's and reload the databae environmentAndrew Chow
Adds a ReloadDbEnv function to BerkeleyEnvironment in order to close all Db instances, closes the environment, resets it, and then reopens the BerkeleyEnvironment. Also adds a ReloadDbEnv function to BerkeleyDatabase that calls BerkeleyEnvironment's ReloadDbEnv. Github-Pull: #12493 Rebased-From: 5d296ac
2019-01-31Merge #15002: 0.17: Backport #14941Wladimir J. van der Laan
0cd9ad208c327127cc4616ccdc37557fad3cf381 rpc: Make unloadwallet wait for complete wallet unload (João Barbosa) Pull request description: #14941 makes `unloadwallet` a synchronous call meaning that it waits for the wallet to fully unload/delete. Tree-SHA512: df7a490306ee2cca399129a4ebfba4b19b65fe67d1657ec3518352fe453327cb347010f94cf7fe4a60aeb51c928cb9ad6b24c40123fd0b9dc0aab5920a59f48d
2019-01-25Remove errant past from walletcreatefundedpsbt for nLocktime replaceabilityGregory Sanders
Github-Pull: #15213 Rebased-From: 85f0ca95f3b57d9714a753882ea22fcd6a4139fb
2019-01-16rpc: Make unloadwallet wait for complete wallet unloadJoão Barbosa
Github-Pull: #14941 Rebased-From: c37851d
2019-01-05gui: Fix for Incorrect application name when passing -regtestBen Carman
Github-Pull: #15085 Rebased-From: cc341adbbb7584d3110a5151baf1ba4053aa2ed1
2019-01-03Merge #15065: 0.17: GUI Backports #14123 #14133 #14383 #14597Wladimir J. van der Laan
27beb8322297d70dccc4db0605b22470e50e9010 qt: All tray menu actions call showNormalIfMinimized (João Barbosa) c470bbd19db048e771ad7495b24b7d09e63e9e1b qt: Use GUIUtil::bringToFront where possible (João Barbosa) ac73c7d433e609f4516136c543623c6c6f0245e2 qt: Add GUIUtil::bringToFront (João Barbosa) 0c2fb87dc1ec1b13fa7abab038f6c52ce0c749e9 Remove obj_c for macOS Dock icon menu (Hennadii Stepanov) 90347141bdb4020875c55ff51375aada46a1a4d9 Use Qt signal for macOS Dock icon click event (Hennadii Stepanov) 4d4bc37df983a8c8bb7a2d926521836e4ce8c913 Remove obj_c for macOS Dock icon setting (Hennadii Stepanov) d2ed162ce0c83782d6a66cfdbe1c6aedcb485697 Clean systray icon menu for -disablewallet mode (Hennadii Stepanov) 298dc15686ce38855e41543c833b75e31bf89bce gui: Favor macOS show / hide action in dock menu (João Barbosa) Pull request description: Backport #14123 #14133 #14383 and #14597 to 0.17 branch to fix https://github.com/bitcoin/bitcoin/issues/13606#issuecomment-449846983. Tree-SHA512: 543c80e7e2130870e801e0c9a69b06b9eea27c288478fc5dddeb662f7f3ec5b56b30916e5a9a629fced3fffcb8be77e2cd155e75cfd0a4392299add9730840f4
2018-12-30qt: All tray menu actions call showNormalIfMinimizedJoão Barbosa
Github-Pull: #14123 Rebased-From: 0a656f85a9c694f25b06c6464d6e986816eecd58
2018-12-30qt: Use GUIUtil::bringToFront where possibleJoão Barbosa
Github-Pull: #14123 Rebased-From: 6fc21aca6d5e16c3ece104fec8e5b3df116893b4
2018-12-30qt: Add GUIUtil::bringToFrontJoão Barbosa
Github-Pull: #14123 Rebased-From: 5796671e1dd8a2d0b1e750c2dce19a10af624095
2018-12-30Remove obj_c for macOS Dock icon menuHennadii Stepanov
Qt `setAsDockMenu()` does this work. Github-Pull: #14597 Rebased-From: 6b1d2972bf9a40f97ba3a5c95831fd179b1054cf
2018-12-30Use Qt signal for macOS Dock icon click eventHennadii Stepanov
This moves the Dock icon click reaction code to the common place and allows some cleanup in obj_c code. According to the Apple's docs `class_replaceMethod` behaves as `class_addMethod`, if the method identified by name does not yet exist; or as `method_setImplementation`, if it does exist. Github-Pull: #14597 Rebased-From: 2464925e7be832d4926b6204169bbbc1646c6368
2018-12-30Remove obj_c for macOS Dock icon settingHennadii Stepanov
Qt `setWindowIcon()` does this work. Github-Pull: #14597 Rebased-From: 53bb6be3f8a50ee9e5c4d7e9155236152e7c4b7c
2018-12-30Clean systray icon menu for -disablewallet modeHennadii Stepanov
Ref #3392 Github-Pull: #14383 Rebased-From: 36323e2ac6cca134de47b06c3f6403de91ee9eda
2018-12-30gui: Favor macOS show / hide action in dock menuJoão Barbosa
Github-Pull: #14133 Rebased-From: ee3a494f37d6a459a5d935446ba08d69ea310b9b
2018-12-29fix testmempoolaccept CLI syntax1Il1
`testmempoolaccept "hexstring"` will give a "JSON parse error". The correct syntax is `testmempoolaccept \[\"hexstring\"\]` (but seems escaping is not displayed in other areas so leaving backspaces out). Github-Pull: #14966 Rebased-From: b74a52192bcefea6fdc38f244e9500ce5868a0b5
2018-12-24Merge #14893: 0.17 [Backport 14890] rpc: Avoid creating non-standard raw ↵MarcoFalke
transactions 46c162df47 rpc: Avoid creating non-standard raw transactions (MarcoFalke) Pull request description: Tree-SHA512: f34678637c8b6559e5c0c2790b682af562479239b92be96e0d41806bade136866f9748487a021eb8c62b6a5027b0a1a2cbdee930243eac93edabef60cbd54eac
2018-12-09importmulti: Don't add internal addresses to address bookGregory Sanders
Github-Pull: #14679 Rebased-From: 7afddfa8cefd01249ad59cf2370e7cec90b34f6f
2018-12-07rpc: Avoid creating non-standard raw transactionsMarcoFalke
Github-Pull: #14890 Rebased-From: fa4c8679ed94f215ce895938f7c3c169a2ce101e
2018-12-07Merge #14889: [0.17] Backport #14424 (Stop requiring imported pubkey to sign ↵Wladimir J. van der Laan
non-PKH schemes) 89a9a9d9385bbf291849874adc33a270b28fcac4 Stop requiring imported pubkey to sign non-PKH schemes (Pieter Wuille) Pull request description: Github-Pull: #14424 Rebased-From: 2f6b466aeb6d4c88ab2e0e8b2a402be0743608b5 Tree-SHA512: 1ea10dee66626f04918f197cd7c4949a836fa49c8f676f276b2328f8d79389059db7b30fc04d4c4bf8209f6a8d21f3ea49a017ddc7623eca6b7e6efc2fe0d749
2018-12-07Stop requiring imported pubkey to sign non-PKH schemesPieter Wuille
Github-Pull: #14424 Rebased-From: 2f6b466aeb6d4c88ab2e0e8b2a402be0743608b5
2018-12-06Merge #14880: 0.17: Backport #14453MarcoFalke
dcb032dcdf qa: Ensure wallet unload during walletpassphrase timeout (João Barbosa) 75b5d8c4ea rpc: Fix wallet unload during walletpassphrase timeout (João Barbosa) Pull request description: Backport #14453 to 0.17 Tree-SHA512: fce0adccbb07b6635bb773a71beb4a9b814bceb77bbe7bbc5bcb7d151aabb1148c791622f58c990afe202012ca1971cd466cb536fc6f37e22cdc58738720b593
2018-12-05rpc: Fix wallet unload during walletpassphrase timeoutJoão Barbosa
Github-Pull: #14453 Rebased-From: 321decf
2018-12-05fix converttopsbt permitsigdata arg, add basic testGregory Sanders
Github-Pull: #14356 Rebased-From: 88a79cb436b30b39d37d139da723f5a31e9d161b
2018-12-03Refactor PSBTInput signing to enforce invariantGlenn Willen
Refactor the process of PSBTInput signing to enforce the invariant that a PSBTInput always has _either_ a witness_utxo or a non_witness_utxo, never both. This simplifies the logic of SignPSBTInput slightly, since it no longer has to deal with the "both" case. When calling it, we now give it, in order of preference: (1) whichever of the utxo fields was already present in the PSBT we received, or (2) if neither, the non_witness_utxo field, which is just a copy of the input transaction, which we get from the wallet. SignPSBTInput no longer has to remove one of the two fields; instead, it will check if we have a witness signature, and if so, it will replace the non_witness_utxo with the witness_utxo (which is smaller, as it is just a copy of the output being spent.) Add PSBTInput::IsSane checks in two more places, which checks for both utxo fields being present; we will now give an RPC error early on if we are supplied such a malformed PSBT to fill in. Also add a check to FillPSBT, to avoid touching any input that is already signed. (This is now redundant, since we should no longer potentially harm an already-signed input, but it's harmless.) fixes #14473 Github-Pull: #14588
2018-12-03Simplify arguments to SignPSBTInputGlenn Willen
Remove redundant arguments to SignPSBTInput -- since it needs several bits of the PartiallySignedTransaction, pass in a reference instead of doing it piecemeal. This saves us having to pass in both a PSBTInput and its index, as well as having to pass in the CTransaction. Also avoid redundantly passing the sighash_type, which is contained in the PSBTInput already. Github-Pull: #14588 Rebased-From: 0f5bda2bd941686620ef0eb90bd7ed973cc7ef73
2018-12-03Add bool PSBTInputSignedGlenn Willen
Refactor out a "PSBTInputSigned" function to check if a PSBT is signed, for use in subsequent commits. Also improve a related comment. GitHub-Pull: #14588 Rebased-From: 53e6fffb8f5b10f94708d33d667a67cb91c2d09d
2018-12-03New PartiallySignedTransaction constructor from CTransctionGlenn Willen
New constructor that creates a PartiallySignedTransaction from a CTransaction, automatically sizing the inputs and outputs vectors for convenience. Github-Pull: #14588 Rebased-From: 65166d4cf828909dc4bc49dd68a58103d015f1fd
2018-12-03Remove redundant txConst parameter to FillPSBTGlenn Willen
Github-Pull: #14588 Rebased-From: 4f3f5cb4b142f0fcb36241fa33b52a257901dbee
2018-12-03More concise conversion of CDataStream to stringGlenn Willen
Use .str() instead of .data() and .size() when converting CDataStream to a string. Uses std::string, avoiding conversion to a C string. Github-Pull: #14588 Rebased-From: fe5d22bc676f158e8d567d71edb3451118759d62