Commit Graph
5900 Commits
Author SHA1 Message Date
moneromooo-moneroandwowario f6d5ada824 README.md: mention building deps with -fPIC for static builds 2018-05-17 00:21:04 +03:00
anonimalandwowario 9864284750 Build: update CMake and p2p for in-tree miniupnp 2018-05-17 00:08:19 +03:00
anonimalandwowario 2971e639b7 CMake: update new location of in-tree miniupnpc 2018-05-17 00:06:45 +03:00
anonimalandwowario 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-moneroandwowario 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
anonimalandwowario 3857034289 Build: update CMake and p2p for in-tree miniupnp
(cherry picked from commit a7366b5feeffaeb65b217b2d6f138e0ab1c90192)
2018-05-16 23:57:56 +03:00
anonimalandwowario 035bf5a93b CMake: update new location of in-tree miniupnpc
(cherry picked from commit b16a282f97d8f6c967e8a0b1ecfd75110f095182)
2018-05-16 23:55:56 +03:00
anonimalandwowario 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
anonimalandwowario 06016d67f0 Build: remove in-tree miniupnpc
Will be replaced by a submodule.
2018-05-16 23:28:38 +03:00
stoffuandwowario 4b93bf5be9 daemon: read config file before reading any other args 2018-05-16 23:26:55 +03:00
moneromooo-moneroandwowario cb3853d7a3 device: add a one off override keyword where appropriate 2018-05-16 23:26:10 +03:00
moneromooo-moneroandwowario 3903d03a93 simplewallet: add version command 2018-05-16 23:20:17 +03:00
moneromooo-moneroandwowario dac20e337a daemon: add a version command 2018-05-16 23:17:17 +03:00
moneromooo-moneroandwowario b63635f38d wallet2: increase rpc timeout for get_output_distribution 2018-05-16 23:11:46 +03:00
moneromooo-moneroandwowario 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-moneroandwowario 3aa058c9d9 util: log stack trace on crash 2018-05-16 23:10:14 +03:00
moneromooo-moneroandwowario 29954e88f3 rpc: add missing perf timer for get_output_distribution 2018-05-16 22:54:57 +03:00
moneromooo-moneroandwowario 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
stoffuandwowario c71e8870db wallet2: store subaddress lookahead settings 2018-05-16 22:46:23 +03:00
moneromooo-moneroandwowario f1ed4a77d1 common: make this build with unbound 1.4.20
Common on currently used distros
2018-05-16 22:44:22 +03:00
cslashmandwowario 7b3aef524b Use 'boost' mutex instead of 'std' mutex 2018-05-16 22:43:27 +03:00
cslashmandwowario 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
stoffuandwowario d3c3efac0c simplewallet: fix help message of sign_transfer 2018-05-16 22:42:11 +03:00
moneromooo-moneroandwowario 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-moneroandwowario 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-moneroandwowario 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-moneroandwowario 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
stoffuandwowario 6d16e1abf4 WalletManagerImpl: reuse existing connection to daemon instead of reconnectivng every time 2018-05-16 22:28:28 +03:00
moneromooo-moneroandwowario cfd7928365 wallet2: fix misc issues when the ringdb can't be initialized 2018-05-16 22:27:36 +03:00
stoffuandwowario f7dd0ee122 cryptonote_tx_util: make destinations properly shuffled 2018-05-16 21:47:44 +03:00
cslashmandwowario 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
cslashmandwowario 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
cslashmandwowario 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-moneroandwowario 21d41a11a4 device: fix endianess dependence on subaddress secret key generation
We now force little endianness
2018-05-16 21:47:43 +03:00
moneromooo-moneroandwowario 0043d20939 fix lambda compile error on openbsd 2018-05-16 21:47:43 +03:00
moneromooo-moneroandwowario 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
stoffuandwowario 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
stoffuandwowario 3f5e731d31 wallet2: enable the mitigation only after the fork height 2018-05-16 21:47:42 +03:00
stoffuandwowario c455bbf413 wallet2: fix for loading settings of key reuse mitigation 2018-05-16 21:47:42 +03:00
Howard Chuandwowario 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 Chuandwowario 67acb32fff Fix generating version.cpp
Also removes BYPRODUCT dependency on CMake 3.2
2018-05-16 21:47:42 +03:00
anonimalandwowario 30ceb9388f Build: remove UPnP definition from snap 2018-05-16 15:43:43 +03:00
Mikhail Mitkevichlandwowario c0c97c0c07 import_multisig_info: fix sanity check crash in detach_blockchain 2018-05-16 15:40:23 +03:00
moneromooo-moneroandwowario 2fbbccca6e wallet2: add missing parameters to get_output_histogram 2018-05-16 15:40:09 +03:00
Thaer Khawajaandwowario 2d63dd3c1c Only log an error if fork version is higher AND is not known. 2018-05-16 15:39:54 +03:00
anonimalandwowario b4af8212b6 add submodules 2018-05-16 15:39:36 +03:00
moneromooo-moneroandwowario 3741fefd9c mlog: fix setting no logs 2018-05-16 15:24:30 +03:00
Jan Beichandwowario 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
rbrunner7andwowario af38d77020 [RELEASE] Fix broken interactive daemon 'limit' commands plus RPC calls 2018-05-16 15:23:35 +03:00
Gene Petersandwowario d969ac8f8b Adding required library (dependency of boost::this_thread::sleep_for) 2018-05-16 15:23:24 +03:00