FLO-wallet-core/src
Pieter Wuille dc942e6f27 Introduce whitelisted peers.
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).
2014-07-09 20:40:14 +02:00
..
compat build: fix build weirdness after 54372482. 2014-06-23 14:04:38 -04:00
config build: move bitcoin-config.h to its own directory 2014-06-21 19:47:43 +02:00
crypto Add <Hasher>::OUTPUT_SIZE 2014-06-21 19:47:43 +02:00
json json_spirit: #include <stdint.h> 2014-05-13 11:41:59 +02:00
leveldb Merge src/leveldb changes for LevelDB 1.17. 2014-05-09 18:23:34 +02:00
m4 build: avoid the use of top_ and abs_ dir paths 2014-06-05 16:05:57 -04:00
obj Bump version numbers for 0.6.1rc1 2012-04-27 10:14:33 -04:00
obj-test
qt Payment request parsing on startup now only changes network if a valid network name is specified. 2014-07-08 22:10:46 +01:00
secp256k1 secp256k1: Add build-side changes for libsecp256k1 2014-07-01 12:27:19 -04:00
test test/bloom_tests: Use UL suffix for unsigned long number to ensure compatibility 2014-07-07 15:42:59 +00:00
addrman.cpp Remove redundant .c_str()s 2014-01-23 16:05:01 +01:00
addrman.h Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
alert.cpp Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
alert.h
allocators.cpp Changing LockedPageManager to use a managed instance 2013-10-20 14:29:24 +07:00
allocators.h
base58.cpp ensure clean and consistent "namespace" usage 2014-06-26 10:36:57 +02:00
base58.h Move base58.h implementation code to base58.cpp 2014-05-10 00:42:31 +02:00
bitcoin-cli-res.rc fix copyright string in two of our *.rc files 2014-07-01 12:13:37 +02:00
bitcoin-cli.cpp Move ui_interface to bitcoin_server.a 2014-07-07 09:58:56 +02:00
bitcoind-res.rc fix copyright string in two of our *.rc files 2014-07-01 12:13:37 +02:00
bitcoind.cpp Remove cli functionality from bitcoind 2014-06-15 15:38:22 +02:00
bloom.cpp CBloomFilter::clear() method 2014-06-27 07:54:21 -07:00
bloom.h CBloomFilter::clear() method 2014-06-27 07:54:21 -07:00
chainparams.cpp Merge pull request #4340 2014-07-09 12:00:16 +02:00
chainparams.h Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
chainparamsbase.cpp Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
chainparamsbase.h Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
checkpoints.cpp Use GetBlockTime() more 2014-07-07 10:20:28 +02:00
checkpoints.h ensure clean and consistent "namespace" usage 2014-06-26 10:36:57 +02:00
checkqueue.h
clientversion.h fix copyright string in two of our *.rc files 2014-07-01 12:13:37 +02:00
coincontrol.h
coins.cpp typedef std::map<uint256, CCoins> to CCoinsMap 2014-07-01 12:48:16 +02:00
coins.h typedef std::map<uint256, CCoins> to CCoinsMap 2014-07-01 12:48:16 +02:00
compat.h reorder includes to compile on OpenBSD 2014-05-02 20:45:03 +02:00
core.cpp Fee fixes 2014-07-08 05:09:19 +02:00
core.h Move fee policy out of core 2014-07-03 14:42:16 -04:00
crypter.cpp Move CCryptoKeyStore to crypter.cpp 2013-12-04 12:46:13 +01:00
crypter.h Move CCryptoKeyStore to crypter.cpp 2013-12-04 12:46:13 +01:00
db.cpp unified and better log/error messages for CDBEnv/CDB 2014-04-01 09:41:49 +02:00
db.h Move CAddrDB frrom db to net 2013-12-04 12:46:13 +01:00
hash.cpp Add a built-in SHA256/SHA512 implementation. 2014-06-21 19:47:39 +02:00
hash.h Add <Hasher>::OUTPUT_SIZE 2014-06-21 19:47:43 +02:00
init.cpp Introduce whitelisted peers. 2014-07-09 20:40:14 +02:00
init.h ensure clean and consistent "namespace" usage 2014-06-26 10:36:57 +02:00
key.cpp libsecp256k1 integration 2014-07-01 12:28:05 -04:00
key.h key.cpp: fail with a friendlier message on missing ssl EC support 2014-06-03 12:09:51 -07:00
keystore.cpp Use script matching rather than destination matching for watch-only. 2014-07-02 15:48:39 +02:00
keystore.h Use script matching rather than destination matching for watch-only. 2014-07-02 15:48:39 +02:00
leveldbwrapper.cpp Wrap create_directory calls in try...catch blocks. 2014-03-31 09:51:58 +02:00
leveldbwrapper.h Remove redundant c_str 2014-05-22 00:23:03 +07:00
limitedmap.h
main.cpp Introduce whitelisted peers. 2014-07-09 20:40:14 +02:00
main.h Merge pull request #4457 2014-07-07 07:44:48 +02:00
Makefile.am build: fix win32 static linking after libtool merge 2014-07-08 15:53:53 -04:00
Makefile.qt.include build: re-add AM_LDFLAGS where it's overridden 2014-07-08 15:52:29 -04:00
Makefile.qttest.include build: re-add AM_LDFLAGS where it's overridden 2014-07-08 15:52:29 -04:00
Makefile.test.include secp256k1: Add build-side changes for libsecp256k1 2014-07-01 12:27:19 -04:00
miner.cpp Move fee policy out of core 2014-07-03 14:42:16 -04:00
miner.h Switch miner.cpp to use sha2 instead of OpenSSL. 2014-06-21 19:47:39 +02:00
mruset.h Limit number of known addresses per peer 2014-05-30 12:01:53 +02:00
net.cpp Introduce whitelisted peers. 2014-07-09 20:40:14 +02:00
net.h Introduce whitelisted peers. 2014-07-09 20:40:14 +02:00
netbase.cpp Merge pull request #4479 2014-07-08 13:35:56 +02:00
netbase.h remove SOCKS4 support from core and GUI 2014-07-07 08:15:14 +02:00
noui.cpp Copyright header updates s/2013/2014 on files whose last git commit was done in 2014. 2014-02-09 21:06:06 -05:00
noui.h
pow.cpp Use GetBlockTime() more 2014-07-07 10:20:28 +02:00
pow.h Refactor proof of work related functions out of main 2014-06-23 23:10:24 +02:00
protocol.cpp Replace virtual methods with static attributes, chainparams.h depends on 2014-06-04 13:29:36 +02:00
protocol.h Add comment regarding experimental-use service bits 2014-06-21 11:43:23 -04:00
rpcblockchain.cpp Replace HexBits with strprintf 2014-06-28 13:19:14 +02:00
rpcclient.cpp added includedWatchonly argument to listreceivedbyaddress/...account 2014-07-02 15:48:39 +02:00
rpcclient.h Remove cli functionality from bitcoind 2014-06-15 15:38:22 +02:00
rpcdump.cpp Merge pull request #4045 2014-07-07 16:06:28 +02:00
rpcmining.cpp Use GetBlockTime() more 2014-07-07 10:20:28 +02:00
rpcmisc.cpp Merge pull request #4045 2014-07-07 16:06:28 +02:00
rpcnet.cpp Introduce whitelisted peers. 2014-07-09 20:40:14 +02:00
rpcprotocol.cpp rpc: Prevent easy memory exhaustion attack 2014-07-04 09:20:39 +02:00
rpcprotocol.h fix RPC error replies 2014-06-28 19:16:15 -07:00
rpcrawtransaction.cpp Merge pull request #4045 2014-07-07 16:06:28 +02:00
rpcserver.cpp Merge pull request #4045 2014-07-07 16:06:28 +02:00
rpcserver.h Add support for watch-only addresses 2014-07-02 15:48:37 +02:00
rpcwallet.cpp Merge pull request #4045 2014-07-07 16:06:28 +02:00
script.cpp replaced MINE_ with ISMINE_ 2014-07-02 15:48:40 +02:00
script.h replaced MINE_ with ISMINE_ 2014-07-02 15:48:40 +02:00
serialize.h Avoid undefined behavior using CFlatData in CScript serialization 2014-06-23 10:38:15 +02:00
sync.cpp Wallet locking fixes for -DDEBUG_LOCKORDER 2014-02-18 12:11:46 -05:00
sync.h
threadsafety.h Cleanup code using forward declarations. 2013-11-10 09:36:28 -06:00
timedata.cpp Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
timedata.h Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
tinyformat.h Make tinyformat errors raise an exception instead of assert()ing 2014-02-28 09:25:00 +01:00
txdb.cpp typedef std::map<uint256, CCoins> to CCoinsMap 2014-07-01 12:48:16 +02:00
txdb.h typedef std::map<uint256, CCoins> to CCoinsMap 2014-07-01 12:48:16 +02:00
txmempool.cpp Move fee policy out of core 2014-07-03 14:42:16 -04:00
txmempool.h Move fee policy out of core 2014-07-03 14:42:16 -04:00
ui_interface.h UI to alert of respend attempt affecting wallet. 2014-06-27 07:54:21 -07:00
uint256.cpp Move non-trivial uint256.h methods to uint256.cpp 2014-06-28 18:02:42 +02:00
uint256.h Move non-trivial uint256.h methods to uint256.cpp 2014-06-28 18:02:42 +02:00
util.cpp Merge pull request #4401 2014-07-07 10:35:26 +02:00
util.h Show nodeid instead of addresses (for anonymity) unless otherwise requested. 2014-07-04 09:38:44 +07:00
version.cpp Remove -beta suffix 2014-06-12 13:52:15 +02:00
version.h Bump protocol version to 70002 2013-11-11 10:31:09 +10:00
wallet.cpp Fee fixes 2014-07-08 05:09:19 +02:00
wallet.h Merge pull request #4045 2014-07-07 16:06:28 +02:00
walletdb.cpp Use script matching rather than destination matching for watch-only. 2014-07-02 15:48:39 +02:00
walletdb.h Use script matching rather than destination matching for watch-only. 2014-07-02 15:48:39 +02:00