Commit graph

4726 commits

Author SHA1 Message Date
Benedict Chan
57e1716de6 update rpc help message for gettransaction to add includeWatchonly param 2014-09-16 11:12:01 +00:00
Wladimir J. van der Laan
6fc1dc1a32
Merge pull request #4719
52a5f90 Create the common location for all m4 autotool build scripts, build-aux/m4.
2014-09-16 12:00:18 +02:00
randy-waterhouse
52a5f90360 Create the common location for all m4 autotool build scripts, build-aux/m4.
Update .gitignore.
2014-09-16 11:55:15 +02:00
Wladimir J. van der Laan
f010344156
Merge pull request #4460
604ee2a Remove tx from AlreadyAskedFor list once we receive it, not when we process it. (R E Broadley)
2014-09-16 11:31:54 +02:00
Wladimir J. van der Laan
edb1eebabc
Merge pull request #4853
2605b94 [Qt] update form files for setting autoDefault explicitly to false (Philip Kaufmann)
2014-09-16 10:49:47 +02:00
imharrywu
e9992fb645 remove include of chainparams.h
chainparams.h has not been used in this cpp file already, consider to remove it for clean.
2014-09-16 15:53:04 +08:00
Philip Kaufmann
ee304b6e35 minor changes for help message of getpeerinfo 2014-09-16 09:00:36 +02:00
Pieter Wuille
dc54e9db98
Merge pull request #4825
8d657a6 Fixing compiler warning C4800: 'type' forcing value to bool 'true' or 'false' (ENikS)
2014-09-16 04:47:55 +02:00
Pieter Wuille
7388b74cd2
Merge pull request #4911
611116d header include cleanup (Philip Kaufmann)
2014-09-16 04:12:52 +02:00
Pieter Wuille
765f398436
Merge pull request #4875
f7e3637 Eliminate extra assignment (Suhas Daftuar)
ec7eb0f When reindexing check for file before trying to open (refactored) (Suhas Daftuar)
2014-09-16 03:21:21 +02:00
Wladimir J. van der Laan
327dcfece7 Merge pull request #4869
6050ab6 netbase: Make SOCKS5 negotiation interruptible (Wladimir J. van der Laan)
2014-09-15 17:25:12 +02:00
Suhas Daftuar
f7e36370f3 Eliminate extra assignment 2014-09-15 09:56:10 -04:00
ENikS
ec91092df8
Fixing compiler warning C4101
Github-Pull: #4856
2014-09-15 14:35:32 +02:00
Wladimir J. van der Laan
c362c57568
Merge pull request #4798
d920f7d Move g_signals.SetBestChain(..) below SyncWithWallets (Cozz Lovan)
2014-09-15 10:32:59 +02:00
Pieter Wuille
2ec82e94e6
Merge pull request #4817
c26649f Track modified size in TxMemPoolEntry so that we can correctly compute priority. (Alex Morcos)
2014-09-15 07:29:04 +02:00
Jeff Garzik
a0a8700bc8
Merge pull request #4909 2014-09-14 19:27:22 -04:00
Philip Kaufmann
611116d4e3 header include cleanup
- ensures alphabetical ordering for includes etc. in source file headers
2014-09-14 12:43:56 +02:00
Philip Kaufmann
2d79bba36b cleanup new script files (no code changes)
- add missing header end comments
- ensure alphabetical ordering
- update copyright year and license
2014-09-14 12:25:38 +02:00
Luke Dashjr
a65e320747 bitcoin-util-test: Test bitcoin-tx with null scriptPubKey 2014-09-14 06:28:22 +00:00
Luke Dashjr
15ef1b905b Bugfix: bitcoin-tx: scriptPubKey may be null, so accept outscript=<n>: 2014-09-14 05:28:41 +00:00
jtimon
6dcfda2dc4 Don't pass nHashType to EvalScript nor CheckSig 2014-09-12 20:04:31 +02:00
jtimon
2b23a87599 Don't pass nHashType to VerifyScript 2014-09-12 20:04:31 +02:00
jtimon
ce3649fb61 Remove CScriptCheck::nHashType (was always 0) 2014-09-12 20:03:03 +02:00
jtimon
358562b651 Remove unused function main:VerifySignature 2014-09-12 20:03:03 +02:00
Pieter Wuille
b9307d2f55
Merge pull request #4876
6022b5d Make script_{valid,invalid}.json validation flags configurable (Pieter Wuille)
2014-09-12 18:33:02 +02:00
Pieter Wuille
efad808aae Avoid reject message feedback loops 2014-09-12 17:50:31 +02:00
Wladimir J. van der Laan
3fa1c81b94
Merge pull request #4885
aa3c697 Store fewer orphan tx by default, add -maxorphantx option (Gavin Andresen)
c74332c Stricter handling of orphan transactions (Gavin Andresen)
2014-09-11 14:46:27 +02:00
Gavin Andresen
aa3c697e90
Store fewer orphan tx by default, add -maxorphantx option
There is no reason to store thousands of orphan transactions;
normally an orphan's parents will either be broadcast or
mined reasonably quickly.

