Cory Fields
a794284e61
locking: add a quick example of GUARDED_BY
...
This was chosen not because it's necessarily helpful, but because its locking
assumptions were already correct.
2015-06-16 04:10:21 -04:00
Cory Fields
2b890dd424
locking: fix a few small issues uncovered by -Wthread-safety
...
- rpcwallet: No need to lock twice here
- openssl: Clang doesn't understand selective lock/unlock here. Ignore it.
- CNode: Fix a legitimate (though very unlikely) locking bug.
2015-06-16 04:04:02 -04:00
Cory Fields
cd27bba060
locking: teach Clang's -Wthread-safety to cope with our scoped lock macros
...
This allows us to use function/variable/class attributes to specify locking
requisites, allowing problems to be detected during static analysis.
This works perfectly with newer Clang versions (tested with 3.3-3.7). For older
versions (tested 3.2), it compiles fine but spews lots of false-positives.
2015-06-16 03:59:26 -04:00
rion
a3a80c253c
remove berkeley-db4 workaround
...
"brew install berkeley-db4" appears to be working again. simplified instructions by removing the berkeley-db4 workaround.
2015-06-15 21:02:29 -07:00
Cory Fields
72bf90d770
Fix scheduler build with some boost versions.
...
Some boost versions have a conflicting overload of wait_until that returns void.
Explicitly use a template here to avoid hitting that overload.
2015-06-15 16:29:57 -04:00
Philip Kaufmann
26a639e21f
remove using namespace std from addrman.cpp
2015-06-15 14:45:19 +02:00
Philip Kaufmann
40c592aa21
make CAddrMan::size() return the correct type of size_t
2015-06-15 14:43:31 +02:00
Wladimir J. van der Laan
edbdf8855d
tests: Extend RPC proxy tests
...
Also test -noonion
2015-06-15 12:45:13 +02:00
Wladimir J. van der Laan
c1fb0e1075
Merge pull request #6274
...
02a6702
Add option `-alerts` to opt out of alert system (Wladimir J. van der Laan)
2015-06-15 09:57:33 +02:00
Wladimir J. van der Laan
02a6702a82
Add option -alerts
to opt out of alert system
...
Make it possible to opt-out of the centralized alert system by providing
an option `-noalerts` or `-alerts=0`. The default remains unchanged.
This is a gentler form of #6260 , in which I went a bit overboard by
removing the alert system completely.
I intend to add this to the GUI options in another pull after this.
2015-06-15 09:53:33 +02:00
Wladimir J. van der Laan
d4565b6080
Merge pull request #6269
...
c110575
gitian: Use the new bitcoin-detached-sigs git repo for OSX signatures (Cory Fields)
2015-06-15 09:53:04 +02:00
Wladimir J. van der Laan
5ebe7db6d0
Merge pull request #6257
...
ef2a3de
Add paytxfee to getwalletinfo, warnings to getnetworkinfo (Stephen)
2015-06-15 09:39:30 +02:00
Wladimir J. van der Laan
f3d4dbb939
Merge pull request #6276
...
7d6a85a
Fix getbalance * (Tom Harding)
2015-06-15 09:02:38 +02:00
Wladimir J. van der Laan
06818f7145
doc: Add section on plurals to strings policy
...
Thanks to @pryds for explaining this to me on Transifex.
2015-06-15 08:43:56 +02:00
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