aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-09-28[RPC] Wallet: test importing of native witness scriptsNicolasDorier
Integration into segwit.py test by Pieter Wuille.
2017-09-28Use BIP173 addresses in segwit.py testPieter Wuille
2017-09-28Support BIP173 in addwitnessaddressPieter Wuille
2017-09-28Implement BIP173 addresses and testsPieter Wuille
2017-09-28Add regtest testing to base58_testsPieter Wuille
2017-09-28Convert base58_tests from type/payload to scriptPubKey comparisonPieter Wuille
2017-09-28Import Bech32 C++ reference code & testsPieter Wuille
This includes a reformatted version of the Bech32 reference code (see https://github.com/sipa/bech32/tree/master/ref/c%2B%2B), with extra documentation.
2017-09-28Merge #11318: Put back inadvertently removed copyright noticesWladimir J. van der Laan
d552ed6 Put back inadvertently removed copyright notices (Paul Berg) Pull request description: In an abundance of caution this restores "Bitcoin Developers" to the COPYING file in case there were contributors before that point in time that would object to the current label. It's harmless and more pedantically correct. (Change extracted from the Bitcoin-abc github) Tree-SHA512: ea71645fbca5548bcae750b9bb7c7cc56791d8c8d2574b778fa1666e09abad23b30fcb434f0d92c52a2eb7d7e89caa32695dff3a5a99a2ab43ed0f3636436677
2017-09-28Merge #10663: net: split resolve out of connectWladimir J. van der Laan
b887676 net: remove now-unused functions (Cory Fields) 45fd754 net: remove now-superfluous numeric resolve (Cory Fields) 2416dd7 net: separate resolving and conecting (Cory Fields) Pull request description: This is a greatly simplified version of #10285, which only aims to address async resolving. It essentially breaks up two wrapper functions for things only used in one place (ConnectSocketDirectly/ConnectThroughProxy) in favor of calling them directly. This allows us to fully handle resolves before attempting a connection, as is necessary for async connections. As a bonus, I believe the logic is now much easier to follow than before. Tree-SHA512: f03f618107379edf3efe2a9f3e3677e8f075017ab140a0b4fdc3b8263e6beff148d55256263ab10bc2125ef089ca68e0d8e865beeae176f1eca544e769c976d3
2017-09-28Merge #10858: [RPC] Add "errors" field to getblockchaininfo and unify ↵Wladimir J. van der Laan
"errors" field in get*info RPCs 395cef7 Change getmininginfo errors field to warnings (Andrew Chow) 8502b20 Unify help text for GetWarnings output in get*info RPCs (Andrew Chow) f77f0e4 Add warnings field to getblockchaininfo (Andrew Chow) Pull request description: The `getblockchaininfo` output does not contain the `errors` field which the `getinfo`, `getmininginfo`, and `getnetworkinfo` RPCs have. It should have it as the errors pertain to the blockchain. This PR adds that field. This PR also unifies the help text for the `errors` field and its output position so that all of the `get*info` commands are consistent. `getnetworkinfo`'s `errors` field is named `warnings`. I did not change this even though it is inconsistent since this naming has been in use for a long time. Tree-SHA512: 385ab6acfee67fc8816f4d51ab2bd7a623264c7973906dfbab0a171f199e9db16fde19093a5bc3dfbdd4ff5f19d2186b646eb6b3bae0a4d7c9add43650a4a9d9
2017-09-28[docs] Remove partial gitian instructions from descriptors dirfanquake
2017-09-28Merge #11401: doc: move gitian building to external repoWladimir J. van der Laan
fa082b4 doc: move gitian building to external repo (MarcoFalke) Pull request description: The guide was moved to [the Bitcoin Core documentation repository](https://github.com/bitcoin-core/docs/blob/master/gitian-building.md). It now includes not only instructions to run on a debian host, but also on any recent fedora host. This is an ongoing effort to reduce the fraction caused by incoming pull requests to docs (usually fixups, typo fixes, version bumps). This is especially important for documentation that is independent of any release cycles and should thus be up-to-date regardless of a tag on a non-master branch. Finally, fetching a shallow copy of the source is less heavy, as many binary png files are moved out of the repo. Tree-SHA512: c88a11667826d44f90af41e50f9e8d5b3132ae83b278597f13be694872212e7eff99fd877feec0308e00259c69fd4e0ebaf3ff5ab45e08a1e41336aa505bb72b
2017-09-28Merge #10871: Handle getinfo in bitcoin-cli w/ -getinfo (revival of #8843)Wladimir J. van der Laan
5e69a43 Add test for bitcoin-cli -getinfo (John Newbery) 3826253 rpc: Handle `getinfo` locally in bitcoin-cli w/ `-getinfo` (Wladimir J. van der Laan) Pull request description: Since @laanwj doesn't want to maintain these changes anymore, I will. This PR is a revival of #8843. I have addressed @jnewbery's comments. Regarding atomicity, I don't think that is a concern here. This is explicitly a new API and those who use it will know that this is different and that it is not atomic. Tree-SHA512: 9664ed13a5557bda8c43f34d6527669a641f260b7830e592409b28c845258fc7e0fdd85dd42bfa88c103fea3ecdfede5f81e3d91870e2accba81c6d6de6b21ff
2017-09-27Merge #11397: net: Improve and document SOCKS codeJonas Schnelli
22f816ef4 net: Improve and document SOCKS code (Wladimir J. van der Laan) Pull request description: Make the SOCKS code more consistent, and document the constants used. Tree-SHA512: 1bb04fcd6aacb6bfd2c54989d8298c892036466a895efb88be36fbace041af67c964ae0f5fb76c96f813f20a040109de4e0aac49a20844640e4d7633fcb22f25
2017-09-27script: Change SignatureHash input index check to an assert.Jim Posen
In the SignatureHash function, the input index must refer to a valid index. This is not enforced equally in the segwit/non-segwit branches and should be an assertion rather than returning a error hash.
2017-09-27Add test for bitcoin-cli -getinfoJohn Newbery
Extra-Author: Andrew Chow <achow101@gmail.com>
2017-09-27rpc: Handle `getinfo` locally in bitcoin-cli w/ `-getinfo`Wladimir J. van der Laan
This adds the infrastructure `BaseRequestHandler` class that takes care of converting bitcoin-cli arguments into a JSON-RPC request object, and converting the reply into a JSON object that can be shown as result. This is subsequently used to handle the `-getinfo` option, which sends a JSON-RPC batch request to the RPC server with `["getnetworkinfo", "getblockchaininfo", "getwalletinfo"]`, and after reply combines the result into what looks like a `getinfo` result. There have been some requests for a client-side `getinfo` and this is my PoC of how to do it. If this is considered a good idea some of the logic could be moved up to rpcclient.cpp and used in the GUI console as well. Extra-Author: Andrew Chow <achow101@gmail.com>
2017-09-27Change getmininginfo errors field to warningsAndrew Chow
Changes the errors field to warnings. To maintain compatibility, the errors field is deprecated and enabled by starting bitcoind with -deprecatedrpc=getmininginfo
2017-09-27Unify help text for GetWarnings output in get*info RPCsAndrew Chow
2017-09-27Add warnings field to getblockchaininfoAndrew Chow
2017-09-27Merge #11031: [rpc] deprecate estimatefeeMarcoFalke
048e0c3e2 [rpc] [tests] Add deprecated RPC test (Cristian Mircea Messel) d4cdbd6fb [rpc] Deprecate estimatefee RPC (John Newbery) Pull request description: Deprecates estimatefee in v0.16, for final removal in v0.17. This commit introduces a phased removal of RPC methods. RPC method is disabled by default in version x, but can be enabled by using the `-deprecatedrpc=<methodname>` argument. RPC method is removed entirely in version (x+1). This gives users fair warning that an RPC is to be removed, and time to change client software if necessary. Deprecation warnings in RPC return values or release notes are easily ignored. This is a more generic version of the approach I tried to use in #10841, which too late to make it into v0.15. Tree-SHA512: 9695a600e84b812974387333e4a6805d18972da30befb754e9e4da77cd9815d00c5cc2ee0b0350bdbbdb5fdc6ba47789f8b2c6f5b15c8cd5a1deefcc4832da30
2017-09-27Merge #11408: Trivial: Fix parameter name typo in ErasePurpose walletdb methodMarcoFalke
603efe9fc Fix parameter name typo in ErasePurpose walletdb method. (Pierre Rochard) Pull request description: The header file has the correct method signature and the one usage in CWallet::DelAddressBook is correctly passing in EncodeDestination(address) Tree-SHA512: ee0808a74111fd23a1c47ba5ab51de151fdd33a01d92895671e562ac184cbcb33180a3ff26c22e5717595592097b9fa33deca9878d89ce8d34687f09cfadfcf0
2017-09-27Fix bip68-sequence rpc testJohnson Lau
2017-09-26Fix parameter name typo in ErasePurpose walletdb method.Pierre Rochard
2017-09-26Merge #11015: [Qt] Add delay before filtering transactionsJonas Schnelli
7b137aced [Qt] Add delay before filtering transactions Fixes 3141 (Lucas Betschart) Pull request description: As discussed in https://github.com/bitcoin/bitcoin/issues/3141. This adds a QTimer pause of 200ms before start to filter so it should be possible to filter big data sets easier. Tree-SHA512: ee599367794eac2c5b8bc7ecac47f44295e40c0ff543ff2f2c4860590f917b59b1cfb273fa564e6eb4c44016c0ef412d49f1a8f1b36b07e034022f51bb76653c
2017-09-26Add state message print to AcceptBlock failure message.Matt Corallo
This should make it easier to debug issues where the CheckBlock at the top of ProcessNewBlock fails (which does not print, in contrast to AcceptBlock, which always prints).
2017-09-26[rpc] [tests] Add deprecated RPC testCristian Mircea Messel
2017-09-26[rpc] Deprecate estimatefee RPCJohn Newbery
Deprecate estimatefee in v0.16, for final removal in v0.17. This commit introduces a phased removal of RPC methods. RPC method is disabled by default in version x, but can be enabled by using the `-deprecatedrpc=<method>` argument. RPC method is removed entirely in version (x+1).
2017-09-26Merge #11225: wallet: update stored witness in AddToWalletWladimir J. van der Laan
d01a968 wallet: update stored witness in AddToWallet (Suhas Daftuar) Pull request description: Replace witness-stripped wallet transactions with full transactions; this can happen when upgrading from a pre-segwit wallet to a segwit- aware wallet. Tree-SHA512: a348b16b38ae738fa75cf7d3ff50ebd0d0071d5d6061c9a10dc3325fc34f6bc96a67aea21fde460ca20f6178768ee0af04d6d8785b35647f436a9083c4270b07
2017-09-26Merge #11288: More user-friendly error message when partially signingWladimir J. van der Laan
df10edf More user-friendly error message when partially signing (MeshCollider) Pull request description: When partially signing a transaction using `signrawtransaction`, if the wallet doesn't have access to a key, it will output a scary error message `"error": "Operation not valid with the current stack size"`, yet it will partially sign the transaction anyway. This puts a lot of users off, because they don't realise the signing actually succeeded for some inputs. This catches that specific error when signing, and outputs a friendlier message which says `Unable to sign input, invalid stack size (possibly missing key)`. This is the best way I could think of to fix the issue, but please let me know if you come up with a better way to do it :) Fixes https://github.com/bitcoin/bitcoin/issues/9988 Tree-SHA512: 65e1d4a49caa4202e1357b0b3f42329d76456c7b4286d63232226e03267809027b0c44e0faaa1da8b86c9ad677e3a3d655698a24fc870d6a661203c9f56ef95b
2017-09-26rpc: Prevent `dumpwallet` from overwriting filesWladimir J. van der Laan
Prevent arbitrary files from being overwritten. There have been reports that users have overwritten wallet files this way. It may also avoid other security issues. Fixes #9934. Adds mention to release notes and adds a test.
2017-09-26net: Improve and document SOCKS codeWladimir J. van der Laan
Make the SOCKS code more consistent, and document the constants used.
2017-09-26Merge #11377: Disallow uncompressed pubkeys in bitcoin-tx [multisig] output addsWladimir J. van der Laan
28d4542 Disallow uncompressed pubkeys in bitcoin-tx [multisig] output adds (Matt Corallo) Pull request description: Does what it says on the tin. Tree-SHA512: 324b8da8a9f9a35d3ade74f6c587f981894a085dfea9d64f78de745d5e6ec05c3a7bced487e9aad9c8a48151cd14969a0806f30f80b621edfce0da082fe6f4be
2017-09-25doc: move gitian building to external repoMarcoFalke
This reduces the overhead in the git repo due to binary blobs of the png files. Also, the documentation can be updated independent of any tags and release cycles.
2017-09-25Merge #11335: Replace save|restoreWindowGeometry with Qt functionsWladimir J. van der Laan
13baf72 Replace save|restoreWindowGeometry with Qt functions (MeshCollider) Pull request description: Alternative to https://github.com/bitcoin/bitcoin/pull/11208, closes https://github.com/bitcoin/bitcoin/issues/11207 According to the [Qt documentation](https://doc.qt.io/qt-4.8/qwidget.html#restoreGeometry), restoreGeometry does all the checks we need, so it would be better to rely on them instead of doing it ourselves. ~Haven't tested this properly yet, hence the WIP.~ Gives expected behavior exactly as the other system apps do based on my tests. Only potential issue is the case when the GUI is almost entirely offscreen with only a single strip of pixels, its not really possible to see the GUI, but if you know it's there you can bring it back onscreen with just the mouse. And that's exactly how notepad behaves on Windows so I don't think its a real issue. This also gives much better behavior when closing a maximized window, currently (0.15.0 release) a maximized window will save the window size on close, and then reopen as a not-maximized but still that size, which is really annoying. This reopens as maximized. Gitian build here: https://bitcoin.jonasschnelli.ch/build/305 Tree-SHA512: a8bde14793b4316192df1fa2eaaeb32b44d5ebc5219c35252379840056cd737a9fd162625fd715987f275fec8375334ec1ec328dbc671563f084c611a938985c
2017-09-25Merge #11370: [test] Add getblockchaininfo functional testWladimir J. van der Laan
f6ffb14 [test] Add getblockchaininfo functional test (João Barbosa) fd8f45f [test] Add restart_node to BitcoinTestFramework (João Barbosa) Pull request description: Adds functional test for `getblockchaininfo`. Also deals with the fact that `pruneheight` is only in the response when pruning is enabled (related to #11366). Tree-SHA512: 56cdec0921f572874f2fdded0990d1722d1435c3ff9979e6bff1afdccdca6f8b214dbe8d7490cdac07b5758909db085132d14340de2cce943241f7ebde7e5b6c
2017-09-25Merge #11392: Fix stale link in gitian-building.mdWladimir J. van der Laan
204cc98 fix link error (Shooter) Pull request description: The `perform-gitian-builds` is not exist, replace `perform-gitian-builds` with `setup-and-perform-gitian-builds`. Tree-SHA512: c4f3fb4b6ae502a2e7a6857d3075734d493f549871b80ec00a2733ee689b00f98aa67ce7c3b7facf1ae4949b7845e1e2ef6f727aeca0c88c00b46d77b4d7e570
2017-09-24Merge #11390: [docs] document scripted-diffPieter Wuille
90ab62c45 [docs] document scripted-diff (John Newbery) Pull request description: Document scripted-diffs in developer-notes.md I sometimes comment on PRs that a scripted-diff would be appropriate, but I don't have any documentation to point to. Fix that. Tree-SHA512: 7d4a14b9217c812e4c27601e5e6dd8054cf5104cd20ecbe1ec0a84c217cc4b0645b7c0d2e3a89fdd4d059cafbc388acbddba75a430308f8279200b9383e009de
2017-09-24[docs] document scripted-diffJohn Newbery
2017-09-24fix link errorShooter
The `perform-gitian-builds` is not exists, repalce `perform-gitian-builds` with `setup-and-perform-gitian-builds`.
2017-09-24Remove lxcbr0 lines from gitian-build.shMeshCollider
2017-09-23Implement {Encode,Decode}Destination without CBitcoinAddressPieter Wuille
2017-09-23Merge #11338: qt: Backup former GUI settings on `-resetguisettings`Wladimir J. van der Laan
723aa1b qt: Backup former GUI settings on `-resetguisettings` (Wladimir J. van der Laan) Pull request description: Writes the GUI settings to `guisettings.bak` in the data directory before wiping them. This can be used to retroactively troubleshoot issues (e.g. #11262) where `-resetguisettings` solves the problem. (as discussed in yesterday's IRC meeting) Tree-SHA512: c64f5052d992eb02057ba285435f143c42d0cc456144a4c565e1c87be833737f9df750d0aee10810f85047c820d9b4f9f22fd94a6f09f4b28a9cf41b63a56586
2017-09-23qt: Backup former GUI settings on `-resetguisettings`Wladimir J. van der Laan
Writes the GUI settings to `guisettings.bak` in the data directory before wiping them. This can be used to retroactively troubleshoot issues (e.g. #11262) where `-resetguisettings` solves the problem.
2017-09-22Merge #10953: [Refactor] Combine scriptPubKey and amount as CTxOut in ↵Pieter Wuille
CScriptCheck 3a131b724 Rename out to m_tx_out in CScriptCheck (Johnson Lau) e91211878 [Refactor] Combine scriptPubKey and amount as CTxOut in CScriptCheck (Johnson Lau) Pull request description: This simplifies CScriptCheck by combining scriptPubKey and amount Tree-SHA512: 6422363cf5394c6cfefb30c1709db6def63230b809cc7697887e4a2e8c684149208edf91dd139e031b9fe732776b2db59305f77c3cba6f333b11cceb39ef0cc2
2017-09-22Merge #11362: Remove nBlockMaxSize from miner opt struct as it is no longer ↵Pieter Wuille
used. 22fd04beb Remove nBlockMaxSize from miner opt struct as it is no longer used. (Gregory Maxwell) Pull request description: Tree-SHA512: f7a0fa380b4173120f33f96de90581cb57b8bd7af50996f0c726845acff7b92bb1212b924495ef89645624239d2b60d19c1cee2a13139b00e917154a33f7da4c
2017-09-22Merge #11301: add m_added_nodes to connman optionsPieter Wuille
35e5c2269 remove unused IsArgSet check (Marko Bencun) 605918272 add m_added_nodes to connman options (Marko Bencun) Pull request description: Tree-SHA512: ca4527a964dcda816b32d335e7fe4d0d8a668a83fbc5e4707ee452d00a7089fa59a88c9f2b1ecdf50e673f2a63fc364b23979e0153f91136525eceec10c2ede2
2017-09-22Merge #11385: Remove some unused functions and methodsWladimir J. van der Laan
46c9043 Remove some unused functions and methods (Pieter Wuille) Pull request description: In the case of CKey's destructor, it seems to have been an oversight in #8753 not to delete it. At this point, it results in the move constructors/assignment operators for CKey being deleted, which may have a performance impact (requiring a pool allocation/copy/free, rather than just handing over the pointer from one CKey to another) Tree-SHA512: 89715bafe3e0bea2c46fc92bc6a1010360a3fee2719f97b81ca379581003409b0876b50f992208a3c13c7f5b77f1866db09954e7d102f6a452fe5d7aed2044a1
2017-09-22Merge #11380: Remove outdated share/certs/ directoryWladimir J. van der Laan
6951a1c Remove extremely outdated share/certs dir (MeshCollider) Pull request description: The directory hasn't been touched for 5 years (other than a couple of typo fixes/renaming). The certificates are expired, the build process notes are out of date, especially with the gitian building and everything, Gavin no longer has anything to do with it, etc. The signing process is all documented (and scripted) elsewhere (e.g. doc/release-process.md and gitian-building.md, contrib/macdeploy and windeploy), this can just be removed @theuni can confirm if this is okay, we discussed it on IRC for a bit :) Tree-SHA512: e229785f7514a0f9988105f2ce68531a0a876032983ee5c77f41f1a976b9e732eb63cf2eb1f82841df8f7194940635c5ea5d4f8b30f95e69c763f74d4a3a28b1
2017-09-21Remove some unused functions and methodsPieter Wuille
In the case of CKey's destructor, it seems to have been an oversight in f4d1fc259 not to delete it. At this point, it results in the move constructors/assignment operators for CKey being deleted, which may have a performance impact.