This pull drops the maximum number of orphans from 10,000 down
to 100, and adds a command-line option (-maxorphantx) that is
just like -maxorphanblocks to override the default.
2014-09-10 14:09:40 -04:00
Gavin Andresen
c74332c678
Stricter handling of orphan transactions
Prevent denial-of-service attacks by banning
peers that send us invalid orphan transactions
and only storing orphan transactions given to
us by a peer while the peer is connected.
2014-09-10 14:09:40 -04:00
Suhas Daftuar
ec7eb0fa80 When reindexing check for file before trying to open (refactored) 2014-09-10 13:51:53 -04:00
Adam Weiss
e982b574a5 Use explicit fflush() instead of setvbuf()
Flushing after every line when printing to console is desirable when
running with systemd but setvbuf() has slightly different semantics
on Windows that causes warnings.  Just do an explicit fflush() after
each line print to console instead.
2014-09-10 12:48:13 -04:00
Gavin Andresen
def2fdb4b9
Fix crashing bug caused by orphan(s) with duplicate prevout.hash 2014-09-10 16:53:54 +02:00
Wladimir J. van der Laan
d6af9856b0
Merge pull request #4878
540ac45 Avoid returning many "inv" orphans (Jeff Garzik)
d4168c8 Limit CNode::mapAskFor (Wladimir J. van der Laan)
2014-09-10 16:52:57 +02:00
Wladimir J. van der Laan
f23869e14b
Merge pull request #4623
e84843c Broken addresses on command line no longer trigger testnet. (Ross Nicoll)
2014-09-10 15:07:58 +02:00
jtimon
c1e433b717 Rename scriptutils.o to wallet_ismine.o 2014-09-10 12:48:35 +02:00
jtimon
8b59a3d366 Move CAffectedKeysVisitor to wallet.cpp (remove ExtractAffectedKeys) 2014-09-10 12:44:43 +02:00
jtimon
0d2fa14a34 Move scriptutils.o to wallet 2014-09-10 12:42:56 +02:00
Wladimir J. van der Laan
6050ab6855 netbase: Make SOCKS5 negotiation interruptible
Avoids that SOCKS5 negotiation will hold up the shutdown process.

- Sockets can stay in non-blocking mode, no need to switch it on/off
  anymore
- Adds a timeout (20 seconds) on SOCK5 negotiation. This should be
  enough for even Tor to get a connection to a hidden service, and
  avoids blocking the opencon thread indefinitely on a hanging proxy.

Fixes #2954.
2014-09-10 11:33:13 +02:00
Wladimir J. van der Laan
4e8cc3cb86
Merge pull request #4867
a95b119 qt: Remove thousands separators after decimal point (Wladimir J. van der Laan)
2014-09-10 10:28:47 +02:00
Pieter Wuille
f7cdcb80ab
Merge pull request #4822
629d75f Combine CCoinsViewCache's HaveCoins and const GetCoins into AccessCoins. (Pieter Wuille)
2014-09-10 01:44:30 +02:00
Pieter Wuille
4ebd80298d
Merge pull request #4882
faadbe1 remove unneeded cast in rpcmisc.cpp (Philip Kaufmann)
2014-09-10 01:37:46 +02:00
Philip Kaufmann
faadbe1733 remove unneeded cast in rpcmisc.cpp 2014-09-09 19:23:29 +02:00
Pieter Wuille
1575c5171f
Merge pull request #4868
2c2cc5d Remove some unnecessary c_strs() in logging and the GUI (Philip Kaufmann)
f7d0a86 netbase: Use .data() instead of .c_str() on binary string (Wladimir J. van der Laan)
2014-09-09 16:43:06 +02:00
Philip Kaufmann
2c2cc5dac1
Remove some unnecessary c_strs() in logging and the GUI
Includes `core: remove unneeded c_str() / Qt: replace c_str() with Qt code`
by P. Kaufmann.
2014-09-09 11:31:17 +02:00
Jeff Garzik
540ac4514d Avoid returning many "inv" orphans 2014-09-09 09:26:52 +02:00
Wladimir J. van der Laan
d4168c82be Limit CNode::mapAskFor
Tighten resource constraints on CNode.
2014-09-09 09:19:15 +02:00
Wladimir J. van der Laan
8bc0a0173e
Merge pull request #4873
89d91f6 Avoid repeated lookups in mapOrphanTransactions and mapOrphanTransactionsByPrev (Wladimir J. van der Laan)
2014-09-09 09:16:22 +02:00
Pieter Wuille
6022b5dc6b Make script_{valid,invalid}.json validation flags configurable 2014-09-08 22:38:26 +02:00
jtimon
e8b5f0d549 Move CBlockIndex, CChain and related code out of main 2014-09-08 22:17:19 +02:00
jtimon
6db83db3eb Decouple CChain from mapBlockIndex 2014-09-08 22:14:24 +02:00
jtimon
e088d65acb Separate script/sign 2014-09-08 20:21:35 +02:00
jtimon
9294a4bbe7 Separate CScriptCompressor 2014-09-08 20:21:35 +02:00
jtimon
c4408a6c85 Separate script/standard 2014-09-08 20:21:35 +02:00
jtimon
da03e6ed7c Separate script/interpreter 2014-09-08 20:21:33 +02:00
jtimon
cbd22a50c4 Move CScript class and dependencies to script/script 2014-09-08 20:19:31 +02:00
jtimon
86dbeea2cd Rename script.h/.cpp to scriptutils.h/.cpp (plus remove duplicated includes) 2014-09-08 20:19:31 +02:00
Wladimir J. van der Laan
89d91f6aa7 Avoid repeated lookups in mapOrphanTransactions and mapOrphanTransactionsByPrev 2014-09-08 17:38:43 +02:00
Alex Morcos
c26649f9ed Track modified size in TxMemPoolEntry so that we can correctly compute priority. 2014-09-08 11:28:46 -04:00
Pieter Wuille
df623d83da
Merge pull request #4865
8e44f2e Clarify 'compressed nor uncompressed' error message (Peter Todd)
2014-09-08 15:13:55 +02:00
Wladimir J. van der Laan
f7d0a86bf6 netbase: Use .data() instead of .c_str() on binary string
`.c_str()` is only guaranteed to return the data up to the first NUL
character.
2014-09-08 12:20:50 +02:00
Wladimir J. van der Laan
bb4ef1e9dc
Merge pull request #4712
80daee0 [Qt] Call checkBalanceChanged() periodically instead for every updated transaction (Cozz Lovan)
2014-09-08 12:00:08 +02:00
Wladimir J. van der Laan
297998808a
Merge pull request #4697
da2ede2 [Wallet] Improve ReorderTransactions(..) (Cozz Lovan)
2014-09-08 11:07:00 +02:00
Wladimir J. van der Laan
a95b1199db
qt: Remove thousands separators after decimal point
Revert thousands separators after decimal point, as introduced in #4167.
2014-09-08 10:46:52 +02:00
Peter Todd
8e44f2e00a
Clarify 'compressed nor uncompressed' error message 2014-09-07 22:32:57 -04:00
Andreas Schildbach
45a4baf100 Add testnet DNS seed of Andreas Schildbach.
It runs sipas crawler, but rather than using its custom nameserver implementation it serves a generated zonefile via bind9. The zone always contains 25 IPv4 and 25 IPv6 peers. FWIW, the zone is secured using DNSSEC.
2014-09-07 11:16:10 +02:00
ENikS
8d657a6517 Fixing compiler warning C4800: 'type' forcing value to bool 'true' or 'false' 2014-09-06 15:59:59 -04:00
Pieter Wuille
93193c8ffd
Merge pull request #4851
41ef558 univalue: make spaceStr thread-safe (Wladimir J. van der Laan)
2014-09-06 21:10:13 +02:00
Wladimir J. van der Laan
6eb427ed6e
Merge pull request #4839
346193b Cleanup messy error messages (R E Broadley)
2014-09-06 11:05:50 +02:00
R E Broadley
346193bd93 Cleanup messy error messages 2014-09-06 14:18:32 +07:00
Pieter Wuille
0c558288cb
Merge pull request #4849
a264e44 remove dup include of foreach.hpp in script.cpp (Philip Kaufmann)
2014-09-05 22:54:03 +02:00
Wladimir J. van der Laan
41ef558aa9
univalue: make spaceStr thread-safe
Simply add spaces to the existing string instead of using a
temporary.

