Commit Graph

11273 Commits

Author SHA1 Message Date
Pavol Rusnak
2bc62dc4e3 limit total length of user agent comments
Reworked-By: Wladimir J. van der Laan <laanwj@gmail.com>
2018-04-13 07:40:34 -06:00
Pavol Rusnak
8c5e229ac9 implement uacomment config parameter
which can add comments to user agent as per BIP-0014
2018-04-13 07:40:34 -06:00
Homu
65a8f9f201 Auto merge of #3086 - str4d:cli-binary-improvements-1, r=str4d
CLI binary improvements

Cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#5936
- bitcoin/bitcoin#7550
- bitcoin/bitcoin#7989
- bitcoin/bitcoin#7957
- bitcoin/bitcoin#9067
- bitcoin/bitcoin#9220

Excludes any changes that affected the QT code.
2018-04-12 20:46:05 -07:00
Jack Grigg
ee6220c0ed [Bitcoin-Tx] Adjust util-test test cases for Zcash 2018-04-12 19:36:48 -06:00
Jack Grigg
abf5dd31af Add static asserts to ensure CONTINUE_EXECUTION doesn't collide 2018-04-12 18:11:46 -06:00
Karl-Johan Alm
3b26f5c361 Removed using namespace std from bitcoin-cli/-tx and added std:: in appropriate places. 2018-04-12 18:10:04 -06:00
UdjinM6
c06245c1e3 Every main()/exit() should return/use one of EXIT_ codes instead of magic numbers 2018-04-12 18:10:04 -06:00
UdjinM6
fadbbe1e04 Fix exit codes:
- `--help`, `--version` etc should exit with `0` i.e. no error ("not enough args" case should still trigger an error)
- error reading config file should exit with `1`

Slightly refactor AppInitRPC/AppInitRawTx to return standard exit codes (EXIT_FAILURE/EXIT_SUCCESS) or CONTINUE_EXECUTION (-1)
2018-04-12 18:10:04 -06:00
Jonas Schnelli
f11fb32967 [Bitcoin-Tx] Add tests for sequence number support 2018-04-12 18:10:04 -06:00
Jonas Schnelli
c09d76ea3c [bitcoin-tx] allow to set nSequence number over the in= command 2018-04-12 18:10:04 -06:00
Jonas Schnelli
216e94fb24 [RPC] createrawtransaction: add option to set the sequence number per input 2018-04-12 18:10:04 -06:00
Puru
e8f5b0278e bitcoin-cli.cpp: Use symbolic constant for exit code 2018-04-12 18:10:04 -06:00
Wladimir J. van der Laan
5e39c5a655 doc: mention bitcoin-cli -stdin in release notes 2018-04-12 18:10:04 -06:00
Wladimir J. van der Laan
21e33231af rpc: Input-from-stdin mode for bitcoin-cli
Implements #7442 by adding an option `-stdin` which reads
additional arguments from stdin, one per line.

For example

```bash
echo -e "mysecretcode\n120" | src/bitcoin-cli -stdin walletpassphrase
echo -e "walletpassphrase\nmysecretcode\n120" | src/bitcoin-cli -stdin
```
2018-04-12 18:08:17 -06:00
Tom Harding
6c9d672f3c Add optional locktime to createrawtransaction
A non-zero locktime also causes input sequences to be set to
non-max, activating the locktime.
2018-04-12 18:08:17 -06:00
Homu
3e7b5f23e4 Auto merge of #3081 - str4d:sapling-activation-logic, r=str4d
Add Sapling to upgrade list
2018-04-12 12:32:50 -07:00
Jack Grigg
176fada24d Add Sapling to upgrade list 2018-04-12 12:13:05 -06:00
Homu
b691234beb Auto merge of #3162 - str4d:3052-sapling-crypto-deps, r=str4d
depends: Update to latest librustzcash with sapling-crypto dependencies

Part of #3052.
2018-04-12 11:03:55 -07:00
Homu
42e3025237 Auto merge of #3165 - str4d:release-v1.1.0, r=str4d
Release v1.1.0
2018-04-12 08:55:29 -07:00
Homu
b89b48cda1 Auto merge of #3166 - str4d:3132-reset-pindexbestinvalid, r=str4d
When rewinding, reset pindexBestInvalid if it is pointing to a removed block
2018-04-11 21:41:30 -07:00
Jack Grigg
39ee63c876 When rewinding, reset pindexBestInvalid if it is pointing to a removed block 2018-04-11 21:46:58 -06:00
Jack Grigg
4d234cd2f8 Overwinter mainnet activation height 2018-04-11 20:21:45 -06:00
Jack Grigg
2141de16e8 make-release.py: Updated release notes and changelog for 1.1.0. 2018-04-11 20:15:29 -06:00
Jack Grigg
145ee79099 make-release.py: Updated manpages for 1.1.0. 2018-04-11 20:15:13 -06:00
Jack Grigg
f64c346eca make-release.py: Versioning changes for 1.1.0. 2018-04-11 20:02:10 -06:00
Jack Grigg
a560c24d6b depends: Update to latest librustzcash with sapling-crypto dependencies 2018-04-11 08:06:40 -06:00
Jack Grigg
c63c9f20e4 depends: Add support for unpackaged Rust crates 2018-04-11 08:00:23 -06:00
Jack Grigg
b123b9bb79 depends: Upgrade Rust to 1.26.0-beta.3 2018-04-11 07:59:46 -06:00
Homu
079d9e6a57 Auto merge of #3149 - str4d:release-v1.1.0-rc1, r=str4d
Release v1.1.0-rc1
2018-04-05 04:36:15 -07:00
Jack Grigg
ecf544d062 Set Overwinter protocol version to 170005
170004 is the protocol version for the NODE_BLOOM change, which is being
"released" in this RC. The activation height is being set in the final release,
which means that we may end up with both RC and final release versions online
when Overwinter activates. Bumping the protocol version for Overwinter enables
RC nodes to be correctly disconnected.
2018-04-05 12:07:44 +01:00
Homu
600c4acee1 Auto merge of #3151 - bitcartel:fix_alertnotify_test, r=str4d
Fix Deprecation test to check for sanitized string from alertnotify.

