Commit graph

8920 commits

Author SHA1 Message Date
Josh Lehan
e3cae52538 Added -whiteconnections=<n> option
This sets aside a number of connection slots for whitelisted peers,
useful for ensuring your local users and miners can always get in,
even if your limit on inbound connections has already been reached.
2015-06-14 02:07:15 -07:00
Jacob Welsh
b19a88b2a0 depends: fix Boost 1.55 build on GCC 5
Boost assumes variadic templates are always available in GCC 4.4+, but
they aren't since we don't build with -std=c++11.

This applies the patch that fixed the issue in boost 1.57:
eec8085549

See also: https://svn.boost.org/trac/boost/ticket/10500
2015-06-13 17:02:34 -05:00
Tom Harding
7d6a85ab5b Fix getbalance *
Chance "getbalance *" not to use IsTrusted.  The method and result
now match the "getbalance <specific-account>" behavior. In
particular, "getbalance * 0" now works.

Also fixed a comment -- GetGalance has required 1 confirmation
for many years, and the default "getbalance *" behavior matches
that.
2015-06-12 15:31:01 -07:00
Wladimir J. van der Laan
ab0ec67903
Merge pull request #6209
e059726 [Qt] deselect peer when switching away from peers tab in RPC console (Philip Kaufmann)
7211ada [Qt] replace Boost foreach with Qt version peertablemodel.cpp (Philip Kaufmann)
1b0db7b [Qt] extend rpc console peers tab (Philip Kaufmann)
2015-06-12 16:49:53 +02:00
Wladimir J. van der Laan
8ccc07c077
Merge pull request #6256
65b9454 Use best header chain timestamps to detect partitioning (Gavin Andresen)
2015-06-12 16:44:36 +02:00
Wladimir J. van der Laan
baf05075fa Improve proxy initialization
Simplify and make the code in AppInit2 more clear.

This provides a straightforward flow, gets rid of .count() (which makes
it possible to override an earlier provided proxy option to nothing), as
well as comments the different cases.
2015-06-12 12:41:44 +02:00
Wladimir J. van der Laan
ebab5d3c59
Merge pull request #6266
0cc7b23 Fix univalue handling of \u0000 characters. (Daniel Kraft)
2015-06-12 09:15:26 +02:00
Stephen
ef2a3de25c Add paytxfee to getwalletinfo, warnings to getnetworkinfo 2015-06-11 16:12:34 -04:00
Wladimir J. van der Laan
dd8fe8215a
Merge pull request #6221
c257a8c Prune: Support noncontiguous block files (Adam Weiss)
2015-06-11 18:24:35 +02:00
Daniel Kraft
0cc7b2352e Fix univalue handling of \u0000 characters.
Univalue's parsing of \u escape sequences did not handle NUL characters
correctly.  They were, effectively, dropped.  The extended test-case
fails with the old code, and is fixed with this patch.
2015-06-11 12:09:05 +02:00
Wladimir J. van der Laan
51870fc151
Merge pull request #6264
9b5659d Remove translation for -help-debug options (Wladimir J. van der Laan)
2015-06-11 10:50:01 +02:00
Jonas Schnelli
208589514c fundrawtransaction tests 2015-06-11 01:03:23 -07:00
Matt Corallo
21bbd920e5 Add fundrawtransaction RPC method 2015-06-11 01:03:23 -07:00
Matt Corallo
1e0d1a2ff0 Add FundTransaction method to wallet
Some code stolen from Jonas Schnelli <jonas.schnelli@include7.ch>
2015-06-11 01:03:23 -07:00
Matt Corallo
2d84e22703 Small tweaks to CCoinControl for fundrawtransaction 2015-06-11 01:03:23 -07:00
Pieter Wuille
9b4e7d9a5e Add DummySignatureCreator which just creates zeroed sigs 2015-06-11 01:03:23 -07:00
Philip Kaufmann
e059726811 [Qt] deselect peer when switching away from peers tab in RPC console 2015-06-11 08:39:08 +02:00
Philip Kaufmann
7211adad85 [Qt] replace Boost foreach with Qt version peertablemodel.cpp 2015-06-11 08:38:02 +02:00
Philip Kaufmann
1b0db7b984 [Qt] extend rpc console peers tab
- add node id, ping wait, whitelisted and common height
- rephrase some labels to make them easier to understand for users
2015-06-11 08:38:01 +02:00
Cory Fields
c110575a92 gitian: Use the new bitcoin-detached-sigs git repo for OSX signatures
Rather than fetching a signature.tar.gz from somewhere on the net, instruct
Gitian to use a signature from a tag in the bitcoin-detached-sigs repository
which corresponds to the tag of the release being built.