Fixes #4756.
2014-09-05 14:42:22 +02:00
Philip Kaufmann
2605b94d73 [Qt] update form files for setting autoDefault explicitly to false
- also fixes indentation in one file (auto fixed by Qt Designer)
- removes several default parameters, which are not needed in the files
- related to #4840 (but not intended as fix for a no-bug)
2014-09-05 13:54:16 +02:00
Teran McKinney
f79323b0dd
Improve readability of CAddrInfo::IsTerrible
- Replaced 86400 with 24*60*60
- Remove references to specific timespans in comments

Github-Pull: #4724
2014-09-05 13:49:08 +02:00
Philip Kaufmann
1ffb99b07f [Qt] copyright, style and indentation cleanup of Qt tests 2014-09-05 13:23:21 +02:00
Philip Kaufmann
a264e445ff remove dup include of foreach.hpp in script.cpp 2014-09-05 09:49:57 +02:00
Pieter Wuille
af9c3b0cff
Merge pull request #4838
1e4f87f Use memcmp for uint256 equality/inequality (Pieter Wuille)
8a41e1e Use boost::unordered_map for mapBlockIndex (Pieter Wuille)
145d5be Introduce BlockMap type for mapBlockIndex (Pieter Wuille)
a0dbe43 checkpoints.cpp depends on main, it can use mapBlockIndex directly (Pieter Wuille)
2014-09-04 23:49:35 +02:00
Wladimir J. van der Laan
b4cd0975fb
Merge pull request #4783
fbe0fca [Qt] minor watch-only changes (Philip Kaufmann)
2014-09-04 16:44:39 +02:00
Wladimir J. van der Laan
65b529ba93
Merge pull request #4833
bbda402 net: Remove MilliSleep from StopNode (Wladimir J. van der Laan)
2014-09-04 13:31:15 +02:00
Wladimir J. van der Laan
f2cc1ee439
Merge pull request #4790
9189f5f remove useless millisleep (phantomcircuit)
2014-09-04 13:30:34 +02:00
Pieter Wuille
1e4f87f5a1 Use memcmp for uint256 equality/inequality 2014-09-04 02:27:04 +02:00
Pieter Wuille
8a41e1edd4 Use boost::unordered_map for mapBlockIndex 2014-09-04 02:05:20 +02:00
Pieter Wuille
145d5be896 Introduce BlockMap type for mapBlockIndex 2014-09-04 02:04:51 +02:00
Pieter Wuille
a0dbe433bd checkpoints.cpp depends on main, it can use mapBlockIndex directly 2014-09-04 02:01:10 +02:00
Pieter Wuille
961c4a04c2
Merge pull request #4808
3f6540a Rename IMPLEMENT_SERIALIZE to ADD_SERIALIZE_METHODS (Pieter Wuille)
47eb765 Serializer simplifications after IMPLEMENT_SERIALIZE overhaul (Pieter Wuille)
2014-09-03 21:01:39 +02:00
Pieter Wuille
52c1deb745
Merge pull request #4820
910526d Use OR of respective block flags for masks (Pieter Wuille)
2014-09-03 20:50:57 +02:00
Pieter Wuille
629d75faac Combine CCoinsViewCache's HaveCoins and const GetCoins into AccessCoins.
The efficient version of CCoinsViewCache::GetCoins only works for known-to-exist
cache entries, requiring a separate HaveCoins call beforehand. This is
inefficient as both perform a hashtable lookup.