Closes #3150
2018-04-05 02:08:42 -07:00
Simon
6901d30830 Fix test to check for sanitized string from alertnotify.
If client version is 1.1.0-rc1, the alertnotify message will have
been sanitized and will show as 1.1.0rc1.
2018-04-04 21:55:20 -07:00
Jack Grigg
776b494aec make-release.py: Updated release notes and changelog for 1.1.0-rc1. 2018-04-05 03:26:17 +01:00
Jack Grigg
13d491c7bf make-release.py: Updated manpages for 1.1.0-rc1. 2018-04-05 03:26:07 +01:00
Jack Grigg
5e11533408 make-release.py: Versioning changes for 1.1.0-rc1. 2018-04-05 03:08:20 +01:00
Homu
f6d09aa822 Auto merge of #2814 - str4d:2074-node-bloom, r=str4d
Add NODE_BLOOM service bit

Cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#6579
  - Zcash equivalent of BIP 111
- bitcoin/bitcoin#6652
  - Docs for BIP 111
- bitcoin/bitcoin#7087
- bitcoin/bitcoin#7174
- bitcoin/bitcoin#8709

Part of #2074. Closes #2738.
2018-04-04 17:34:30 -07:00
Jack Grigg
3fe2f3d143 Update -enforcenodebloom RPC test with filterclear vs filteradd 2018-04-05 01:30:38 +01:00
R E Broadley
4f31d82395 Allow filterclear messages for enabling TX relay only.
An example of where this might be useful is allowing a node to connect blocksonly during IBD but then becoming a full-node once caught up with the latest block. This might also even want to be the default behaviour since during IBD most TXs appear to be orphans, and are routinely dropped (for example when a node disconnects). Therefore, this can waste a lot of bandwidth.

Additionally, another pull could be written to stop relaying of TXs to nodes that are clearly far behind the latest block and are running a node that doesn't store many orphan TXs, such as recent versions of Bitcoin Core.
2018-04-05 01:30:38 +01:00
Jack Grigg
2b7fcab8fc Move bloom filter filtering logic back into command "switch" 2018-04-05 01:30:38 +01:00
Jack Grigg
0a284ecaf6 Fix NODE_BLOOM documentation errors 2018-04-05 01:30:38 +01:00
Jack Grigg
b77e46fe01 Add RPC test for -enforcenodebloom 2018-04-05 01:30:38 +01:00
Matt Corallo
1c82adeb87 Don't do mempool lookups for "mempool" command without a filter 2018-04-05 01:30:12 +01:00
Patick Strateman
b976ce7cee Document both the peerbloomfilters and enforcenodebloom options. 2018-04-05 01:30:12 +01:00
Patick Strateman
f07ad43553 Add enforcenodebloom option.
Previously peers which implement a protocol version less than NO_BLOOM_VERSION
would not be disconnected for sending a filter command, regardless of the
peerbloomfilter option.

Many node operators do not wish to provide expensive bloom filtering for SPV
clients, previously they had to cherry pick the commit which enabled the
disconnect logic.

The default should remain false until a sufficient percent of SPV clients
have updated.
2018-04-05 01:30:12 +01:00
Patick Strateman
d06ae252a0 Move bloom filter filtering logic outside of command "switch" (giant if/else).
Moving this logic outside of the "switch" makes it far simpler to
enable the forced disconnect by a parameter.
2018-04-05 01:30:12 +01:00
Wladimir J. van der Laan
935f9f713c doc: update release-notes and bips.md for BIP111
Also includes a09db7c [trivial] Minor format fixes
2018-04-05 01:30:12 +01:00
Matt Corallo
8bc4461326 Add NODE_BLOOM service bit and bump protocol version
Lets nodes advertise that they offer bloom filter support explicitly.
The protocol version bump allows SPV nodes to assume that NODE_BLOOM is
set if NODE_NETWORK is set for pre-170004 nodes.

Also adds an option to turn bloom filter support off for nodes which
advertise a version number >= 170004. Nodes attempting to use bloom
filters on such protocol versions are banned, and a later upgade
should drop nodes of an older version which attempt to use bloom
filters.

Much code stolen from Peter Todd.

Zcash: Implements Zcash equivalent of BIP 111; deploys with Overwinter
2018-04-05 01:30:12 +01:00
Homu
f5b1082f9c Auto merge of #3148 - str4d:DOS-mitigation-tx-expiry, r=str4d
Don't increase banscore for expired transactions if they only just expired

Closes #3141.
2018-04-04 15:46:25 -07:00
Jack Grigg
10e97b8f00 test: Add missing Overwinter fields to mininode's CTransaction 2018-04-04 22:49:49 +01:00
Homu
dc57d6a7bc Auto merge of #3146 - str4d:bc-7956-dbwrapper-tests, r=str4d
Additional dbwrapper tests

Cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#7992
- bitcoin/bitcoin#9867
  - Only the commit affecting dbwrapper tests
- bitcoin/bitcoin#9610
  - Only the change affecting dbwrapper tests
- bitcoin/bitcoin#10844
2018-04-04 14:23:14 -07:00