aboutsummaryrefslogtreecommitdiff
path: root/tests (follow)
AgeCommit message (Collapse)AuthorFilesLines
2018-09-21Merge pull request #4371Riccardo Spagni2-0/+916
55c7cd14 Adding expect<T> - a value-or-error implementation (Lee Clagett)
2018-09-21Merge pull request #4209Riccardo Spagni1-1/+56
26a42fe5 Added features to epee::span<T> : - Support for classes - Added `remove_prefix` function - Added `to_mut_span` and `as_mut_byte_span` (Lee Clagett)
2018-09-18Merge pull request #4391Riccardo Spagni1-0/+1
e9bce045 Fix missing std::runtime_error def in difficulty.cpp (Howard Chu)
2018-09-18Merge pull request #4306Riccardo Spagni1-0/+7
56b50faa wallet: use wipeable_string in more places where a secret is used (moneromooo-monero) 07ec748c wipeable_string: add hex_to_pod function (moneromooo-monero)
2018-09-17api/wallet: properly disable key encryptionstoffu2-3/+3
2018-09-16Fix missing std::runtime_error def in difficulty.cppHoward Chu1-0/+1
2018-09-14Merge pull request #4253Riccardo Spagni1-6/+6
be001326 remove obsolete daemon selection of fake outs and old tx construction (moneromooo-monero)
2018-09-14remove obsolete daemon selection of fake outs and old tx constructionmoneromooo-monero1-6/+6
2018-09-14Merge pull request #4260Riccardo Spagni1-4/+4
a54dbaee blockchain_blackball: add --force-chain-reaction-pass flag (moneromooo-monero) 44439c32 record blackballs as amount/offset, and add export ability (moneromooo-monero) 4bce935b blockchain_blackball: more optimizations (moneromooo-monero) b66ba783 blockchain_blackball: do not process duplicate blockchains parts (moneromooo-monero) 639a3c01 blockchain_blackball: make it clear secondary passes are not incremental (moneromooo-monero) eb8a51be blockchain_blackball: detect spent outputs by partial ring reuse (moneromooo-monero) d6d276c6 blockchain_blackball: fix chain reaction phase in incremental mode (moneromooo-monero) 2b2a681b blockchain_blackball: avoid false positives for different amounts (moneromooo-monero) 80e4fef3 blockchain_blackball: set transaction looping txn to read only (moneromooo-monero) 4801d6b5 blockchain_blackball: add stats (moneromooo-monero) 846190fd blockchain_blackball: support pre-v2 databases (moneromooo-monero) daa6cc7d blockchain_blackball: use LMDB for the cache (moneromooo-monero) 50cb370d ringdb: allow blackballing many outputs at once (moneromooo-monero)
2018-09-14Merge pull request #4254Riccardo Spagni1-0/+4
de905d4b fuzz_tests: use __AFL_INIT when available (moneromooo-monero)
2018-09-12Adding expect<T> - a value-or-error implementationLee Clagett2-0/+916
2018-09-12wipeable_string: add hex_to_pod functionmoneromooo-monero1-0/+7
2018-09-11Merge pull request #4219Riccardo Spagni34-248/+2507
9137ad2c blockchain: add a testnet v9 a day after v8 (moneromooo-monero) ac4f71c2 wallet2: bump testnet rollback to account for coming reorg (moneromooo-monero) 8f418a6d bulletproofs: #include <openssl/bn.h> (moneromooo-monero) 2bf63650 bulletproofs: speed up the latest changes a bit (moneromooo-monero) 044dff5a bulletproofs: scale points by 8 to ensure subgroup validity (moneromooo-monero) c83012c4 bulletproofs: match aggregated verification to sarang's latest prototype (moneromooo-monero) ce0c7432 performance_tests: add padded bulletproof construction (moneromooo-monero) 1224e53b core_tests: add a test for 4-aggregated BP verification (moneromooo-monero) 0e6ed559 fuzz_tests: add a bulletproof fuzz test (moneromooo-monero) 463434d1 more comprehensive test for ge_p3 comparison to identity/point at infinity (moneromooo-monero) d0a0565f unit_tests: add a few more multiexp unit tests (moneromooo-monero) 6526d87f core_tests: add a test for a tx with empty bulletproof (moneromooo-monero) a129bbd9 multiexp: fix maxscalar off by one (moneromooo-monero) 7ed496cc ringct: error out when hashToPoint* returns the point at infinity (moneromooo-monero) d1591853 cryptonote_basic: check output type before using it (moneromooo-monero) 61632dc1 ringct: prevent a potential very large allocation (moneromooo-monero) a4317e61 crypto: some paranoid checks in generate_signature/check_signature (moneromooo-monero) 7434df1c crypto: never return zero in random32_unbiased (moneromooo-monero) 0825e974 multiexp: fix wrong Bos-Coster result for 1 non trivial input (moneromooo-monero) a1359ad4 Check inputs to addKeys are in range (moneromooo-monero) fe0fa3b9 bulletproofs: reject x, y, z, or w[i] being zero (moneromooo-monero) 5ffb2ff9 v8: per byte fee, pad bulletproofs, fixed 11 ring size (moneromooo-monero) 869b3bf8 bulletproofs: a few fixes from the Kudelski review (moneromooo-monero) c4291762 bulletproofs: reject points not in the main subgroup (moneromooo-monero) 15697177 bulletproofs: speed up a few multiplies using existing Hi cache (moneromooo-monero) 0b05a0fa Add Pippenger cache and limit Straus cache size (moneromooo-monero) 51eb3bdc add pippenger unit tests (moneromooo-monero) b17b8db3 performance_tests: add stats and loop count multiplier options (moneromooo-monero) 7314d919 perf_timer: split timer class into a base one and a logging one (moneromooo-monero) d126a02b performance_tests: add aggregated bulletproof tx verification (moneromooo-monero) 263431c4 Pippenger multiexp (moneromooo-monero) 1ed0ed4d multiexp: cut down on memory allocations (moneromooo-monero) 1b867e7f precalc the ge_p3 representation of H (moneromooo-monero) ef56529f performance_tests: document the tested bulletproof layouts (moneromooo-monero) 30111780 unit_tests: a couple more bulletproof unit tests for gamma (moneromooo-monero) c444b1b2 require canonical multi output bulletproof layout (moneromooo-monero) 7e67c52f Add a define for the max number of bulletproof multi-outputs (moneromooo-monero) 2a8fcb42 Bulletproof aggregated verification and tests (moneromooo-monero) 126196b0 multiexp: some speedups (moneromooo-monero) 71d67bda aligned: aligned memory alloc/realloc/free (moneromooo-monero) cb9ecab1 performance_tests: add signature generation/verification (moneromooo-monero) bacf0a1e bulletproofs: add aggregated verification (moneromooo-monero) e895c3de make straus cached mode thread safe, and add tests for it (moneromooo-monero) 7f48bf05 multiexp: bos coster now works for just one point (moneromooo-monero) 9ce9f8ca bulletproofs: add multi output bulletproofs to rct (moneromooo-monero) f34e2e20 performance_tests: add tx checking tests with more than 2 outputs (moneromooo-monero) 0793184b performance_tests: add a --verbose flag, and default to terse (moneromooo-monero) 939bc223 add Straus multiexp (moneromooo-monero) 9ff6e6a0 ringct: add bos coster multiexp (moneromooo-monero) e9164bb3 bulletproofs: misc optimizations (moneromooo-monero) 112f32f0 performance_tests: add crypto ops (moneromooo-monero) f5d7b993 performance_tests: add bulletproofs (moneromooo-monero) 8f4ce989 performance_tests: add RingCT MLSAG gen/ver tests (moneromooo-monero) 1aa10c43 performance_tests: add (Borromean) range proofs (moneromooo-monero) aacfd6e3 bulletproofs: multi-output bulletproofs (moneromooo-monero) cb1cc757 performance_tests: don't override log level to 0 (moneromooo-monero)
2018-09-11bulletproofs: speed up the latest changes a bitmoneromooo-monero3-0/+13
2018-09-11performance_tests: add padded bulletproof constructionmoneromooo-monero2-2/+14
2018-09-11core_tests: add a test for 4-aggregated BP verificationmoneromooo-monero3-0/+16
2018-09-11fuzz_tests: add a bulletproof fuzz testmoneromooo-monero3-0/+85
2018-09-11unit_tests: add a few more multiexp unit testsmoneromooo-monero1-2/+52
2018-09-11core_tests: add a test for a tx with empty bulletproofmoneromooo-monero3-0/+20
2018-09-11v8: per byte fee, pad bulletproofs, fixed 11 ring sizemoneromooo-monero14-255/+271
2018-09-11bulletproofs: a few fixes from the Kudelski reviewmoneromooo-monero1-10/+0
- fix integer overflow in n_bulletproof_amounts - check input scalars are in range - remove use of environment variable to tweak straus performance - do not use implementation defined signed shift for signum
2018-09-11bulletproofs: reject points not in the main subgroupmoneromooo-monero3-0/+64
2018-09-11Add Pippenger cache and limit Straus cache sizemoneromooo-monero2-9/+135
2018-09-11add pippenger unit testsmoneromooo-monero1-0/+55
2018-09-11performance_tests: add stats and loop count multiplier optionsmoneromooo-monero2-317/+409
Stats are: min, median, standard deviation
2018-09-11performance_tests: add aggregated bulletproof tx verificationmoneromooo-monero2-0/+81
2018-09-11Pippenger multiexpmoneromooo-monero2-1/+146
Based on sarang's python code
2018-09-11precalc the ge_p3 representation of Hmoneromooo-monero1-0/+7
2018-09-11performance_tests: document the tested bulletproof layoutsmoneromooo-monero1-8/+8
2018-09-11unit_tests: a couple more bulletproof unit tests for gammamoneromooo-monero1-0/+19
2018-09-11require canonical multi output bulletproof layoutmoneromooo-monero3-13/+13
2018-09-11Bulletproof aggregated verification and testsmoneromooo-monero9-17/+590
Also constrains bulletproofs to simple rct, for simplicity
2018-09-11aligned: aligned memory alloc/realloc/freemoneromooo-monero2-1/+88
2018-09-11performance_tests: add signature generation/verificationmoneromooo-monero3-0/+72
2018-09-11bulletproofs: add aggregated verificationmoneromooo-monero5-0/+87
Ported from sarang's java code
2018-09-11make straus cached mode thread safe, and add tests for itmoneromooo-monero4-1/+163
2018-09-11bulletproofs: add multi output bulletproofs to rctmoneromooo-monero4-3/+66
2018-09-11performance_tests: add tx checking tests with more than 2 outputsmoneromooo-monero2-12/+23
2018-09-11performance_tests: add a --verbose flag, and default to tersemoneromooo-monero2-121/+135
2018-09-11add Straus multiexpmoneromooo-monero3-0/+97
2018-09-11performance_tests: add crypto opsmoneromooo-monero3-0/+133
2018-09-11performance_tests: add bulletproofsmoneromooo-monero3-0/+73
2018-09-11performance_tests: add RingCT MLSAG gen/ver testsmoneromooo-monero1-0/+10
2018-09-11performance_tests: add (Borromean) range proofsmoneromooo-monero3-0/+68
2018-09-11bulletproofs: multi-output bulletproofsmoneromooo-monero1-0/+19
2018-09-11performance_tests: don't override log level to 0moneromooo-monero1-1/+0
2018-09-11Merge pull request #4218Riccardo Spagni3-2/+216
5fd83c13 Cryptonight variant 2 (SChernykh)
2018-09-10Merge pull request #4293luigi11112-1/+19
9d65399 is_hdd update (p8p)
2018-09-10Merge pull request #4230luigi11111-1024/+1024
96c1de9 fixed cncrypto tests not passing after the change in random_scalar (msgmaxim)
2018-09-10record blackballs as amount/offset, and add export abilitymoneromooo-monero1-4/+4
2018-09-09Cryptonight variant 2SChernykh3-2/+216
Contains two modifications to improve ASIC resistance: shuffle and integer math. Shuffle makes use of the whole 64-byte cache line instead of 16 bytes only, making Cryptonight 4 times more demanding for memory bandwidth. Integer math adds 64:32 bit integer division followed by 64 bit integer square root, adding large and unavoidable computational latency to the main loop. More details and performance numbers: https://github.com/SChernykh/xmr-stak-cpu/blob/master/README.md
2018-09-04Merge pull request #4298luigi11111-0/+8
67666b1 unit_tests: disable mlocker tests on windows (no implementation) (moneromooo-monero)
2018-09-04Merge pull request #4275luigi11112-0/+151
2a100fd unit_tests: add tests for incremental keccak (moneromooo-monero)
2018-09-04Merge pull request #4264luigi11111-1/+1
0c8d8f6 unit_tests: remove std::move in return statement (moneromooo-monero)
2018-09-04Merge pull request #4257luigi11111-0/+1
b21fdaa fuzz: set address properly (stoffu)
2018-09-04Merge pull request #4245luigi11111-1/+1
8ca1215 wallet: store trusted-daemon flag in wallet2 (stoffu)
2018-08-25is_hdd updatep8p2-1/+19
2018-08-23unit_tests: disable mlocker tests on windows (no implementation)moneromooo-monero1-0/+8
2018-08-23add and use constant time 32 byte equality functionmoneromooo-monero3-0/+93
2018-08-23wallet: store trusted-daemon flag in wallet2stoffu1-1/+1
2018-08-22Merge pull request #4210luigi11112-0/+219
4616cf2 Fixed ZMQ-RPC for transactions and GET_BLOCKS_FAST (vtnerd)
2018-08-22Merge pull request #4200luigi11111-1/+0
43f7110 blockchain_db: remove unused get_output_key variant (moneromooo-monero)
2018-08-20unit_tests: add tests for incremental keccakmoneromooo-monero2-0/+151
2018-08-16common: add a class to safely wrap mlock/munlockmoneromooo-monero2-0/+187
This class will allow mlocking small objects, of which there may be several per page. It adds refcounting so pages are only munlocked when the last object on that page munlocks.
2018-08-16store secret keys encrypted where possiblemoneromooo-monero5-4/+89
The secret spend key is kept encrypted in memory, and decrypted on the fly when needed. Both spend and view secret keys are kept encrypted in a JSON field in the keys file. This avoids leaving the keys in memory due to being manipulated by the JSON I/O API.
2018-08-16wallet: wipe seed from memory where appropriatemoneromooo-monero3-6/+231
2018-08-16wallet2: make --restricted-rpc available for wallet RPC onlystoffu1-2/+1
2018-08-15Merge pull request #4186luigi11111-5/+9
c8226ad unit_tests: use valid key images, pub keys, etc (moneromooo-monero)
2018-08-15Merge pull request #4165luigi11111-4/+4
68b1197 tests: ringdb: use system's temporary dir path (radfish)
2018-08-15Merge pull request #4137luigi11111-0/+8
63e342b crypto: move null_pkey/null_skey to the cpp file (moneromooo-monero) 0496c7c crypto: do not use boost::value_initialized to init null skey/pkey (moneromooo-monero)
2018-08-15unit_tests: remove std::move in return statementmoneromooo-monero1-1/+1
This actually prevents copy elision
2018-08-14fuzz: set address properlystoffu1-0/+1
2018-08-13fuzz_tests: use __AFL_INIT when availablemoneromooo-monero1-0/+4
alleged to speed things up
2018-08-08wallet: allow adjusting number of rounds for the key derivation functionstoffu1-1/+1
2018-08-07fixed cncrypto tests not passing after the change in random_scalarMaxim Shishmarev1-1024/+1024
2018-08-03Added features to epee::span<T> :Lee Clagett1-1/+56
- Support for classes - Added `remove_prefix` function - Added `to_mut_span` and `as_mut_byte_span`
2018-08-02Fixed ZMQ-RPC for transactions and GET_BLOCKS_FASTLee Clagett2-0/+219
2018-07-30blockchain_db: remove unused get_output_key variantmoneromooo-monero1-1/+0
It was actually incorrect, as it would not return commitment
2018-07-28unit_tests: use valid key images, pub keys, etcmoneromooo-monero1-5/+9
2018-07-27Merge pull request #4110luigi11113-20/+8
639ca3b core_tests: add --filter to select which tests to run (moneromooo-monero)
2018-07-27Merge pull request #4097luigi11112-0/+48
61caab8 crypto: remove slight bias in key generation due to modulo (moneromooo-monero)
2018-07-22tests: ringdb: use system's temporary dir pathredfish1-4/+4
Fixes failing test during Arch package build (due to attempt to write to ~/.bitmonero/...). Prefix temp dir path with "monero-" because we are not putting it on the system, so good to identify ourselves in case the dir gets left over due to crash, etc.
2018-07-20crypto: do not use boost::value_initialized to init null skey/pkeymoneromooo-monero1-0/+8
2018-07-19Merge pull request #4075luigi11111-1/+0
438d52d remove epee from link lines where it's redundant (moneromooo-monero)
2018-07-19Merge pull request #4073luigi11111-0/+4
3474154 gtest: use -fPIC with CLANG too (moneromooo-monero)
2018-07-19Merge pull request #4061luigi11111-4/+18
e6f4d4a unit_tests: do not recreate the same base rct sig all the time (moneromooo-monero)
2018-07-19Merge pull request #4045luigi11111-1/+1
7cdd147 Changed URLs to HTTPS (einsteinsfool)
2018-07-19Merge pull request #4013luigi11111-0/+1
e5592c4 rpc: add blockchain disk size to getinfo (moneromooo-monero)
2018-07-19Merge pull request #3981luigi11111-18/+20
45e419b db: store cumulative rct output distribution in the db for speed (moneromooo-monero)
2018-07-19Merge pull request #3854luigi11118-0/+479
149da42 db_lmdb: enable batch transactions by default (stoffu) 34cb6b4 add --regtest and --fixed-difficulty for regression testing (vicsn) 9e1403e update get_info RPC and bump RPC version (vicsn) 207b66e first new functional tests (vicsn)
2018-07-19Merge pull request #3617luigi11112-0/+132
4c00a4d unit_tests: add device unit tests (moneromooo-monero)
2018-07-13db: store cumulative rct output distribution in the db for speedmoneromooo-monero1-18/+20
This gets rid of the temporary precalc cache. Also make the RPC able to send data back in binary or JSON, since there can be a lot of data This bumps the LMDB database format to v3, with migration.
2018-07-07core_tests: add --filter to select which tests to runmoneromooo-monero3-20/+8
2018-07-05crypto: remove slight bias in key generation due to modulomoneromooo-monero2-0/+48
2018-06-29first new functional testsvictorsintnicolaas7-0/+478
2018-06-29add --regtest and --fixed-difficulty for regression testingvictorsintnicolaas1-0/+1
on_generateblocks RPC call combines functionality from the on_getblocktemplate and on_submitblock RPC calls to allow rapid block creation. Difficulty is set permanently to 1 for regtest. Makes use of FAKECHAIN network type, but takes hard fork heights from mainchain Default reserve_size in generate_blocks RPC call is now 1. If it is 0, the following error occurs 'Failed to calculate offset for'. Queries hard fork heights info of other network types
2018-06-28remove epee from link lines where it's redundantmoneromooo-monero1-1/+0
For some reason, this confuses and kills ASAN on startup as it thinks const uint8_t ipv4_network_address::ID is defined multiple times.
2018-06-28gtest: use -fPIC with CLANG toomoneromooo-monero1-0/+4
2018-06-27Merge pull request #3998luigi11111-7/+7
8db23df wallet: on first refresh, start off with a quantized height (moneromooo-monero)
2018-06-27Merge pull request #3716luigi111111-35/+80
a2b557f 6795bd0 209ec96 ed2c81e a830db2 57ea902 31a895e ba8331c f7f1917 41be339 f025ae9 ef2cb63 dcfd299 5d3e702 2704624 2771a18 0e4c7d0 (moneromooo-monero)
2018-06-27unit_tests: do not recreate the same base rct sig all the timemoneromooo-monero1-4/+18
Helps a bit when running with valgrind
2018-06-26threadpool: allow leaf functions to run concurrentlymoneromooo-monero1-6/+51
Decrease the number of worker threads by one to account for the fact the calling thread acts as a worker thread now
2018-06-26replace std::list with std::vector on some hot pathsmoneromooo-monero10-29/+29
also use reserve where appropriate
2018-06-25Merge pull request #3962luigi11112-0/+2
55c7fb8 epee: adaptive connection timeout system (moneromooo-monero)
2018-06-23Changed URLs to HTTPSeinsteinsfool1-1/+1
2018-06-20rpc: add blockchain disk size to getinfomoneromooo-monero1-0/+1
This should help new nodes predict how much disk space will be needed for a full sync
2018-06-20Merge pull request #3938luigi11111-0/+10
01cc978 ringct: remove an unnecessary scalarmultBase in zeroCommit (moneromooo-monero)
2018-06-20Merge pull request #3902luigi11111-0/+32
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-17Merge pull request #3691luigi11112-0/+102
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-13wallet: on first refresh, start off with a quantized heightmoneromooo-monero1-7/+7
for privacy reasons, so an untrusted node can't easily track wallets from IP address to IP address, etc. The granularity is 1024 blocks, which is about a day and a half.
2018-06-10epee: adaptive connection timeout systemmoneromooo-monero2-0/+2
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-08Merge pull request #3604luigi11112-5/+2
54d9fff gtest: Fix compilation on MinGW with pthread /googletest#621 (stoffu)
2018-06-08Merge pull request #3450luigi11112-0/+2
3b941be core: add get_earliest_ideal_height_for_version() (stoffu)
2018-06-08Merge pull request #3444luigi11111-0/+127
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-06ringct: remove an unnecessary scalarmultBase in zeroCommitmoneromooo-monero1-0/+10
2018-06-01unit_tests: add tests for local IP range detectionmoneromooo-monero1-0/+32
2018-05-31Merge pull request #3592luigi11112-1/+166
90a16b1 crypto: fix initialization order issue with random mutex (moneromooo-monero) 6a61f52 unit_tests: add ringdb unit tests (moneromooo-monero)
2018-05-30Merge pull request #3504luigi11111-1/+1
a0a810c performance_tests: fix subaddress expansion test not expanding (moneromooo-monero)
2018-05-30unit_tests/hardfork: add tests for get_voting_info()stoffu1-0/+49
2018-05-30hardfork: fix get_next_version()stoffu1-0/+29
2018-05-30unit_tests/hardfork: add tests for check_for_height()stoffu1-0/+24
2018-05-30hardfork: fix get_earliest_ideal_height_for_version() to support ↵stoffu1-0/+25
non-existent versions
2018-05-29Merge pull request #3251luigi11111-2/+4
b9389e5 db_lmdb: save pruned and prunable tx data separately (moneromooo-monero)
2018-05-23db_lmdb: save pruned and prunable tx data separatelymoneromooo-monero1-2/+4
This bumps DB version to 2, migration code will run for v1 DBs
2018-05-21unit_tests: fix build after get_output_didstribution signature changemoneromooo-monero1-1/+1
2018-05-21speed up get_output_distribution (and precalc common case)moneromooo-monero1-0/+1
2018-05-21Merge pull request #3809Riccardo Spagni2-8/+5
b88c9a00 unit_tests: set default data dir to the source tree at build time (moneromooo-monero)
2018-05-21Revert "Merge pull request #3775"Riccardo Spagni1-1/+1
This reverts commit 20ef37bbcac7715d5299dd77d401583420e07ced, reversing changes made to 40070a661fd2ff503e07f4ed48dfe9fe67cfa297.
2018-05-20unit_tests: add threadpool unit testmoneromooo-monero2-0/+102
2018-05-15unit_tests: set default data dir to the source tree at build timemoneromooo-monero2-8/+5
2018-04-28unit_tests: fix build after get_output_didstribution signature changemoneromooo-monero1-1/+1
2018-04-22Only log an error if fork version is higher AND is not known.Thaer Khawaja2-0/+2
2018-04-12unit_tests: add device unit testsmoneromooo-monero2-0/+132
Annoyingly, its locking semantics are borked since it does not do any locking
2018-04-11unit_tests: add ringdb unit testsmoneromooo-monero2-1/+166
2018-04-11gtest: Fix compilation on MinGW with pthread /googletest#621stoffu2-5/+2
2018-03-27performance_tests: fix subaddress expansion test not expandingmoneromooo-monero1-1/+1
2018-03-21core: add get_earliest_ideal_height_for_version()stoffu2-0/+2
2018-03-16Merge pull request #3336Riccardo Spagni2-4/+4
57c0b1ed Fix typos in various files (Dimitris Apostolou)
2018-03-16add RPC to get a histogram of outputs of a given amountmoneromooo-monero1-1/+2
2018-03-15Fix typos in various filesDimitris Apostolou2-4/+4
2018-03-14tests/hash: correctly reference crypto HASH_SIZE for less confusionAnythingTechPro1-1/+1
2018-03-14chacha: call prehashed version explicitly as generate_chacha_key_prehashedstoffu1-2/+2
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-14crypto: revert odd namespace changes made in #3303stoffu1-6/+6
2018-03-14keypair::generate: always require hw::device to avoid possible mistakestoffu3-4/+4
2018-03-14device: untangle cyclic depenencystoffu1-3/+0
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-14Merge pull request #3360Riccardo Spagni1-51/+51
1ff35fda Wallet API: make nettype non-defaulted to disambiguate from deprecated versions (and make libwallet_api_tests compilable) (stoffu)
2018-03-14fuzz_tests: set small subaddress lookahead for speedmoneromooo-monero3-0/+3
2018-03-06Wallet API: make nettype non-defaulted to disambiguate from deprecated ↵stoffu1-51/+51
versions (and make libwallet_api_tests compilable)
2018-03-05tweaks to the monerov1 cryptonight algorithmLee Clagett1-5/+5
2018-03-05Monero Cryptonight variants, and add one for v7moneromooo-monero3-3/+15
This is the first variant of many, with the intent to improve Monero's resistance to ASICs and encourage mining decentralization.
2018-03-05Merge pull request #3277Riccardo Spagni11-38/+38
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-05Correct spelling mistakes.Edward Betts5-5/+5
2018-03-05Stagenetstoffu11-38/+38
2018-03-04Code modifications to integrate Ledger HW device into monero-wallet-cli.cslashm14-32/+48
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-02-20Merge pull request #3245Riccardo Spagni2-17/+28
54c256bc unit_tests.serialization: refactored with ASSERT_EQ_MAP (stoffu) e6a60938 unit_tests: added gtest utility ASSERT_EQ_MAP for easily testing key-value map (stoffu)
2018-02-16options: remove testnet-* optionswhythat1-2/+1
2018-02-16Merge pull request #3226Riccardo Spagni3-4/+5
e4646379 keccak: fix mdlen bounds sanity checking (moneromooo-monero) 2e3e90ac pass large parameters by const ref, not value (moneromooo-monero) 61defd89 blockchain: sanity check number of precomputed hash of hash blocks (moneromooo-monero) 9af6b2d1 ringct: fix infinite loop in unused h2b function (moneromooo-monero) 8cea8d0c simplewallet: double check a new multisig wallet is multisig (moneromooo-monero) 9b98a6ac threadpool: catch exceptions in dtor, to avoid terminate (moneromooo-monero) 24803ed9 blockchain_export: fix buffer overflow in exporter (moneromooo-monero) f3f7da62 perf_timer: rewrite to make it clear there is no division by zero (moneromooo-monero) c6ea3df0 performance_tests: remove add_arg call stray extra param (moneromooo-monero) fa6b4566 fuzz_tests: fix an uninitialized var in setup (moneromooo-monero) 03887f11 keccak: fix sanity check bounds test (moneromooo-monero) ad11db91 blockchain_db: initialize m_open in base class ctor (moneromooo-monero) bece67f9 miner: restore std::cout precision after modification (moneromooo-monero) 1aabd14c db_lmdb: check hard fork info drop succeeded (moneromooo-monero)
2018-02-16Merge pull request #3225Riccardo Spagni1-13/+15
71806327 dns: change default DNS to a worldwide selection (moneromooo-monero)
2018-02-12unit_tests.serialization: refactored with ASSERT_EQ_MAPstoffu1-17/+21
2018-02-12unit_tests: added gtest utility ASSERT_EQ_MAP for easily testing key-value mapstoffu1-0/+7
2018-02-08dns: change default DNS to a worldwide selectionmoneromooo-monero1-13/+15
DNSSEC aware servers picked from https://wiki.ipfire.org/dns/public-servers
2018-02-07Fix coverity issues in performance_tests/main.cpph9087141241-0/+2
2018-02-02pass large parameters by const ref, not valuemoneromooo-monero1-1/+1
Coverity 136394 136397 136409 136526 136529 136533 175302
2018-02-02performance_tests: remove add_arg call stray extra parammoneromooo-monero1-1/+1
Coverity 182572
2018-02-02fuzz_tests: fix an uninitialized var in setupmoneromooo-monero1-2/+3
and comment it out, it's only used to generate a starting test case Coverity 182506
2018-01-28Tests: Fix building of two fuzz tests on WindowsiDunk54001-0/+2
2018-01-27Merge pull request #3185Riccardo Spagni1-8/+8
fccd1df1 performance_tests: fix build after merging two conflicting patches (moneromooo-monero)
2018-01-27Merge pull request #3151Riccardo Spagni1-5/+5
ab2e9953 unit_tests: do not ASSERT_TRUE(decodeRct(...)) (moneromooo-monero)
2018-01-26Readd copyright starting datexmr-eric27-27/+27
2018-01-26Update 2018 copyrightxmr-eric144-144/+144
2018-01-26performance_tests: fix build after merging two conflicting patchesmoneromooo-monero1-8/+8
2018-01-25Merge pull request #3082Riccardo Spagni1-1/+1
8b50209c fix for warning (Onur Altun)
2018-01-25Merge pull request #3064Riccardo Spagni2-63/+108
62c45c0d performance_tests: add a --filter option to select what to run (moneromooo-monero)
2018-01-25Merge pull request #3057Riccardo Spagni1-1/+2
9ffa97fe Factor the monero donation address (Maxithi)
2018-01-25Merge pull request #3042Riccardo Spagni2-0/+97
ed215d34 performance_tests: add RingCT MLSAG gen/ver tests (moneromooo-monero)
2018-01-18unit_tests: do not ASSERT_TRUE(decodeRct(...))moneromooo-monero1-5/+5
decodeRct returns the amount, which may be zero
2018-01-10Merge pull request #2993Riccardo Spagni1-1/+1
776b44f1 Add misc hardening flags to the cmake machinery (moneromooo-monero)
2018-01-10Merge pull request #2990Riccardo Spagni2-2/+0
2d17feb0 factor STL container serialization (moneromooo-monero)
2018-01-10Merge pull request #2985Riccardo Spagni2-9/+15
6d8b29ef fix some link errors in debug mode for macos (stoffu) fdd4c5e5 move memwipe to epee to avoid common<->crypto circular dependencies (moneromooo-monero) 40ab12a7 epee: remove dependency on common (moneromooo-monero)
2018-01-10Merge pull request #2971Riccardo Spagni1-1/+1
ae860230 Fix exceptions not finding txpool txes when relaying (moneromooo-monero)
2018-01-10move memwipe to epee to avoid common<->crypto circular dependenciesmoneromooo-monero1-1/+1
2018-01-10epee: remove dependency on commonmoneromooo-monero1-8/+14
2018-01-08fix for warningOnur Altun1-1/+1
monero/tests/unit_tests/memwipe.cpp:50:8: Warning: suggest explicit braces to avoid ambiguous 'else' [-Wdangling-else] if (wipe) ASSERT_TRUE(memcmp(quux, "bar", 3));
2018-01-05Factor the monero donation addressMaxithi1-1/+2
Signed-off-by: Maxithi <34792056+Maxithi@users.noreply.github.com>
2018-01-04performance_tests: add a --filter option to select what to runmoneromooo-monero2-63/+108
Removes a good bit of annoyance running those
2018-01-02Merge pull request #2964Riccardo Spagni1-24/+0
3ed1a74c tests: remove unused/unfinished keccak bits (moneromooo-monero)
2018-01-02Merge pull request #2963Riccardo Spagni4-43/+4
0e19a394 tests: test wallets don't need a dummy temp file anymore (moneromooo-monero)
2018-01-02Merge pull request #2956Riccardo Spagni3-0/+70
dc642631 performance_tests: add a test for subaddress expansion (moneromooo-monero)
2017-12-31performance_tests: add RingCT MLSAG gen/ver testsmoneromooo-monero2-0/+97
2017-12-31Add misc hardening flags to the cmake machinerymoneromooo-monero1-1/+1
See https://wiki.debian.org/Hardening#User_Space
2017-12-28Merge pull request #2955Riccardo Spagni1-0/+1
0bcaf86c tests: fix link error in hash tests now needing common (moneromooo-monero)
2017-12-28Merge pull request #2944Riccardo Spagni1-1/+1
223e3788 unit_tests: fix memwipe test comparison (moneromooo-monero)
2017-12-25Add a chacha20 variant to go with chacha8moneromooo-monero3-6/+6
2017-12-25Merge pull request #2920Riccardo Spagni1-3/+1
bd5cce07 network_throttle: fix ineffective locking (moneromooo-monero) e0a61299 network_throttle: remove unused xxx static member (moneromooo-monero) 24f584d9 cryptonote_core: remove unused functions with off by one bugs (moneromooo-monero) b1634aa3 blockchain: don't leave dangling pointers in this (moneromooo-monero) 8e60b81c cryptonote_core: fix db leak on error (moneromooo-monero) 213e326c abstract_tcp_server2: log init_server errors as fatal (moneromooo-monero) b51dc566 use const refs in for loops for non tiny types (moneromooo-monero) f0568ca6 net_parse_helpers: fix regex error checking (moneromooo-monero) b49ddc76 check accessing an element past the end of a container (moneromooo-monero) 2305bf26 check return value for generate_key_derivation and derive_public_key (moneromooo-monero) a4240d9f catch const exceptions (moneromooo-monero) 45a1c4c0 add empty container sanity checks when using front() and back() (moneromooo-monero) 56fa6ce1 tests: fix a buffer overread in a unit test (moneromooo-monero) b4524892 rpc: guard against json parsing a non object (moneromooo-monero) c2ed8618 easylogging++: avoid buffer underflow (moneromooo-monero) 187a6ab2 epee: trap failure to parse URI from request (moneromooo-monero) 061789b5 checkpoints: trap failure to load JSON checkpoints (moneromooo-monero) ba2fefb9 checkpoints: pass std::string by const ref, not const value (moneromooo-monero) 38c8f4e0 mlog: terminate a string at last char, just in case (moneromooo-monero) d753d716 fix a few leaks by throwing objects, not newed pointers to objects (moneromooo-monero) fe568db8 p2p: use size_t for arbitrary counters instead of uint8_t (moneromooo-monero) 46d6fa35 cryptonote_protocol: sanity check chain hashes from peer (moneromooo-monero) 25584f86 cryptonote_protocol: print peer versions when unexpected (moneromooo-monero) 490a5d41 rpc: do not try to use an invalid txid in relay_tx (moneromooo-monero)
2017-12-25Merge pull request #2905Riccardo Spagni16-32/+833
bd1f6029 http_client: rewrite header parsing manually for speed (moneromooo-monero) ec724eb6 tests: add levin fuzz test (moneromooo-monero) f1bdc9a4 tests: add http client fuzz test (moneromooo-monero) 0272df9e add parse_url fuzz test (moneromooo-monero) 261b0dd0 tests: add base58 fuzz test (moneromooo-monero) fd052087 fuzz_testing: allow automatically resuming an interrupted job (moneromooo-monero) c80bb0eb tests: don't init stuff we don't need in fuzz tests - faster (moneromooo-monero) 53b83a83 tests: better load-from-binary fuzz test data file (moneromooo-monero) 1a379ef6 fuzz_testing: build with ASAN (assumed to be available) (moneromooo-monero) 4cd4a431 fuzz_testing: create out directory if needed, and fix filename passing (moneromooo-monero) c27d9092 Makefile: build fuzz tests statically, starts faster (moneromooo-monero) 95aa0bf7 add load_from_binary/load_from_json fuzzers (moneromooo-monero)
2017-12-25Merge pull request #2890Riccardo Spagni1-0/+2
83b0f9e6 version: add -master to master version (moneromooo-monero) 493f7d09 util: allow non numeric version parts (moneromooo-monero)
2017-12-23tests: add levin fuzz testmoneromooo-monero3-0/+359
2017-12-23tests: add http client fuzz testmoneromooo-monero3-0/+120
2017-12-23add parse_url fuzz testmoneromooo-monero4-0/+89
2017-12-23tests: add base58 fuzz testmoneromooo-monero4-0/+87