Replace the non-mutable GetCoins with AccessCoins, which returns a potentially-NULL
pointer. This also decreases the overloading of GetCoins.

Also replace some copying (inefficient) GetCoins calls with equivalent AccessCoins,
decreasing the copying.
2014-09-03 14:24:52 +02:00
Wladimir J. van der Laan
bbda40226b
net: Remove MilliSleep from StopNode
I don't understand why it would be there in the first place. This looks
like voodoo, not programming.
2014-09-03 12:23:34 +02:00
Matt Corallo
550d4fa7a7 Remove DNS Seeds run by entities which were never well-established. 2014-09-03 00:41:54 -07:00
phantomcircuit
9189f5fe4d remove useless millisleep
reduces time to service requests improving performance
2014-09-02 21:25:53 -07:00
Pieter Wuille
910526d848 Use OR of respective block flags for masks 2014-09-02 18:57:43 +02:00
Pieter Wuille
b8d92236f6
Merge pull request #4812
53efb09 Discover some missing includes (jtimon)
8d5e510 Remove unused function StackString() and class CCoins; (jtimon)
2014-09-02 15:11:55 +02:00
Pieter Wuille
3f6540ad8f Rename IMPLEMENT_SERIALIZE to ADD_SERIALIZE_METHODS 2014-09-02 09:58:09 +02:00
jtimon
53efb09e4c Discover some missing includes 2014-09-02 02:27:03 +02:00
jtimon
8d5e5102f6 Remove unused function StackString() and class CCoins; 2014-09-02 02:27:03 +02:00
ENikS
c0f5d4aba5 Fixing Compiler Error C2466 2014-09-01 19:51:25 -04:00
Pieter Wuille
47eb76597e Serializer simplifications after IMPLEMENT_SERIALIZE overhaul 2014-09-01 22:00:19 +02:00
Pieter Wuille
2e731f24b5
Merge pull request #4737
31e9a83 Use CSizeComputer to avoid counting sizes in SerializationOp (Pieter Wuille)
84881f8 rework overhauled serialization methods to non-static (Kamil Domanski)
5d96b4a remove fields of ser_streamplaceholder (Kamil Domanski)
3d796f8 overhaul serialization code (Kamil Domanski)
2014-09-01 21:23:01 +02:00
Wladimir J. van der Laan
f6a8105037
Merge pull request #4779
093303a add missing header end comments (Philip Kaufmann)
2014-09-01 15:35:09 +02:00
Wladimir J. van der Laan
107922663b
Merge pull request #4767
b144a74 depends: bump miniupnpc to 1.9.20140701. (Cory Fields)
f628127 depends: bump openssl to 1.0.1i (Cory Fields)
9f7f504 build: add -DMINIUPNP_STATICLIB for new version (Cory Fields)
2014-09-01 10:28:33 +02:00
Wladimir J. van der Laan
01113f7b43
Merge pull request #4780
4d04492 add missing copyright headers (Philip Kaufmann)
2014-09-01 10:26:48 +02:00
Wladimir J. van der Laan
6f5d33b3d2
Update translations after update script improvements 2014-09-01 10:10:21 +02:00
Wladimir J. van der Laan
93f97aab62
Merge pull request #4768
2e28031 Perform CVerifyDB on pcoinsdbview instead of pcoinsTip (Wladimir J. van der Laan)
2014-09-01 09:42:10 +02:00
Cozz Lovan
d920f7dcf8 Move g_signals.SetBestChain(..) below SyncWithWallets 2014-08-31 16:17:39 +02:00
Pieter Wuille
31e9a8384a Use CSizeComputer to avoid counting sizes in SerializationOp 2014-08-31 02:18:42 +02:00
Kamil Domanski
84881f8c47 rework overhauled serialization methods to non-static
Thanks to Pieter Wuille for most of the work on this commit.
I did not fixup the overhaul commit, because a rebase conflicted
with "remove fields of ser_streamplaceholder".
I prefer not to risk making a mistake while resolving it.
2014-08-31 02:16:17 +02:00
Kamil Domanski
5d96b4ae01 remove fields of ser_streamplaceholder
The nType and nVersion fields of stream objects are never accessed
from outside the class (or perhaps from the inside too, I haven't checked).
Thus no need to have them in a placeholder, whose only purpose is to
fill the "Stream" template parameter in serialization implementation.
2014-08-31 02:16:10 +02:00
Kamil Domanski
3d796f8996 overhaul serialization code
The implementation of each class' serialization/deserialization is no longer
passed within a macro. The implementation now lies within a template of form:

template <typename T, typename Stream, typename Operation>
inline static size_t SerializationOp(T thisPtr, Stream& s, Operation ser_action, int nType, int nVersion) {
    size_t nSerSize = 0;
    /* CODE */
    return nSerSize;
}

In cases when codepath should depend on whether or not we are just deserializing
(old fGetSize, fWrite, fRead flags) an additional clause can be used:
bool fRead = boost::is_same<Operation, CSerActionUnserialize>();

The IMPLEMENT_SERIALIZE macro will now be a freestanding clause added within
class' body (similiar to Qt's Q_OBJECT) to implement GetSerializeSize,
Serialize and Unserialize. These are now wrappers around
the "SerializationOp" template.
2014-08-31 02:14:20 +02:00
Daniel Kraft
4b0deb3b2d Clean up CMerkleTx::SetMerkleBranch.
The case SetMerkleBranch(NULL) was never actually used, and thus the
involved code (loading the block from disk) can be removed and the
implementation simplified.
2014-08-30 18:00:55 +02:00
Ross Nicoll
e84843c0db Broken addresses on command line no longer trigger testnet.
When passing a bitcoin: URI on the command line, invalid addresses do not incorrectly send the
user to the test network.
2014-08-30 09:39:59 +01:00
Kamil Domanski
9f3d476779
changed field types in some structures to equivalent unambiguous types
Conflicts:
	src/core.cpp

