Commit Graph

7543 Commits

Author SHA1 Message Date
luigi1111
cf816e51ad
Merge pull request #7020
2c66894 wallet_api: TransactionHistory - fill unconfirmed out payments dests (xiphon)
2020-11-29 01:58:56 -06:00
luigi1111
36d31ba0be
Merge pull request #7018
a9cd5d9 cryptonote_core: dandelion - use local height or median height if syncing (xiphon)
2020-11-29 01:58:13 -06:00
luigi1111
ad843541d5
Merge pull request #7008
3247f11 Silence stupid warnings (Howard Chu)
2020-11-29 01:57:24 -06:00
luigi1111
c041550ffa
Merge pull request #6973
be84f67 Switch to Dandelion++ fluff mode if no out connections for stem mode (Lee Clagett)
2020-11-29 01:54:43 -06:00
luigi1111
a92b968e35
Merge pull request #6971
f9527e6 protocol: reject empty incoming block messages (moneromooo-monero)
2020-11-29 01:54:08 -06:00
luigi1111
9945ca7a62
Merge pull request #6960
5569a8e rpc: on_send_raw_tx (bootstrap) - send to bootstrap daemon and P2P (xiphon)
2020-11-29 01:53:12 -06:00
luigi1111
bb56248acd
Merge pull request #6949
aad780b Fix CLI and unrestricted RPC relay_tx with stempool (Lee Clagett)
2020-11-29 01:52:23 -06:00
luigi1111
9a4d813136
Merge pull request #6943
cb069d0 p2p: remove banned peers from the white list (moneromooo-monero)
2020-11-29 01:51:41 -06:00
luigi1111
7a0334742a
Merge pull request #6937
8a282f6 Add RELINK_TARGETS, monero_add_target_no_relink and use monero_add_executable/monero_add_library where possible (mj-xmr) Add monero_add_minimal_executable and use in tests (mj-xmr)
2020-11-29 01:49:39 -06:00
luigi1111
2be7a4c04f
Merge pull request #6933
1f04a31 p2p: use /16 filtering on IPv4-within-IPv6 addresses (moneromooo-monero)
2020-11-29 01:46:46 -06:00
luigi1111
4d298d4f11
Merge pull request #6924
874487f blockchain: remove some dead code (moneromooo-monero)
2020-11-29 01:44:26 -06:00
luigi1111
999e797cea
Merge pull request #6922
a25bc71 Make Blockchain::get_fee_quantization_mask() compile time (SChernykh)
2020-11-29 01:40:59 -06:00
luigi1111
bab4495cfb
Merge pull request #6921
f1836ac cryptonote_core: Fix missing override warnings (Nathan Dorfman)
2020-11-29 01:39:17 -06:00
luigi1111
c5b3fd1fec
Merge pull request #6920
aad2f87 net_node: add --ban-list option (selsta)
2020-11-29 01:38:27 -06:00
luigi1111
84cdb5d914
Merge pull request #6915
c67fa32 bump default number of connections from 8 to 12 (moneromooo-monero)
2020-11-29 01:34:02 -06:00
luigi1111
4c2e77854d
Merge pull request #6913
fc2f971 wallet2: wait for propagation timeout before marking tx as failed (xiphon)
2020-11-29 01:32:01 -06:00
luigi1111
eebd86dc3e
Merge pull request #6898
593ae2e device: Ledger - update status codes (xiphon)
2020-11-29 00:44:27 -06:00
luigi1111
52006df9bb
Merge pull request #6897
2abdbf6 Add support for i2p and tor seed nodes (vtnerd)
2020-11-29 00:42:27 -06:00
luigi1111
7539d4ac74
Merge pull request #6895
b49f489 fix next_seed_height regression in getblocktemplate rpc (xnbya)
2020-11-29 00:41:42 -06:00
luigi1111
678237835f
Merge pull request #6892
ad7ea2c core_rpc_server: on_send_raw_tx - fix bootstrap daemon mode check (xiphon)
2020-11-29 00:40:03 -06:00
luigi1111
d45a4ba106
Merge pull request #6849
f4b2382 rpc_private_headers declaration fix (malbit)
2020-11-28 22:31:25 -06:00
luigi1111
7778384071
Merge pull request #6830
64e9526 Extend TransactionInfo with coinbase and description attributes in wallet/api (dsc)
2020-11-28 21:55:16 -06:00
dsc
d157196416 Allow tx note edits via TransactionHistory object in wallet/api 2020-11-28 21:48:57 -06:00
luigi1111
b37d6fe368
Merge pull request #6826
83da867 Update error messages in daemon (tmoravec)
2020-11-28 21:35:34 -06:00
xiphon
a9cd5d914e cryptonote_core: dandelion - use local height or median height if syncing 2020-11-25 01:27:42 +00:00
Crypto City
17c5370398
wallet2: check imported multisig curve points are in main subgroup 2020-11-24 16:25:35 +00:00
xiphon
0363476ee3 rpc: get_info - add 'synchronized' field 2020-11-19 12:51:31 +00:00
Lee Clagett
b10878f108 Change Dandelion++ fluff probability to 20%, and embargo timeout to 39s
A 20% fluff probability increases the precision of a spy connected to
every node by 10% on average, compared to a network using 0% fluff
probability. The current value (10% fluff) should increase precision by
~5% compared to baseline.

This decreases the expected stem length from 10 to 5. The embargo
timeout was therefore lowered to 39s; the fifth node in a stem is
expected to have a 90% chance of being the first to timeout, which is
the same probability we currently have with an expected stem length of
10 nodes.
2020-11-17 21:45:37 -05:00
xiphon
aaf837cf5f rpc: skip non-synced bootstrap daemons in --no-sync mode too 2020-11-17 23:15:36 +00:00
Howard Chu
91fd634768
Better log message for unusable anon networks 2020-11-16 12:36:37 +00:00
Lee Clagett
d73cb95dfa Fix timeout checks for forwarded and Dandelion++ stem txes 2020-11-15 00:08:10 -05:00
xiphon
5569a8e426 rpc: on_send_raw_tx (bootstrap) - send to bootstrap daemon and P2P 2020-11-15 03:13:07 +00:00
xiphon
2c668940cd wallet_api: TransactionHistory - fill unconfirmed out payments dests 2020-11-14 14:09:07 +00:00
Howard Chu
3247f11638
Silence stupid warnings 2020-11-11 02:34:14 +00:00
woodser
ee58f4f766 Balance includes unconfirmed payments 2020-11-06 15:08:43 -05:00
Lee Clagett
be84f678b9 Switch to Dandelion++ fluff mode if no out connections for stem mode 2020-11-03 13:58:14 -05:00
moneromooo-monero
f9527e608e
protocol: reject empty incoming block messages 2020-11-03 12:59:36 +00:00
moneromooo-monero
1f04a3186b
p2p: use /16 filtering on IPv4-within-IPv6 addresses
IPv6 addresses include a range that can map IPv4 addresses,
which allowed those mapped addresses to bypass filtering.

This filter should be replaced by AS filtering at some point.
2020-11-03 00:46:07 +00:00
Lee Clagett
aad780bcfa Fix CLI and unrestricted RPC relay_tx with stempool 2020-10-29 00:17:55 -04:00
Howard Chu
65903d2cfc
Add rpc-restricted-bind-ip option
Fixes #6369
2020-10-29 00:22:18 +00:00
mj-xmr
8a282f64c9 Add RELINK_TARGETS, monero_add_target_no_relink and use monero_add_executable/monero_add_library where possible (mj-xmr)
Add monero_add_minimal_executable and use in tests

This is done in order not to have to relink targets, when just an .so changed, but not its interface.
2020-10-28 20:08:26 +01:00
moneromooo
cb069d0a42
p2p: remove banned peers from the white list 2020-10-27 22:35:14 +00:00
luigi1111
8b3b106ad1
Merge pull request #6902
70eb0d1 wallet2_api: implement stop() to interrupt refresh() loop once (xiphon)
2020-10-21 22:57:42 -05:00
selsta
aad2f87a53
net_node: add --ban-list option 2020-10-20 19:39:44 +02:00
moneromooo-monero
874487fed8
blockchain: remove some dead code
This is already done
2020-10-20 16:50:36 +00:00
moneromooo-monero
cc034fe0c3
util: fix escaping more than one ?* in glob_to_regex 2020-10-20 16:46:53 +00:00
SChernykh
a25bc71f3f Make Blockchain::get_fee_quantization_mask() compile time
This also removes potential thread safety bug in that function.
2020-10-20 14:16:09 +02:00
Nathan Dorfman
f1836ac28a cryptonote_core: Fix missing override warnings 2020-10-19 18:23:07 -06:00
Lee Clagett
2abdbf63cf Add support for i2p and tor seed nodes 2020-10-19 13:13:07 +00:00
Alexander Blair
faedcded39
Merge pull request #6891
4cf3545a3 core_rpc_server: on_get_blocks - forward bootstrap daemon error (xiphon)
2020-10-18 23:26:17 -07:00
Alexander Blair
8e3f46dd0a
Merge pull request #6881
11b20229c tx_pool: silence spammy harmless warning till we fix the bug (moneromooo-monero)
2020-10-18 23:25:54 -07:00
Alexander Blair
142489bd60
Merge pull request #6882
fcbfb0a00 wallet2: fix missing m_state field in wallet serialization (moneromooo-monero)
2020-10-18 23:25:32 -07:00
Alexander Blair
543d600042
Merge pull request #6875
a12a8174e Dandelion++: skip desynced peers in stem phase (xiphon)
2020-10-18 23:25:08 -07:00
xiphon
fc2f97177b wallet2: wait for propagation timeout before marking tx as failed 2020-10-18 14:00:56 +00:00
moneromooo-monero
c67fa32496
bump default number of connections from 8 to 12 2020-10-18 13:25:05 +00:00
Howard Chu
b7dd8349f4
Allow setting start block on export
And make import honor the starting block# recorded in a bootstrap file
2020-10-18 14:01:44 +01:00
Alexander Blair
519740a1d3
Merge pull request #6905
88fde0309 blockchain: fix sync at v14 boundary (moneromooo-monero)
2020-10-18 05:51:43 -07:00
moneromooo-monero
88fde0309a
blockchain: fix sync at v14 boundary
Miners with MLSAG txes which they'd already verified included
a couple in that block, but the consensus rules had changed
in the meantime, so that block is technically invalid and any
node which did not already have those two txes in their txpool
could not sync. Grandfather them in, since it has no effect in
practice.
2020-10-18 11:52:33 +00:00
xiphon
70eb0d1844 wallet2_api: implement stop() to interrupt refresh() loop once 2020-10-17 02:56:15 +00:00
Lee Clagett
13350f79df Do not use peer_id tracking method over i2p/tor 2020-10-15 16:47:59 +00:00
moneromooo-monero
aaa3289e22
add more updates domains and make the voting generic, not just 2/3 2020-10-15 14:06:44 +00:00
xiphon
593ae2e9f9 device: Ledger - update status codes 2020-10-13 22:53:19 +00:00
luigi1111
e503688a6b
Merge pull request #6828
1b3f220 Allow AddressBook description edits via wallet/api interface (xmrdsc)
2020-10-13 10:39:05 -05:00
xiphon
ec14e4b8cd wallet2: skip reorgs exceeding max-reorg-depth wallet setting 2020-10-13 15:23:35 +00:00
Alexis Enston
b49f48962b fix next_seed_height regression in getblocktemplate rpc 2020-10-13 11:07:59 +01:00
xiphon
4cf3545a31 core_rpc_server: on_get_blocks - forward bootstrap daemon error 2020-10-13 00:44:59 +00:00
xiphon
ad7ea2c60c core_rpc_server: on_send_raw_tx - fix bootstrap daemon mode check 2020-10-12 23:49:37 +00:00
moneromooo-monero
fcbfb0a00a
wallet2: fix missing m_state field in wallet serialization 2020-10-12 15:35:52 +00:00
moneromooo-monero
11b20229c9
tx_pool: silence spammy harmless warning till we fix the bug 2020-10-12 14:07:40 +00:00
xiphon
a12a8174e0 Dandelion++: skip desynced peers in stem phase 2020-10-12 13:44:06 +00:00
Lee Clagett
7414e2bac1 Change epee binary output from std::stringstream to byte_stream 2020-10-10 15:28:40 +00:00
Lee Clagett
386ef03be3 Add TLSA support to DNSSEC fetching 2020-10-07 15:43:31 +00:00
Lee Clagett
dff1d8067c Fix tx flush callback queueing 2020-10-06 16:07:49 +00:00
Alexander Blair
3cbb44a2fd
Merge pull request #6841
b6c4f8cd5 fix a couple bugs found by OSS-fuzz (moneromooo-monero)
2020-09-27 16:17:17 -07:00
Michal m@lbit Malicki
f4b2382713
rpc_private_headers declaration fix 2020-09-27 13:41:44 +01:00
moneromooo-monero
b6c4f8cd54
fix a couple bugs found by OSS-fuzz
- index out of bounds when importing outputs
- accessing invalid CLSAG data
2020-09-24 15:30:38 +00:00
xiphon
4846743fdc daemon: Windows - fix FAT32 warning, trailing backslash is required 2020-09-20 13:57:44 +00:00
dsc
64e9526509 Extend TransactionInfo with coinbase and description attributes in wallet/api 2020-09-19 22:54:23 +02:00
dsc
1b3f220251 Allow AddressBook description edits via wallet/api interface 2020-09-19 18:29:46 +02:00
Tadeas Moravec
83da867474
Update error messages in daemon
When given a wrong argument, some daemon commands failed with "unknown
command" error, instead of a meaningful error message. This patch
brings consistency into the error messages.

In several places, this patch removes relatively useful messages,
and replaces them with more generic ones. E.g.,

-    std::cout << "use: print_pl [white] [gray] [<limit>] [pruned]
[publicrpc]" << std::endl;
+    std::cout << "Invalid syntax: Too many parameters. For more
details, use the help command." << std::endl;

There are two reasons for this:

1. Consistency.
2. Removing duplicates.