This changes detached-sig-apply.sh to take a dirname rather than a tarball as
an argument, though detached-sig-create.sh still outputs a tarball for
convenience.
2015-06-10 17:54:46 -04:00
Wladimir J. van der Laan
eba2f061a0
Merge pull request #6061
eb83719 Consensus: Refactor: Separate Consensus::CheckTxInputs and GetSpendHeight in CheckInputs (Jorge Timón)
2015-06-10 18:04:38 +02:00
Wladimir J. van der Laan
1fea667216
Merge pull request #5975
425c3a8 Consensus: Separate CheckIndexAgainstCheckpoint() from ContextualCheckBlockHeader (Jorge Timón)
2015-06-10 14:42:31 +02:00
Jorge Timón
eb837199a0 Consensus: Refactor: Separate Consensus::CheckTxInputs and GetSpendHeight in CheckInputs 2015-06-10 14:07:30 +02:00
Jorge Timón
425c3a87ff Consensus: Separate CheckIndexAgainstCheckpoint() from ContextualCheckBlockHeader 2015-06-10 13:04:50 +02:00
Wladimir J. van der Laan
ac5476e2c1
Merge pull request #6057
7e6569e [squashme] improve/corrects prune mode detection test for required wallet rescans (Jonas Schnelli)
7a12119 [RPC] disable import functions in pruned mode (Jonas Schnelli)
3201035 [autoprune] allow wallet in pruned mode (Jonas Schnelli)
2015-06-10 12:32:31 +02:00
Wladimir J. van der Laan
3a1d3e8f52
Merge pull request #5985
14d4eef Fix removing of orphan transactions (Alex Morcos)
2015-06-10 12:15:19 +02:00
Wladimir J. van der Laan
9b5659d1c4 Remove translation for -help-debug options
Do not translate -help-debug options, Many technical terms, and
only a very small audience, so is unnecessary stress to translators.

Brings the code up to date with translation string policy in
`doc/translation_strings_policy.md`.

Also remove no-longer-relevant "In this mode -genproclimit controls how
many blocks are generated immediately." (as of #5957) from regtest help.
2015-06-10 11:59:23 +02:00
Wladimir J. van der Laan
e54ff2fc0e
Merge pull request #6213
eebd4cc [init] add -blockversion help and extend -upnp help (Philip Kaufmann)
2015-06-10 11:39:06 +02:00
Wladimir J. van der Laan
8d9f0a6069
Merge pull request #5927
dce8360 Reduce checkpoints' effect on consensus. (Pieter Wuille)
2015-06-10 10:33:12 +02:00
Wladimir J. van der Laan
9c93ee5ceb
Merge pull request #6222
efd4444 Explicitly set tx.nVersion for the genesis block and mining tests (Mark Friedenbach)
2015-06-10 09:48:00 +02:00
Wladimir J. van der Laan
d9a94b7009
Merge pull request #6244
a5a81f7 configure: Detect (and reject) LibreSSL (Luke Dashjr)
2015-06-10 08:08:59 +02:00
Wladimir J. van der Laan
643114f539
Merge pull request #6239
7d8ffac Changes necessary now that zero values accepted in AmountFromValue (Wladimir J. van der Laan)
a04bdef Get rid of fPlus argument to FormatMoney (Wladimir J. van der Laan)
4b4b9a8 Don't go through double in AmountFromValue and ValueFromAmount (Wladimir J. van der Laan)
2015-06-09 18:38:33 +02:00
Wladimir J. van der Laan
3a2ca9bbde
Merge pull request #6246
0640a5e Add an alternate location of endian.h header (Andriy Voskoboinyk)
2015-06-09 18:24:53 +02:00
dexX7
506bae3ac9
Return all available information via validateaddress
`"validateaddress"` omits some information, even in cases where is it available.

