Age | Commit message (Collapse) | Author |
|
Many changes:
* Do not use 'getblocks', but 'getheaders', and use it to build a headers tree.
* Blocks are fetched in parallel from all available outbound peers, using a
limited moving window. When one peer stalls the movement of the window, it is
disconnected.
* No more orphan blocks. At all. We only ever request a block for which we have
verified the headers, and store it to disk immediately. This means that a
disk-fill attack would require PoW.
* Require protocol version 31800 for every peer (released in december 2010).
* No more syncnode (we sync from everyone we can, though limited to 1 during
initial *headers* sync).
* Introduce some extra named constants, comments and asserts.
|
|
ccca27a [Wallet] Watch-only fixes (Cozz Lovan)
|
|
6fd546d Remove CChainParams::NetworkID() (jtimon)
cc97210 Add fTestnetToBeDeprecatedFieldRPC to CChainParams (jtimon)
e11712d Move checkpoint data selection to chainparams (jtimon)
6de50c3 qt: add network-specific style object (Wladimir J. van der Laan)
|
|
Mainly cleanups: Gets rid of isTestNet everywhere, by keeping track
of network-specific theming in a central place.
Also makes GUI no longer dependent on the network ID enumeration, which
alleviates concerns about #4802.
|
|
4bd1185 Qt: allow "emergency" shutdown during startup (Philip Kaufmann)
|
|
27c3e91 qt: add proxy to options overridden if necessary. (Cory Fields)
|
|
|
|
|
|
- allows closing our splash screen to abort startup
|
|
This allows sending the type over queued connections.
Also normalize signal/slot names.
|
|
|
|
If proxy is disabled in the gui but enabled via the command line, it needs to
be added to the override list.
|
|
bb26e2c [Qt] minor changes in splashscreen.cpp (Philip Kaufmann)
|
|
- add missing checks for clientModel and optionsModel
- small cleanups for an #ifdef on Mac
- remove an unneeded else
|
|
- guard an unused variable with Q_UNUSED() macro
- remove a commented out line of code
|
|
5e83bc4 [Qt] include and file header cleanup (Philip Kaufmann)
|
|
It's strange to be able to close these windows while there is work
in progress.
Also set Qt::WA_DeleteOnClose on both windows to make sure that they
are deleted eventually, no matter what happens.
|
|
- alphabetical ordering
- correct ordering own headers before normal headers etc.
|
|
Makes it possible to move, minimize, unminimize the window while
Bitcoin Core is initializing.
|
|
bbad683 [Qt] simplify return code and return values in txtablemodel (Philip Kaufmann)
21f1516 [Qt] add all used colors in txtablemodel to guiconstants (Philip Kaufmann)
|
|
|
|
2605b94 [Qt] update form files for setting autoDefault explicitly to false (Philip Kaufmann)
|
|
e84843c Broken addresses on command line no longer trigger testnet. (Ross Nicoll)
|
|
a95b119 qt: Remove thousands separators after decimal point (Wladimir J. van der Laan)
|
|
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)
|
|
Includes `core: remove unneeded c_str() / Qt: replace c_str() with Qt code`
by P. Kaufmann.
|
|
|
|
|
|
80daee0 [Qt] Call checkBalanceChanged() periodically instead for every updated transaction (Cozz Lovan)
|
|
Revert thousands separators after decimal point, as introduced in #4167.
|
|
- 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)
|
|
|
|
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)
|
|
fbe0fca [Qt] minor watch-only changes (Philip Kaufmann)
|
|
|
|
3f6540a Rename IMPLEMENT_SERIALIZE to ADD_SERIALIZE_METHODS (Pieter Wuille)
47eb765 Serializer simplifications after IMPLEMENT_SERIALIZE overhaul (Pieter Wuille)
|
|
|
|
|
|
|
|
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)
|
|
|
|
|
|
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.
|
|
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.
|
|
When passing a bitcoin: URI on the command line, invalid addresses do not incorrectly send the
user to the test network.
|
|
|
|
- use watch-only, not watchonly
- add back a tooltip hint when hovering addresses and attach
"(watch-only)" at the end
|
|
- also move an added space in a string where it belongs
|
|
- add colors used in TX status decoration
|
|
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
|