| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
CreateNewBlock returns a pointer for which the caller takes ownership.
Use std::unique_ptr to make this explicit and simplify handling of these
objects in getblocktemplate.
|
| | |
|
| |\
| |
| |
| |
| | |
fa10ce6 Move ui_interface.cpp to libbitcoin_server_a_SOURCES (MarcoFalke)
fabbf80 [ui] Move InitError, InitWarning, AmountErrMsg (MarcoFalke)
|
| | | |
|
| |/
|
|
|
| |
Removes all the `#ifdef ENABLE_WALLET` from `test_bitcoin` by
making the wallet tests use their own fixture.
|
| |\
| |
| |
| | |
25340b7 [Wallet] refactor wallet/init interaction (Jonas Schnelli)
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Split out methods to every module, apart from 'help' and 'stop' which
are implemented in rpcserver.cpp itself.
- This makes it easier to add or remove RPC commands - no longer everything that includes
rpcserver.h has to be rebuilt when there's a change there.
- Cleans up `rpc/server.h` by getting rid of the huge cluttered list of function definitions.
- Removes most of the bitcoin-specific code from rpcserver.cpp and .h.
Continues #7307 for the non-wallet.
|
| |\ \
| |/
|/|
| | |
982670c Add LockPoints (Alex Morcos)
|
| | |
| |
| |
| | |
Obtain LockPoints to store in CTxMemPoolEntry and during a reorg, evaluate whether they are still valid and if not, recalculate them.
|
| |/ |
|
| |
|
|
| |
Allow extending the rpc dispatch table by appending commands when server is not running.
|
| | |
|
| |
|
|
| |
Store sum of legacy and P2SH sig op counts. This is calculated in AcceptToMemory pool and storing it saves redoing the expensive calculation in block template creation.
|
| |
|
|
| |
This allows us to optimize CTxMemPool::removeForReorg.
|
| |
|
|
| |
Compute the value of inputs that already are in the chain at time of mempool entry and only increase priority due to aging for those inputs. This effectively changes the CTxMemPoolEntry's GetPriority calculation from an upper bound to a lower bound.
|
| |\
| |
| |
| | |
2e29e7e Globals: Remove a bunch of Params() calls from main.cpp: (Jorge Timón)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
1) Chainparams: Explicit CChainParams arg for main:
-AcceptBlock
-AcceptBlockHeader
-ActivateBestChain
-ConnectTip
-InitBlockIndex
-LoadExternalBlockFile
-VerifyDB parametric constructor
2) Also pickup more Params()\. in main.cpp
3) Pass nPruneAfterHeight explicitly to new FindFilesToPrune() in main.cpp
|
| |/
|
|
| |
This is only for unit tests.
|
| |
|
|
|
|
|
| |
-BitcoinMiner
-CreateNewBlock
-GenerateBitcoins
-ProcessBlockFound
|
| |
|
|
|
| |
-ProcessNewBlock
-TestBlockValidity
|
| | |
|
| |
|
|
| |
(suggested by Wladimir)
|
| |
|
|
|
|
|
| |
As suggested by Greg Maxwell-- unit test to make sure a block
with a double-spend in it doesn't pass validation if half of
the double-spend is already in the memory pool (so full-blown
transaction validation is skipped) when the block is received.
|
| | |
|
| |\
| |
| |
| |
| | |
a56054b Update key.cpp to use new libsecp256k1 (Pieter Wuille)
a591d98 Squashed 'src/secp256k1/' changes from 1897b8e..22f60a6 (Pieter Wuille)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
libsecp256k1's API changed, so update key.cpp to use it.
Libsecp256k1 now has explicit context objects, which makes it completely thread-safe.
In turn, keep an explicit context object in key.cpp, which is explicitly initialized
destroyed. This is not really pretty now, but it's more efficient than the static
initialized object in key.cpp (which made for example bitcoin-tx slow, as for most of
its calls, libsecp256k1 wasn't actually needed).
This also brings in the new blinding support in libsecp256k1. By passing in a random
seed, temporary variables during the elliptic curve computations are altered, in such
a way that if an attacker does not know the blind, observing the internal operations
leaks less information about the keys used. This was implemented by Greg Maxwell.
|
| |/ |
|
| |\
| |
| |
| | |
3fcfbc8 Add a consistency check for the block chain data structures (Pieter Wuille)
|
| | |
| |
| |
| |
| |
| | |
This adds a -checkblockindex (defaulting to true for regtest), which occasionally
does a full consistency check for mapBlockIndex, setBlockIndexCandidates, chainActive, and
mapBlocksUnlinked.
|
| |/
|
|
| |
The environment is prepared by the main thread to guard against invalid locale settings and to prevent deinitialization issues of Boost path, which can result in app crashes.
|
| |\
| |
| |
| | |
50c72f2 [Move Only] Move wallet related things to src/wallet/ (Jonas Schnelli)
|
| | |
| |
| |
| | |
could once be renamed from /src/wallet to /src/legacywallet.
|
| |/
|
|
|
|
|
|
| |
Make sure that chainparams and logging is properly initialized. Doing
this for every test may be overkill, but this initialization is so
simple that that does not matter.
This should fix the travis issues.
|
| |
|
|
|
|
|
|
|
| |
UNITTEST parameter are not used by any current tests, and the model
(modifyable parameters) is inconvenient when unit-testing. As
they are stored in a global structure eevery test
would have to (re)set up its own parameters.
For consistency it is also better to test with MAIN parameters.
|
| |
|
|
|
| |
This changes the TestingSetup fixture to be per-unit-test rather than global.
Most tests don't need it, so it's only invoked in a few.
|
| | |
|
| |
|
|
| |
It's useful for much more than wallets.
|
| |\
| |
| |
| |
| |
| |
| |
| | |
7c70438 Get rid of the dummy CCoinsViewCache constructor arg (Pieter Wuille)
ed27e53 Add coins_tests with a large randomized CCoinViewCache test. (Pieter Wuille)
058b08c Do not keep fully spent but unwritten CCoins entries cached. (Pieter Wuille)
c9d1a81 Get rid of CCoinsView's SetCoins and SetBestBlock. (Pieter Wuille)
f28aec0 Use ModifyCoins instead of mutable GetCoins. (Pieter Wuille)
|
| | | |
|
| | |
| |
| |
| | |
UNITTEST inherites from MAIN but allows synamically changing its parameters using the ModifiableParams() interface
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It breaks the new mingw tests!
See
- https://travis-ci.org/bitcoin/bitcoin/jobs/36845581
- https://travis-ci.org/bitcoin/bitcoin/jobs/36845582
This reverts commit 470590277782cce2fe73275c74523aef59a51eab, 5e2e7fcb99738d9254d4030d53e4f711b2fc5ee0, a25fd6be138ff2bff7e2ad6a1a789db523c0193f.
|
| |/
|
|
| |
UNITTEST inherites from MAIN but allows synamically changing its parameters using the ModifiableParams() interface
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| | |
|
| |
|
|
|
| |
There is no need for it in the utility libraries or tools.
Put it in init.cpp, and in the tests separately (as they can't link init).
|
| |
|
|
|
|
|
|
|
| |
This commit removes all the unnecessary dependencies (key, core,
netbase, sync, ...) from bitcoin-cli.
To do this it shards the chain parameters into BaseParams, which
contains just the RPC port and data directory (as used by utils and
bitcoin-cli) and Params, with the rest.
|
| |
|
|
|
|
|
|
| |
Building the tests was giving some vague error message about a doubly-defined
symbol.
The solution is to define ShutdownRequested in test_bitcoin.cpp as well
so that init.cpp does not get pulled in.
|
| |
|
|
|
|
|
|
| |
- Add license headers to source files (years based on commit dates)
in `src/test` as well as `qa`
- Add `README.md` to `src/test/data` specifying MIT license
Fixes #3848
|
| |\
| |
| |
| | |
9e9056c Remove -logtodebugger (Wladimir J. van der Laan)
|