Commit Graph

6949 Commits

Author SHA1 Message Date
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:
https://github.com/monero-project/monero/blob/5d7ae2d2791c0244a221872a7ac62627abb81896/src/p2p/net_node.inl#L2343

However, on handshakes for outgoing connections, all zones are checked:
https://github.com/monero-project/monero/blob/5d7ae2d2791c0244a221872a7ac62627abb81896/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