Rebased-By: Wladimir J. van der Laan
Github-Pull: #4180
2014-08-30 06:27:34 +02:00
Wladimir J. van der Laan
ce223e7b7d
Merge pull request #4789
bac5586 Replace weird characters by normal spaces (Pieter Wuille)
2014-08-30 05:58:33 +02:00
Pieter Wuille
f5f1ab8dc3
Merge pull request #4781
187115c cleanup include of assert.h (Philip Kaufmann)
2014-08-30 02:38:36 +02:00
Pieter Wuille
bac5586b10 Replace weird characters by normal spaces 2014-08-30 02:35:05 +02:00
Jeff Garzik
135a43df7b
Merge pull request #4778 2014-08-29 20:22:06 -04:00
jtimon
e9dd83f0a9 missing include boost/algorithm/string/replace.hpp 2014-08-29 22:52:41 +02:00
Jeff Garzik
309aa76d27
Merge pull request #4599 2014-08-29 15:23:13 -04:00
Wladimir J. van der Laan
0101483f46
Move CMerkleTx to wallet.cpp/h
It is only used by the wallet so it has no place in main.
2014-08-29 17:26:01 +02:00
Wladimir J. van der Laan
57153d4e1a rpc: Compute number of confirmations of a block from block height
Currently this uses a CMerkleTx, but that makes no sense as we
have the CBlockIndex available. As noted by @jgarzik.
2014-08-29 17:25:23 +02:00
Wladimir J. van der Laan
faeb341da3
Merge pull request #4777
8bdd287 Fix a few "Uninitialized scalar field" warnings (Wladimir J. van der Laan)
2014-08-29 10:53:47 +02:00
Philip Kaufmann
fbe0fcae76 [Qt] minor watch-only changes
- use watch-only, not watchonly
- add back a tooltip hint when hovering addresses and attach
  "(watch-only)" at the end
2014-08-28 23:20:46 +02:00
Philip Kaufmann
bbad683224 [Qt] simplify return code and return values in txtablemodel
- also move an added space in a string where it belongs
2014-08-28 23:14:11 +02:00
Philip Kaufmann
21f1516468 [Qt] add all used colors in txtablemodel to guiconstants
- add colors used in TX status decoration
2014-08-28 23:14:10 +02:00
Philip Kaufmann
187115c01d cleanup include of assert.h 2014-08-28 23:02:49 +02:00
Philip Kaufmann
4d04492bf2 add missing copyright headers 2014-08-28 22:26:56 +02:00
Philip Kaufmann
093303a887 add missing header end comments
- ensures a consistent usage in header files
- also add a blank line after the copyright header where missing
- also remove orphan new-lines at the end of some files
2014-08-28 22:25:21 +02:00
Wladimir J. van der Laan
3ed668dbe2
Merge pull request #4772
87d9819 fix comments ExtractAddress() -> ExtractDestination() (jtimon)
2014-08-28 18:14:03 +02:00
Wladimir J. van der Laan
8bdd2877c4
Fix a few "Uninitialized scalar field" warnings
Fix a few warnings reported by Coverity.
None of these is critical, but making sure that class fields are
initialized can avoid heisenbugs.
2014-08-28 15:30:50 +02:00
Jeff Garzik
11a899445e
qt/splashscreen: #include version.h
Needed to build breakage reported by Arnavion on IRC:
qt/splashscreen.cpp: In constructor 'SplashScreen::SplashScreen(const QPixmap&, Qt::WindowFlags, bool)':
qt/splashscreen.cpp:33:98: error: 'FormatFullVersion' was not declared in this scope
2014-08-27 22:39:01 -04:00
jtimon
87d9819d4d fix comments ExtractAddress() -> ExtractDestination() 2014-08-28 01:54:45 +02:00
Wladimir J. van der Laan
d2d6f708e4 Fix build with DEBUG_LOCKORDER
Fixes #4771
2014-08-28 01:52:22 +02:00
Pieter Wuille
d1062e32fa
Merge pull request #4377
654871d replace ComputeMinWork with CheckMinWork (jtimon)
b343c1a Move CBlockIndex::GetBlockWork() to pow::GetProofIncrement(nBits) (jtimon)
c2c02f3 Move UpdateTime to pow (jtimon)
2014-08-27 22:39:28 +02:00
Pieter Wuille
cd3d80be67
Merge pull request #4764
92bb6f2 Bypass reloading blocks from disk (Pieter Wuille)
2014-08-27 22:21:33 +02:00
Wladimir J. van der Laan
70352e11c0
Revert "Add a getutxos command to the p2p protocol. It allows querying of the UTXO set"
This reverts commit da2ec100f3.
2014-08-27 18:04:29 +02:00
Wladimir J. van der Laan
2e280311b8
Perform CVerifyDB on pcoinsdbview instead of pcoinsTip
Bypassing the main coins cache allows more thorough checking with the same
memory budget.