The primary motivation is to be able to retrieve redeemScripts, after using `"addmultisigaddress"`, when not all keys are available in the keystore, but the redeemScript actually is.

The output of `"validateaddress"` with this commit:

Keys not available:
```js
validateaddress "n4KWZKx349gdMQGgTnZ8W6WfgSwybkGSK3"
{
  "isvalid": true,
  "address": "n4KWZKx349gdMQGgTnZ8W6WfgSwybkGSK3",
  "scriptPubKey": "76a914fa20d564550b105787f7ce3a9ad7fd9a45cd407088ac",
  "ismine": false,
  "iswatchonly": false,
  "isscript": false
}
```
```js
validateaddress "2N2g2H7gjA8a11g1yKBgh5VTqndyvbnWpBK"
{
  "isvalid": true,
  "address": "2N2g2H7gjA8a11g1yKBgh5VTqndyvbnWpBK",
  "scriptPubKey": "a9146769c19a16c9400b908756e19a4d2afb9e9760e187",
  "ismine": false,
  "iswatchonly": false,
  "isscript": true
}
```

After adding the redeemScript:
```js
addmultisigaddress 2 '["02537357B156A33306A7A014A3748631C59DF405B56F11BA4AA4A3CE81501AF095","02F1FB200390E7864EF4450C07B15988179A57C3CF3A878F668E1070CB615749FE"]'
2N2g2H7gjA8a11g1yKBgh5VTqndyvbnWpBK

validateaddress "2N2g2H7gjA8a11g1yKBgh5VTqndyvbnWpBK"
{
  "isvalid": true,
  "address": "2N2g2H7gjA8a11g1yKBgh5VTqndyvbnWpBK",
  "scriptPubKey": "a9146769c19a16c9400b908756e19a4d2afb9e9760e187",
  "ismine": false,
  "iswatchonly": false,
  "isscript": true,
  "script": "multisig",
  "hex": "522102537357b156a33306a7a014a3748631c59df405b56f11ba4aa4a3ce81501af0952102f1fb200390e7864ef4450c07b15988179a57c3cf3a878f668e1070cb615749fe52ae",
  "addresses": [
    "n4KWZKx349gdMQGgTnZ8W6WfgSwybkGSK3",
    "mmSKNtbYYHRrhTLKiok5TuYrGEs4Y2A4k6"
  ],
  "sigsrequired": 2,
  "account": ""
}
```

