Commit Graph

241 Commits

Author SHA1 Message Date
Duke Leto
c9b4dfa9c7 Force WolfSSL side-channel resistance
There seems to be some build-bug in WolfSSL, such that even though
--enable-harden (HARDEN) is default, it's not set correctly in options.h .

So we define it correctly just after parsing all other config options
BUT BEFORE we load the rest of WolfSSL headers.

These will be defined no matter what options are given to wolfssl ./configure:

ECC_TIMING_RESISTANT
TFM_TIMING_RESISTANT
2021-01-24 13:09:25 -05:00
Duke Leto
1f4c4f27e6 Refactoring 2021-01-24 08:51:17 -05:00
Duke Leto
cde6d33ad1 The term 'whitelist' is racist and so we choose to call this feature 'allowlist' 2021-01-10 10:46:22 -05:00
Duke Leto
8fe3e238f0 Exclusively TLS connections at p2p layer; dump peers more often 2021-01-10 09:54:42 -05:00
Duke Leto
b58c15b9fb update copyrights 2020-12-10 07:45:36 -05:00
Duke Leto
abc0b55d05 Hush Hush Hush 2020-12-04 09:42:59 -05:00
miodragpop
3ae6205a9b tls shape-up 2020-11-03 16:09:20 +01:00
miodragpop
9ff7565901 OpenSSL replaced by WolfSSL 2020-10-28 22:13:52 +01:00
miodragpop
eaed7355c6 tls rework 2020-10-23 21:17:20 +02:00
Duke Leto
be16f80abc Hush Full Node is now GPLv3
Any projects which want to use Hush code from now on will need to be licensed as
GPLv3 or we will send the lawyers: https://www.softwarefreedom.org/

Notably, Komodo (KMD) is licensed as GPLv2 and is no longer compatible to receive
code changes, without causing legal issues. MIT projects, such as Zcash, also cannot pull
in changes from the Hush Full Node without permission from The Hush Developers,
which may in some circumstances grant an MIT license on a case-by-case basis.
2020-10-21 07:28:10 -04:00
miodragpop
56d9c00749 asmap bucketing ported from Komodo 2020-10-02 11:10:26 +02:00
miodragpop
62f67821ec tls implemented 2020-09-29 13:08:45 +02:00
Duke Leto
a7f88a87aa Update copyright URL to be https 2020-09-20 13:17:38 -04:00
jl777
6cb639c2b7 nspv_listtransactions initial 2019-07-13 01:49:05 -11:00
jl777
c3343e237e Getinfo, login, listunspent, spentinfo rpc calls 2019-07-03 20:36:31 -11:00
jl777
bc89c1de30 -prints 2019-07-03 07:03:28 -11:00
jl777
0dc11fbb02 Spent info rpc helper 2019-07-02 09:16:11 -11:00
jl777
e28d1005be Rest of nSPV function stubs 2019-07-02 06:43:05 -11:00
jl777
e9a2714441 uint32_t lastutxos,lastinfo; 2019-07-02 05:49:14 -11:00
jl777
4b876b6118 Throttle rate of nSPV requests 2019-07-02 05:30:56 -11:00
jl777
cb3756eb07 Print 2019-07-02 02:46:30 -11:00
blackjok3r
8d7234bf22 Test fix to stop nodes forceing an attacking chain onto others. 2019-02-11 01:10:27 +08:00
jl777
932b358243 +comments how to update to 8MB blocks 2019-01-25 17:15:56 -11:00
jl777
352c93f2c4 -<<<<< HEAD 2019-01-25 16:59:55 -11:00
jl777
1231c3240d Merge remote-tracking branch 'origin/FSM' into FSM
# Conflicts:
#	src/cc/CCtx.cpp
2019-01-25 16:45:19 -11:00
jl777
524342f7ba Single #define _MAX_BLOCK_SIZE to set max block size 2019-01-25 16:43:57 -11:00
jl777
e4791f54e6 Merge branch 'FSM' into patch-gcc-8 2019-01-25 16:33:13 -11:00
jl777
10b90968af +comments 2019-01-09 01:28:17 -11:00
jl777
7d56db54d1 Messages 2019-01-07 07:33:23 -11:00
jl777
348a23d6c4 tests 2019-01-07 07:29:36 -11:00
jl777
0ea9ae3c05 Update copyright to 2019 2018-12-31 21:41:05 -11:00
miketout
9feb4b9e08 Major updates integration from all upstreams 2018-09-18 14:33:53 -07:00
Michael Toutonghi
0ba2065183 Network decentralizatoin and bug fixes 2018-08-09 15:32:48 -07:00
Pavol Rusnak
2bc62dc4e3 limit total length of user agent comments
Reworked-By: Wladimir J. van der Laan <laanwj@gmail.com>
2018-04-13 07:40:34 -06:00
jl777
9000990c30 Merge remote-tracking branch 'zcash/master' into rebase2
# Conflicts:
#	.travis.yml
#	Makefile.am
#	README.md
#	configure.ac
#	depends/Makefile
#	depends/builders/darwin.mk
#	depends/funcs.mk
#	depends/hosts/darwin.mk
#	depends/packages/googlemock.mk
#	depends/packages/googletest.mk
#	depends/packages/libsnark.mk
#	depends/packages/libsodium.mk
#	depends/packages/packages.mk
#	depends/packages/rust.mk
#	src/Makefile.am
#	src/Makefile.gtest.include
#	src/chainparams.cpp
#	src/chainparams.h
#	src/checkpoints.h
#	src/clientversion.h
#	src/coins.cpp
#	src/consensus/consensus.h
#	src/gtest/test_mempool.cpp
#	src/httprpc.cpp
#	src/init.cpp
#	src/komodo-tx.cpp
#	src/main.cpp
#	src/miner.cpp
#	src/policy/fees.cpp
#	src/policy/fees.h
#	src/rpcmining.cpp
#	src/rpcrawtransaction.cpp
#	src/rpcserver.cpp
#	src/test/policyestimator_tests.cpp
#	src/test/rpc_wallet_tests.cpp
#	src/test/transaction_tests.cpp
#	src/txdb.cpp
#	src/txmempool.cpp
#	src/wallet/asyncrpcoperation_sendmany.cpp
#	src/wallet/rpcwallet.cpp
#	src/wallet/wallet.cpp
#	src/wallet/wallet.h
#	src/zcash/CreateJoinSplit.cpp
#	zcutil/build.sh
2018-03-25 18:44:38 +03:00
Simon
72b2192950 Overwinter peer management and network handshaking.
Implements ZIP 201.
2018-02-23 14:21:27 -08:00
jl777
9cb1ec9c6e WIN32 -> _WIN32 2017-10-15 02:04:29 +03:00
jl777
8ab425f8b2 Test 2017-09-18 18:34:43 +02:00
jl777
336a60cf9b Prevent duplicate headers 2017-09-18 16:57:31 +02:00
Daira Hopwood
506a21850a Remove UPnP support. fixes #2500
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2017-07-03 08:57:05 +01:00
Patrick Strateman
a05be280e7 Remove vfReachable and modify IsReachable to only use vfLimited.
We do not know that a class of Network is reachable, only that it is not.
2017-03-25 20:25:45 +13:00
Wladimir J. van der Laan
975dc649af torcontrol improvements and fixes
- Force AUTHCOOKIE size to be 32 bytes: This provides protection against
  an attack where a process pretends to be Tor and uses the cookie
  authentication method to nab arbitrary files such as the
  wallet
