Commit graph

5897 commits

Author SHA1 Message Date
anonimal
0b6cd8d6d3
Build: add miniupnp submodule
Though we only need miniupnpc, rebasing and maintaining a miniupnpc-only
repo is unrealistic.
2018-05-17 00:04:26 +03:00
moneromooo-monero
23d1007327
speedup get_output_histogram for all amounts when min_count > 0
This skips the vast majority of "dust" output amounts with just
one instance on the chain. Clocks in at 0.15% of the original
time on testnet.
2018-05-16 23:59:48 +03:00
anonimal
3857034289
Build: update CMake and p2p for in-tree miniupnp
(cherry picked from commit a7366b5feeffaeb65b217b2d6f138e0ab1c90192)
2018-05-16 23:57:56 +03:00
anonimal
035bf5a93b
CMake: update new location of in-tree miniupnpc
(cherry picked from commit b16a282f97d8f6c967e8a0b1ecfd75110f095182)
2018-05-16 23:55:56 +03:00
anonimal
252687f99c
Build: add miniupnp submodule
Though we only need miniupnpc, rebasing and maintaining a miniupnpc-only
repo is unrealistic.

(cherry picked from commit 3c40eb768c292a4dec79d7dffd6685fd37940a2a)
2018-05-16 23:51:48 +03:00
anonimal
06016d67f0
Build: remove in-tree miniupnpc
Will be replaced by a submodule.
2018-05-16 23:28:38 +03:00
stoffu
4b93bf5be9
daemon: read config file before reading any other args 2018-05-16 23:26:55 +03:00
moneromooo-monero
cb3853d7a3
device: add a one off override keyword where appropriate 2018-05-16 23:26:10 +03:00
moneromooo-monero
3903d03a93
simplewallet: add version command 2018-05-16 23:20:17 +03:00
moneromooo-monero
dac20e337a
daemon: add a version command 2018-05-16 23:17:17 +03:00
moneromooo-monero
b63635f38d
wallet2: increase rpc timeout for get_output_distribution 2018-05-16 23:11:46 +03:00
moneromooo-monero
b9eda26091
add top height to get_output_distribution, and cache it for rct
This should cache the vast majority of calls for long running wallets
2018-05-16 23:11:19 +03:00
moneromooo-monero
3aa058c9d9
util: log stack trace on crash 2018-05-16 23:10:14 +03:00
moneromooo-monero
29954e88f3
rpc: add missing perf timer for get_output_distribution 2018-05-16 22:54:57 +03:00
moneromooo-monero
cf1bc8c98f
tx_pool: fix loading with colliding key images
A key image may be present more than once if all but one of the
txes spending that key image are coming from blocks. When loading
a txpool from storage, we must load the one that's not from a
block first to avoid rejection
2018-05-16 22:48:45 +03:00
stoffu
c71e8870db
wallet2: store subaddress lookahead settings 2018-05-16 22:46:23 +03:00
moneromooo-monero
f1ed4a77d1
common: make this build with unbound 1.4.20
Common on currently used distros
2018-05-16 22:44:22 +03:00
cslashm
7b3aef524b
Use 'boost' mutex instead of 'std' mutex 2018-05-16 22:43:27 +03:00
cslashm
7a79ba183d
Fix sub-address tx scan.
When additional keys was needed, the TX scan failed because the
derivation data was always recomputed with the main tx_key and not
the corresponding additional one.

Moreover this patch avoid perf decreasing when not using HW device.
2018-05-16 22:43:05 +03:00
stoffu
d3c3efac0c
simplewallet: fix help message of sign_transfer 2018-05-16 22:42:11 +03:00
moneromooo-monero
8de302627a
wallet2: request transactions in slices when scanning for known rings
This avoid massive memory consumption for huge wallets
2018-05-16 22:41:34 +03:00
moneromooo-monero
f4d38403a0
rpc: allow getting pruned blocks from gettransactions
and get them pruned in find_and_save_rings, since it does not need
the pruned data in the first place.

Also set decode_to_json to false where missing, we don't need this
either.
2018-05-16 22:39:18 +03:00
moneromooo-monero
ab3c7036c3
wallet2: request transactions in slices when scanning for known rings
This avoid massive memory consumption for huge wallets
2018-05-16 22:36:34 +03:00
moneromooo-monero
320db6c7b7
rpc: allow getting pruned blocks from gettransactions
and get them pruned in find_and_save_rings, since it does not need
the pruned data in the first place.

Also set decode_to_json to false where missing, we don't need this
either.
2018-05-16 22:34:05 +03:00
stoffu
6d16e1abf4
WalletManagerImpl: reuse existing connection to daemon instead of reconnectivng every time 2018-05-16 22:28:28 +03:00
moneromooo-monero
cfd7928365
wallet2: fix misc issues when the ringdb can't be initialized 2018-05-16 22:27:36 +03:00
stoffu
f7dd0ee122
cryptonote_tx_util: make destinations properly shuffled 2018-05-16 21:47:44 +03:00
cslashm
6b818bcf5c
Add the possibility to export private view key for fast scan.
On client startup the device asks for authorization to export the private view key.
If user agree, the client hold the private view key allowing a fast blockchain scan.
If the user does not agree, the blockchain scan is fully done via the device.
2018-05-16 21:47:43 +03:00
cslashm
0919d2cfd8
Change mutex lock model to avoid dead lock and ensure locks are always released.
Additional cosmetic fixes:
 move 'name' as protected
 remove unnecessary local var
 Fix debug log
