Age | Commit message (Collapse) | Author |
|
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.
|
|
Break dependency on util.
|
|
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)
|
|
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.
|
|
283a3b8 small ordering cleanup of init help message (Philip Kaufmann)
|
|
Github-Pull: #4619
|
|
|
|
Just an alias for onlynet=tor, but matches the new name
of the proxy option -onion= better.
|
|
d70bc52 Rework block processing benchmark code (Pieter Wuille)
|
|
The goal is to increase independence and privacy.
|
|
ebdcc36 Add helptexts for -whitelist and rpc prioritisetransaction and switch to bitcoin instead of satoshis (Cozz Lovan)
|
|
* Replace -benchmark (and the related fBenchmark) with a regular debug option, -debug=bench.
* Increase coverage and granularity of individual block processing steps.
* Add cummulative times.
|
|
This reverts commit d640a3ceab4f4372c2a0f738c1286cfde4b41b50.
|
|
This reverts commit 0da6b3fd187da3aa810aaa584d8bd197ad4fa2b9.
|
|
First and foremost, this defaults to OFF.
This option lets a node consider such transactions non-standard,
meaning they will not be relayed or mined by default, but other miners
are free to mine these as usual.
|
|
|
|
bitcoin instead of satoshis
|
|
The option is only effective for either wallet-less builds or if
-disablewallet is specified as well.
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 34d5fc0 4e1a196 bd4307b d53a33b 7e09b36
Github-Pull: #4286
|
|
Also get rid of ui_interface flag NOSHOWGUI. It's up to the GUI to
decide this.
Fixes #4360.
|
|
dc942e6 Introduce whitelisted peers. (Pieter Wuille)
|
|
|
|
This adds a -whitelist option to specify subnet ranges from which peers
that connect are whitelisted. In addition, there is a -whitebind option
which works like -bind, except peers connecting to it are also
whitelisted (allowing a separate listen port for trusted connections).
Being whitelisted has two effects (for now):
* They are immune to DoS disconnection/banning.
* Transactions they broadcast (which are valid) are always relayed,
even if they were already in the mempool. This means that a node
can function as a gateway for a local network, and that rebroadcasts
from the local network will work as expected.
Whitelisting replaces the magic exemption localhost had for DoS
disconnection (local addresses are still never banned, though), which
implied hidden service connects (from a localhost Tor node) were
incorrectly immune to DoS disconnection as well. This old
behaviour is removed for that reason, but can be restored using
-whitelist=127.0.0.1 or -whitelist=::1 can be specified. -whitebind
is safer to use in case non-trusted localhost connections are expected
(like hidden services).
|
|
- small changes to Shutdown(), buffer __func__, which is now used in
all LogPrintf() calls and format for better readability
- order using namespace alpabetically
|
|
|
|
a339a37 error out, when we detect -socks argument (Philip Kaufmann)
0127a9b remove SOCKS4 support from core and GUI (Philip Kaufmann)
|
|
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).
|
|
|
|
- now we support SOCKS5 only
|
|
2e36866 Show nodeid instead of addresses (for anonymity) unless otherwise requested. (R E Broadley)
|
|
0da6b3f Remove signal DoubleSpendDetected, use function (Tom Harding)
88dd359 Check signatures before respend relay (Tom Harding)
|
|
|
|
|
|
The wallet now uses the mempool fee estimator with a new
command-line option: -txconfirmtarget (default: 1) instead
of using hard-coded fees or priorities.
A new bitcoind that hasn't seen enough transactions to estimate
will fall back to the old hard-coded minimum priority or
transaction fee.
-paytxfee option overrides -txconfirmtarget.
Relaying and mining code isn't changed.
For Qt, the coin control dialog now uses priority estimates to
label transaction priority (instead of hard-coded constants);
unspent outputs were consistently labeled with a much higher
priority than is justified by the free transactions actually
being accepted into blocks.
I did not implement any GUI for setting -txconfirmtarget; I would
suggest getting rid of the "Pay transaction fee" GUI and replace
it with either "target number of confirmations" or maybe
a "faster confirmation <--> lower fee" slider or select box.
|
|
Also add to HelpMessage() what specifications are valid.
|
|
Also removes the need for forward reference to RelayableRespend.
|
|
4aaa017 rework help messages for fee-related options (Philip Kaufmann)
|
|
-respendnotify=<cmd> Execute command when a network tx respends wallet
tx input (%s=respend TxID, %t=wallet TxID)
Add respendsobserved array to gettransaction, listtransactions, and
listsinceblock RPCs. This omits the malleated clones that are included
in the walletconflicts array.
Add RPC help for respendsobserved and walletconflicts (help was missing
for the latter).
|
|
Allows network wallets and other clients to see transactions that respend
a prevout already spent in an unconfirmed transaction in this node's mempool.
Knowledge of an attempted double-spend is of interest to recipients of the
first spend. In some cases, it will allow these recipients to withhold
goods or services upon being alerted of a double-spend that deprives them
of payment.
As before, respends are not added to the mempool.
Anti-Denial-of-Service-Attack provisions:
- Use a bloom filter to relay only one respend per mempool prevout
- Rate-limit respend relays to a default of 100 thousand bytes/minute
- Define tx2.IsEquivalentTo(tx1): equality when scriptSigs are not considered
- Do not relay these equivalent transactions
Remove an unused variable declaration in txmempool.cpp.
|
|
transactions
|
|
1c750db remove -tor compatibility code (only allow -onion) (Philip Kaufmann)
|
|
77cbd46 Let -zapwallettxes recover transaction meta data (Cozz Lovan)
|
|
- exit, if -tor option is found and give error to user
|
|
bitcoin-config.h moved, but the old file is likely to still exist when
reconfiguring or switching branches. This would've caused files to not rebuild
correctly, and other strange problems.
Make the path explicit so that the old one cannot be found.
Core libs use config/bitcoin-config.h.
Libs (like crypto) which don't want access to bitcoin's headers continue
to use -Iconfig and #include bitcoin-config.h.
|
|
|
|
92a6220 sanity: hook up sanity checks (Cory Fields)
679240d sanity: add libc/stdlib sanity checks (Cory Fields)
11404af sanity: autoconf check for sys/select.h (Cory Fields)
|
|
1569353 Add `-stopafterblockimport` option (Wladimir J. van der Laan)
|
|
- also rename hmm to mode, to be consistent between .h and .cpp
|
|
|
|
|
|
Stop after importing blocks. This can be useful for development
and trouble shooting.
|