Commit Graph

622 Commits

Author SHA1 Message Date
luigi1111
a844844cda
Merge pull request #3716
a2b557f 6795bd0 209ec96 ed2c81e a830db2 57ea902 31a895e ba8331c f7f1917 41be339 f025ae9 ef2cb63 dcfd299 5d3e702 2704624 2771a18 0e4c7d0 (moneromooo-monero)
2018-06-27 15:33:01 -05:00
moneromooo-monero
2771a18e85
threadpool: allow leaf functions to run concurrently
Decrease the number of worker threads by one to account
for the fact the calling thread acts as a worker thread now
2018-06-26 22:15:22 +01:00
moneromooo-monero
ed2c81ed95
replace std::list with std::vector on some hot paths
also use reserve where appropriate
2018-06-26 22:14:21 +01:00
luigi1111
8fad35f8e2
Merge pull request #3962
55c7fb8 epee: adaptive connection timeout system (moneromooo-monero)
2018-06-25 15:12:37 -05:00
luigi1111
34c57d071f
Merge pull request #3938
01cc978 ringct: remove an unnecessary scalarmultBase in zeroCommit (moneromooo-monero)
2018-06-20 14:51:31 -05:00
luigi1111
c678413a89
Merge pull request #3902
f8dd433 epee: fix detection of 172.16.0.0/172.31.255.255 local IP range (moneromooo-monero)
5db9e3c unit_tests: add tests for local IP range detection (moneromooo-monero)
2018-06-20 14:22:44 -05:00
luigi1111
cfd66dae4b
Merge pull request #3691
db55263 threadpool: allow constructing an object, and misc tweaks (moneromooo-monero)
ce173cb core: remove threadpool dependency from header (moneromooo-monero)
3147468 unit_tests: add threadpool unit test (moneromooo-monero)
2018-06-17 22:04:39 -05:00
moneromooo-monero
55c7fb87a9
epee: adaptive connection timeout system
a connection's timeout is halved for every extra connection
from the same host.

Also keep track of when we don't need to use a connection
anymore, so we can close it and free the resource for another
connection.

Also use the longer timeout for non routable local addresses.
2018-06-10 19:39:38 +01:00
luigi1111
13d73d9ed6
Merge pull request #3604
54d9fff gtest: Fix compilation on MinGW with pthread /googletest#621 (stoffu)
2018-06-08 14:51:32 -05:00
luigi1111
22c8730261
Merge pull request #3450
3b941be core: add get_earliest_ideal_height_for_version() (stoffu)
2018-06-08 14:31:49 -05:00
luigi1111
5321769b65
Merge pull request #3444
a79fc21 hardfork: fix get_earliest_ideal_height_for_version() to support non-existent versions (stoffu)
7e30ead unit_tests/hardfork: add tests for check_for_height() (stoffu)
98cf62c hardfork: fix get_next_version() (stoffu)
0321d1a unit_tests/hardfork: add tests for get_voting_info() (stoffu)
2018-06-08 14:29:38 -05:00
moneromooo-monero
01cc978722
ringct: remove an unnecessary scalarmultBase in zeroCommit 2018-06-06 10:14:36 +01:00
moneromooo-monero
5db9e3c28e
unit_tests: add tests for local IP range detection 2018-06-01 21:47:25 +01:00
luigi1111
b6eb7484d1
Merge pull request #3592
90a16b1 crypto: fix initialization order issue with random mutex (moneromooo-monero)
6a61f52 unit_tests: add ringdb unit tests (moneromooo-monero)
2018-05-31 14:41:17 -05:00
luigi1111
f0f3157183
Merge pull request #3504
a0a810c performance_tests: fix subaddress expansion test not expanding (moneromooo-monero)
2018-05-30 15:57:42 -05:00
stoffu
0321d1ac79
unit_tests/hardfork: add tests for get_voting_info() 2018-05-30 09:49:58 +09:00
stoffu
98cf62cc45
hardfork: fix get_next_version() 2018-05-30 09:49:57 +09:00
stoffu
7e30eadb32
unit_tests/hardfork: add tests for check_for_height() 2018-05-30 09:49:55 +09:00
stoffu
a79fc219b7
hardfork: fix get_earliest_ideal_height_for_version() to support non-existent versions 2018-05-30 09:49:52 +09:00
luigi1111
c534fe8d19
Merge pull request #3251
b9389e5 db_lmdb: save pruned and prunable tx data separately (moneromooo-monero)
2018-05-29 17:56:26 -05:00
moneromooo-monero
b9389e582e
db_lmdb: save pruned and prunable tx data separately
This bumps DB version to 2, migration code will run for v1 DBs
2018-05-23 22:48:12 +01:00
moneromooo-monero
64f82e0481
unit_tests: fix build after get_output_didstribution signature change 2018-05-21 20:49:02 +01:00
moneromooo-monero
5f8ffca34d
speed up get_output_distribution (and precalc common case) 2018-05-21 19:51:58 +01:00
Riccardo Spagni
2906a24179
Merge pull request #3809
b88c9a00 unit_tests: set default data dir to the source tree at build time (moneromooo-monero)
2018-05-21 20:44:07 +02:00
Riccardo Spagni
ff31611a32 Revert "Merge pull request #3775"
This reverts commit 20ef37bbca, reversing
changes made to 40070a661f.
2018-05-21 20:30:31 +02:00
moneromooo-monero
3147468d35
unit_tests: add threadpool unit test 2018-05-20 12:06:10 +01:00
moneromooo-monero
b88c9a003e
unit_tests: set default data dir to the source tree at build time 2018-05-15 21:45:34 +01:00
moneromooo-monero
c1886155ed
unit_tests: fix build after get_output_didstribution signature change 2018-04-28 18:02:58 +01:00
Thaer Khawaja
dad1077577 Only log an error if fork version is higher AND is not known. 2018-04-22 17:26:44 -07:00
moneromooo-monero
6a61f520e2
unit_tests: add ringdb unit tests 2018-04-11 11:43:39 +01:00
stoffu
54d9fffa10
gtest: Fix compilation on MinGW with pthread /googletest#621 2018-04-11 11:35:45 +09:00
moneromooo-monero
a0a810ccd4
performance_tests: fix subaddress expansion test not expanding 2018-03-27 15:06:19 +01:00
stoffu
3b941befae
core: add get_earliest_ideal_height_for_version() 2018-03-21 01:53:24 +09:00
Riccardo Spagni
0f27fc57ac
Merge pull request #3336
57c0b1ed Fix typos in various files (Dimitris Apostolou)
2018-03-16 18:08:07 +02:00
moneromooo-monero
41f727ce42
add RPC to get a histogram of outputs of a given amount 2018-03-16 10:32:26 +00:00
Dimitris Apostolou
57c0b1ed9f Fix typos in various files 2018-03-15 18:25:38 +02:00
AnythingTechPro
843f65cbda
tests/hash: correctly reference crypto HASH_SIZE for less confusion 2018-03-14 11:10:54 -04:00
stoffu
7dfa5e9e6e
chacha: call prehashed version explicitly as generate_chacha_key_prehashed
hash: add prehashed version cn_slow_hash_prehashed
slow-hash: let cn_slow_hash take 4th parameter for deciding prehashed or not
slow-hash: add support for prehashed version for the other 3 platforms
2018-03-14 21:00:17 +09:00
stoffu
b2d23b189e
crypto: revert odd namespace changes made in #3303 2018-03-14 21:00:17 +09:00
stoffu
8705beaf51
keypair::generate: always require hw::device to avoid possible mistake 2018-03-14 21:00:16 +09:00
stoffu
27a196b126
device: untangle cyclic depenency
When #3303 was merged, a cyclic dependency chain was generated:

    libdevice <- libcncrypto <- libringct <- libdevice