- torcontrol logging
- fix cookie auth
- add HASHEDPASSWORD auth, fix fd leak when fwrite() fails
- better error reporting when cookie file is not ok
- better init/shutdown flow
- stop advertizing service when disconnected from tor control port
- COOKIE->SAFECOOKIE auth
2017-03-25 20:22:12 +13:00
Matt Quinn
8a5ae3c7a9 Consolidate individual references to the current maximum peer connection
value of 125 into a single constant declaration.
2017-03-25 20:22:07 +13:00
zkbot
a7cf698873 Auto merge of #2100 - str4d:2074-rpc, r=arcalinea
Bitcoin 0.12 RPC PRs 1

Cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#6266
- bitcoin/bitcoin#6257
- bitcoin/bitcoin#6271
- bitcoin/bitcoin#6158
- bitcoin/bitcoin#6307
- bitcoin/bitcoin#6290
- bitcoin/bitcoin#6262
- bitcoin/bitcoin#6088
- bitcoin/bitcoin#6339
- bitcoin/bitcoin#6299 (partial, remainder in #2099)
- bitcoin/bitcoin#6350
- bitcoin/bitcoin#6247
- bitcoin/bitcoin#6362
- bitcoin/bitcoin#5486
- bitcoin/bitcoin#6417
- bitcoin/bitcoin#6398 (partial, remainder was included in #1950)
- bitcoin/bitcoin#6444
- bitcoin/bitcoin#6456 (partial, remainder was included in #2082)
- bitcoin/bitcoin#6380
- bitcoin/bitcoin#6970

Part of #2074.
2017-03-04 02:57:46 +00:00
Philip Kaufmann
db954a65ac use const references where appropriate 2017-03-03 10:57:05 -08:00
Jonas Schnelli
fcc8920f36 setban: rewrite to UniValue, allow absolute bantime 2017-03-02 13:23:03 -08:00
Jonas Schnelli
e521939942 [RPC] extend setban to allow subnets 2017-03-02 13:23:03 -08:00
Jonas Schnelli
445cd761c5 [net] remove unused return type bool from CNode::Ban() 2017-03-02 13:23:03 -08:00
Jonas Schnelli
997829713c [net] extend core functionallity for ban/unban/listban 2017-03-02 13:23:03 -08:00
Gregory Maxwell
a514cb2968 Only send one GetAddr response per connection.
This conserves resources from abusive peers that just send
 getaddr in a loop. Also makes correlating addr messages
 against INVs less effective.
2016-10-20 20:30:53 -07:00