The detailed information about the parameters is present in
the help messages already. Having it in two places increases
the risk that the messages would get out of date.
2020-09-18 14:04:19 +02:00
luigi1111
d27d4526fe
Merge pull request #6819
c3f354e simplewallet fix wrong persistent-rpc-client-id name in help (moneromooo-monero)
2020-09-15 19:59:36 -05:00
luigi1111
5b3614e6a9
Merge pull request #6816
929ea98 Remove unused macros from cryptonote_config.h (TheCharlatan)
2020-09-15 19:58:39 -05:00
luigi1111
2b1488ef6f
Merge pull request #6793
de9a9fb update error message 'No unlocked balance in the specified account' (woodser)
2020-09-15 19:56:49 -05:00
TheCharlatan
80e535c95a
wallet2: adapt to deterministic unlock time 2020-09-15 11:40:31 +00:00
moneromooo-monero
4971219c2c
blockchain: deterministic UNIX time unlock checks
Based on a patch by TheCharlatan <seb.kung@gmail.com>
2020-09-15 11:40:28 +00:00
moneromooo-monero
c3f354e6c1
simplewallet fix wrong persistent-rpc-client-id name in help 2020-09-14 20:50:35 +00:00
luigi1111
9bba1a24ea Merge pull request #6815
ef4325f wallet2: fix tx sanity check triggering on pre-rct outputs (monermooo-monero)
2020-09-14 11:47:06 -05:00
luigi1111
2993d2004a
Merge pull request #6813
a3844e2 Fix typo in command line argument description (reinaldoacosta)
2020-09-14 11:45:55 -05:00
selsta
f240b1dd88
build: prepare v0.17 2020-09-14 16:52:42 +02:00
TheCharlatan
929ea98662 Remove unused macros from cryptonote_config.h 2020-09-14 00:20:58 +02:00
moneromooo-monero
ef4325fd41
wallet2: fix tx sanity check triggering on pre-rct outputs 2020-09-12 17:51:41 +00:00
Reinaldulin
a3844e257e
Fix typo in command line argument description 2020-09-09 10:18:32 -04:00
luigi1111
836067b68b
Merge pull request #6805
fc2cb22 blockchain: fix pow skipping for old blocks without precalc hash (moneromooo-monero)
2020-09-07 15:31:20 -05:00
luigi1111
9c9c689db4
Merge pull request #6804
5498142 rpc: assume randomx from v13 onwards (moneromooo-monero)
2020-09-07 14:34:46 -05:00
luigi1111
3a761e10d2
Merge pull request #6800
036da6d Let stagenet hardfork happen before mainnet. (normoes)
2020-09-07 14:32:28 -05:00
luigi1111
fd657c7706
Merge pull request #6798
4e44306 enable CLSAG support for Trezor client (ph4r05)
2020-09-07 14:30:41 -05:00
moneromooo-monero
fc2cb224a9
blockchain: fix pow skipping for old blocks without precalc hash 2020-09-07 01:57:19 +00:00
moneromooo-monero
5498142e8f
rpc: assume randomx from v13 onwards 2020-09-07 01:13:06 +00:00
Riccardo Spagni
aefa7740c3
Merge pull request #6111
d20ff4f64 functional_tests: add a large (many randomx epochs) p2p reorg test (moneromooo-monero)
6a0b3b1f8 functional_tests: add randomx tests (moneromooo-monero)
9d42649d5 core: fix mining from a block that's not the current top (moneromooo-monero)
2020-09-06 15:49:37 +02:00
Norman Moeschter
036da6d45b
Let stagenet hardfork happen before mainnet. 2020-09-04 22:47:05 +01:00
Dusan Klinec
4e4430603f
enable CLSAG support for Trezor client 2020-09-04 01:24:58 +02:00
luigi1111
9fb2243db0
Merge pull request #6794
b09cc3d hardforks: add v13/v14 for testnet (moneromooo-monero)
2020-09-03 12:27:18 -05:00
luigi1111
ee0b02d0db
Merge pull request #6757
6a37da8 threadpool: guard against exceptions in jobs, and armour plating (moneromooo-monero)
2020-09-03 12:25:59 -05:00
moneromooo-monero
b09cc3d03d
hardforks: add v13/v14 for testnet 2020-09-02 17:56:48 +00:00
woodser
de9a9fb340 update error message "No unlocked balance in the specified account" 2020-09-01 17:30:00 -04:00
moneromooo-monero
6a37da837e
threadpool: guard against exceptions in jobs, and armour plating
Those would, if uncaught, exit run and leave the waiter to wait
indefinitely for the number of active jobs to reach 0
2020-09-01 14:33:33 +00:00
luigi1111
2d8a197b91
Merge pull request #6789
bdcf587 net: fix get_tcp_endpoint, boost address_v4 ip in host byte order (xiphon)
2020-08-31 16:58:13 -05:00
luigi1111
94b056c06e
Merge pull request #6786
975ae22 Fix send scalar z in plaintext (grydz)
333ae55 Update minimal Ledger Monero app version (grydz)
0a3c5a6 Update protocol version with Ledger's HW (grydz)
2020-08-31 16:54:51 -05:00
luigi1111
a51ccc036f
Merge pull request #6770
bdc6b10 Fix ZMQ pruned bulletproof transactions (vtnerd)
2020-08-31 16:50:18 -05:00
xiphon
bdcf587c79 net: fix get_tcp_endpoint, boost address_v4 ip in host byte order 2020-08-29 18:07:46 +00:00
Sarang Noether
fa06c39d97 Bind signature to full address and signing mode 2020-08-28 19:38:00 -04:00
moneromooo-monero
743608ec16 wallet: allow signing a message with spend or view key 2020-08-28 19:25:17 -04:00
moneromooo-monero
e6c81c5ea7
ringct: fix CLSAG serialization after boost/epee changes
also fix a an assert message refering t MLSAG
2020-08-28 11:52:54 +00:00
François Colas
975ae22211
Fix send scalar z in plaintext
The scalar z has not been generated on the HW thus it can't be sent
encrypted. The value is derived from the exported private view key.
2020-08-28 12:01:57 +02:00
François Colas
333ae55fef
Update minimal Ledger Monero app version 2020-08-28 12:00:25 +02:00
François Colas
0a3c5a605b
Update protocol version with Ledger's HW 2020-08-28 11:59:02 +02:00
moneromooo-monero
d20ff4f648
functional_tests: add a large (many randomx epochs) p2p reorg test 2020-08-27 15:13:04 +00:00
moneromooo-monero
6a0b3b1f8a
functional_tests: add randomx tests 2020-08-27 15:13:03 +00:00
moneromooo-monero
9d42649d58
core: fix mining from a block that's not the current top 2020-08-27 15:13:00 +00:00
cslashm
1660fe8a25
draft support of clsag 2020-08-27 12:44:18 +00:00
Sarang Noether
703944c4d4 CLSAG device support 2020-08-27 12:44:04 +00:00
Sarang Noether
641b08c920 CLSAG optimizations 2020-08-27 12:44:04 +00:00
moneromooo-monero
82ee01699c
Integrate CLSAGs into monero
They are allowed from v12, and MLSAGs are rejected from v13.
2020-08-27 12:44:04 +00:00
Sarang Noether
4b328c6616 CLSAG signatures 2020-08-27 12:43:29 +00:00
Alexander Blair
0c101f1236
Merge pull request #6767
07442a605 Fix build with Boost 1.74 (moneromooo-monero)
2020-08-27 03:07:32 -07:00
Alexander Blair
27b49033fd
Merge pull request #6763
728ba38b1 rpc: always send raw txes through P2P (don't use bootstrap daemon) (xiphon)
2020-08-27 03:02:30 -07:00
Alexander Blair
b04da25e4d
Merge pull request #6760
844fb4e94 enforce claiming maximum coinbase amount (moneromooo-monero)
2020-08-27 03:01:28 -07:00
Alexander Blair
4fe2858b4d
Merge pull request #6746
20f603c6b Fix broken multisig pubkey sorting (Jason Rhinelander)
2020-08-27 02:58:53 -07:00
Alexander Blair
dd7fd2ef80
Merge pull request #6753
4ff2074c7 cryptonote_protocol: don't synced pruned blocks before v11 (cohcho)
2020-08-27 02:58:45 -07:00
Alexander Blair
a06c83db73
Merge pull request #6752
85899230d simplewallet: allow setting tx keys when sending to a subaddress (moneromooo-monero)
e916201f1 wallet2: fix setting tx keys when another is already set (moneromooo-monero)
2020-08-27 02:58:23 -07:00
Alexander Blair
42519b48a7
Merge pull request #6731
db5d6e460 wallet2: fix wrong name when checking RPC cost (moneromooo-monero)
2020-08-27 02:55:48 -07:00
Alexander Blair
bad5d8d6f0
Merge pull request #6690
7175dcb10 replace most boost serialization with existing monero serialization (moneromooo-monero)
2020-08-27 02:54:30 -07:00
Alexander Blair
38914fe6fa
Merge pull request #6613
55363c594 Avoid some temporary strings when reading off the database (moneromooo-monero)
2020-08-27 02:52:59 -07:00
Alexander Blair
a6f1fa0194
Merge pull request #6607
eb1b321fe miner: increase min/max intervals to full extents (moneromooo-monero)
2020-08-26 12:53:09 -07:00
moneromooo-monero
844fb4e940
enforce claiming maximum coinbase amount
Claiming a slightly lesser amount does not yield the size gains
that were seen pre rct, so this closes a fingerprinting vector
2020-08-21 12:36:53 +00:00
Lee Clagett
bdc6b10d62 Fix ZMQ pruned bulletproof transactions 2020-08-19 00:36:06 -04:00
luigi1111
765db1ae7a
Revert "Use domain-separated ChaCha20 for in-memory key encryption"
This reverts commit 921dd8dde5.
2020-08-17 14:08:59 -05:00
moneromooo-monero
7175dcb107
replace most boost serialization with existing monero serialization
This reduces the attack surface for data that can come from
malicious sources (exported output and key images, multisig
transactions...) since the monero serialization is already
exposed to the outside, and the boost lib we were using had
a few known crashers.

For interoperability, a new load-deprecated-formats wallet
setting is added (off by default). This allows loading boost
format data if there is no alternative. It will likely go
at some point, along with the ability to load those.

Notably, the peer lists file still uses the boost serialization
code, as the data it stores is define in epee, while the new
serialization code is in monero, and migrating it was fairly
hairy. Since this file is local and not obtained from anyone
else, the marginal risk is minimal, but it could be migrated
later if needed.

Some tests and tools also do, this will stay as is for now.
2020-08-17 16:23:58 +00:00
moneromooo-monero
55363c5941
Avoid some temporary strings when reading off the database 2020-08-17 14:02:27 +00:00
Alexander Blair
43f5369bec
Merge pull request #6733
4f01cf4b4 Tweak format, add option for difficulty (Howard Chu)
429d49512 Add options to print daily coin emission and fees (Howard Chu)
d745d2433 Don't forget size of prunable txn part (Howard Chu)
2020-08-16 12:56:03 -07:00
Alexander Blair
d73b1b6560
Merge pull request #6727
13eee1d6a rpc: reject wrong sized txid (moneromooo-monero)
92e6b7df2 easylogging++: fix crash with reentrant logging (moneromooo-monero)
6dd95d530 epee: guard against exceptions in RPC handlers (moneromooo-monero)
90016ad74 blockchain: guard against exceptions in add_new_block/children (moneromooo-monero)
2020-08-16 12:55:25 -07:00
Alexander Blair
569d07d60b
Merge pull request #6722
c1b03fb1a rpc: return empty txid get_outs rather than 00..00 when not requested (moneromooo-monero)
2020-08-16 12:54:42 -07:00
Alexander Blair
01b512f3a9
Merge pull request #6716
76c16822d wallet2_api: implement runtime proxy configuration (xiphon)
2020-08-16 12:52:21 -07:00
Alexander Blair
f40b9e34e0
Merge pull request #6715
3d6bc0a68 wallet2: throw a error on wallet initialization failure (xiphon)
2020-08-16 12:51:57 -07:00
Alexander Blair
43f91ee12e
Merge pull request #6703
8baa7bb23 daemon: don't print "(pruned)" for coinbase txes (moneromooo-monero)
2020-08-16 12:50:43 -07:00
Alexander Blair
0b0da2aa81
Merge pull request #6689
afd002c31 daemon: print sampling time in print_net_stats (moneromooo-monero)
ec7bba079 util: fix kilo prefix typo (K instead of k) (moneromooo-monero)
2020-08-16 12:47:36 -07:00
Alexander Blair
236256f114
Merge pull request #6679
2f1ad3b3d updates: mac gui .tar.bz2 -> .dmg (selsta)
2020-08-16 12:46:51 -07:00
Alexander Blair
eba2189925
Merge pull request #6677
f9e3fcdf3 add trezor support to sweep_single (Dusan Klinec)
2020-08-16 12:46:27 -07:00
Alexander Blair
bc48494731
Merge pull request #6661
267ce5b71 avoid a couple needless copies (moneromooo-monero)
2020-08-16 12:45:37 -07:00
Alexander Blair
8f02e7a7fc
Merge pull request #6632
ef694d028 fix warning by removing std::move() on temporary http_client object (woodser)
2020-08-16 12:44:59 -07:00
Alexander Blair
c6c4ead44e
Merge pull request #6614
fb31167b1 Wallet, daemon: From 'help_advanced' back to 'help', and new 'apropos' command (rbrunner7)
2020-08-16 12:44:03 -07:00
Alexander Blair
a08df6eb1b
Merge pull request #6603
4e2377995 Change ZMQ-JSON txextra to hex and remove unnecessary base fields (Lee Clagett)
2020-08-16 12:43:38 -07:00
Alexander Blair
009ca6fcd3
Merge pull request #6601
98c151ecb Optimize ZMQ-JSON vector reading; GetBlocksFast reads 24%+ faster (Lee Clagett)
60627c9f2 Switch to insitu parsing for ZMQ-JSON; GetBlocksFast reads 13%+ faster (Lee Clagett)
fe96e66eb Fix pruned tx for ZMQ's GetBlocksFast (Lee Clagett)
2020-08-16 12:43:11 -07:00
Alexander Blair
0f5eb0e70c
Merge pull request #6546
eda167585 wallet_rpc_server: use unlock_time in suggested confirmations calc (moneromooo-monero)
2020-08-16 12:40:51 -07:00
Alexander Blair
461651fce5
Merge pull request #6542
35665df20 protocol: don't drop a connection if we can't get a compatible chain (moneromooo-monero)
2020-08-16 12:40:37 -07:00
Alexander Blair
6d29ee6c52
Merge pull request #6493
921dd8dde Use domain-separated ChaCha20 for in-memory key encryption (Sarang Noether)
2020-08-16 12:39:59 -07:00
Alexander Blair
e2e09d00c2
Merge pull request #6337
a11ec4ac1 Support for supercop ASM in wallet, and benchmark for supercop (Lee Clagett)
2020-08-16 12:38:44 -07:00
Alexander Blair
13549d590e
Merge pull request #6329
6bfcd3101 Updates InProofV1, OutProofV1, and ReserveProofV1 to new V2 variants that include all public proof parameters in Schnorr challenges, along with hash function domain separators. Includes new randomized unit tests. (Sarang Noether)
2020-08-16 12:37:43 -07:00
xiphon
728ba38b11 rpc: always send raw txes through P2P (don't use bootstrap daemon)
It turns out that some remote (bootstrap) nodes silently drop /
don't broadcast client's transactions.
2020-08-16 17:34:28 +00:00
moneromooo-monero
07442a6059
Fix build with Boost 1.74
Thanks iDunk for testing
2020-08-16 16:23:26 +00:00
Lee Clagett
4e2377995d Change ZMQ-JSON txextra to hex and remove unnecessary base fields 2020-08-14 23:01:00 +00:00
Lee Clagett
98c151ecb8 Optimize ZMQ-JSON vector reading; GetBlocksFast reads 24%+ faster 2020-08-14 19:47:19 +00:00
Lee Clagett
60627c9f24 Switch to insitu parsing for ZMQ-JSON; GetBlocksFast reads 13%+ faster 2020-08-14 19:46:59 +00:00
Lee Clagett
fe96e66ebe Fix pruned tx for ZMQ's GetBlocksFast 2020-08-14 19:46:33 +00:00
moneromooo-monero
85899230d1
simplewallet: allow setting tx keys when sending to a subaddress
The tx key derivation is different then
2020-08-10 21:25:51 +00:00
cohcho
4ff2074c74
cryptonote_protocol: don't synced pruned blocks before v11
There are a few Borromean proofs txes in the v8 era, and these
aren't supported by get_pruned_transaction_weight. Moreover, only
only the most recent variant of bulletproofs is currently supported.
2020-08-10 16:17:39 +00:00
Sarang Noether
921dd8dde5 Use domain-separated ChaCha20 for in-memory key encryption 2020-08-09 19:11:54 -04:00
Sarang Noether
6bfcd31015 Updates InProofV1, OutProofV1, and ReserveProofV1 to new V2 variants that include all public proof parameters in Schnorr challenges, along with hash function domain separators. Includes new randomized unit tests. 2020-08-09 18:42:15 -04:00
Alexander Blair
c108c5e2f0
Merge pull request #6354
67ade8005 Add randomized delay when forwarding txes from i2p/tor -> ipv4/6 (Lee Clagett)
2020-08-09 06:42:49 -07:00
moneromooo-monero
e916201f12
wallet2: fix setting tx keys when another is already set
insert doesn't actually insert if another element with the
same key is already in the map
2020-08-08 14:40:03 +00:00
Jason Rhinelander
20f603c6be Fix broken multisig pubkey sorting
The sort predicate is a boolean ordered-before value, but these are
returning the memcmp value directly, and thus returns true whenever the
pubkeys aren't equal.  This means:

- it isn't actually sorting.

- it can (and does) segfault for some inputs.
2020-08-05 12:42:27 -03:00
Alexander Blair
9414194b1e
Merge pull request #6571
1d31e6c00 net_node: remove dead seed nodes (selsta)
2020-08-05 07:57:54 -07:00
Howard Chu
4f01cf4b46
Tweak format, add option for difficulty
Set input, output, ringsize averages to 2 decimal places precision
Add option to show min/max/av per-block difficulty
2020-08-03 13:13:14 +01:00
Howard Chu
429d495121
Add options to print daily coin emission and fees
Closes #6735
2020-08-01 20:48:42 +01:00
Howard Chu
d745d24333
Don't forget size of prunable txn part
Fixes #6732
2020-08-01 13:41:38 +01:00
moneromooo-monero
db5d6e4602
wallet2: fix wrong name when checking RPC cost 2020-07-31 14:17:23 +00:00
moneromooo-monero
13eee1d6ab
rpc: reject wrong sized txid
Reporter requested credit to be given to Decred
2020-07-30 22:52:14 +00:00
moneromooo-monero
90016ad744
blockchain: guard against exceptions in add_new_block/children
Reporter requested credit to be given to Decred
2020-07-30 22:52:11 +00:00
moneromooo-monero
c1b03fb1a6
rpc: return empty txid get_outs rather than 00..00 when not requested
It's more obvious there's no txid, and it saves space
2020-07-25 17:01:21 +00:00
moneromooo-monero
8baa7bb238
daemon: don't print "(pruned)" for coinbase txes
Pruned coinbase txes are the same as unpruned ones, so the
prunable data is empty
2020-07-24 13:42:20 +00:00
rbrunner7
fb31167b12 Wallet, daemon: From 'help_advanced' back to 'help', and new 'apropos' command 2020-07-24 07:12:11 +02:00
xiphon
76c16822d0 wallet2_api: implement runtime proxy configuration 2020-07-20 13:45:12 +00:00
xiphon
3d6bc0a680 wallet2: throw a error on wallet initialization failure 2020-07-20 04:40:34 +00:00
Alexander Blair
2a82258dff
Merge pull request #6580
ed901798d version: update name (selsta)
2020-07-19 03:42:43 -07:00
Alexander Blair
3434cc24a2
Merge pull request #6578
a6803231e daemon: complain if data dir resides on FAT32 volume (Windows) (xiphon)
2020-07-19 03:41:55 -07:00
Alexander Blair
9871fefbf9
Merge pull request #6565
72cdfa4a2 fix a few typos in error messages (moneromooo-monero)
2020-07-19 03:40:19 -07:00
Alexander Blair
c0a6e1aab9
Merge pull request #6557
bd69e3b37 testdb: add override in a couple places where it's missing (moneromooo-monero)
2020-07-19 03:39:53 -07:00
Alexander Blair
bb0241da6e
Merge pull request #6538
7178bb5c8 keccak: remove aligned check (moneromooo-monero)
2020-07-19 03:38:53 -07:00
Alexander Blair
61e5208181
Merge pull request #6537
5e0ea6e95 simplewallet: add missing calls to on_command (moneromooo-monero)
2020-07-19 03:38:07 -07:00
Alexander Blair
6d6c691a0f
Merge pull request #6536
bd9653663 db_lmdb: test for mmap support at init time (moneromooo-monero)
2020-07-19 03:37:15 -07:00
Alexander Blair
36d50d93f2
Merge pull request #6534
7bd66b01b daemon: guard against rare 'difficulty drift' bug with checkpoints and recalculation (stoffu)
2020-07-19 03:36:39 -07:00
Alexander Blair
814e617117
Merge pull request #6526
5d882f4f1 blockchain: fix theoretical race getting bulk timestamps (moneromooo-monero)
2020-07-19 03:34:52 -07:00
Alexander Blair
3ba6c7fd30
Merge pull request #6516
8656a8c9f remove double includes (sumogr)
2020-07-19 03:34:28 -07:00
Alexander Blair
a0d179e528
Merge pull request #6512
5ef0607da Update copyright year to 2020 (SomaticFanatic)
2020-07-19 03:32:59 -07:00
Alexander Blair
5041de8a3b
Merge pull request #6488
99684e3e simplewallet: add show_qr_code command (selsta)
2020-07-16 06:14:30 -07:00
moneromooo-monero
332d60719a
tx_pool: mine stem txes in fake chain mode
This fixes the functional tests, since txes would not be mined
after being sent to the daemon (they'd be waiting for the
dandelion timeout first)
2020-07-09 14:52:13 +00:00
moneromooo-monero
0fd6ccef21
blockchain: fix timestamp/difficulty cache getting out of sync
The cache is discarded when a block is popped, but then gets
rebuilt when the difficulty for next block is requested.
While this is all properly locked, it does not take into account
the delay caused by a database transaction being only committed
(and thus its effects made visible to other threads) later on,
which means another thread could request difficulty between
the pop and the commit, which would end up using stale database
view to build the cache, but that cache would not be invalidated
again when the transaction gets committed, which would cause the
cache to not match the new database data.

To fix this, we now keep track of when the cache is invalidated
so we can invalidate it again upon database transaction commit
to ensure it gets calculated again with fresh data next time it
is nedeed.
2020-07-08 22:31:51 +00:00
luigi1111
99b14ccd6a
Merge pull request #6647
4d8d121 Fix D++ block template check (vtnerd)
2020-07-08 17:25:01 -05:00
luigi1111
18bb011afe
Merge pull request #6629
795e186 blockchain: fix total_height in getblocks.bin response (moneromooo-monero)
2020-07-08 17:23:28 -05:00
luigi1111
e8d87fccc2
Merge pull request #6627
4df8f9c rpc: fix loading rpc payment data from file (moneromooo-monero)
2020-07-08 17:22:33 -05:00
luigi1111
0376195015
Merge pull request #6611
dc1a053 rpc: fix comparison of seconds vs microseconds (moneromooo-monero)
2020-07-08 17:21:31 -05:00
luigi1111
3057f52f89
Merge pull request #6599
6e4a55b rpc: fix relay_tx error return mixup (moneromooo-monero)
9b86e14 functional_tests: add simple relay_tx test (moneromooo-monero)
2020-07-08 17:20:29 -05:00
luigi1111
228101a72e
Merge pull request #6597
ec46069 Fix incorrect lenght of command INS_PREFIX_HASH (grydz)
2020-07-08 17:18:10 -05:00
luigi1111
81c2586358
Merge pull request #6588
bcef52d daemon: remove time based 'update needed' status string (moneromooo-monero)
2020-07-08 17:15:19 -05:00
luigi1111
340e1943ac
Merge pull request #6587
94befec fix typo in pick_preferred_rct_inputs (Parean)
2020-07-08 17:14:09 -05:00
luigi1111
be170c485c
Merge pull request #6584
78d435a rpc: don't display invalid json errors on default log level (moneromooo-monero)
2020-07-08 17:12:43 -05:00
luigi1111
8b3fa2d373
Merge pull request #6574
7ebb351 rpc: lock access to the rpc payment object (moneromooo-monero)
2020-07-08 17:11:32 -05:00
luigi1111
634262f3f5
Merge pull request #6568
f037121 cryptonote_core: remove 'We are most likely forked' message (moneromooo-monero)
2020-07-08 17:10:39 -05:00
luigi1111
f1334ebf64
Merge pull request #6566
567402c protocol: move the 'peer claims higher version' warning to debug (moneromooo-monero)
2020-07-08 17:08:58 -05:00
luigi1111
ed903578d7
Merge pull request #6544
5741b4d blockchain: detect and log bad difficulty calculations (moneromooo-monero)
2020-07-08 17:04:41 -05:00
selsta
ed901798d9
version: update name 2020-07-06 23:22:25 +02:00
moneromooo-monero
afd002c31f
daemon: print sampling time in print_net_stats 2020-06-25 13:03:59 +00:00
moneromooo-monero
ec7bba0793
util: fix kilo prefix typo (K instead of k) 2020-06-25 13:03:24 +00:00
selsta
2f1ad3b3d2
updates: mac gui .tar.bz2 -> .dmg 2020-06-22 02:55:22 +02:00
Dusan Klinec
f9e3fcdf3e
add trezor support to sweep_single 2020-06-21 23:17:58 +02:00
selsta
99684e3ec3
simplewallet: add show_qr_code command
Thanks to iDunk for helping with Windows.
2020-06-21 20:15:10 +02:00
moneromooo-monero
267ce5b718
avoid a couple needless copies 2020-06-14 18:05:35 +00:00
Lee Clagett
4d8d121462 Fix D++ block template check 2020-06-12 22:05:52 -04:00
selsta
58e1c8b031
repo: update donation fund address 2020-06-09 12:19:39 +02:00
stoffu
7bd66b01bf
daemon: guard against rare 'difficulty drift' bug with checkpoints and recalculation
On startup, it checks against the difficulty checkpoints, and if any mismatch is found, recalculates all the blocks with wrong difficulties. Additionally, once a week it recalculates difficulties of blocks after the last difficulty checkpoint.
2020-06-09 10:40:51 +09:00
luigi1111
ff4d470629
Merge pull request #6576
4d3c2d0 rpc: add a sanity limit to a few RPC in restricted mode (moneromooo-monero)
2020-06-08 14:27:05 -05:00
luigi1111
c4f4091dd4
Merge pull request #6561
c17fe81 wallet2: fix multisig data clearing stomping on a vector (moneromooo-monero)
2020-06-08 14:21:33 -05:00
luigi1111
445f74c71a
Merge pull request #6556
5ed37ba serialization: fix bad rapidjson api usage (moneromooo-monero)
2020-06-08 14:18:09 -05:00
luigi1111
28745b1b63
Merge pull request #6553
bb5c5df cryptonote_protocol: reject requests/notifications before handshake (moneromooo-monero)
f1d0457 cryptonote_protocol: stricter limit to number of objects requested (moneromooo-monero)
2020-06-08 14:16:42 -05:00
luigi1111
e17c864ba2
Merge pull request #6549
82d21f5 easylogging++: sanitize log payload (moneromooo-monero)
7d0b7e8 [master] MMS: New 'config_checksum' subcommand (rbrunner7)
2020-06-08 14:12:08 -05:00
luigi1111
3a577f1ce7
Merge pull request #6525
86cf811 simplewallet: don't complain about incoming payment ids on change (moneromooo-monero)
2020-06-08 14:07:45 -05:00
luigi1111
09667700e8
Merge pull request #6519
ab44293 trezor: add new firmware version support (ph4r05)
2020-06-08 14:03:57 -05:00
luigi1111
37c359e765
Merge pull request #6514
4baee20 build: prepare v0.16.0.0 release (selsta)
2020-06-08 14:02:00 -05:00
woodser
ef694d028f fix warning by removing std::move() on temporary http_client object 2020-06-06 11:38:32 -04:00
moneromooo-monero
795e18632c
blockchain: fix total_height in getblocks.bin response 2020-06-05 15:27:07 +00:00
moneromooo-monero
4df8f9c414
rpc: fix loading rpc payment data from file
Got broken after making one of those micro optimizations requested on review..
2020-06-05 11:21:24 +00:00
Lee Clagett
7aeb503547 Fix boost <1.60 compilation and fix boost 1.73+ warnings 2020-05-31 21:18:11 -04:00
moneromooo-monero
dc1a053081
rpc: fix comparison of seconds vs microseconds 2020-05-31 22:28:23 +00:00
moneromooo-monero
eb1b321fe2
miner: increase min/max intervals to full extents
This prevents setting target to, eg, 65 being ignored

and remove an unused constant
2020-05-31 12:36:47 +00:00
moneromooo-monero
6e4a55ba7e
rpc: fix relay_tx error return mixup 2020-05-28 11:33:27 +00:00
François Colas
ec46069248 Fix incorrect lenght of command INS_PREFIX_HASH
buffer_send[4] (LC) is an unsigned char, len should not
exceed 254 (255 - 1 for the option).
2020-05-27 18:06:19 +02:00
moneromooo-monero
bcef52d430
daemon: remove time based "update needed" status string 2020-05-24 21:44:03 +00:00
Denis Smirnov
94befecb05 fix typo in pick_preferred_rct_inputs 2020-05-25 03:39:54 +07:00
rbrunner7
7d0b7e83ef [master] MMS: New 'config_checksum' subcommand 2020-05-24 10:23:55 +02:00
moneromooo-monero
82d21f5b3c easylogging++: sanitize log payload
Some of it might be coming from untrusted sources

Reported by itsunixiknowthis
2020-05-24 08:38:59 +02:00
moneromooo-monero
78d435a5fa
rpc: don't display invalid json errors on default log level
It's not something the user needs to know, and will display
attacker controlled data
2020-05-23 12:26:49 +00:00
xiphon
a6803231e6 daemon: complain if data dir resides on FAT32 volume (Windows) 2020-05-21 15:23:44 +00:00
moneromooo-monero
4d3c2d0b7b
rpc: add a sanity limit to a few RPC in restricted mode 2020-05-20 19:17:49 +00:00
selsta
1d31e6c000
net_node: remove dead seed nodes 2020-05-20 01:06:03 +02:00
moneromooo-monero
7ebb351c2d
rpc: lock access to the rpc payment object 2020-05-19 18:26:28 +00:00
moneromooo-monero
f0371210e9
cryptonote_core: remove "We are most likely forked" message
It's time based and we don't have forks every 6 months anymore
2020-05-19 16:27:24 +00:00
moneromooo-monero
567402c508
protocol: move the "peer claims higher version" warning to debug
Because there's a neverending supply of cunts claiming a wrong
version just to say "look at me" I guess
2020-05-19 16:14:53 +00:00
moneromooo-monero
72cdfa4a20
fix a few typos in error messages
Reported by adrelanos
2020-05-19 15:59:26 +00:00
moneromooo-monero
c17fe815a2
wallet2: fix multisig data clearing stomping on a vector 2020-05-19 10:45:40 +00:00
moneromooo-monero
f1d0457523
cryptonote_protocol: stricter limit to number of objects requested
Reported by xnbya
2020-05-19 10:33:03 +00:00
moneromooo-monero
bb5c5dff15
cryptonote_protocol: reject requests/notifications before handshake
Reported by xnbya
2020-05-19 10:33:02 +00:00
moneromooo-monero
bd69e3b37a
testdb: add override in a couple places where it's missing 2020-05-18 14:17:48 +00:00
moneromooo-monero
5ed37ba83c
serialization: fix bad rapidjson api usage 2020-05-18 14:17:23 +00:00
moneromooo-monero
5741b4d74d
blockchain: detect and log bad difficulty calculations 2020-05-17 12:44:45 +00:00
moneromooo-monero
eda1675858
wallet_rpc_server: use unlock_time in suggested confirmations calc 2020-05-17 01:03:32 +00:00
moneromooo-monero
35665df206
protocol: don't drop a connection if we can't get a compatible chain
This can now happen if:
- we have a pruned db
- we have not connected to the monero network for a while
- we connect to a node
- that node asks us for history
- we only have a pruned version of the most recent common block

In that case, it's better to not reply but keep the connection alive,
so we can sync off it.
2020-05-16 19:55:31 +00:00
moneromooo-monero
7178bb5c84
keccak: remove aligned check
Some tools report the alignment check as UB, which seems a bit
dubious, but since the performance difference between the two
versions is minimal, I'll go with the safe version
2020-05-16 12:28:27 +00:00
Lee Clagett
a11ec4ac1d Support for supercop ASM in wallet, and benchmark for supercop 2020-05-16 10:25:17 +00:00
moneromooo-monero
5e0ea6e95c
simplewallet: add missing calls to on_command
It resets the inactivity time
2020-05-16 00:48:44 +00:00
moneromooo-monero
bd96536637
db_lmdb: test for mmap support at init time
It'll make it clearer when a DB init failure is due to being
on a filesystem which does not support mmap
2020-05-16 00:20:22 +00:00
Lee Clagett
67ade80055 Add randomized delay when forwarding txes from i2p/tor -> ipv4/6 2020-05-15 07:57:35 +00:00
selsta
f35ced6d7f
build: fix boost 1.73 compatibility 2020-05-14 22:57:53 +02:00
moneromooo-monero
86cf811a39
simplewallet: don't complain about incoming payment ids on change 2020-05-13 23:28:31 +00:00
selsta
4baee200a7
build: prepare v0.16.0.0 release 2020-05-13 16:15:03 +02:00
moneromooo-monero
5d882f4f14
blockchain: fix theoretical race getting bulk timestamps 2020-05-13 13:42:41 +00:00
Dusan Klinec
ab4429346d
trezor: add new firmware version support 2020-05-12 16:31:36 +02:00
sumogr
8656a8c9ff remove double includes 2020-05-11 13:53:17 +00:00
luigi1111
77a008f714
Merge pull request #6510
70609d7 cryptonote_core: take out the time based upgrade warning (moneromooo-monero)
2020-05-07 10:44:34 -05:00
luigi1111
4c2f78aeeb
Merge pull request #6506
42e1484 wallet2: fix keys file deserialization exception handling (xiphon)
2020-05-07 10:43:05 -05:00
SomaticFanatic
5ef0607da6 Update copyright year to 2020
Update copyright year to 2020
2020-05-06 22:36:54 -04:00
moneromooo-monero
70609d7681
cryptonote_core: take out the time based upgrade warning
It doesn't really work anymore since we don't have a fork soon
2020-05-06 18:27:23 +00:00
luigi1111
dbba6004f5
Merge pull request #6503
f80ab3e cryptonote_protocol: do not request pruned borromean sig txes (moneromooo-monero)
2020-05-06 12:22:28 -05:00
moneromooo-monero
f80ab3edde
cryptonote_protocol: do not request pruned borromean sig txes
We don't have a function to calculate their weight from a pruned
version (yet).
2020-05-06 12:44:00 +00:00
luigi1111
f2c78f6a5b
Merge pull request #6486
feee455 Fixes for ZMQ JSON-RPC endpoint names for raw tx (vtnerd)
2020-05-06 00:34:30 -05:00
luigi1111
3de804f1e9
Merge pull request #6485
7a8c1ee wallet2: fix subaddress expansion when receiving monero (moneromooo-monero)
2020-05-06 00:31:51 -05:00
luigi1111
98e3802b26
Merge pull request #6484
e7d0105 message_store: don't print an error when there is no mms file (moneromooo-monero)
2020-05-06 00:30:39 -05:00
luigi1111
de025281dc
Merge pull request #6481
119f706 rpc: fix 'use_bootstrap_daemon_if_necessary' return value (xiphon)
2020-05-06 00:29:49 -05:00
luigi1111
9e3f72c375
Merge pull request #6480
4f489fa wallet2: check_connection return false on get_version status != OK (xiphon)
2020-05-06 00:28:18 -05:00
luigi1111
0f233c6ad8
Merge pull request #6478
ee58362 Used legacy category to match insert_key_images behavior (vtnerd)
2020-05-06 00:27:13 -05:00
luigi1111
483e5cab5c
Merge pull request #6472
2efbd5f cryptonote: fix reuse of non default tx data when relaying (moneromooo-monero)
2020-05-06 00:25:18 -05:00
luigi1111
8d0f1696df
Merge pull request #6471
c6a1294 add another seed node (Gingeropolous/selsta)
9faf3d1 Add erciccione's seed node (erciccione/selsta)
2020-05-06 00:23:59 -05:00
luigi1111
1f505a5eac
Merge pull request #6468
a813c46 cryptonote_core: skip dns checkpoints on startup if not enforced (xiphon)
2020-05-06 00:22:20 -05:00
luigi1111
6d1f3c9acd
Merge pull request #6467
8b655de simplewallet: report timestamp based expected unlock time on balance (moneromooo-monero)
2020-05-05 23:40:44 -05:00
luigi1111
b4023dcfc5
Merge pull request #6441
613071f use memwipe on secret k/alpha values (moneromooo-monero)
2020-05-05 23:39:32 -05:00
xiphon
42e14840fb wallet2: fix keys file deserialization exception handling 2020-05-05 16:34:50 +00:00
Lee Clagett
e5214a2ca2 Adding ZMQ/Pub support for txpool_add and chain_main events 2020-05-04 02:06:35 +00:00
luigi1111
8185054db7
Merge pull request #6451
4ed60b6 Bulletproofs: verification speedup (SarangNoether)
2020-05-02 15:14:41 -05:00
luigi1111
ec90f9a54b
Merge pull request #6453
d2d3a81 bootstrap_daemon: fix missing virtual destructor and lambda capture (clang warning) (xiphon)
2020-05-01 15:47:47 -05:00
luigi1111
ac9f7c9bec
Merge pull request #6449
27d551d simplewallet: add sweep_account command (moneromooo-monero)
2020-05-01 15:36:19 -05:00
luigi1111
c9b800a787
Merge pull request #6446
e509ede trezor: adapt to new passphrase mechanism (ph4r05)
2020-05-01 15:32:52 -05:00
luigi1111
f020b24b02
Merge pull request #6444
b367630 simplewallet : missing function block separator (sumogr)
2020-05-01 15:24:33 -05:00
luigi1111
6e7b883212
Merge pull request #6443
145be6d p2p: startup speedup, init seed nodes on first 'connect_to_seed()' (xiphon)
2020-05-01 15:23:05 -05:00
luigi1111
6b7e88e16c
Merge pull request #6440
7c4a400 simplewallet: fix strings (show_transfers & export_transfers) (sumogr)
2020-05-01 15:21:57 -05:00
luigi1111
443f5c6bda
Merge pull request #6436
688a3e8 Add timelock verification on device (cslashm)
2020-05-01 15:20:05 -05:00
luigi1111
3e21e591b8
Merge pull request #6350
da99157 Use byte_slice for sending zmq messages - removes data copy within zmq (vtnerd)
2020-05-01 15:13:58 -05:00
Sumo Gr
dd807b8410 txpool.cpp: rename var to fix for old g++ version (xenial default) 2020-04-29 10:03:51 +00:00
Lee Clagett
feee455c9f Fixes for ZMQ JSON-RPC endpoint names for raw tx 2020-04-29 01:07:27 -04:00
moneromooo-monero
7a8c1eece9
wallet2: fix subaddress expansion when receiving monero 2020-04-27 16:48:19 +00:00
Dusan Klinec
e509ede2aa
trezor: adapt to new passphrase mechanism
- choice where to enter passphrase is now made on the host
- use wipeable string in the comm stack
- wipe passphrase memory
- protocol optimizations, prepare for new firmware version
- minor fixes and improvements
- tests fixes, HF12 support
2020-04-27 18:17:56 +02:00
moneromooo-monero
e7d01056f4
message_store: don't print an error when there is no mms file
It confuses people
2020-04-27 15:44:29 +00:00
xiphon
119f706921 rpc: fix 'use_bootstrap_daemon_if_necessary' return value 2020-04-27 10:32:33 +00:00
xiphon
4f489fa6a2 wallet2: check_connection return false on get_version status != OK 2020-04-26 13:08:17 +00:00
Lee Clagett
ee58362b1f Used legacy category to match insert_key_images behavior 2020-04-24 20:19:37 -04:00
moneromooo-monero
2efbd5f0cc
cryptonote: fix reuse of non default tx data when relaying
An automatic tx variable is initialized properly on the first
run through the loop, but not the second. Moving the variable
inside the loop ensures the ctor is called again to init it.
2020-04-22 16:50:20 +00:00
Gingeropolous
c6a1294b5e
add another seed node
node is funded by random people and managed by me. currently functioning as public node at uwillrunanodesoon.moneroworld.com
2020-04-22 15:43:22 +02:00
moneromooo-monero
8b655de8ed
simplewallet: report timestamp based expected unlock time on balance 2020-04-22 13:34:58 +00:00
erciccione
9faf3d1a72
Add erciccione's seed node 2020-04-22 10:24:40 +02:00
xiphon
145be6dbdb p2p: startup speedup, init seed nodes on first 'connect_to_seed()' 2020-04-21 23:40:04 +00:00
luigi1111
378cdeaeae
Merge pull request #6470
79a1653 p2p: add seed node. (guywillett)
2020-04-21 09:14:38 -05:00
luigi1111
c846c8650e
Merge pull request #6445
5715460 Always reject duplicate key-images from second txid (vtnerd)
babf25d Allow unrestricted rpc calls to get full txpool info (vtnerd)
2020-04-21 09:03:37 -05:00
luigi1111
cc91c0221d
Merge pull request #6415
09abca7 wallet_api: checkUpdate - optional version and buildtag params (xiphon)
2020-04-21 08:52:57 -05:00
luigi1111
cb8f4280bb
Merge pull request #6408
5ef7138 daemon: fix print_net_stats RPC calls (moneromooo-monero)
2020-04-21 08:46:39 -05:00
guy
79a1653a07 p2p: add seed node. 2020-04-21 15:35:30 +02:00
luigi1111
2d729fbdf7
Merge pull request #6332
87d7558 Allow wallet2.h to run in WebAssembly (woodser)
2020-04-21 08:26:54 -05:00
luigi1111
9c660e159e
Merge pull request #6278
387fd66 Daemon: Print estimates for time until fully synced (rbrunner7)
2020-04-21 08:19:02 -05:00
xiphon
a813c46a1b cryptonote_core: skip dns checkpoints on startup if not enforced 2020-04-20 18:56:22 +00:00
xiphon
d2d3a81d0e bootstrap_daemon: fix missing virtual destructor and lambda capture (clang warning) 2020-04-15 21:22:55 +00:00
woodser
87d75584e8 Allow wallet2.h to run in WebAssembly
- Add abstract_http_client.h which http_client.h extends.
- Replace simple_http_client with abstract_http_client in wallet2,
message_store, message_transporter, and node_rpc_proxy.
- Import and export wallet data in wallet2.
- Use #if defined __EMSCRIPTEN__ directives to skip incompatible code.
2020-04-15 13:22:46 -04:00
moneromooo-monero
613071f4fa
use memwipe on secret k/alpha values
Reported by UkoeHB_ and sarang
2020-04-15 01:16:31 +00:00
Sarang Noether
4ed60b626a Bulletproofs: verification speedup 2020-04-14 20:31:30 -04:00
moneromooo-monero
27d551d12f
simplewallet: add sweep_account command
Expects an account number, then the usual sweep_all options

Useful to move monero that was accidentally sent to a subaddress
with a very large account index.
2020-04-14 15:06:46 +00:00
Lee Clagett
c26c93019a Add byte_stream for zero-copy serialization, and add support in ZMQ-JSON. 2020-04-11 04:12:11 +00:00
luigi1111
7c74e1919e
Merge pull request #6405
8d23047 p2p: add another seed node (moneromooo-monero)
2020-04-10 16:13:04 -05:00
luigi1111
228af683a7
Merge pull request #6403
5de2295 Correct key image check in tx_pool (vtnerd)
2020-04-10 16:10:33 -05:00
luigi1111
bce050ee78
Merge pull request #6394
69b5992 simplewallet: new 'address one-off <major> <minor>' command (moneromooo-monero)
2020-04-10 16:06:10 -05:00
luigi1111
7954f8cb18
Merge pull request #6358
8958b4e blockchain_db: faster fetching of consecutive txes (moneromooo-monero)
2020-04-10 16:01:37 -05:00
luigi1111
53800b3b63
Merge pull request #6341
927fd47 simplewallet: fix smart mining not starting after first setup (moneromooo-monero)
2020-04-10 15:59:14 -05:00
Sumo Gr
b367630ee8
simplewallet : missing function block separator 2020-04-10 21:27:41 +03:00
sumogr
7c4a4003a3 simplewallet: fix strings (show_transfers & export_transfers) 2020-04-08 19:17:58 +03:00
cslashm
688a3e87e7 Add timelock verification on device 2020-04-08 11:12:32 +02:00
moneromooo-monero
69b5992296
simplewallet: new "address one-off <major> <minor>" command 2020-04-07 16:25:01 +00:00
luigi1111
bbceb31044
Merge pull request #6395
ad13a4b Fixing static_asserts in ZMQ JSON (vtnerd)
2020-04-04 13:17:54 -05:00
luigi1111
d102a72027
Merge pull request #6384
ec01077 db_lmdb: fix race crash using a stale cursor (moneromooo-monero)
2020-04-04 13:14:19 -05:00
luigi1111
d1f3d3376d
Merge pull request #6381
e719760 Fix receive order leakage with tx fluffing (vtnerd)
2020-04-04 13:12:31 -05:00
luigi1111
975825a1fd
Merge pull request #6375
ebf3c10 Added logging for dropped local txes with no i2p/tor connections (vtnerd)
2020-04-04 13:11:30 -05:00
luigi1111
97af9649c9
Merge pull request #6372
7b9017f p2p: plug tor to clearnet association vector (Aaron Hook)
2020-04-04 13:09:55 -05:00
luigi1111
59ab769210
Merge pull request #6364
6e1cb5a device: Ledger - fix wide char hidapi error string conversion (xiphon)
2020-04-04 13:02:18 -05:00
luigi1111
5757d99208
Merge pull request #6361
68a6507 Fixed bug in ZMQ JSON-RPC method field (vtnerd)
2020-04-04 13:01:15 -05:00
luigi1111
0150a480fd
Merge pull request #6357
42a7a4d daemon: auto public nodes - cache and prioritize most stable nodes (xiphon)
2020-04-04 12:59:23 -05:00
luigi1111
6a6eedd842
Merge pull request #6353
6810150 daemon: if no banned IPs print something (sumogr)
2020-04-04 12:56:36 -05:00
luigi1111
cfc0f4a7fa
Merge pull request #6351
81c5943 Remove temporary std::string creation in some hex->bin calls (vtnerd)
5fcc23a Move hex->bin conversion to monero copyright files and with less includes (vtnerd)
3387f0e Reduce template bloat in hex->bin for ZMQ json (vtnerd)
2020-04-04 12:55:02 -05:00
luigi1111
44547006bf
Merge pull request #6347
fcb06f7 cryptonote_core: skip block notify on blockchain switching rollback (xiphon)
2020-04-04 12:52:46 -05:00
luigi1111
ad5200e440
Merge pull request #6342
82da832 rpc: Add check for too old timestamps in payment signatures. (glv2)
2020-04-04 12:49:02 -05:00
luigi1111
c4f75fe898
Merge pull request #6339
c61abf8 remove empty statements (shopglobal)
2020-04-04 12:47:31 -05:00
luigi1111
081d49c59f
Merge pull request #6338
80d5320 Hash domain separation (SarangNoether)
2020-04-04 12:44:45 -05:00
luigi1111
6011064693
Merge pull request #6334
cc18926 wallet2_api: wallet recovery - seed offset passphrase support (xiphon)
2020-04-04 12:41:32 -05:00
luigi1111
0bb7191fd6
Merge pull request #6328
9bde70e core: mention time being off in hash rate changes message (moneromooo-monero)
2020-04-04 12:40:18 -05:00
luigi1111
85efaeb7bf
Merge pull request #6322
29b7cd1 device_ledger: include status code name in error message (xiphon)
2020-04-04 12:39:21 -05:00
luigi1111
ab802b4b80
Merge pull request #6321
1a6e7bd wallet2: mention --daemon-ssl-allow-any-cert in --proxy error msg (xiphon)
2020-04-04 12:37:26 -05:00
luigi1111
4398facb2e
Merge pull request #6286
6d6af70 cryptonote_basic: drop unused verification_context::m_not_rct field (xiphon)
2020-04-04 12:33:32 -05:00
Lee Clagett
da99157462 Use byte_slice for sending zmq messages - removes data copy within zmq 2020-04-03 01:56:17 +00:00
xiphon
09abca76ae wallet_api: checkUpdate - optional version and buildtag params 2020-04-02 00:31:43 +00:00
Sarang Noether
80d5320fff Hash domain separation 2020-04-01 08:31:00 -04:00
xiphon
6d6af701ec cryptonote_basic: drop unused verification_context::m_not_rct field 2020-03-31 21:58:25 +00:00
moneromooo-monero
21fe6a289b
p2p: fix frequent weak_ptr exception on connection
When a handshake fails, it can fail due to timeout or destroyed
connection, in which case the connection will be, or already is,
closed, and we don't want to do it twice.
Additionally, when closing a connection directly from the top
level code, ensure the connection is gone from the m_connects
list so it won't be used again.

AFAICT this is now clean in netstat, /proc/PID/fd and print_cn.

This fixes a noisy (but harmless) exception.
2020-03-31 20:29:41 +00:00
luigi1111
6c7d928f19
Merge pull request #6336
760ecf2 console_handler: do not let exception past the dor (moneromooo-monero)
09c8111 threadpool: lock mutex in create (moneromooo-monero)
e377977 tx_pool: catch theoretical error in get_block_reward (moneromooo-monero)
2020-03-31 15:14:12 -05:00
luigi1111
94f44d4ee3
Merge pull request #6325
3627e53 rpc: fix print_pool_sh not finding local txes (moneromooo-monero)
2020-03-31 15:13:51 -05:00
luigi1111
f9de65b546
Merge pull request #6304
2e9d1e6 wallet2: fix store-tx-info loading (moneromooo-monero)
2020-03-31 15:13:19 -05:00
luigi1111
d0065f3063
Merge pull request #6302
dab604e wallet2_api: implement estimateTransactionFee (xiphon)
2020-03-31 15:12:48 -05:00
luigi1111
8a829e2cc4
Merge pull request #6301
9989cb0 simplewallet: warn about correlations if print-ring-members is not set (moneromooo-monero)
2020-03-31 13:37:19 -05:00
luigi1111
0253f86fde
Merge pull request #6298
fe92fa1 [randomx] Add missing randomx_vm_set_cache() (cohcho)
2020-03-31 13:36:21 -05:00
luigi1111
ccc3726d86
Merge pull request #6260
320bc84 rpc: add --rpc-payment-allow-free-loopback (moneromooo-monero)
2020-03-31 13:35:16 -05:00
luigi1111
096e2135dd
Merge pull request #6214
054b4c7 protocol: request txpool contents when synced (moneromooo-monero)
2020-03-31 13:32:55 -05:00
Lee Clagett
571546067f Always reject duplicate key-images from second txid 2020-03-30 17:52:42 +00:00
Lee Clagett
babf25d2ec Allow unrestricted rpc calls to get full txpool info 2020-03-30 17:52:42 +00:00
moneromooo-monero
5ef7138d86
daemon: fix print_net_stats RPC calls 2020-03-29 13:45:58 +00:00
moneromooo-monero
9989cb087e
simplewallet: warn about correlations if print-ring-members is not set
The warning about spending more than one output with similar creation
time was skipped if print-ring-members was not set, and it defaults to
false, which means most people probably aren't getting this warning if
they spend correlated outputs.

Reported by SeventhAlpaca.
2020-03-28 11:46:06 +00:00
moneromooo-monero
8d230473ef
p2p: add another seed node
Node from syksy, administered by mooo
2020-03-27 22:51:44 +00:00
Alexander Blair
72262b348a
Merge pull request #6299
9c1f970b wallet2: remember daemon address overrides when loading a new wallet (moneromooo-monero)
2020-03-27 12:33:15 -07:00
Alexander Blair
5780594202
Merge pull request #6296
50e59cfa wallet2: reject zero keys in json input (moneromooo-monero)
2020-03-27 12:31:59 -07:00
Alexander Blair
3ed5e7ce9f
Merge pull request #6295
bcae95a2 p2p: do not add recently failed addresses to the peerlist (moneromooo-monero)
2020-03-27 12:30:06 -07:00
Alexander Blair
8cb005b39c
Merge pull request #6289
ffe7165e wallet: reroll fake outs selection on local tx_sanity_check failure (xiphon)
2020-03-27 12:28:29 -07:00
Alexander Blair
5ba6eef272
Merge pull request #6288
0349347e ringdb: use a different iv for key and data in rings table (moneromooo-monero)
7b882087 simplewallet: reword mixin in user message in terms of ring size (moneromooo-monero)
f507a43a wallet2: do not remove known rings when a tx fails (moneromooo-monero)
2020-03-27 12:23:59 -07:00
Alexander Blair
7d4a93fab3
Merge pull request #6285
d0641b42 net: fix incorrect less operator for top/i2p addresses (Aaron Hook)
2020-03-27 12:23:00 -07:00
Alexander Blair
aa982a51da
Merge pull request #6284
02224e71 Fix check_fee() discrepancy. (UkoeHB)
2020-03-27 12:21:26 -07:00
Alexander Blair
e160e0b517
Merge pull request #6283
a84131ce p2p: fix off by one adding fallback peers (moneromooo-monero)
2020-03-27 12:19:55 -07:00
Alexander Blair
a762084b15
Merge pull request #6282
66472074 Daemon: Guard against reporting "synchronized" too early (rbrunner7)
2020-03-27 12:19:07 -07:00
Alexander Blair
c038cc8b79
Merge pull request #6280
b818522d p2p: fix spurious warning when we're connected to at last one seed (moneromooo-monero)
2020-03-27 12:17:54 -07:00
Alexander Blair
3baa68bbab
Merge pull request #6279
36bdf402 p2p: fix adding wrong indices to the filtered peer list (moneromooo-monero)
2020-03-27 12:17:07 -07:00
Alexander Blair
a22cf5de1b
Merge pull request #6275
aa93e388 p2p: remove old debug commands (Aaron Hook)
2020-03-27 12:16:30 -07:00
Alexander Blair
338824add3
Merge pull request #6227
f8d76f39 core: move the LockedTXN class out of txpool so it may be reused (moneromooo-monero)
2020-03-27 12:15:37 -07:00
Lee Clagett
02d887c2e5 Adding Dandelion++ support to public networks:
- New flag in NOTIFY_NEW_TRANSACTION to indicate stem mode
  - Stem loops detected in tx_pool.cpp
  - Embargo timeout for a blackhole attack during stem phase
2020-03-26 15:01:30 +00:00
moneromooo-monero
054b4c7f41
protocol: request txpool contents when synced
A newly synced Alice sends a (typically quite small) list of
txids in the local tpxool to a random peer Bob, who then uses
the existing tx relay system to send Alice any tx in his txpool
which is not in the list Alice sent
2020-03-22 16:03:31 +00:00
rbrunner7
387fd668d1 Daemon: Print estimates for time until fully synced 2020-03-21 07:32:55 +01:00
Aaron Hook
aa93e38862 p2p: remove old debug commands 2020-03-20 22:09:44 -07:00
moneromooo-monero
bcae95a22e
p2p: do not add recently failed addresses to the peerlist 2020-03-20 15:45:26 +00:00
Lee Clagett
ad13a4b2ac Fixing static_asserts in ZMQ JSON 2020-03-19 19:49:51 -04:00
Lee Clagett
5de2295f3c Correct key image check in tx_pool 2020-03-14 19:17:15 +00:00
xiphon
c075aa7a6c workaround for GetObject windows.h macro and rapidjson conflict 2020-03-14 00:46:47 +00:00
moneromooo-monero
f8d76f395b
core: move the LockedTXN class out of txpool so it may be reused
for example, in the RPC server
2020-03-12 11:30:05 +00:00
moneromooo-monero
320bc845b3
rpc: add --rpc-payment-allow-free-loopback
This allows RPC coming from the loopback interface to not have
to pay for service. This makes it possible to run an externally
accessible RPC server for payment while also having a local RPC
server that can be run unrestricted and payment free.
2020-03-12 11:27:34 +00:00
Alexander Blair
820ab9fdea
Merge pull request #6273
0f78b06e Various improvements to the ZMQ JSON-RPC handling: (Lee Clagett)
2020-03-12 01:13:49 -07:00
Alexander Blair
d500bbe68f
Merge pull request #6268
a6c24412 wallet: fix exceptions getting the hash of a pruned tx (moneromooo-monero)
2020-03-12 01:02:31 -07:00
Alexander Blair
092a57df99
Merge pull request #6243
4771a7ae p2p: remove obsolete local time in handshake (moneromooo-monero)
2fbbc4a2 p2p: avoid sending the same peer list over and over (moneromooo-monero)
3004835b epee: remove backward compatible endian specific address serialization (moneromooo-monero)
39a343d7 p2p: remove backward compatible peer list (moneromooo-monero)
60631802 p2p: simplify last_seen serialization now we have optional stores (moneromooo-monero)
9467b2e4 cryptonote_protocol: omit top 64 bits of difficulty when 0 (moneromooo-monero)
b595583f serialization: do not write optional fields with default value (moneromooo-monero)
5f98b46d p2p: remove obsolete local time from TIMED_SYNC (moneromooo-monero)
2020-03-12 00:32:46 -07:00
moneromooo-monero
ec01077720
db_lmdb: fix race crash using a stale cursor
If a db resize happened, the txpool meta cursor might be stale,
and was not being renewed when necessary.
It would cause this SEGSEGV:

in mdb_cursor_set ()
in mdb_cursor_get ()
in cryptonote::BlockchainLMDB::get_txpool_tx_blob(crypto::hash const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, cryptonote::relay_category) const ()
in cryptonote::tx_memory_pool::get_transaction(crypto::hash const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, cryptonote::relay_category) const ()
in cryptonote::t_cryptonote_protocol_handler<cryptonote::core>::handle_notify_new_fluffy_block(int, epee::misc_utils::struct_init<cryptonote::NOTIFY_NEW_FLUFFY_BLOCK::request_t>&, cryptonote::cryptonote_connection_context&) ()
2020-03-12 00:57:32 +00:00
Lee Clagett
e719760253 Fix receive order leakage with tx fluffing 2020-03-10 22:30:07 -04:00
Lee Clagett
3387f0e327 Reduce template bloat in hex->bin for ZMQ json 2020-03-09 17:55:55 +00:00
Lee Clagett
5fcc23ae0a Move hex->bin conversion to monero copyright files and with less includes 2020-03-09 05:23:59 +00:00
Aaron Hook
7b9017f671
p2p: plug tor to clearnet association vector
During the handshake for an incoming connection, the peer id is checked against the local node's peer id only for the specific zone of the incoming peer, in order to avoid linking public addresses to tor addresses:
5d7ae2d279/src/p2p/net_node.inl (L2343)

However, on handshakes for outgoing connections, all zones are checked:
5d7ae2d279/src/p2p/net_node.inl (L1064)

If an attacker wanted to link a specific tor node to a public node, they could potentially connect to as many public nodes as possible, get themselves added to the peer whitelist, maybe stuff some more attacker-owned addresses into the greylist, then disconnect, and for any future incoming connections, respond with the tor node's id in an attempt to link the public/tor addresses.
2020-03-07 18:12:59 +00:00
moneromooo-monero
9c1f970b82
wallet2: remember daemon address overrides when loading a new wallet 2020-03-07 18:09:31 +00:00
Lee Clagett
ebf3c10fcb Added logging for dropped local txes with no i2p/tor connections 2020-03-07 00:03:17 +00:00
Lee Clagett
0f78b06e8c Various improvements to the ZMQ JSON-RPC handling:
- Finding handling function in ZMQ JSON-RPC now uses binary search
  - Temporary `std::vector`s in JSON output now use `epee::span` to
    prevent allocations.
  - Binary -> hex in JSON output no longer allocates temporary buffer
  - C++ structs -> JSON skips intermediate DOM creation, and instead
    write directly to an output stream.
2020-03-05 14:20:56 +00:00
xiphon
6e1cb5a4d0 device: Ledger - fix wide char hidapi error string conversion 2020-03-01 11:42:48 +00:00
Alexander Blair
4764d18eeb
Merge pull request #6248
21c3d42e p2p: drop the peerlist dump to TRACE (moneromooo-monero)
2020-02-28 20:21:27 -08:00
Alexander Blair
da617ac1b0
Merge pull request #6238
f717d593 wallet2: guard against race with multiple decrypt_keys users (moneromooo-monero)
2020-02-28 20:21:06 -08:00
Alexander Blair
ea6396ea66
Merge pull request #6222
a6a2ad6c simplewallet: set manual refresh mode in rescan_bc (moneromooo-monero)
2020-02-28 19:59:43 -08:00
Alexander Blair
8c2939a7cb
Merge pull request #6058
88b82bef simplewallet: point to "set help" in the lock screen message (moneromooo-monero)
f19c9f23 util: allow newlines in string to be split (moneromooo-monero)
2020-02-28 19:54:37 -08:00
Alexander Blair
f3fddd935f
Merge pull request #6259
69336931 rpc: fill miner_tx_hash again (moneromooo-monero)
2020-02-28 19:51:15 -08:00
Alexander Blair
9ea7df3b31
Merge pull request #6242
716012ca rpc: drop the obsolete and wrong "unpruned size" log (moneromooo-monero)
2020-02-28 19:50:02 -08:00
Alexander Blair
5bd496e8ef
Merge pull request #6241
ae84ec90 wallet-cli/rpc: allow sweep_all to use outputs in all subaddresses within an account (stoffu)
2020-02-28 19:49:41 -08:00
Alexander Blair
19ce033299
Merge pull request #6236
bc6d8aa3 Corrected message typo (palomato)
2020-02-28 19:49:07 -08:00
Alexander Blair
a6cf4b09e7
Merge pull request #6235
5cbb17b9 wallet2: fix hang in wallet refresh (moneromooo-monero)
2020-02-28 19:48:41 -08:00
Alexander Blair
4371ac4265
Merge pull request #6225
987c3139 print_coinbase_tx_sum now supports 128 bits sums (moneromooo-monero)
2020-02-28 19:48:11 -08:00
Alexander Blair
2deb02f81d
Merge pull request #6224
d93e1dff simplewallet: warn on refresh if refresh-from-block-height seems off (moneromooo-monero)
2020-02-28 19:46:33 -08:00
Alexander Blair
6742c4acb7
Merge pull request #6223
c3613031 Silence miner debugmsg spam (Howard Chu)
2020-02-28 19:45:55 -08:00
Alexander Blair
afff9e7041
Merge pull request #6219
72ca7e3b Fix time comparison math (Jason Rhinelander)
2020-02-28 19:43:44 -08:00
Alexander Blair
e22655a187
Merge pull request #6215
a2578892 --disable-ban-rpc option to prevent RPC users from banning (naughtyfox)
2020-02-28 19:43:06 -08:00
Alexander Blair
5e492c4cbc
Merge pull request #6213
94266eeb simplewallet: fix output age display with duplicate heights (moneromooo-monero)
f1d379d2 simplewallet: fix "outputs in same tx" detector (moneromooo-monero)
2020-02-28 19:36:41 -08:00
Alexander Blair
4da37daf67
Merge pull request #6211
5985c5af rpc: add bad-blocks to flush_cache RPC (moneromooo-monero)
2020-02-28 19:36:16 -08:00
Alexander Blair
8606b1a14a
Merge pull request #6203
ef95a76d remove unused variable 'ptx' from on_describe_transfer() (woodser)
2020-02-28 19:34:41 -08:00
xiphon
42a7a4dd32 daemon: auto public nodes - cache and prioritize most stable nodes 2020-02-28 08:06:43 +00:00
moneromooo-monero
8958b4e7aa
blockchain_db: faster fetching of consecutive txes
Useful for wallet refresh or node sync
2020-02-27 15:05:34 +00:00
sumogr
6810150d46 daemon: if no banned IPs print something 2020-02-24 20:52:55 +00:00
luigi1111
39e1890276
Merge pull request #6198
5f2a32c daemon: run with -rpc-payment-address and --rpc-restricted-bind-port (moneromooo-monero)
2020-02-19 22:25:44 -05:00
luigi1111
04187e5968
Merge pull request #6197
f812783 simplewallet: fix encrypted payment id note triggering on dummy ones (moneromooo-monero)
2020-02-19 22:24:44 -05:00
luigi1111
2de1137e60
Merge pull request #6194
316ab7b wallet2: better error when restoring a wallet with the wrong keys (moneromooo-monero)
2020-02-19 22:23:46 -05:00
luigi1111
22a0367398
Merge pull request #6190
096a9db Wallet: Distingush amounts for a single subaddress (tmoravec)
2020-02-19 22:22:36 -05:00
xiphon
fcb06f7a82 cryptonote_core: skip block notify on blockchain switching rollback 2020-02-19 16:19:29 +00:00
Interchained
c61abf87c0 remove empty statements
Cleaning up a little around the code base.
2020-02-17 11:55:15 -05:00
Guillaume Le Vaillant
82da832368 rpc: Add check for too old timestamps in payment signatures. 2020-02-17 15:10:19 +01:00
moneromooo-monero
927fd47934
simplewallet: fix smart mining not starting after first setup
Also avoid rewriting the wallet if the setting is already was we need
2020-02-17 13:16:09 +00:00
moneromooo-monero
e3779775d7
tx_pool: catch theoretical error in get_block_reward
Coverity 196626
2020-02-12 21:05:28 +00:00
moneromooo-monero
09c8111c53
threadpool: lock mutex in create
In some contrived case, it might theoretically be the case that
destroy is called from another thread, which would modify the
threads array from two threads.

Coverity 208372
2020-02-12 21:05:28 +00:00
xiphon
cc18926eba wallet2_api: wallet recovery - seed offset passphrase support 2020-02-11 23:36:50 +00:00
moneromooo-monero
9bde70e567
core: mention time being off in hash rate changes message 2020-02-10 16:56:10 +00:00
moneromooo-monero
3627e53aab
rpc: fix print_pool_sh not finding local txes 2020-02-08 12:56:00 +00:00
xiphon
29b7cd1351 device_ledger: include status code name in error message 2020-02-08 01:46:39 +00:00
xiphon
1a6e7bd40f wallet2: mention --daemon-ssl-allow-any-cert in --proxy error msg 2020-02-07 10:02:27 +00:00
moneromooo-monero
c2095fc27b
miner: use verification mode for low diff one block nonce searches
This avoids lengthy init times when testing
2020-02-06 14:27:10 +00:00
Alexander Blair
bd4acbf44c
Merge pull request #6183
3813a992 download: catch exceptions checking for size (moneromooo-monero)
2020-02-06 00:34:58 -08:00
Alexander Blair
af27276452
Merge pull request #6178
7ac7d5d3 updates: fix source code URL on _WIN32 (selsta)
2020-02-06 00:33:49 -08:00
Alexander Blair
e552ba14b2
Merge pull request #6127
67b4a19e simplewallet: noob-friendly help menu (wowario)
2020-02-06 00:33:31 -08:00
Alexander Blair
995f34b538
Merge pull request #6103
4b384003 wallet2: don't try to lock an empty filename (moneromooo-monero)
2020-02-06 00:33:18 -08:00
Alexander Blair
756f06cd83
Merge pull request #6102
b328de6b wallet_rpc_server: add tx weight in transfer commands responses (moneromooo-monero)
2020-02-06 00:32:47 -08:00
Alexander Blair
8136bf37e2
Merge pull request #6096
a633f85d daemon: allow printing N blocks from the end of the chain (moneromooo-monero)
2020-02-06 00:31:50 -08:00
Alexander Blair
b8e5c769c7
Merge pull request #6095
7ba31191 daemon: add +meta print_tx parameter (moneromooo-monero)
2020-02-06 00:31:17 -08:00
Alexander Blair
78d4d5ab79
Merge pull request #6094
236d2a88 blockchain_stats: make it work on pruned blockchains (moneromooo-monero)
2020-02-06 00:30:48 -08:00
Alexander Blair
2532567091
Merge pull request #6078
b9fc2066 Add a --keep-fakechain option to keep fakechain databases (JamesWrigley)
2020-02-06 00:30:15 -08:00
Alexander Blair
cd1610bc37
Merge pull request #6076
22d30866 simplewallet: add missing inactivity-lock-timeout to set help blurb (moneromooo-monero)
9f57f0df simplewallet: do not mention inactivity if a lock was manual (moneromooo-monero)
2020-02-06 00:29:52 -08:00
Alexander Blair
3b224bb99d
Merge pull request #6069
d64e5aa7 wallet: allow message sign/verify for subaddresses (moneromooo-monero)
2020-02-06 00:29:32 -08:00
Alexander Blair
34d7ea62f6
Merge pull request #6053
deb350b7 always print peer IDs in the same format (moneromooo-monero)
2020-02-06 00:28:47 -08:00
Alexander Blair
9a08ac98c0
Merge pull request #6050
65301c40 core: point out when we hit the block rate visibility limit (moneromooo-monero)
2020-02-06 00:28:18 -08:00
Alexander Blair
9658f5d7fc
Merge pull request #6040
2f8f3a94 rpc: base flush_cache request/response on the new base structs (moneromooo-monero)
2020-02-06 00:26:34 -08:00
Alexander Blair
25c1bd4714
Merge pull request #6035
b90c4bc3 rpc: error out from get_info if the proxied call errors out (moneromooo-monero)
fa16df99 make_test_signature: exit nicely on top level exception (moneromooo-monero)
054b2621 node_rpc_proxy: init some new rpc payment fields in invalidate (moneromooo-monero)
d0faae2a rpc: init a few missing client_info members (moneromooo-monero)
d56a483a rpc: do not propagate exceptions out of a dtor (moneromooo-monero)
3c849188 rpc: always set the update field in update on sucess (moneromooo-monero)
2020-02-06 00:26:13 -08:00
luigi1111
d7aeb5a9f8
Merge pull request #6233
8a27645 blockchain: fix flushing txes from the txpool (moneromooo-monero)
2020-02-04 14:38:35 -05:00
moneromooo-monero
b818522d29
p2p: fix spurious warning when we're connected to at last one seed 2020-01-31 15:11:22 +00:00
moneromooo-monero
4771a7aec1
p2p: remove obsolete local time in handshake
Also removes a potential fingerprinting vector
2020-01-29 14:39:58 +00:00
moneromooo-monero
2fbbc4a2d3
p2p: avoid sending the same peer list over and over
Nodes remember which connections have been sent which peer addresses
and won't send it again. This causes more addresses to be sent as
the connection lifetime grows, since there is no duplication anymore,
which increases the diffusion speed of peer addresses. The whole
white list is now considered for sending, not just the most recent
seen peers. This further hardens against topology discovery, though
it will more readily send peers that have been last seen earlier
than it otherwise would. While this does save a fair amount of net
bandwidth, it makes heavy use of std::set lookups, which does bring
network_address::less up the profile, though not too aggressively.
2020-01-29 14:39:56 +00:00
moneromooo-monero
39a343d76e
p2p: remove backward compatible peer list 2020-01-26 18:37:33 +00:00
moneromooo-monero
606318026e
p2p: simplify last_seen serialization now we have optional stores 2020-01-26 18:37:32 +00:00
moneromooo-monero
9467b2e44c
cryptonote_protocol: omit top 64 bits of difficulty when 0 2020-01-26 18:37:31 +00:00
moneromooo-monero
5f98b46d58
p2p: remove obsolete local time from TIMED_SYNC 2020-01-26 18:37:26 +00:00
Alexander Blair
8eedc8a390
Merge pull request #6140
08635a08 blockchain: speedup fetching pruned contiguous tx blobs (moneromooo-monero)
2020-01-25 16:55:18 -08:00
Alexander Blair
40f82b35ae
Merge pull request #6170
56a4469e network: log traffic and add a simple traffic analysis script (moneromooo-monero)
2020-01-25 16:54:24 -08:00
moneromooo-monero
56a4469ef3
network: log traffic and add a simple traffic analysis script 2020-01-26 00:33:41 +00:00
moneromooo-monero
dd8c6b1703
wallet: do not split integrated addresses in address book api 2020-01-26 00:03:53 +00:00
xiphon
dab604e010 wallet2_api: implement estimateTransactionFee 2020-01-25 05:34:51 +00:00
Alexander Blair
59e7d5686b
Merge pull request #6093
2e58eb5c lmdb: Remove meaningless const qualifier on function type (Nathan Dorfman)
2020-01-24 20:24:44 -08:00
Alexander Blair
e8f94e7f1d
Merge pull request #6173
8231c7cd rpc: fix bootstrap RPC payment RPC being made in raw JSON, not JSON RPC (moneromooo-monero)
81c26589 rpc: don't auto fail RPC needing payment in bootstrap mode (moneromooo-monero)
2020-01-24 20:19:41 -08:00
Alexander Blair
93d49c1a54
Merge pull request #6172
d7cf8727 rpc: add received_timestamp for pool txes in gettransactions (moneromooo-monero)
2020-01-24 20:17:39 -08:00
Alexander Blair
e51ce477db
Merge pull request #6157
402dd207 db_lmdb: guard against non NUL terminated keys (moneromooo-monero)
2020-01-24 20:07:37 -08:00
Alexander Blair
159c78758a
Merge pull request #6154
3b419333 wallet: don't issue node rpc proxy requests in '--offline' mode (xiphon)
2020-01-24 20:07:01 -08:00
Alexander Blair
f20a962774
Merge pull request #6153
24adee4a p2p: don't request flags after closing connection (moneromooo-monero)
2020-01-24 20:06:46 -08:00
Alexander Blair
d1b08c00cf
Merge pull request #6146
70c9cd3c Change to Tx diffusion (Dandelion++ fluff) instead of flooding (Lee Clagett)
2020-01-24 20:06:34 -08:00
Alexander Blair
5558919e56
Merge pull request #6128
9fe8a76c perf_timer: fix pause/resume macros dereferencing too much (moneromooo-monero)
2020-01-24 20:06:12 -08:00
moneromooo-monero
2e9d1e6e1f
wallet2: fix store-tx-info loading
The backward compatibility code was always setting it to 1
in modern wallets since store_tx_keys was not present and thus
assumed to be 1 by default.

Reported by SeventhAlpaca
2020-01-24 16:34:07 +00:00
Aaron Hook
d0641b42fe net: fix incorrect less operator for top/i2p addresses 2020-01-18 19:18:56 -08:00
cohcho
fe92fa1391 [randomx] Add missing randomx_vm_set_cache() 2020-01-17 19:25:26 +00:00
Alexander Blair
beb815a81d
Merge pull request #6144
0e0351c4 wallet_rpc_server: add count parameter to create_address (Matt Smith)
2020-01-16 17:51:25 -08:00
Alexander Blair
c39ea485a0
Merge pull request #6141
b9b5c473 threadpool: use std::move when taking an element off the queue (moneromooo-monero)
2020-01-16 17:45:44 -08:00
Alexander Blair
2ce5529680
Merge pull request #6134
a7a40e28 Actually concatenate error strings. (Bert Peters)
2020-01-16 17:42:27 -08:00
Alexander Blair
f1ca98a7ef
Merge pull request #6133
b2ad757f Replace memset with memwipe. (Bert Peters)
2020-01-16 17:41:35 -08:00
Alexander Blair
e4e70b57ca
Merge pull request #6130
6dec0013 simplewallet: fix restore height warning (selsta)
2020-01-16 17:39:03 -08:00
Alexander Blair
c4abfbfbe7
Merge pull request #6124
21d4c216 blockchain: error out if the builtin hashes data size is wrong (moneromooo-monero)
2020-01-16 17:31:35 -08:00
Alexander Blair
c6f4113265
Merge pull request #6119
6f45cfa5 p2p: zero last seen timestamp when inserting a new peer (moneromooo-monero)
2020-01-16 17:29:27 -08:00
Alexander Blair
3acb22b889
Merge pull request #6115
27522aaa core_tests: reset thread pool between tests (moneromooo-monero)
2020-01-16 17:27:15 -08:00
moneromooo-monero
50e59cfada
wallet2: reject zero keys in json input
Because the user might do this for reasons unknown.
Values beyond l-1 will be reduced, so are accepted.

Reported by who-biz.
2020-01-16 19:58:21 +00:00
xiphon
ffe7165ebf wallet: reroll fake outs selection on local tx_sanity_check failure 2020-01-14 22:56:23 +00:00
Alexander Blair
e49a055e89
Merge pull request #6112
7c1d31b0 build: fix IOS, build blockchain_db and rpc, skip wallet_rpc_server (xiphon)
2020-01-11 18:10:44 -08:00
Alexander Blair
d024695772
Merge pull request #6105
0de8a0d3 wallet_rpc_server: new estimate_tx_size_and_weight RPC (moneromooo-monero)
2020-01-11 18:04:49 -08:00
Tadeas Moravec
096a9dbdf9
Wallet: Distingush amounts for a single subaddress
Adding a new `amounts` field ot the output of `get_transfers` RPC
method. This field specifies individual payments made to a single
subaddress in a single transaction, e.g., made by this command:

    transfer <addr1> <amount1> <addr1> <amount2>
2020-01-11 11:48:27 +01:00
rbrunner7
664720747f Daemon: Guard against reporting "synchronized" too early
The added condition "hshd.current_height >= target" guards against
reporting "synchronized" too early in the special situation that the
very first peer sending us data is synced to a lower height than
ourselves.
2020-01-10 15:49:49 +01:00
moneromooo-monero
0349347e6d
ringdb: use a different iv for key and data in rings table
This is technically a record encrypted in two pieces,
so the iv needs to be different.
Some backward compatibility is added to read data written
by existing code, but new data is written with the new code.
2020-01-09 17:32:21 +00:00
moneromooo-monero
7b88208722
simplewallet: reword mixin in user message in terms of ring size 2020-01-09 17:32:21 +00:00
moneromooo-monero
f507a43a23
wallet2: do not remove known rings when a tx fails
Even if it fails, the ring composition is known to a potential
adversary, and so we should reuse the same ring next time
2020-01-09 17:32:21 +00:00
UkoeHB
02224e714d Fix check_fee() discrepancy.
M100 = max{300kb, min{100block_median, m_long_term_effective_median_block_weight}}
not
M100 = max{300kb, m_long_term_effective_median_block_weight}

Fix base reward in get_dynamic_base_fee_estimate().

get_dynamic_base_fee_estimate() should match check_fee()

Fee is calculated based on block reward, and the reward penalty takes into account 0.5*max_block_weight (both before and after HF_VERSION_EFFECTIVE_SHORT_TERM_MEDIAN_IN_PENALTY).

Moved median calculation according to best practice of 'keep definitions close to where they are used'.
2020-01-09 09:11:09 -06:00
moneromooo-monero
a84131cea3
p2p: fix off by one adding fallback peers
The code would ignore the first one to be added
2020-01-07 14:40:26 +00:00
moneromooo-monero
36bdf40288
p2p: fix adding wrong indices to the filtered peer list 2020-01-03 17:56:54 +00:00
moneromooo-monero
d64e5aa719
wallet: allow message sign/verify for subaddresses 2019-12-31 08:44:36 +00:00
moneromooo-monero
a6c24412e5
wallet: fix exceptions getting the hash of a pruned tx 2019-12-30 15:14:57 +00:00
moneromooo-monero
6933693179
rpc: fill miner_tx_hash again
It was removed to save duplicated generation time, but it can
be copied from another instance instead
2019-12-20 14:16:31 +00:00
moneromooo-monero
21c3d42eb9
p2p: drop the peerlist dump to TRACE
It's spammy
2019-12-17 20:27:04 +00:00
moneromooo-monero
f717d5936c
wallet2: guard against race with multiple decrypt_keys users
If more than one thread wants to make sure of the spend secret key,
then we decrypt on the first caller and reencrypt on the last caller,
otherwise we could use an invalid secret key.
2019-12-17 01:38:29 +00:00
moneromooo-monero
716012ca3a
rpc: drop the obsolete and wrong "unpruned size" log
Since we now get pruned data in the first place, the "unpruned" data
size will in fact be the pruned data size, leading to confusion
2019-12-16 14:50:07 +00:00
stoffu
ae84ec90c8
wallet-cli/rpc: allow sweep_all to use outputs in all subaddresses within an account 2019-12-16 21:10:11 +09:00
palomato
bc6d8aa343
Corrected message typo
Message was "peer claims higher version that we think"
Requested change "peer claims higher version than we think"
2019-12-14 13:06:09 -05:00
moneromooo-monero
5cbb17b946
wallet2: fix hang in wallet refresh
If the hashes received would move the current blockchain past the
stop point, the short history would not be updated, since we do
not expect another loop, but the daemon might return earlier hashes,
causing the end index to not be enough to reach the threshold and
this require another loop, which will download the same hashes and
cause an infinite loop.
2019-12-14 16:24:04 +00:00
moneromooo-monero
8a276451b2
blockchain: fix flushing txes from the txpool 2019-12-14 02:13:39 +00:00
luigi1111
b4e1dc83d2
Merge pull request #6057
3b8dcc2 wallet2: make keys unlocker reentrant (moneromooo-monero)
2019-12-12 13:49:58 -06:00
luigi1111
e5cc6d39a9
Merge pull request #6055
886ed25 blockchain: fix comment wrongly refering to SHA-3 rather than Keccak (moneromooo-monero)
2019-12-12 13:47:04 -06:00
luigi1111
ccde60838b
Merge pull request #6054
017f816 daemon: handle printing higher hash rates (moneromooo-monero)
2019-12-12 13:45:50 -06:00
luigi1111
fb64463c4c
Merge pull request #6052
c96b7ee tx_pool: fix error message assuming incorrectly (moneromooo-monero)
2019-12-12 13:44:50 -06:00
luigi1111
e629db18f4
Merge pull request #6049
45fd72b Updated paper references (SarangNoether)
277003f Minor prover simplification (SarangNoether)
2019-12-12 13:43:57 -06:00
luigi1111
a61db51aae
Merge pull request #6027
9768e96 simplewallet: remove remaining payment id dead code (moneromooo-monero)
2019-12-12 13:38:00 -06:00
luigi1111
dad4cf121e
Merge pull request #6018
dce6f05 rpc: Only show version string if it matches expected pattern (ndorf)
3293780 daemon: Use rpc for 'version' command (ndorf)
2019-12-12 13:36:05 -06:00
moneromooo-monero
987c3139dc
print_coinbase_tx_sum now supports 128 bits sums
The tail emission will bring the total above 64 bits
2019-12-12 01:56:59 +00:00
Howard Chu
c361303184
Silence miner debugmsg spam
Don't try to allocate the dataset repeatedly if it has already failed.
2019-12-09 15:59:52 +00:00
moneromooo-monero
d93e1dffa9
simplewallet: warn on refresh if refresh-from-block-height seems off 2019-12-09 14:09:39 +00:00
moneromooo-monero
a6a2ad6cac
simplewallet: set manual refresh mode in rescan_bc
This ensures we get asked for the password if needed
2019-12-07 13:57:26 +00:00
Jason Rhinelander
72ca7e3b0f Fix time comparison math
Dividing `dt` here by 1e6 converts it to seconds, but that is clearly
wrong since `REQUEST_NEXT_SCHEDULED_SPAN_THRESHOLD_STANDBY` is measured
in microseconds.  As a result, this if statement was effectively never
used.
2019-12-05 21:02:18 -04:00
naughtyfox
a2578892c0 --disable-ban-rpc option to prevent RPC users from banning 2019-12-04 17:45:27 +03:00
moneromooo-monero
94266eeb89
simplewallet: fix output age display with duplicate heights
The highlight check was based on height, so would highlight
any output at that height, resulting in several matches if
a fake out was picked at the same height as the real spend
2019-12-03 18:50:28 +00:00
moneromooo-monero
f1d379d27d
simplewallet: fix "outputs in same tx" detector
It was comparing source txids, but txids were empty,
so all checks triggered
2019-12-03 18:50:22 +00:00
moneromooo-monero
5985c5afe8
rpc: add bad-blocks to flush_cache RPC
Flushes m_invalid_blocks in Blockchain.
2019-12-02 18:53:30 +00:00
woodser
ef95a76d0d remove unused variable 'ptx' from on_describe_transfer() 2019-12-01 13:07:26 -05:00
moneromooo-monero
5f2a32c15a
daemon: run with -rpc-payment-address and --rpc-restricted-bind-port 2019-11-29 20:07:01 +00:00
moneromooo-monero
f8127831c7
simplewallet: fix encrypted payment id note triggering on dummy ones 2019-11-29 20:02:46 +00:00
moneromooo-monero
316ab7b56e
wallet2: better error when restoring a wallet with the wrong keys 2019-11-28 18:22:29 +00:00
moneromooo-monero
b90c4bc39e
rpc: error out from get_info if the proxied call errors out
Coverity 205410
2019-11-27 19:52:39 +00:00
moneromooo-monero
054b2621b1
node_rpc_proxy: init some new rpc payment fields in invalidate
The cache time would take care of these, but it's cleaner that way

Coverity 205412
2019-11-27 19:52:37 +00:00
moneromooo-monero
d0faae2a92
rpc: init a few missing client_info members
Coverity 205414
2019-11-27 19:52:37 +00:00
moneromooo-monero
d56a483abe
rpc: do not propagate exceptions out of a dtor
Coverity 205415
2019-11-27 19:52:36 +00:00
moneromooo-monero
3c849188ab
rpc: always set the update field in update on sucess
Coverity 205416
2019-11-27 19:52:33 +00:00
moneromooo-monero
3813a992e4
download: catch exceptions checking for size
Happens on at least one windows box
2019-11-26 18:42:00 +00:00
moneromooo-monero
8231c7cd04
rpc: fix bootstrap RPC payment RPC being made in raw JSON, not JSON RPC 2019-11-25 19:28:43 +00:00
moneromooo-monero
88b82befc7
simplewallet: point to "set help" in the lock screen message 2019-11-25 13:17:21 +00:00
moneromooo-monero
f19c9f2307
util: allow newlines in string to be split 2019-11-25 13:17:18 +00:00
selsta
7ac7d5d32f
updates: fix source code URL on _WIN32 2019-11-25 00:37:54 +01:00
moneromooo-monero
81c2658989
rpc: don't auto fail RPC needing payment in bootstrap mode 2019-11-22 18:12:29 +00:00
moneromooo-monero
d7cf872767
rpc: add received_timestamp for pool txes in gettransactions 2019-11-22 15:53:40 +00:00
Matt Smith
0e0351c456 wallet_rpc_server: add count parameter to create_address 2019-11-22 12:00:01 +00:00
moneromooo-monero
402dd2078c
db_lmdb: guard against non NUL terminated keys 2019-11-19 11:12:49 +00:00
Jethro Grassie
d8fc8d8868
make d2h et al. constant-time 2019-11-19 04:21:02 -05:00
xiphon
3b41933335 wallet: don't issue node rpc proxy requests in '--offline' mode 2019-11-19 03:26:42 +00:00
moneromooo-monero
24adee4a08
p2p: don't request flags after closing connection 2019-11-19 02:03:39 +00:00
Lee Clagett
68a6507c3f Fixed bug in ZMQ JSON-RPC method field 2019-11-18 12:59:41 +00:00
Howard Chu
47d094c0c4
Fix #6147 DB corruption from child process overwrite
Don't leave stdout/stderr dangling on a fork.
2019-11-17 14:04:22 +00:00
luigi1111
df9843212a
Merge pull request #6135
09f59ec wallet: set non-empty error string on connection failure (xiphon)
2019-11-16 11:00:33 -06:00
moneromooo-monero
b9b5c473d1
threadpool: use std::move when taking an element off the queue
It has a std::function, which can have a capture context, and
the function runtime might be small
2019-11-15 13:24:34 +00:00
moneromooo-monero
08635a0875
blockchain: speedup fetching pruned contiguous tx blobs
About twice as fast, very roughly
2019-11-15 13:23:30 +00:00
xiphon
09f59eccad wallet: set non-empty error string on connection failure 2019-11-14 19:49:57 +00:00
Bert Peters
a7a40e285c Actually concatenate error strings. 2019-11-14 10:36:49 +01:00
selsta
6dec001359
simplewallet: fix restore height warning 2019-11-14 03:00:20 +01:00
Bert Peters
b2ad757f48 Replace memset with memwipe. 2019-11-13 18:00:50 +01:00
moneromooo-monero
9fe8a76c59
perf_timer: fix pause/resume macros dereferencing too much 2019-11-13 12:08:40 +00:00
wowario
67b4a19edf
simplewallet: noob-friendly help menu 2019-11-13 10:24:10 +03:00
Nathan Dorfman
dce6f055f9 rpc: Only show version string if it matches expected pattern 2019-11-12 18:19:24 -07:00
Nathan Dorfman
3293780992 daemon: Use rpc for "version" command 2019-11-12 17:57:36 -07:00
moneromooo-monero
21d4c21619
blockchain: error out if the builtin hashes data size is wrong 2019-11-12 12:43:08 +00:00
moneromooo-monero
6f45cfa5c5
p2p: zero last seen timestamp when inserting a new peer 2019-11-11 12:44:35 +00:00
moneromooo-monero
27522aaa12
core_tests: reset thread pool between tests
Avoids a DB error (leading to an assert) where a thread uses
a read txn previously created with an environment that was
since closed and reopened. While this usually works since
BlockchainLMDB renews txns if it detects the environment has
changed, this will not work if objects end up being allocated
at the same address as the previous instance, leading to stale
data usage.

Thanks hyc for the LMDB debugging.
2019-11-10 12:58:49 +00:00
xiphon
7c1d31b0a1 build: fix IOS, build blockchain_db and rpc, skip wallet_rpc_server 2019-11-09 14:21:22 +00:00
moneromooo-monero
0de8a0d37d
wallet_rpc_server: new estimate_tx_size_and_weight RPC 2019-11-06 15:18:21 +00:00
moneromooo-monero
4b38400336
wallet2: don't try to lock an empty filename 2019-11-05 15:33:01 +00:00
moneromooo-monero
b328de6b7a
wallet_rpc_server: add tx weight in transfer commands responses 2019-11-05 14:25:06 +00:00
moneromooo-monero
27457a2268
wallet2: fix pool txes not being flushed when mined 2019-11-04 19:32:48 +00:00
moneromooo-monero
a633f85da9
daemon: allow printing N blocks from the end of the chain
It's a very common usage (for my anyway) and avoids the need to
get the current height, paste, subtract one, etc
2019-11-04 17:38:14 +00:00
moneromooo-monero
7ba31191f3
daemon: add +meta print_tx parameter
prints size, weight and (if mined) height
2019-11-04 15:57:56 +00:00
moneromooo-monero
236d2a88e2
blockchain_stats: make it work on pruned blockchains
It reports the actual size as pruned, however
2019-11-04 15:10:01 +00:00
Nathan Dorfman
2e58eb5cdb lmdb: Remove meaningless const qualifier on function type 2019-11-04 02:28:45 -07:00
Lee Clagett
70c9cd3c9c Change to Tx diffusion (Dandelion++ fluff) instead of flooding 2019-11-04 09:23:20 +00:00
Riccardo Spagni
06b0441762
Merge pull request #6074
38f691048 simplewallet: plug a timing leak (moneromooo-monero)
dcff02e4c epee: allow a random component in once_a_time timeouts (moneromooo-monero)
e10833024 wallet: reuse cached height when set after refresh (moneromooo-monero)
5956beaa1 wallet2: fix is_synced checking target height, not height (moneromooo-monero)
fd35e2304 wallet: fix another facet of "did I get some monero" information leak (moneromooo-monero)
d5472bd87 wallet2: do not send an unnecessary last getblocks.bin call on refresh (moneromooo-monero)
97ae7bb5c wallet2: do not repeatedly ask for pool txes sent to us (moneromooo-monero)
2019-11-03 14:52:16 -08:00
Lee Clagett
5d7ae2d279 Adding support for hidden (anonymity) txpool 2019-11-02 20:36:03 +00:00
Riccardo Spagni
eaadbbdab0
Merge pull request #6079
e4d1674e8 0.15.0.0 release engineering (Riccardo Spagni)
2019-11-02 17:31:22 +02:00
Riccardo Spagni
da31077bed
Merge pull request #6047
ebc6ce44f cryptonote: untangle dependency from miner to blockchain (moneromooo-monero)
2019-11-02 17:30:09 +02:00
Riccardo Spagni
e4d1674e8c
0.15.0.0 release engineering 2019-11-02 17:21:52 +02:00
moneromooo-monero
38f6910481
simplewallet: plug a timing leak
As reported by Tramèr et al, timing of refresh requests can be used
to see whether a password was requested (and thus at least one output
received) since this will induce a delay in subsequent calls.
To avoid this, we schedule calls at a given time instead of sleeping
for a set time (which would make delays additive).
To further avoid a scheduled call being during the time in which a
password is prompted, the actual scheduled time is now randomized.
2019-11-02 11:41:41 +00:00
JamesWrigley
b9fc206660 Add a --keep-fakechain option to keep fakechain databases
This is handy when doing tests that generate a lot of transactions, since that
takes time it's preferable to re-use the database for future runs.
2019-11-01 23:56:08 +01:00
moneromooo-monero
e108330248
wallet: reuse cached height when set after refresh
Refreshing sets cached height, which is otherwise got by calling
get_info. Since get_info is called upon needing to display a prompt
after a command has finished, it can be used to determine how much
time a given command took to run if the cache timeout lapses while
the command runs. Refreshing caches the height as a side effect, so
get_info will never be called as a result of displaying a prompt
after refreshing (and potentially leaking how much time it took to
process a set of transactions, therefore leaking whether we got
some monero in them).
2019-11-01 18:59:41 +00:00
moneromooo-monero
5956beaa15
wallet2: fix is_synced checking target height, not height
Target height would be appropriate for the daemon, which syncs
off other daemons, but the wallet syncs off the daemon it's
connected to, and its target is the daemon's current height.
2019-11-01 18:59:39 +00:00
moneromooo-monero
fd35e2304a
wallet: fix another facet of "did I get some monero" information leak
We get new pool txes before processing any tx, pool or not.
This ensures that if we're asked for a password, this does not
cause a measurable delay in the txpool query after the last
block query.
2019-11-01 18:59:38 +00:00
moneromooo-monero
d5472bd87b
wallet2: do not send an unnecessary last getblocks.bin call on refresh
The "everything refreshed" state was detected when a refresh call did
not return any new blocks. This can be detected without that extra
"empty" call by comparing the claimed node height to the height of
the last block retrieved. Doing this avoids that last call, saves
some bandwidth, and makes the common refresh case use only one call
rather than two.

As a side effect, it prevents an information leak reported by
Tramèr et al: if the wallet retrieves a set of blocks which includes
an output sent to the refreshing wallet, the wallet will prompt the
user for the password to decode the amount and calculate the key
image for the new output, and this will delay subsequent calls to
getblocks.bin, allowing a passive adversary to note the delay and
deduce when the wallet receives at least one output.

This can still happen if the wallet downloads more than 1000 blocks,
since this will be split in several calls, but then the most the
adversary can tell is which 1000 block section the user received
some monero (the adversary can estimate the heights of the blocks
by calculating how many "large" transfers are done, which will be
sections of blocks, the last of which will usually be below 1000,
but the size of the data should allow the actual number of blocks
sent to be determined fairly accurately).

This timing trick still be used via the subsequent scan for incoming
txes in the txpool, which will be fixed later.
2019-11-01 18:59:37 +00:00
moneromooo-monero
22d30866ca
simplewallet: add missing inactivity-lock-timeout to set help blurb 2019-11-01 15:37:55 +00:00
moneromooo-monero
9f57f0df92
simplewallet: do not mention inactivity if a lock was manual 2019-11-01 14:36:57 +00:00
moneromooo-monero
97ae7bb5cb
wallet2: do not repeatedly ask for pool txes sent to us
This lets a passive attacker with access to the network link
between node and wallet perform traffic analysis to deduce
when an idle wallet receives a transaction.

Reported by Tramèr et al.
2019-11-01 10:42:01 +00:00
moneromooo-monero
ebc6ce44f4
cryptonote: untangle dependency from miner to blockchain
It causes link errors at least on mac
2019-10-31 01:06:42 +00:00
moneromooo-monero
3b8dcc290d
wallet2: make keys unlocker reentrant
protects against having your keys mangled
2019-10-29 13:53:57 +00:00
moneromooo-monero
886ed25055
blockchain: fix comment wrongly refering to SHA-3 rather than Keccak 2019-10-29 11:37:08 +00:00
moneromooo-monero
017f816897
daemon: handle printing higher hash rates 2019-10-29 11:33:15 +00:00
moneromooo-monero
deb350b783
always print peer IDs in the same format 2019-10-29 11:30:20 +00:00
moneromooo-monero
c96b7ee619
tx_pool: fix error message assuming incorrectly 2019-10-29 10:43:59 +00:00
xiphon
2e2bf8a207 daemon: always use bootstrap daemon (if set) in '--no-sync' mode 2019-10-28 21:52:19 +00:00
Sarang Noether
45fd72b0d7 Updated paper references 2019-10-28 12:34:44 -04:00
moneromooo-monero
65301c406e
core: point out when we hit the block rate visibility limit 2019-10-28 16:06:15 +00:00
Sarang Noether
277003f145 Minor prover simplification 2019-10-28 09:34:49 -04:00
luigi1111
4c9fd8d86d
Merge pull request #6044
eb16755 blockchain: fix unwanted error when probing the pool for a tx (moneromooo-monero)
2019-10-27 16:28:33 -05:00
moneromooo-monero
eb16755083
blockchain: fix unwanted error when probing the pool for a tx 2019-10-27 19:23:25 +00:00
moneromooo-monero
2f8f3a9432
rpc: base flush_cache request/response on the new base structs 2019-10-27 16:14:28 +00:00
moneromooo-monero
e8964c26cc
wallet: do not warn if the rpc cost was free 2019-10-27 10:59:31 +00:00
luigi1111
ef8b3a15b4
Merge pull request #6017
5734686 rpc: Include tag in get_info version string (ndorf)
2019-10-25 20:48:04 -05:00
moneromooo-monero
f7f7513ec3
rpc: fix PRIx64 build error on some systems 2019-10-26 00:05:21 +00:00
luigi1111
7caa2b0d3e
Merge pull request #6024
296ec7c device: bounds checking in Ledger send_secret/receive_secret (xiphon)
2019-10-25 16:06:37 -05:00
luigi1111
07c6789148
Merge pull request #5958
d25acd7 Add hmac over encrypted value during transaction (clashm)
34f28a7 Add display address (clashm)
235b94e Revert PR #5835 (export view key) (clashm)
32febd2 Fix debug feature (clashm)
2019-10-25 16:03:24 -05:00
luigi1111
86d085e988
Merge pull request #6028
174a6ac tx_pool: fix divide by 0 in log (moneromooo-monero)
2019-10-25 14:29:15 -05:00
luigi1111
f253bf3846
Merge pull request #6007
a4dc575 rpc: add a flush_cache RPC (moneromooo-monero)
2019-10-25 14:20:20 -05:00
luigi1111
9a995f338a
Merge pull request #6023
643dcb9 net: link with libzmq (moneromooo-monero)
2019-10-25 13:56:06 -05:00
luigi1111
68b03abdc5
Merge pull request #6021
65e8a89 Change monerod --proxy to --tx-proxy (vtnerd)
2019-10-25 13:52:19 -05:00
luigi1111
4a67bdbde4
Merge pull request #6019
d60c1b6 changed 'batttery' to 'battery' (jakehemmerle)
2019-10-25 13:45:59 -05:00
luigi1111
711625c467
Merge pull request #6014
93e7426 wallet2: error out when we need a daemon password but have no prompt function (moneromooo-monero)
2019-10-25 13:44:31 -05:00
luigi1111
59439f8113
Merge pull request #6013
635401b wallet2: fix the logged number of detached transfers (moneromooo-monero)
2019-10-25 13:43:00 -05:00
moneromooo-monero
a4dc575ccb
rpc: add a flush_cache RPC
This allows flushing internal caches (for now, the bad tx cache,
which will allow debugging a stuck monerod after it has failed to
verify a transaction in a block, since it would otherwise not try
again, making subsequent log changes pointless)
2019-10-25 18:41:54 +00:00
luigi1111
960c215801
Merge pull request #5357
b3a9a4d add a quick early out to get_blocks.bin when up to date (moneromooo-monero)
2899379 daemon, wallet: new pay for RPC use system (moneromooo-monero)
ffa4602 simplewallet: add public_nodes command (moneromooo-monero)
2019-10-25 13:38:21 -05:00
moneromooo-monero
174a6ac9c5
tx_pool: fix divide by 0 in log
Coverity 205394
2019-10-25 16:56:55 +00:00
moneromooo-monero
9768e96d74
simplewallet: remove remaining payment id dead code
pointed out by coverity
2019-10-25 16:53:15 +00:00
xiphon
296ec7c9bb device: bounds checking in Ledger send_secret/receive_secret 2019-10-25 13:13:23 +00:00
moneromooo-monero
643dcb9700
net: link with libzmq 2019-10-25 12:06:16 +00:00
moneromooo-monero
ffa46026b5
simplewallet: add public_nodes command
Lists nodes exposing their RPC port for public use
2019-10-25 09:34:41 +00:00
moneromooo-monero
2899379791
daemon, wallet: new pay for RPC use system
Daemons intended for public use can be set up to require payment
in the form of hashes in exchange for RPC service. This enables
public daemons to receive payment for their work over a large
number of calls. This system behaves similarly to a pool, so
payment takes the form of valid blocks every so often, yielding
a large one off payment, rather than constant micropayments.

This system can also be used by third parties as a "paywall"
layer, where users of a service can pay for use by mining Monero
to the service provider's address. An example of this for web
site access is Primo, a Monero mining based website "paywall":
https://github.com/selene-kovri/primo

This has some advantages:
 - incentive to run a node providing RPC services, thereby promoting the availability of third party nodes for those who can't run their own
 - incentive to run your own node instead of using a third party's, thereby promoting decentralization
 - decentralized: payment is done between a client and server, with no third party needed
 - private: since the system is "pay as you go", you don't need to identify yourself to claim a long lived balance
 - no payment occurs on the blockchain, so there is no extra transactional load
 - one may mine with a beefy server, and use those credits from a phone, by reusing the client ID (at the cost of some privacy)
 - no barrier to entry: anyone may run a RPC node, and your expected revenue depends on how much work you do
 - Sybil resistant: if you run 1000 idle RPC nodes, you don't magically get more revenue
 - no large credit balance maintained on servers, so they have no incentive to exit scam
 - you can use any/many node(s), since there's little cost in switching servers
 - market based prices: competition between servers to lower costs
 - incentive for a distributed third party node system: if some public nodes are overused/slow, traffic can move to others
 - increases network security
 - helps counteract mining pools' share of the network hash rate
 - zero incentive for a payer to "double spend" since a reorg does not give any money back to the miner

And some disadvantages:
 - low power clients will have difficulty mining (but one can optionally mine in advance and/or with a faster machine)
 - payment is "random", so a server might go a long time without a block before getting one
 - a public node's overall expected payment may be small

Public nodes are expected to compete to find a suitable level for
cost of service.

The daemon can be set up this way to require payment for RPC services:

  monerod --rpc-payment-address 4xxxxxx \
    --rpc-payment-credits 250 --rpc-payment-difficulty 1000

These values are an example only.

The --rpc-payment-difficulty switch selects how hard each "share" should
be, similar to a mining pool. The higher the difficulty, the fewer
shares a client will find.
The --rpc-payment-credits switch selects how many credits are awarded
for each share a client finds.
Considering both options, clients will be awarded credits/difficulty
credits for every hash they calculate. For example, in the command line
above, 0.25 credits per hash. A client mining at 100 H/s will therefore
get an average of 25 credits per second.
For reference, in the current implementation, a credit is enough to
sync 20 blocks, so a 100 H/s client that's just starting to use Monero
and uses this daemon will be able to sync 500 blocks per second.

The wallet can be set to automatically mine if connected to a daemon
which requires payment for RPC usage. It will try to keep a balance
of 50000 credits, stopping mining when it's at this level, and starting
again as credits are spent. With the example above, a new client will
mine this much credits in about half an hour, and this target is enough
to sync 500000 blocks (currently about a third of the monero blockchain).

There are three new settings in the wallet:

 - credits-target: this is the amount of credits a wallet will try to
reach before stopping mining. The default of 0 means 50000 credits.

 - auto-mine-for-rpc-payment-threshold: this controls the minimum
credit rate which the wallet considers worth mining for. If the
daemon credits less than this ratio, the wallet will consider mining
to be not worth it. In the example above, the rate is 0.25

 - persistent-rpc-client-id: if set, this allows the wallet to reuse
a client id across runs. This means a public node can tell a wallet
that's connecting is the same as one that connected previously, but
allows a wallet to keep their credit balance from one run to the
other. Since the wallet only mines to keep a small credit balance,
this is not normally worth doing. However, someone may want to mine
on a fast server, and use that credit balance on a low power device
such as a phone. If left unset, a new client ID is generated at
each wallet start, for privacy reasons.

To mine and use a credit balance on two different devices, you can
use the --rpc-client-secret-key switch. A wallet's client secret key
can be found using the new rpc_payments command in the wallet.
Note: anyone knowing your RPC client secret key is able to use your
credit balance.

The wallet has a few new commands too:

 - start_mining_for_rpc: start mining to acquire more credits,
regardless of the auto mining settings
 - stop_mining_for_rpc: stop mining to acquire more credits
 - rpc_payments: display information about current credits with
the currently selected daemon

The node has an extra command:

 - rpc_payments: display information about clients and their
balances

The node will forget about any balance for clients which have
been inactive for 6 months. Balances carry over on node restart.
2019-10-25 09:34:38 +00:00
Lee Clagett
65e8a89e1c Change monerod --proxy to --tx-proxy 2019-10-24 21:06:31 -04:00
luigi1111
cc46f05f1f
Merge pull request #6002
0136bf7 v12 fork heights (tevador)
2019-10-24 18:57:05 -05:00
Jake Hemmerle
d60c1b6312 changed 'batttery' to 'battery' 2019-10-24 19:55:28 -04:00
Nathan Dorfman
57346864a3 rpc: Include tag in get_info version string 2019-10-24 13:48:35 -06:00
luigi1111
81f6c3745e
Merge pull request #5495
28a627c gen_ssl_cert: new tool to generate SSL certs for Monero (moneromooo-monero)
2019-10-24 13:02:39 -05:00
moneromooo-monero
28a627c5ac
gen_ssl_cert: new tool to generate SSL certs for Monero 2019-10-24 17:47:52 +00:00
luigi1111
2200767963
Merge pull request #6004
951ceab daemon: print difficulty in decimal, as it used to be (moneromooo-monero)
2019-10-24 12:43:38 -05:00
luigi1111
87171916ee
Merge pull request #5998
0da09ed protocol: fix syncing from peers being too choosy about peers (moneromooo-monero)
2019-10-24 12:38:35 -05:00
moneromooo-monero
951ceab4f6
daemon: print difficulty in decimal, as it used to be
It got switched to hexadecimal when we went to 128 bit values
2019-10-24 17:37:05 +00:00
luigi1111
f9b5af85ea
Merge pull request #6001
705edd8 daemon: fix coinbase txes always being seen as pruned (moneromooo-monero)
2019-10-24 10:57:30 -05:00
luigi1111
8926829569
Merge pull request #6000
641c9cf daemon: add miner tx hash in print_block output (moneromooo-monero)
2019-10-24 10:56:20 -05:00
luigi1111
bef8d3e381
Merge pull request #5999
fbf8168 utils: Increase max block size for import/export (ndorf)
2019-10-24 10:53:53 -05:00
luigi1111
5f6a06e74c
Merge pull request #5997
37cccb8 db_lmdb: an empty prunable data record means the tx is not pruned (moneromooo-monero)
2019-10-24 10:52:04 -05:00
moneromooo-monero
b3a9a4d99d
add a quick early out to get_blocks.bin when up to date 2019-10-24 11:30:54 +00:00
moneromooo-monero
93e74269b3
wallet2: error out when we need a daemon password but have no prompt function 2019-10-23 18:36:53 +00:00
moneromooo-monero
635401b077
wallet2: fix the logged number of detached transfers 2019-10-23 18:29:13 +00:00
luigi1111
4233d88341
Merge pull request #5973
abd3763 cryptonote: fill in tx weight when syncing from pruned blocks (moneromooo-monero)
2019-10-22 10:54:46 -05:00
luigi1111
bb2bcf3521
Merge pull request #5972
9447e72 cryptonote: add function to get weight from a pruned tx (moneromooo-monero)
2019-10-22 10:52:14 -05:00
luigi1111
2c497bc411
Merge pull request #5989
4f583d5 daemon: fix print_pl synopsis missing recent options (moneromooo-monero)
2019-10-22 10:24:09 -05:00
luigi1111
1e9b577f2a
Merge pull request #5985
6fdaaba node.inl, add xmrchain.net IP to hardcoded peers (Gingeropolous)
2019-10-22 10:22:02 -05:00
luigi1111
35da1ce307
Merge pull request #5983
32d6376 simplewallet: add --restore-from-seed alias (moneromooo-monero)
2019-10-22 10:20:46 -05:00
luigi1111
8a88d9186a
Merge pull request #5982
bba5bae implewallet: don't trigger idle lock right after a foreground refresh (moneromooo-monero)
2019-10-22 10:19:35 -05:00
luigi1111
426d2ac8ee
Merge pull request #5981
88c9d90 protocol: initialize block_weight in block_complete_entry ctor (moneromooo-monero)
fe443bb cryptonote: don't leave block_weight uninitialized (moneromooo-monero)
1ba9baf tx_pool: do not divide by 0 (moneromooo-monero)
2019-10-22 10:18:28 -05:00
luigi1111
3fb85857e0
Merge pull request #5980
ea813cf RandomX: update to v1.1.4 (tevador)
2019-10-22 10:16:39 -05:00
luigi1111
99e4c403cb
Merge pull request #5977
e85c838 simplewallet: do not print warning for locked coinbase txes (moneromooo-monero)
2019-10-22 10:14:33 -05:00
luigi1111
cf2d4d9a16
Merge pull request #5974
7fcd0b5 blockchain: initialize pow to ff..ff (moneromooo-monero)
2019-10-22 10:13:34 -05:00
luigi1111
8bb3c6a8e6
Merge pull request #5970
ab96181 blockchain: use effective median block weight for penalty from v12 (moneromooo-monero)
2019-10-22 10:09:56 -05:00
luigi1111
84ce43a239
Merge pull request #5966
be82c40 Support median block size > 4 GB (moneromooo-monero)
2019-10-22 10:08:32 -05:00
luigi1111
c81884f088
Merge pull request #5964
fd48461 Print cdifficulty and don't serialize miner tx hash twice (Doy-lee)
2019-10-22 10:07:17 -05:00
luigi1111
6f202844b5
Merge pull request #5919
01f660f blockchain: fill in cumulative block weight for alt blocks (moneromooo-monero)
2019-10-22 10:06:10 -05:00
moneromooo-monero
be82c40703
Support median block size > 4 GB
add a 128/64 division routine so we can use a > 32 bit median block
size in calculations
2019-10-21 10:41:07 +00:00
tevador
0136bf7448 v12 fork heights 2019-10-18 20:32:25 +02:00
moneromooo-monero
705edd81d9
daemon: fix coinbase txes always being seen as pruned 2019-10-18 12:25:08 +00:00
moneromooo-monero
641c9cf19d
daemon: add miner tx hash in print_block output 2019-10-18 12:21:30 +00:00
Nathan Dorfman
fbf81689d4 utils: Increase max block size for import/export 2019-10-17 19:14:41 -06:00
moneromooo-monero
0da09ede86
protocol: fix syncing from peers being too choosy about peers 2019-10-17 17:40:47 +00:00
moneromooo-monero
37cccb8cfb
db_lmdb: an empty prunable data record means the tx is not pruned
as opposed to an absent record
2019-10-17 17:39:05 +00:00
luigi1111
6c05723981
Merge pull request #5984
7fdaa82 Fix build on FreeBSD/!x86 (pkubaj)
0f4fddc Add also ifdef __x86_64__ (pkubaj)
2019-10-16 13:53:14 -05:00
luigi1111
461a25e1b5
Merge pull request #5962
ec14abd tx_pool: make spent return-by-reference as intended (stoffu)
2019-10-16 13:51:34 -05:00
luigi1111
824521b7bc
Merge pull request #5959
4d22317 wallet2: don't delete file that may not exist (selsta)
2019-10-16 13:45:22 -05:00
luigi1111
017baeeab5
Merge pull request #5956
ec7f2ff p2p: reject invalid rpc_port in peer lists (xiphon)
2019-10-16 13:44:25 -05:00
luigi1111
67043d642d
Merge pull request #5954
4ce40ed p2p: reject invalid pruning seeds in peer lists (moneromooo-monero)
2019-10-16 13:42:23 -05:00
luigi1111
40e71742a0
Merge pull request #5952
93d5cf2 wallet2: add ignore-outputs-{above/below} option (stoffu)
2019-10-16 13:40:44 -05:00
luigi1111
75f7959fa9
Merge pull request #5946
16498dc simplewallet.cpp - clean up welcome message (SomaticFanatic)
2019-10-16 13:38:18 -05:00
moneromooo-monero
7fcd0b55ea
blockchain: initialize pow to ff..ff
as a safety to reject if it somehow does not get initialised
2019-10-16 09:00:30 +00:00
moneromooo-monero
4f583d564c
daemon: fix print_pl synopsis missing recent options 2019-10-15 13:35:52 +00:00
luigi1111
fcb4c72bb5
Merge pull request #5943
d4d2b5c p2p+rpc: don't skip p2p or rpc port bind failure by default (xiphon)
2019-10-14 20:05:25 -05:00
luigi1111
37a72fd6ae
Merge pull request #5941
d37d30f blockchain: tweak fee as a function of median values (moneromooo-monero)
2019-10-14 18:11:13 -05:00
luigi1111
dd24d7f7fd
Merge pull request #5940
6b4bc0d RPC on_transfer_split error consistent with on_transfer if no tx sent (binaryFate)
2019-10-14 18:09:44 -05:00
luigi1111
dc48cdc998
Merge pull request #5933
3455efa ban peers sending bad pow outright (moneromooo-monero)
2019-10-14 18:07:54 -05:00
moneromooo-monero
4d0aadc081
wallet_rpc_server: don't report integrated addresses for 0 payment ID
These are dummy ones
2019-10-14 11:43:48 +00:00
moneromooo-monero
19c0506e14
wallet: remove long payment ID sending support 2019-10-14 11:43:47 +00:00
moneromooo-monero
455f9e3e9f
wallet2: ignore received unencrypted payment IDs (but warn hard) 2019-10-14 11:43:46 +00:00
moneromooo-monero
b295e3cff6
simplewallet: reinstate short payment id nag, only if non default 2019-10-14 11:43:42 +00:00
Gingeropolous
6fdaaba935
node.inl, add xmrchain.net IP to hardcoded peers
added for mainnet, testnet, and stagenet. 

server is owner by snipa, both snipa and I have access to it. No idea where its hosted. 

xmrchain.net is a block explorer thats been around a while.
2019-10-13 17:13:57 -04:00
pkubaj
0f4fddc2f8
Add also ifdef __x86_64__ 2019-10-13 19:08:23 +00:00
tevador
ea813cfb1b RandomX: update to v1.1.4
* Faster cache initialization with SSSE3/AVX2
* Automatic detection of CPU capabilities in RandomX
* Fixed a possible out-of-bounds access in superscalar program generator
* Use MONERO_RANDOMX_UMASK to manually disable RandomX flags in monerod
2019-10-13 18:43:27 +02:00
pkubaj
7fdaa8285e
Fix build on FreeBSD/!x86
Checking battery status uses x86-only headers and functions. Remove this functionality to get it to build on other architectures.
2019-10-13 16:43:18 +00:00
xiphon
d4d2b5c79a p2p+rpc: don't skip p2p or rpc port bind failure by default 2019-10-13 13:27:46 +00:00
moneromooo-monero
32d6376673
simplewallet: add --restore-from-seed alias
It may be more intuitive for some people
2019-10-11 14:39:38 +00:00
moneromooo-monero
bba5baec37
simplewallet: don't trigger idle lock right after a foreground refresh 2019-10-11 14:30:20 +00:00
moneromooo-monero
ab96181e91
blockchain: use effective median block weight for penalty from v12
It was using the raw block weight median, which was not what was
intended in ArticMine's design
2019-10-11 14:16:09 +00:00
moneromooo-monero
1ba9bafd33
tx_pool: do not divide by 0
In case of a 0 tx weight, we use a placeholder value to insert in the
fee-per-byte set. This is used for pruning and mining, and those txes
are pruned, so will not be too large, nor added to the block template
if mining, so this is safe.

CID 204465
2019-10-11 14:09:31 +00:00
moneromooo-monero
fe443bbdec
cryptonote: don't leave block_weight uninitialized
CID 204467
2019-10-11 14:09:31 +00:00
moneromooo-monero
88c9d90ac4
protocol: initialize block_weight in block_complete_entry ctor
CID 204479
2019-10-11 14:09:31 +00:00
moneromooo-monero
9447e7276d
cryptonote: add function to get weight from a pruned tx
The weight of the prunable data is deterministic from the
unpruned data, so it can be determined from a pruned tx
2019-10-11 12:08:36 +00:00
moneromooo-monero
01f660f60f
blockchain: fill in cumulative block weight for alt blocks 2019-10-10 20:26:40 +00:00
moneromooo-monero
e85c838154
simplewallet: do not print warning for locked coinbase txes
since they're all locked for a fixed amount
2019-10-10 18:29:30 +00:00
moneromooo-monero
abd376313b
cryptonote: fill in tx weight when syncing from pruned blocks 2019-10-10 11:08:02 +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
luigi1111
5920913171
Merge pull request #5948
1c600a4 Fix randomx cache selection for RPCs (hyc)
2675cf4 Update to RandomX v1.1.3, simplify (hyc)
f54301d Fix for miners on reorg (hyc)
2019-10-08 14:48:36 -05:00
luigi1111
b0840a8e01
Merge pull request #5932
f3b65c6 Request a thread stack size that is large enough for unbound (omartijn)
2019-10-08 14:45:21 -05:00
luigi1111
a74a82c8b2
Merge pull request #5926
74a23e9 protocol: only print sync complete message when out of precompiled hashes (moneromooo-monero)
2019-10-08 14:42:41 -05:00
luigi1111
342e7f844f
Merge pull request #5921
2a7d915 Fixed i2p/tor tx flooding bug (white noise disabled) (vtnerd)
2019-10-08 14:31:53 -05:00
Howard Chu
f54301dd75
Fix for miners on reorg
Make sure dataset gets re-init'd if a reorg changes the epoch
2019-10-07 09:50:00 +01:00
Doyle
fd4846134d Print cdifficulty and don't serialize miner tx hash twice 2019-10-07 12:50:05 +11:00
stoffu
ec14abdbe8
tx_pool: make spent return-by-reference as intended 2019-10-06 12:28:30 +09:00
Howard Chu
2675cf4483
Update to RandomX v1.1.3, simplify
We don't need to detect if the cache has changed, just always
call to set it on the VM. The call will be a no-op if the cache
hasn't changed.
2019-10-05 18:51:20 +01:00
selsta
4d22317dee
wallet2: don't delete file that may not exist 2019-10-04 20:43:40 +02:00
Howard Chu
1c600a492f
Fix randomx cache selection for RPCs
Was using the wrong cache slot, and returning invalid PoW hashes to RPC clients
2019-10-03 20:05:17 +01:00
cslashm
32febd277d Fix debug feature 2019-10-03 16:05:40 +02:00
cslashm
235b94eb59 Revert PR #5835 (export view key) 2019-10-03 16:05:40 +02:00
cslashm
34f28a79bc Add display address 2019-10-03 16:05:32 +02:00
cslashm
d25acd7a1d Add hmac over encrypted value during transaction 2019-10-03 16:01:34 +02:00
moneromooo-monero
4ce40edb27
p2p: reject invalid pruning seeds in peer lists 2019-10-02 19:29:05 +00:00
xiphon
ec7f2ff9ed p2p: reject invalid rpc_port in peer lists 2019-10-02 19:04:57 +00:00
stoffu
93d5cf2441
wallet2: add ignore-outputs-{above/below} option
https://github.com/aeonix/aeon/pull/131
2019-10-02 13:04:24 +09:00
SomaticFanatic
16498dc8ef
simplewallet.cpp - clean up welcome message
Fixed a typo ("and -are- not visible to the world by default"), removed a few redundant commas, and capitalized words inside the URL.
2019-10-01 02:32:32 +00:00
luigi1111
b60cf6a938
Merge pull request #5939
9baf2a7 build: link wallet_merged against blockchain_db and hardforks obj (xiphon)
2019-09-30 18:57:54 -05:00
luigi1111
3f732841f5
Merge pull request #5906
bd9c12e simplewallet: remove erroneously added line under subaddress-lookahead (stoffu)
2019-09-30 18:53:10 -05:00
luigi1111
17f063a50f
Merge pull request #5902
b9da023 blockchain: keep block template timestamp not below recent median (moneromooo-monero)
2019-09-30 18:52:11 -05:00
luigi1111
d9cb50870d
Merge pull request #5900
6bbc646 Fix bug in mempool get_transaction_stats histogram calculation (tomsmeding)
2019-09-30 18:49:09 -05:00
luigi1111
e23b9847d0
Merge pull request #5894
c89f7ef wallet2_api: fix load unsigned tx from file error propagation (xiphon)
2019-09-30 18:45:41 -05: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
d37d30f79a
blockchain: tweak fee as a function of median values
Use the lesser of the short and long terms medians, rather then
the long term median alone

From ArticMine:

I found a bug in the new fee calculation formula with using only the long term median
It actually needs to be the lesser of the long term median and the old (modified short term median)
short term median with the last 10 blocks calculated as empty
Yes the issue occurs if there is a large long term median and, the short term median then falls and tries to then rise again
The fees are could be not high enough
for example LTM and STM rise to say 2000000 bytes
STM falls back to 300000 bytes
Fees are now based on 2000000 bytes until LTM also falls
So the STM is could prevented from rising back up
STM short term median LTM long term median
2019-09-28 22:53:41 +00:00
binaryFate
6b4bc0d389 RPC on_transfer_split error consistent with on_transfer if no tx sent 2019-09-28 19:22:15 +02:00
xiphon
9baf2a7caa build: link wallet_merged against blockchain_db and hardforks obj 2019-09-28 12:35:33 +00: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
Martijn Otto
f3b65c66f8
Request a thread stack size that is large enough for unbound
Unbound uses a 64 kb large character array on the stack, which
leads to a stack overflow for some libc implementations. musl
only gives 80 kb in total. This PR changes the stack size for
these threads to 1mb, which solves the segmentation fault.
2019-09-25 16:37:06 +02: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
5fe38977b5
Merge pull request #5905
Revert a96c1a4 and adc16d2 (moneromooo-monero)
2019-09-24 10:39:28 -05:00
moneromooo-monero
74a23e9a59
protocol: only print sync complete message when out of precompiled hashes
This avoids most premature triggers
2019-09-24 15:29:59 +00:00
luigi1111
44aa7d5439
Merge pull request #5882
a444f06 blockchain: enforce 10 block age for spending outputs (moneromooo-monero)
2019-09-24 10:27:22 -05:00
luigi1111
06bee964a8
Merge pull request #5878
f9b3f6e Removed Berkeley DB and db switching logic (JesusRami)
2019-09-24 10:10:28 -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
luigi1111
8c41d36a08
Merge pull request #5864
32f725d Properly format multiline logs (moneromooo-monero)
2019-09-24 10:05:21 -05:00
luigi1111
a1736a9429
Merge pull request #5848
functional_tests (moneromooo-monero)
2019-09-24 10:04:03 -05:00
moneromooo-monero
d0663837d2
core: move hardforks into its own lib
So it can be used by others without encumbrance
2019-09-19 11:28:18 +00:00
moneromooo-monero
a444f06e53
blockchain: enforce 10 block age for spending outputs
Some custom wallet code apparently ignores this, which causes users
of that code to be fingerprinted
2019-09-17 11:39:25 +00: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
cc4be4fa15
wallet: add edit_address_book RPC 2019-09-17 11:38:23 +00:00
moneromooo-monero
7b076d5170
p2p: fix bans taking port into account 2019-09-16 22:45:45 +00:00
moneromooo-monero
32f725d32f
Properly format multiline logs
As a side effect, colouring on Windows should now work
regardless of version
2019-09-16 16:58:01 +00:00
Jesus Ramirez
f9b3f6ef3b Removed Berkeley DB and db switching logic 2019-09-16 16:18:05 +02:00
luigi1111
2c171a9b02
Merge pull request #5861
f0356f7 wallet2: enable ignoring fractional outputs also when sweeping (stoffu)
2019-09-14 13:27:18 -05: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
dbe31f63e1
Merge pull request #5899
7d3bba5 wallet2_api: add missing parameter (selsta)
2019-09-14 13:23:28 -05:00
luigi1111
76805b62ce
Merge pull request #5874
f380f69 simplewallet: warn if invalid default ring size is set and actually ignore the setting (stoffu)
2019-09-14 13:19:01 -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
d00e511cc6
Merge pull request #5871
3407743 wallet_rpc_server: add locked field to get_transfers/get_{bulk_,}_payments (moneromooo-monero)
2019-09-14 13:14:22 -05:00
luigi1111
e753663d31
Merge pull request #5870
83ca764 wallet_rpc_server: call deinit on exit (moneromooo-monero)
2019-09-14 13:12:44 -05:00
luigi1111
b526208001
Merge pull request #5868
1f1fff2 daemon: print mining algorithm in mining_status even when not mining (moneromooo-monero)
2019-09-14 13:10:51 -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
4a39e1a4a5
Merge pull request #5865
11f13da blockchain: fix logging bad number of blocks if first one fails (moneromooo-monero)
19bfe7e simplewallet: fix warnings about useless std::move (moneromooo-monero)
2019-09-14 13:07:35 -05:00
luigi1111
3e75df42a7
Merge pull request #5854
2cb22d4 core: make the 'update probably needed soon' message less scary (moneromooo-monero)
2019-09-14 13:06:05 -05:00
luigi1111
29e0f11305
Merge pull request #5823
26072f1 blockchain: forbid v1 coinbase from v12 (moneromooo-monero)
555dc7c core: from v12, require consistent ring size for mixable txes (moneromooo-monero)
d22dfb7 blockchain: reject rct signatures in coinbase txes from v12 (moneromooo-monero)
2019-09-14 13:04:41 -05:00
moneromooo-monero
b9da0234e9
blockchain: keep block template timestamp not below recent median
Such a template would yield an invalid block, though would require
an attacker to have mined a long blockchain with drifting times
(assuming the miner's clock is roughly correct)

Fixed by crCr62U0
2019-09-11 15:21:52 +00:00
stoffu
bd9c12e18a
simplewallet: remove erroneously added line under subaddress-lookahead 2019-09-11 10:50:20 +09:00
moneromooo-monero
62fc4bec4c
Revert "cryptonote_protocol: drop peers we can't download from when syncing"
This reverts commit a96c1a46d4.
2019-09-11 01:04:44 +00:00
moneromooo-monero
ea92a32f72
Revert "Fix check for disconnecting peers when syncing"
This reverts commit adc16d2504.
2019-09-11 01:04:01 +00:00