This has no effect on performance because everything ends up in the child
cache created by VerifyDB itself.

It has bugged me ever since #4675, which effectively reduced the
number of checked blocks to reduce peak memory usage.

- Pass the coinsview to use as argument to VerifyDB

- This also avoids that the first `pcoinsTip->Flush()` after VerifyDB
  writes a large slew of unchanged coin records back to the database.
2014-08-27 09:20:33 +02:00
Cory Fields
9f7f504efc build: add -DMINIUPNP_STATICLIB for new version
libminiupnpc changed their required static define to the much more sane
"MINIUPNP_STATICLIB". Sadly, they don't respect the old "STATICLIB" for
back-compat. Define them both since the old one didn't seem to be conflicting
anywhere.

Also go ahead and split out the cppflags so that they can be applied only where
they're needed. This will help us to build dll's from our libs without having
their import/export declspecs poisoned.
2014-08-26 15:28:24 -04:00
Cozz Lovan
80daee0fb5 [Qt] Call checkBalanceChanged() periodically instead for every updated transaction 2014-08-26 19:18:33 +02:00
Wladimir J. van der Laan
f30801afbd
qt: Add null check in setClientModel(0)
Don't clear tray icon menu if it was never created.
Necessary precaution after #4649.
2014-08-26 17:59:57 +02:00
Wladimir J. van der Laan
d49b0876a4
Merge pull request #4673
1c5f0af [Qt] Add column Watch-only to transactions list (Cozz Lovan)
939ed97 Add boolean HaveWatchonly and signal NotifyWatchonlyChanged (Cozz Lovan)
2014-08-26 17:41:33 +02:00
Wladimir J. van der Laan
b9bd6282c5
Merge pull request #4649
b197bf3 [Qt] disable tray interactions when client model set to 0 (Philip Kaufmann)
314fbd9 [Qt] use BitcoinGUI::DEFAULT_WALLET constant in bitcoin.cpp (Philip Kaufmann)
8ca6a16 [Qt] ensure all class attributes are init to 0 (Philip Kaufmann)
2014-08-26 17:39:16 +02:00
Pieter Wuille
3da58b216b
Merge pull request #4748
ad49c25 Split up util.cpp/h (Wladimir J. van der Laan)
f841aa2 Move `COIN` and `CENT` to core.h (Wladimir J. van der Laan)
6e5fd00 Move `*Version()` functions to version.h/cpp (Wladimir J. van der Laan)
b4aa769 Move `S_I*` constants and `MSG_NOSIGNAL` to compat.h (Wladimir J. van der Laan)
af8297c Move functions in wallet.h to implementation file (Wladimir J. van der Laan)
651480c move functions in main and net to implementation files (Wladimir J. van der Laan)
610a8c0 Move SetThreadPriority implementation to util.cpp instead of the header (Wladimir J. van der Laan)
f780e65 Remove unused function `ByteReverse` from util.h (Wladimir J. van der Laan)
121d6ad Remove unused `alignup` function from util.h (Wladimir J. van der Laan)
d1e26d4 Move CMedianFilter to timedata.cpp (Wladimir J. van der Laan)
2014-08-26 16:57:05 +02:00
Pieter Wuille
727298cef3
Merge pull request #4763
aa41ac2 Test IsPushOnly() with invalid push (Peter Todd)
2014-08-26 16:50:17 +02:00
Wladimir J. van der Laan
ad49c256c3 Split up util.cpp/h
Split up util.cpp/h into:

- string utilities (hex, base32, base64): no internal dependencies, no dependency on boost (apart from foreach)
- money utilities (parsesmoney, formatmoney)
- time utilities (gettime*, sleep, format date):
- and the rest (logging, argument parsing, config file parsing)

The latter is basically the environment and OS handling,
and is stripped of all utility functions, so we may want to
rename it to something else than util.cpp/h for clarity (Matt suggested
osinterface).