All keys available:
```js
validateaddress "n4KWZKx349gdMQGgTnZ8W6WfgSwybkGSK3"
{
  "isvalid": true,
  "address": "n4KWZKx349gdMQGgTnZ8W6WfgSwybkGSK3",
  "scriptPubKey": "76a914fa20d564550b105787f7ce3a9ad7fd9a45cd407088ac",
  "ismine": true,
  "iswatchonly": false,
  "isscript": false,
  "pubkey": "02537357b156a33306a7a014a3748631c59df405b56f11ba4aa4a3ce81501af095",
  "iscompressed": true,
  "account": ""
}
```
```js
validateaddress "2N2g2H7gjA8a11g1yKBgh5VTqndyvbnWpBK"
{
  "isvalid": true,
  "address": "2N2g2H7gjA8a11g1yKBgh5VTqndyvbnWpBK",
  "scriptPubKey": "a9146769c19a16c9400b908756e19a4d2afb9e9760e187",
  "ismine": true,
  "iswatchonly": false,
  "isscript": true,
  "script": "multisig",
  "hex": "522102537357b156a33306a7a014a3748631c59df405b56f11ba4aa4a3ce81501af0952102f1fb200390e7864ef4450c07b15988179a57c3cf3a878f668e1070cb615749fe52ae",
  "addresses": [
    "n4KWZKx349gdMQGgTnZ8W6WfgSwybkGSK3",
    "mmSKNtbYYHRrhTLKiok5TuYrGEs4Y2A4k6"
  ],
  "sigsrequired": 2,
  "account": ""
}
```
2015-06-09 17:21:27 +02:00
Wladimir J. van der Laan
c57e12aeef
Merge pull request #6217
51fc672 [Qt] disconnect peers from peers tab via context menu (Philip Kaufmann)
2015-06-09 17:13:29 +02:00
Wladimir J. van der Laan
defa4fc25c
Merge pull request #6249
cab580d gitian: Add petertodd to gitian download scripts (Peter Todd)
2015-06-09 14:21:39 +02:00
Wladimir J. van der Laan
40cfa57279
Merge pull request #6250
789b7c3 gitian-downloader: Add prab's key (Paul Rabahy)
2015-06-09 14:21:06 +02:00
Gavin Andresen
65b9454503
Use best header chain timestamps to detect partitioning
The partition checking code was using chainActive timestamps
to detect partitioning; with headers-first syncing, it should use
(and with this pull request, does use) pIndexBestHeader timestamps.

Fixes issue #6251
2015-06-08 16:34:58 -04:00
Paul Rabahy
789b7c34b8
gitian-downloader: Add prab's key 2015-06-07 22:48:29 -04:00
Peter Todd
cab580d62e
gitian: Add petertodd to gitian download scripts 2015-06-07 20:10:51 -04:00
Andriy Voskoboinyk
0640a5eb60 Add an alternate location of endian.h header 2015-06-07 04:54:20 +03:00
Luke Dashjr
a5a81f7354 configure: Detect (and reject) LibreSSL 2015-06-06 14:23:38 +00:00
Wladimir J. van der Laan
55294a9fb6
Merge pull request #6241
c946ebe fix util_tests.cpp clang warnings (Jonas Schnelli)
2015-06-06 11:31:55 +02:00
Wladimir J. van der Laan
606ba62d88
Merge pull request #6232
f053bd2 Add erkmos OpenPGP key to gitian downloader keyset (Erik Mossberg)
2015-06-06 10:21:00 +02:00
Jonas Schnelli
c946ebed5e fix util_tests.cpp clang warnings
was introduced with #6121
2015-06-06 10:12:12 +02:00
Wladimir J. van der Laan
7d8ffac186 Changes necessary now that zero values accepted in AmountFromValue
- Add an accept test for zero amounts, and a reject test for negative
  amounts
- Remove ugly hack in `settxfee` that is no longer necessary
- Do explicit zero checks in wallet RPC functions
- Don't add a check for zero amounts in `createrawtransaction` - this
  could be seen as a feature
2015-06-06 09:41:12 +02:00
Wladimir J. van der Laan
a04bdefbeb Get rid of fPlus argument to FormatMoney
It's never used with any other value than false, the default.
2015-06-06 09:30:41 +02:00
Wladimir J. van der Laan
4b4b9a8de6 Don't go through double in AmountFromValue and ValueFromAmount
My prime gripe with JSON spirit was that monetary values still had to be
converted from and to floating point which can cause deviations (see #3759
and https://bitcoin.stackexchange.com/questions/22716/bitcoind-sendfrom-round-amount-error).

As UniValue stores internal values as strings, this is no longer
necessary. This avoids risky double-to-integer and integer-to-double
conversions completely, and results in more elegant code to boot.
2015-06-06 09:30:41 +02:00
Peter Todd
076badb60f
Add getblockheader RPC call
Alternative to getblock that works even when the block itself has been
pruned, returning all available information.
2015-06-05 17:07:58 -02:30
Wladimir J. van der Laan
12cdbabc26
Merge pull request #6152
08d9373 Remove unused code from wallet and validation interface (Michael Ford)
2015-06-05 21:24:15 +02:00