This was because libdevice needs access to a set of basic crypto operations
implemented in libringct such as scalarmultBase(), while libringct also needs
access to abstracted crypto operations implemented in libdevice such as
ecdhEncode(). To untangle this cyclic dependency chain, this patch splits libringct
into libringct_basic and libringct, where the basic crypto ops previously in
libringct are moved into libringct_basic. The cyclic dependency is now resolved
thanks to this separation:

    libcncrypto <- libringct_basic <- libdevice <- libcryptonote_basic <- libringct

This eliminates the need for crypto_device.cpp and rctOps_device.cpp.

Also, many abstracted interfaces of hw::device such as encrypt_payment_id() and
get_subaddress_secret_key() were previously implemented in libcryptonote_basic
(cryptonote_format_utils.cpp) and were then called from hw::core::device_default,
which is odd because libdevice is supposed to be independent of libcryptonote_basic.
Therefore, those functions were moved to device_default.cpp.
2018-03-14 21:00:15 +09:00
Riccardo Spagni
0f2d6d40b4
Merge pull request #3360
1ff35fda Wallet API: make nettype non-defaulted to disambiguate from deprecated versions (and make libwallet_api_tests compilable) (stoffu)
2018-03-14 13:37:00 +02:00
moneromooo-monero
91d97dd4ab
fuzz_tests: set small subaddress lookahead for speed 2018-03-14 11:34:09 +00:00
stoffu
1ff35fda7c
Wallet API: make nettype non-defaulted to disambiguate from deprecated versions (and make libwallet_api_tests compilable) 2018-03-06 21:14:52 +09:00
Lee Clagett
e136bc6b8a
tweaks to the monerov1 cryptonight algorithm 2018-03-05 18:18:45 +00:00
moneromooo-monero
608fd6f14a
Monero Cryptonight variants, and add one for v7
This is the first variant of many, with the intent to improve
Monero's resistance to ASICs and encourage mining decentralization.
2018-03-05 18:18:39 +00:00
Riccardo Spagni
4f93f74528
Merge pull request #3277
0e7ad2e2 Wallet API: generalize 'bool testnet' to 'NetworkType nettype' (stoffu)
af773211 Stagenet (stoffu)
cc9a0bee command_line: allow args to depend on more than one args (stoffu)
55f8d917 command_line::get_arg: remove 'required' for dependent args as they're always optional (stoffu)
450306a0 command line: allow has_arg to handle arg_descriptor<bool,false,true> #3318 (stoffu)
9f9e095a Use `genesis_tx` parameter in `generate_genesis_block`. #3261 (Jean Pierre Dudey)
2018-03-05 19:11:20 +02:00
Edward Betts
fbcc91c2a4 Correct spelling mistakes. 2018-03-05 17:00:40 +00:00
stoffu
af773211cb
Stagenet 2018-03-05 11:55:05 +09:00
cslashm
e745c1e38d Code modifications to integrate Ledger HW device into monero-wallet-cli.
The basic approach it to delegate all sensitive data (master key, secret
ephemeral key, key derivation, ....) and related operations to the device.
As device has low memory, it does not keep itself the values
(except for view/spend keys) but once computed there are encrypted (with AES
are equivalent) and return back to monero-wallet-cli. When they need to be
manipulated by the device, they are decrypted on receive.

Moreover, using the client for storing the value in encrypted form limits
the modification in the client code. Those values are transfered from one
C-structure to another one as previously.

The code modification has been done with the wishes to be open to any
other hardware wallet. To achieve that a C++ class hw::Device has been
introduced. Two initial implementations are provided: the "default", which
remaps all calls to initial Monero code, and  the "Ledger", which delegates
all calls to Ledger device.
2018-03-04 12:54:53 +01:00