Breaks dependency of sha256.cpp on all the things pulled in by util.
2014-08-26 13:25:22 +02:00
Wladimir J. van der Laan
f841aa2892 Move COIN and CENT to core.h
Eventually these should end up in `money.h` after monetary
amounts are typedef'ed, but at least they don't belong in `util.h`.
2014-08-26 13:25:22 +02:00
Wladimir J. van der Laan
6e5fd003e0 Move *Version() functions to version.h/cpp 2014-08-26 13:25:21 +02:00
Wladimir J. van der Laan
b4aa769bcb Move S_I* constants and MSG_NOSIGNAL to compat.h 2014-08-26 13:25:21 +02:00
Wladimir J. van der Laan
af8297c010 Move functions in wallet.h to implementation file
Breaks compile-time dependency of wallet.h on util.
2014-08-26 13:25:21 +02:00
Wladimir J. van der Laan
651480c8e4 move functions in main and net to implementation files 2014-08-26 13:25:21 +02:00
Wladimir J. van der Laan
610a8c0759 Move SetThreadPriority implementation to util.cpp instead of the header
Put the THREAD_* and PRIO_ constants in compat.h.
2014-08-26 13:25:21 +02:00
Wladimir J. van der Laan
f780e65ac6 Remove unused function ByteReverse from util.h 2014-08-26 13:25:21 +02:00
Wladimir J. van der Laan
121d6ad9db Remove unused alignup function from util.h 2014-08-26 13:25:21 +02:00
Wladimir J. van der Laan
d1e26d4e71 Move CMedianFilter to timedata.cpp
Now that we no longer use the median filter to keep track of
the number of blocks of peers, that's the only place it is used.
2014-08-26 13:25:20 +02:00
Daniel Kraft
d0867acb0e Use const CCoinsView's at some places.
At some places where it is possible (e. g., CheckInputs), use a const
version of CCoinsView instead of a non-const one.
2014-08-26 11:29:18 +02:00
Daniel Kraft
a3dc587a62 Make appropriate getter-routines "const" in CCoinsView.
Mark the "Get"/"Have" routines in CCoinsView and subclasses as "const".
2014-08-26 11:29:18 +02:00
Daniel Kraft
ffb4c210bc Mark LevelDB "Read" and "Exists" functions as const.
Mark the "Read" and "Exists" functions in CLevelDBWrapper as "const".
They do not change anything in the DB, by definition.
2014-08-26 11:26:58 +02:00
Pieter Wuille
92bb6f2f17 Bypass reloading blocks from disk 2014-08-26 02:26:41 +02:00
Wladimir J. van der Laan
49f954f154
Merge pull request #4716
0d27dad Clean-up SyncWithWallets/SyncTransaction (Cozz Lovan)
2014-08-25 15:04:28 +02:00
Wladimir J. van der Laan
26f3a05cf1
Merge pull request #4654
c4a7709 Fixes ignored qt 4.8 codecs path on windows when configuring with --with-qt-libdir (ntrgn)
2014-08-25 13:44:41 +02:00
Wladimir J. van der Laan
11270ebde4
Merge pull request #4351
da2ec10 Add a getutxos command to the p2p protocol. It allows querying of the UTXO set given a set of outpoints. (Mike Hearn)
2014-08-25 10:37:40 +02:00
Peter Todd
aa41ac216e
Test IsPushOnly() with invalid push 2014-08-24 21:16:51 -04:00
Pieter Wuille
fff7455ded Make CScript::clear() release its memory 2014-08-24 02:08:33 +02:00
Pieter Wuille
b0875eb3fe Allow BatchWrite to destroy its input, reducing copying 2014-08-24 02:08:33 +02:00
Pieter Wuille
5cd00bc8cb
Merge pull request #4618
eb0b56b Simplify serialize.h's exception handling (Pieter Wuille)
2014-08-24 02:06:09 +02:00
Jeff Garzik
57fe1eaadc
Merge pull request #4632 2014-08-23 12:59:55 -04:00
jtimon
654871d436 replace ComputeMinWork with CheckMinWork 2014-08-23 13:21:51 +02:00
jtimon
b343c1a1e3 Move CBlockIndex::GetBlockWork() to pow::GetProofIncrement(nBits) 2014-08-23 13:21:51 +02:00
jtimon
c2c02f3fa9 Move UpdateTime to pow 2014-08-23 13:21:50 +02:00
Wladimir J. van der Laan
92b3d3630d
Merge pull request #4718
88fe88c gui: remove redundant numTransactions tracking (Wladimir J. van der Laan)
2014-08-23 09:30:47 +02:00
Jeff Garzik
fac54dcb71
Merge pull request #4733 2014-08-22 10:35:39 -04:00
Wladimir J. van der Laan
93ed3d9b4e
Merge pull request #4735
3802224 Remove all other print() methods (Wladimir J. van der Laan)
9b6d4c5 Move strprintf define to tinyformat.h (Wladimir J. van der Laan)
8121258 Remove print() from core functions (Wladimir J. van der Laan)
2014-08-21 16:05:47 +02:00
Wladimir J. van der Laan
56953925db
Merge pull request #4706
8695a39 replace int with size_t in stream methods (Kamil Domanski)
2014-08-21 08:51:19 +02:00
Jeff Garzik
9c31174992
Merge pull request #4744 2014-08-20 23:16:21 -04:00
Jeff Garzik
7f836c66bd rpc_tests: use BOOST_CHECK_EQUAL
Upon failure, BOOST_CHECK_EQUAL provides additional diagnostic information,
displaying that data that failed to match.
2014-08-20 22:43:36 -04:00
Wladimir J. van der Laan
3802224110 Remove all other print() methods
All unused.
2014-08-20 20:54:27 +02:00
Wladimir J. van der Laan
9b6d4c5cdc Move strprintf define to tinyformat.h
This avoids a dependency on util.h if just tinyformat is needed.
2014-08-20 10:51:18 +02:00
Wladimir J. van der Laan
81212588c0 Remove print() from core functions
Break dependency on util.
2014-08-20 10:43:47 +02:00
Jeff Garzik
dc271fc025 UniValue tests: use more BOOST_CHECK() 2014-08-20 01:09:21 -04:00
Jeff Garzik
e85267be63 UniValue: add unit tests 2014-08-20 00:28:46 -04:00
Jeff Garzik
dee9324a0b UniValue: compact (!pretty) output should not include extra whitespace 2014-08-20 00:27:49 -04:00
Jeff Garzik
42642c9695 UniValue: use correct setNumStr() input val, when setting number values 2014-08-20 00:27:42 -04:00
Jeff Garzik
df4d61e681 Add bitcoin-tx tests
Testing: delin, delout, locktime, and basic createrawtransaction-like
functionality.
2014-08-19 23:15:58 -04:00
Gavin Andresen
335e3a5c95 Merge pull request #4717 from cozz/cozz8
[Qt] Revert overviewpage from QFormLayout to QVBoxLayout
2014-08-19 13:37:25 -04:00
Gavin Andresen
10dcbc1be0 Merge pull request #4728 from laanwj/2014_08_rpcserver_password_delay
Don't reveal whether password is <20 or >20 characters in RPC
2014-08-19 13:32:40 -04:00
Jeff Garzik
fb14452c6c bitcoin-tx: Accept input via stdin. Add input handling to tests. 2014-08-19 10:29:10 -04:00
Jeff Garzik
d789386371 Add "it works" test for bitcoin-tx 2014-08-19 10:28:58 -04:00
Wladimir J. van der Laan
01094bd01f Don't reveal whether password is <20 or >20 characters in RPC
As discussed on IRC.

