luigi1111
dc48cdc998
Merge pull request #5933
...
3455efa
ban peers sending bad pow outright (moneromooo-monero)
2019-10-14 18:07:54 -05:00
xiphon
d4d2b5c79a
p2p+rpc: don't skip p2p or rpc port bind failure by default
2019-10-13 13:27:46 +00:00
luigi1111
bf525793c7
Merge pull request #5915
...
8330e77
monerod can now sync from pruned blocks (moneromooo-monero)
2019-10-08 15:55:03 -05:00
Doyle
fd4846134d
Print cdifficulty and don't serialize miner tx hash twice
2019-10-07 12:50:05 +11:00
luigi1111
c6430f9dd0
Merge pull request #5893
...
Coverity fixes [3a81639
, 1bd962d
, 2825f07
, d099658
, d46f701
, cd57a10
] (anonimal)
2019-09-30 18:43:48 -05:00
moneromooo-monero
8330e772f1
monerod can now sync from pruned blocks
...
If the peer (whether pruned or not itself) supports sending pruned blocks
to syncing nodes, the pruned version will be sent along with the hash
of the pruned data and the block weight. The original tx hashes can be
reconstructed from the pruned txes and theur prunable data hash. Those
hashes and the block weights are hashes and checked against the set of
precompiled hashes, ensuring the data we received is the original data.
It is currently not possible to use this system when not using the set
of precompiled hashes, since block weights can not otherwise be checked
for validity.
This is off by default for now, and is enabled by --sync-pruned-blocks
2019-09-27 00:10:37 +00:00
Howard Chu
81c2ad6d5b
RandomX integration
...
Support RandomX PoW algorithm
2019-09-25 21:29:42 +01:00
moneromooo-monero
3455efafa8
ban peers sending bad pow outright
...
PoW is expensive to verify, so be strict
2019-09-25 16:00:43 +00:00
luigi1111
3f6096867d
Merge pull request #5916
...
7b076d5
p2p: fix bans taking port into account (moneromooo-monero)
2019-09-24 10:42:29 -05:00
luigi1111
ee6e849627
Merge pull request #5877
...
2cd4fd8
Changed the use of boost:value_initialized for C++ list initializer (JesusRami)
4ad191f
Removed unused boost/value_init header (whyamiroot)
928f4be
Make null hash constants constexpr (whyamiroot)
2019-09-24 10:08:44 -05:00
moneromooo-monero
d53a55204f
functional_tests: add get_transaction_pool_stats
...
Also fix part of the RPC results being returned as binary.
This makes the RPC backward incompatible.
2019-09-17 11:38:29 +00:00
moneromooo-monero
7b076d5170
p2p: fix bans taking port into account
2019-09-16 22:45:45 +00:00
luigi1111
d663e1e3db
Merge pull request #5818
...
f91a06c
Dropping cppzmq dependency; adding some zmq utils (vtnerd)
2019-09-14 13:25:14 -05:00
luigi1111
85962ee8e2
Merge pull request #5872
...
495a7e5
rpc: don't include an address in mining_status when not mining (moneromooo-monero)
2019-09-14 13:16:45 -05:00
luigi1111
6e1257cfbd
Merge pull request #5866
...
21f6c80
rpc: move a leftover light wallet RPC out of daemon RPC (moneromooo-monero)
2019-09-14 13:09:32 -05:00
luigi1111
253786c8ea
Merge pull request #5833
...
289d215
rpc: fix unitialized 'core_rpc_server::m_was_bootstrap_ever_used' (xiphon)
2019-09-08 19:41:27 -05:00
anonimal
d099658522
bootstrap_daemon: resolve CID 203915 (UNCAUGHT_EXCEPT)
...
The issue is triggered by the captured `this` in RPC server, which
passes reference to throwable `core_rpc_server`:
`core_rpc_server.cpp:164: m_bootstrap_daemon.reset(new bootstrap_daemon([this]{ return get_random_public_node(); }));`
The solution is to simply remove noexcept from the remaining `bootstrap_daemon`
constructors because noexcept is false in this context.
>"An exception of type "boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::asio::invalid_service_owner>>" is thrown but the throw list "noexcept" doesn't allow it to be thrown. This will cause a call to unexpected() which usually calls terminate()."
2019-09-07 00:29:09 +00:00
luigi1111
0198b76217
Merge pull request #5799
...
082730b
daemon: automatic public nodes discovering and bootstrap daemon switching (xiphon)
2019-09-04 09:27:02 -05:00
Jesus Ramirez
2cd4fd8972
Changed the use of boost:value_initialized for C++ list initializer
2019-09-02 14:16:29 +02:00
moneromooo-monero
495a7e5b97
rpc: don't include an address in mining_status when not mining
...
Best case is an address mined previously and it'll get returned,
worst case it was never initialized in the first place
2019-08-28 16:02:37 +00:00
moneromooo-monero
21f6c80fcd
rpc: move a leftover light wallet RPC out of daemon RPC
2019-08-28 15:51:28 +00:00
xiphon
082730b6e5
daemon: automatic public nodes discovering and bootstrap daemon switching
2019-08-27 12:01:49 +00:00
moneromooo-monero
33e91e1a1e
wallet, rpc: add a release field to get_version
...
It does not leak much since you can make a fair guess by RPC
version already, and some people want to avoid non release
clients when using third parties' nodes (because they'd never
lie about it)
2019-08-26 19:28:25 +00:00
xiphon
289d21500c
rpc: fix unitialized 'core_rpc_server::m_was_bootstrap_ever_used'
2019-08-20 15:08:48 +00:00
luigi1111
c9df9d683a
Merge pull request #5696
...
fd60d05
daemon: fix print_pl only printing public zone peers (moneromooo-monero)
2019-08-20 01:50:10 -05:00
moneromooo-monero
fd60d05d5d
daemon: fix print_pl only printing public zone peers
2019-08-19 23:39:51 +00:00
luigi1111
4947f3bdba
Merge pull request #5636
...
b712ae0
rpc: work around a GCC 7.4.0 (at least) bug (moneromooo-monero)
2019-08-19 17:37:37 -05:00
luigi1111
56b98c7003
Merge pull request #5728
...
6560bfa
rpc: get_block_template add optional extra_nonce (jtgrassie)
2019-08-19 17:33:08 -05:00
luigi1111
4baec08d5c
Merge pull request #5725
...
dc8b7a8
zmq: MacPorts latest fix (jtgrassie)
2019-08-19 17:29:38 -05:00
luigi1111
399a847cfc
Merge pull request #5689
...
1db5357
rpc headers fix (malbit)
2019-08-15 17:29:34 -05:00
luigi1111
df064eaa36
Merge pull request #5649
...
a182df2
Bans for RPC connections (hyc)
2019-08-15 17:10:49 -05:00
luigi1111
0ba675622f
Merge pull request #5634
...
1488109
rpc: fix get_transactions getting v1 txes from the txpool (moneromooo-monero)
2019-08-14 15:35:24 -05:00
luigi1111
0e986a86d5
Merge pull request #5607
...
52cd2fa
rpc: implement get_public_nodes command (xiphon)
2019-08-14 15:34:14 -05:00
luigi1111
564bb1da3a
Merge pull request #5525
...
0605406
daemon: sort alt chains by height (moneromooo-monero)
4228ee0
daemon: add optional arguments to alt_chain_info (moneromooo-monero)
880ebfd
daemon: add more chain specific info in alt_chain_info (moneromooo-monero)
2019-08-14 15:31:52 -05:00
luigi1111
2258551ef9
Merge pull request #5487
...
df83ed7
consensus: from v12, enforce >= 2 outputs (moneromooo-monero)
2019-08-14 15:26:55 -05:00
Thomas Winget
155475d971
Add IPv6 support
...
new cli options (RPC ones also apply to wallet):
--p2p-bind-ipv6-address (default = "::")
--p2p-bind-port-ipv6 (default same as ipv4 port for given nettype)
--rpc-bind-ipv6-address (default = "::1")
--p2p-use-ipv6 (default false)
--rpc-use-ipv6 (default false)
--p2p-require-ipv4 (default true, if ipv4 bind fails and this is
true, will not continue even if ipv6 bind
successful)
--rpc-require-ipv4 (default true, description as above)
ipv6 addresses are to be specified as "[xx:xx:xx::xx:xx]:port" except
in the cases of the cli args for bind address. For those the square
braces can be omitted.
2019-07-31 20:04:57 -04:00
xiphon
52cd2fa0af
rpc: implement get_public_nodes command
2019-07-29 10:51:15 +00:00
luigi1111
d4d5a4433d
Merge pull request #5623
...
b8cfa92
rpc: implement set_bootstrap_daemon method (xiphon)
2019-07-24 14:38:15 -05:00
luigi1111
e05873d873
Merge pull request #5606
...
cf8cb68
rpc: use ip address string representation for peer::host field (xiphon)
2019-07-24 14:31:59 -05:00
luigi1111
e241a6280d
Merge pull request #5582
...
fcfcc3a
rpc: in/out peers can now return the setting's value (moneromooo-monero)
2019-07-24 14:18:09 -05:00
luigi1111
e579fe4ae0
Merge pull request #5530
...
6abaaaa
remove obsolete save_graph skeleton code (moneromooo-monero)
2019-07-24 14:07:29 -05:00
luigi1111
e3de4aa68b
Merge pull request #5502
...
25a7cfd
add a few checks where it seems appropriate (moneromooo-monero)
1a66a86
remove unused code (moneromooo-monero)
2019-07-24 13:57:06 -05:00
Lee Clagett
f91a06c6d7
Dropping cppzmq dependency; adding some zmq utils
2019-07-22 06:37:16 +00:00
moneromooo-monero
65c4004963
allow blocking whole subnets
2019-07-16 11:35:53 +00:00
moneromooo-monero
515ac2951d
p2p: store network address directly in blocked host list
...
rather than their string representation
2019-07-16 11:35:52 +00:00
Jethro Grassie
6560bfa64c
rpc: get_block_template add optional extra_nonce
...
Circumvents the need to create a new blockhashing blob when you already
know the data you want to set in the extra_nonce (so use this instead of
reserve_size).
2019-07-03 07:57:36 -04:00
Jethro Grassie
dc8b7a88bd
zmq: MacPorts latest fix
2019-07-01 23:13:55 -04:00
Michal vel m@lbit
1db5357c7b
rpc headers fix
2019-06-25 01:49:04 +01:00
stoffu
15c699f0a6
rpc: set sanity_check_failed to false when successful
2019-06-20 14:32:49 +09:00
Howard Chu
a182df21d0
Bans for RPC connections
...
Make bans control RPC sessions too. And auto-ban some bad requests.
Drops HTTP connections whenever response code is 500.
2019-06-16 11:38:08 +01:00
moneromooo-monero
2eef90d6ef
rpc: restrict the recent cutoff size in restricted RPC mode
2019-06-14 08:47:33 +00:00
moneromooo-monero
b712ae0af2
rpc: work around a GCC 7.4.0 (at least) bug
...
In static member function ‘static boost::optional<cryptonote::rpc::output_distribution_data> cryptonote::rpc::RpcHandler::get_output_distribution(const std::function<bool(long unsigned int, long unsigned int, long unsigned int, long unsigned int&, std::vector<long unsigned int>&, long unsigned int&)>&, uint64_t, uint64_t, uint64_t, const std::function<crypto::hash(long unsigned int)>&, bool, uint64_t)’:
cc1plus: warning: ‘void* __builtin_memset(void*, int, long unsigned int)’: specified size 18446744073709551536 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
2019-06-12 22:27:07 +00:00
moneromooo-monero
14881094af
rpc: fix get_transactions getting v1 txes from the txpool
...
It would try to get their prunable hash, but v1 txes don't have one
2019-06-12 11:59:13 +00:00
xiphon
b8cfa92b7e
rpc: implement set_bootstrap_daemon method
2019-06-10 21:10:08 +00:00
ston1th
f2f207d635
miner: fix double free of thread attributes
...
issue: #5568
2019-06-09 10:51:18 +02:00
xiphon
cf8cb6873a
rpc: use ip address string representation for peer::host field
2019-06-04 19:33:35 +00:00
moneromooo-monero
880ebfdeea
daemon: add more chain specific info in alt_chain_info
2019-06-01 15:43:52 +00:00
moneromooo-monero
fcfcc3ac86
rpc: in/out peers can now return the setting's value
2019-05-30 12:13:31 +00:00
Lee Clagett
3544596f9f
Add ssl_options support to monerod's rpc mode.
2019-05-22 00:09:11 -04:00
moneromooo-monero
6abaaaa994
remove obsolete save_graph skeleton code
2019-05-10 14:17:18 +00:00
moneromooo-monero
1e8f3f66bf
rpc: fail update RPC when running offline
2019-05-09 19:14:49 +00:00
moneromooo-monero
0605406714
daemon: sort alt chains by height
2019-05-09 09:12:49 +00:00
Riccardo Spagni
f64f59627d
Merge pull request #5510
...
e9809382
fix wide difficulty conversion with some versions of boost (moneromooo-monero)
2019-05-07 17:36:27 +02:00
Riccardo Spagni
9d91301faa
Merge pull request #5496
...
0eb0d6b8
rpc: improve get_output_distribution (moneromooo-monero)
2019-05-07 17:30:27 +02:00
moneromooo-monero
e980938210
fix wide difficulty conversion with some versions of boost
2019-05-01 19:58:09 +00:00
moneromooo-monero
25a7cfdb4a
add a few checks where it seems appropriate
2019-04-29 20:52:40 +00:00
moneromooo-monero
5e0da6fb68
change SSL certificate fingerprint whitelisting from SHA1 to SHA-256
...
SHA1 is too close to bruteforceable
2019-04-26 11:37:15 +00:00
moneromooo-monero
0eb0d6b802
rpc: improve get_output_distribution
...
It can now handle small reorgs without having to rescan the
whole blockchain.
Also add a test for it.
2019-04-25 16:49:29 +00:00
moneromooo-monero
df83ed74e4
consensus: from v12, enforce >= 2 outputs
2019-04-23 22:09:35 +00:00
Riccardo Spagni
1b092f3a44
Merge pull request #5452
...
c30d93fc
rpc: add a pruned bool to the prune_blockchain call (moneromooo-monero)
2019-04-16 22:48:50 +02:00
Riccardo Spagni
68d131615e
Merge pull request #5448
...
d009f6dd
rpc: fix get_block_hashes.bin from wallet on pruned blockchain (moneromooo-monero)
bb0ef5b1
blockchain: lock the blockchain while pruning (moneromooo-monero)
2019-04-16 22:47:36 +02:00
Riccardo Spagni
f376cd5605
Merge pull request #5446
...
7d79222f
daemon: remove debug info (moneromooo-monero)
8fec0f98
functional_tests: add sweep_single test (moneromooo-monero)
9880d61b
wallet_rpc_server: remove unused code (moneromooo-monero)
8a61b33d
rpc: omit irrelevant fields for pool txes in gettransactions (moneromooo-monero)
56508524
rpc: add relayed in get_transaction output (moneromooo-monero)
82e510f1
rpc: set default log category in core_rpc_server.h (moneromooo-monero)
2019-04-16 22:46:29 +02:00
Riccardo Spagni
8af1a89e4c
Merge pull request #5441
...
b3648232
daemon: fix ratio not being floating point (moneromooo-monero)
e1b097b9
core_rpc_server: remove dummy assigning int to bool (moneromooo-monero)
2019-04-16 22:44:41 +02:00
Riccardo Spagni
1f01070a0c
Merge pull request #5434
...
ccb996af
rpc: new sanity check on relayed transactions (moneromooo-monero)
2019-04-16 22:41:40 +02:00
Riccardo Spagni
45e1f7c292
Merge pull request #5428
...
f3425f8d
rpc.getblocktemplate: set reserved_offset to zero when reserve_size==0 (stoffu)
2019-04-16 22:39:18 +02:00
moneromooo-monero
c30d93fcd9
rpc: add a pruned bool to the prune_blockchain call
2019-04-16 15:15:14 +00:00
moneromooo-monero
d009f6dd61
rpc: fix get_block_hashes.bin from wallet on pruned blockchain
...
We want to get all blocks here, even pruned ones
2019-04-15 22:27:15 +00:00
moneromooo-monero
8a61b33d8e
rpc: omit irrelevant fields for pool txes in gettransactions
2019-04-15 09:11:54 +00:00
moneromooo-monero
565085245a
rpc: add relayed in get_transaction output
2019-04-15 09:11:50 +00:00
moneromooo-monero
82e510f15e
rpc: set default log category in core_rpc_server.h
2019-04-15 09:10:29 +00:00
Riccardo Spagni
e89aa2ec56
Merge pull request #5421
...
e78cea74
rpc: fix off by one in get_height (moneromooo-monero)
2019-04-15 09:22:50 +02:00
Riccardo Spagni
9bd0983d5e
Merge pull request #5402
...
cbf32241
rpc: make wide_difficulty hexadecimal (moneromooo-monero)
2019-04-15 09:18:10 +02:00
moneromooo-monero
e1b097b99b
core_rpc_server: remove dummy assigning int to bool
...
Coverity 197653
2019-04-14 09:26:12 +00:00
moneromooo-monero
ccb996afc6
rpc: new sanity check on relayed transactions
...
This will weed out some transactions with silly rings
2019-04-12 20:22:09 +00:00
stoffu
f3425f8d32
rpc.getblocktemplate: set reserved_offset to zero when reserve_size==0
2019-04-12 18:55:38 +09:00
moneromooo-monero
e78cea74bd
rpc: fix off by one in get_height
2019-04-11 17:24:02 +00:00
moneromooo-monero
064ab12340
functional_tests: add more blockchain related tests
...
Related to emission, reorgs, getting tx data back, output
distribution and histogram
2019-04-11 11:07:58 +00:00
Riccardo Spagni
4a2cc76c84
Merge pull request #5376
...
c746f45d
Add hash of top block to /getheight RPC (Howard Chu)
2019-04-11 13:01:54 +02:00
Riccardo Spagni
3a4008f0fc
Merge pull request #5374
...
a2561653
wallet: new option to start background mining (moneromooo-monero)
2019-04-11 13:01:30 +02:00
Lee Clagett
21eb1b0725
Pass SSL arguments via one class and use shared_ptr instead of reference
2019-04-07 00:44:37 -04:00
Lee Clagett
1f5ed328aa
Change default SSL to "enabled" if user specifies fingerprint/certificate
...
Currently if a user specifies a ca file or fingerprint to verify peer,
the default behavior is SSL autodetect which allows for mitm downgrade
attacks. It should be investigated whether a manual override should be
allowed - the configuration is likely always invalid.
2019-04-06 23:47:07 -04:00
Lee Clagett
a3b0284837
Change SSL certificate file list to OpenSSL builtin load_verify_location
...
Specifying SSL certificates for peer verification does an exact match,
making it a not-so-obvious alias for the fingerprints option. This
changes the checks to OpenSSL which loads concatenated certificate(s)
from a single file and does a certificate-authority (chain of trust)
check instead. There is no drop in security - a compromised exact match
fingerprint has the same worse case failure. There is increased security
in allowing separate long-term CA key and short-term SSL server keys.
This also removes loading of the system-default CA files if a custom
CA file or certificate fingerprint is specified.
2019-04-06 23:47:06 -04:00
moneromooo-monero
e8cf7dcc2b
rpc: merge the two get_info implementations
2019-04-06 14:04:24 +00:00
moneromooo-monero
cbf3224180
rpc: make wide_difficulty hexadecimal
...
This should be friendlier for clients which don't have bignum support
2019-04-05 16:30:16 +00:00
moneromooo-monero
a2561653cb
wallet: new option to start background mining
...
The setup-background-mining option can be used to select
background mining when a wallet loads. The user will be asked
the first time the wallet is created.
2019-04-04 18:10:45 +00:00
stoffu
a299dc96f7
rpc.gettransactions: fill as_json with partial tx in pruned mode
2019-04-04 18:08:01 +09:00
Riccardo Spagni
1ed6441925
Merge pull request #5327
...
c23ea796
New interactive daemon command 'print_net_stats': Global traffic stats (rbrunner7)
2019-04-01 17:32:01 +02:00
Riccardo Spagni
a69b71dc41
Merge pull request #5326
...
dc20d774
rpc: add miner tx hash to block header response (moneromooo-monero)
2019-04-01 17:31:36 +02:00
Riccardo Spagni
97831e5f8b
Merge pull request #5308
...
a7211793
rpc: quantize db size up to 5 GB in restricted mode (moneromooo-monero)
2019-04-01 17:27:56 +02:00
Riccardo Spagni
4a06b3ee62
Merge pull request #5298
...
8fd7452b
wallet: move light wallet RPC out of core RPC (moneromooo-monero)
2019-04-01 17:24:13 +02:00