2018-05-16 21:47:43 +03:00
cslashm
4b69054222
Automatic height setup when creating/restoring hw device.
When creating/restoring wallet, if --restore-height option is not used the current estimate
height is used for starting the scan. In other words it is assume we are creating a new account.
2018-05-16 21:47:43 +03:00
moneromooo-monero
21d41a11a4
device: fix endianess dependence on subaddress secret key generation
We now force little endianness
2018-05-16 21:47:43 +03:00
moneromooo-monero
0043d20939
fix lambda compile error on openbsd 2018-05-16 21:47:43 +03:00
moneromooo-monero
a98e3b15ac
rpc: make get_output_distribution a non-restricted RPC
so that those nodes can still be used for sending transactions
2018-05-16 21:47:43 +03:00
stoffu
ccae806c13
wallet2: set from_height of GET_OUTPUT_DISTRIBUTION correctly
The previous expression

    req_t.from_height = X ? Y >= Z : 0;

forces the parameter to take the value of either 0 or 1.
2018-05-16 21:47:42 +03:00
stoffu
3f5e731d31
wallet2: enable the mitigation only after the fork height 2018-05-16 21:47:42 +03:00
stoffu
c455bbf413
wallet2: fix for loading settings of key reuse mitigation 2018-05-16 21:47:42 +03:00
Howard Chu
31ab6076eb
Revert bb19386b
The requirement for CMake 3.2.0 was introduced erroneously
in commit e29282d208 and is no
longer present
2018-05-16 21:47:42 +03:00
Howard Chu
67acb32fff
Fix generating version.cpp
Also removes BYPRODUCT dependency on CMake 3.2
2018-05-16 21:47:42 +03:00
anonimal
30ceb9388f
Build: remove UPnP definition from snap 2018-05-16 15:43:43 +03:00
Mikhail Mitkevichl
c0c97c0c07
import_multisig_info: fix sanity check crash in detach_blockchain 2018-05-16 15:40:23 +03:00
moneromooo-monero
2fbbccca6e
wallet2: add missing parameters to get_output_histogram 2018-05-16 15:40:09 +03:00
Thaer Khawaja
2d63dd3c1c
Only log an error if fork version is higher AND is not known. 2018-05-16 15:39:54 +03:00
anonimal
b4af8212b6
add submodules 2018-05-16 15:39:36 +03:00
moneromooo-monero
3741fefd9c
mlog: fix setting no logs 2018-05-16 15:24:30 +03:00
Jan Beich
4ee7781c46
epee: Drop deprecated Boost.Thread header
In file included from src/cryptonote_basic/hardfork.cpp:33:
In file included from src/blockchain_db/blockchain_db.h:42:
In file included from src/cryptonote_basic/hardfork.h:31:
contrib/epee/include/syncobj.h:37:10: fatal error: 'boost/thread/v2/thread.hpp' file not found
#include <boost/thread/v2/thread.hpp>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/rpc/daemon_handler.cpp:29:
In file included from src/rpc/daemon_handler.h:36:
In file included from src/p2p/net_node.h:41:
In file included from contrib/epee/include/net/levin_server_cp2.h:32:
In file included from contrib/epee/include/net/abstract_tcp_server2.h:324:
contrib/epee/include/net/abstract_tcp_server2.inl:44:10: fatal error: 'boost/thread/v2/thread.hpp' file not found
#include <boost/thread/v2/thread.hpp> // TODO
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~

contrib/epee/include/math_helper.h: In member function 'bool epee::math_helper::average<val, default_base>::set_base()':
contrib/epee/include/syncobj.h:227:56: error: 'sleep_for' is not a member of 'boost::this_thread'
 #define  CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));}   epee::critical_region_t<decltype(x)>   critical_region_var(x)
                                                        ^
contrib/epee/include/syncobj.h:227:56: note: in definition of macro 'CRITICAL_REGION_LOCAL'
 #define  CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));}   epee::critical_region_t<decltype(x)>   critical_region_var(x)
                                                        ^~~~~~~~~
contrib/epee/include/syncobj.h:227:56: note: suggested alternative: 'sleep'
 #define  CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));}   epee::critical_region_t<decltype(x)>   critical_region_var(x)
                                                        ^
contrib/epee/include/syncobj.h:227:56: note: in definition of macro 'CRITICAL_REGION_LOCAL'
 #define  CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));}   epee::critical_region_t<decltype(x)>   critical_region_var(x)
                                                        ^~~~~~~~~
2018-05-16 15:24:12 +03:00
rbrunner7
af38d77020
[RELEASE] Fix broken interactive daemon 'limit' commands plus RPC calls 2018-05-16 15:23:35 +03:00
Gene Peters
d969ac8f8b
Adding required library (dependency of boost::this_thread::sleep_for) 2018-05-16 15:23:24 +03:00
moneromooo-monero
6881768929
unit_tests: fix build after get_output_distribution signature change 2018-05-16 15:21:16 +03:00
moneromooo-monero
3b4715c495
ringct: do not show verification errors with default settings 2018-05-16 15:21:02 +03:00
moneromooo-monero
9360a0e057
cryptonote: make sure outPk setup always happens 2018-05-16 15:19:58 +03:00