It seems bad to base a decision to delay based on the password length,
as it leaks a small amount of information.
2014-08-19 14:40:34 +02:00
Wladimir J. van der Laan
dd2819701a
Merge pull request #4670
a35b55b Dont run full check every time we decrypt wallet. (Matt Corallo)
1e21c17 Make CCryptoKeyStore::Unlock check all keys. (Gregory Maxwell)
2014-08-19 12:23:56 +02:00
Wladimir J. van der Laan
c5a91216ae
Merge pull request #4672
22b3c4b remove unused class CAddrMan; from db.h (Philip Kaufmann)
2014-08-19 11:00:43 +02:00
Wladimir J. van der Laan
691e9d28b5
Merge pull request #4725
e432a5f build: add option for reducing exports (v2) (Cory Fields)
2014-08-19 10:54:35 +02:00
Jeff Garzik
0367329549
Merge branch '2014_univalue_warn' into merge-PR4715
Merge pull request #4715
2014-08-19 00:49:31 -04:00
Jeff Garzik
3a56de7fc3 addrman: Do not propagate obviously poor addresses onto the network 2014-08-18 16:50:39 -04:00
Cory Fields
e432a5f08d build: add option for reducing exports (v2)
This was committed previously as 4975ae172 and reverted, because the flags were
applied even if the checks didn't pass. This is the same commit, fixed up to
actually disable the functionality when necessary.

Enabled automatically if boost >= 1.49.
See: https://svn.boost.org/trac/boost/ticket/2309

Also, check for a default visibility attribute, so that we can mark future
api functions correctly.
2014-08-18 16:10:15 -04:00
Kamil Domanski
8695a39350 replace int with size_t in stream methods
Thus the read(...) and write(...) methods of all stream classes now have identical parameter lists.
This will bring these classes one step closer to a common interface.
2014-08-18 20:23:13 +02:00
Wladimir J. van der Laan
a4f151f714
Merge pull request #4704
54c7df8 build: Fix boost build on some platforms (Cory Fields)
2014-08-18 20:17:58 +02:00
Wladimir J. van der Laan
fad23a210b
Revert "build: add option for reducing exports"
Revert #4663 for now. It still breaks the pulltester.

This reverts commit 4975ae1722.

Conflicts:
	configure.ac
2014-08-18 16:52:56 +02:00
Jeff Garzik
3cceba7abb Univalue: Do not build JSON escape list at runtime
No need to waste startup time building something that can be done
at compile time.

This also resolves a clang++ warning originally reported in #4714,
univalue/univalue_write.cpp:33:12: warning: array subscript is of type 'char
escapes['"'] = "\\"";
^~~~

etc.
2014-08-18 10:36:21 -04:00
Wladimir J. van der Laan
e4731dd85c
qt: Use quint64 for formatServicesStr
`uint64_t` was causing a build error on some systems, as that type is
not known after including just the Qt headers.
2014-08-18 16:21:27 +02:00
Wladimir J. van der Laan
04d6c7d10c
Merge pull request #4605
aa82795 Add detailed network info to getnetworkinfo RPC (Wladimir J. van der Laan)
075cf49 Add GetNetworkName function (Wladimir J. van der Laan)
c91a947 Add IsReachable(net) function (Wladimir J. van der Laan)
60dc8e4 Allow -onlynet=onion to be used (Wladimir J. van der Laan)
2014-08-18 13:37:54 +02:00
Wladimir J. van der Laan
aa8279513b
Add detailed network info to getnetworkinfo RPC
This commit adds per-network information to the
getnetworkinfo RPC call:

- Is the network limited?
- Is the network reachable
- Which proxy is used for this network, if any

Inspired by #2575.
2014-08-18 13:36:10 +02:00
Wladimir J. van der Laan
88fe88cf36
gui: remove redundant numTransactions tracking
This number was still tracked even though it's shown nowhere in the UI
anymore. It was originally removed because it didn't match the actual number of
records in the view (which contains outputs, not transactions) thus was
confusing people.
2014-08-18 10:28:26 +02:00
Wladimir J. van der Laan
21e7a5690f
Merge pull request #4655
216e9a4 Add a way to limit deserialized string lengths (Pieter Wuille)
2014-08-18 09:55:24 +02:00