aboutsummaryrefslogtreecommitdiff
path: root/tests/unit_tests (follow)
AgeCommit message (Collapse)AuthorFilesLines
2019-05-20unit_tests: make the density test a bit less stringentmoneromooo-monero1-1/+1
It's an inherently random test
2019-05-07Merge pull request #5510Riccardo Spagni1-4/+4
e9809382 fix wide difficulty conversion with some versions of boost (moneromooo-monero)
2019-05-07Merge pull request #5508Riccardo Spagni1-3/+1
1c44e658 wallet2: reject standalone short payment IDs in monero: URI API (moneromooo-monero)
2019-05-07Merge pull request #5499Riccardo Spagni2-0/+203
a4c4a2d8 blockchain: keep a rolling long term block weight median (moneromooo-monero)
2019-05-07Merge pull request #5496Riccardo Spagni1-11/+18
0eb0d6b8 rpc: improve get_output_distribution (moneromooo-monero)
2019-05-02blockchain: keep a rolling long term block weight medianmoneromooo-monero2-0/+203
2019-05-01fix wide difficulty conversion with some versions of boostmoneromooo-monero1-4/+4
2019-05-01wallet2: reject standalone short payment IDs in monero: URI APImoneromooo-monero1-3/+1
2019-04-25unit_tests: fix crash in debug in output_distribution testmoneromooo-monero1-0/+7
updating the block size limit needs recent block sizes, so we feed it dummy ones
2019-04-25rpc: improve get_output_distributionmoneromooo-monero1-11/+18
It can now handle small reorgs without having to rescan the whole blockchain. Also add a test for it.
2019-04-23unit_tests: don't delete log file on windows, it will failmoneromooo-monero1-0/+3
2019-04-19Fix socks tests in windows and handle errors betterLee Clagett1-7/+13
2019-04-18wallet2: "output lineup" fake out selectionmoneromooo-monero1-0/+117
Based on python code by sarang: https://github.com/SarangNoether/skunkworks/blob/outputs/outputs/simulate.py
2019-04-17Merge pull request #5413Riccardo Spagni1-6/+6
5fafb90e testdb: add override keyword where missing (stoffu)
2019-04-17testdb: add override keyword where missingstoffu1-6/+6
and delete obsolete BlockchainBDB::get_tx_output_indices along the way
2019-04-16unit_tests: undo is_blocked implementation factoringmoneromooo-monero1-1/+12
The is_host_blocked method is not on master yet
2019-04-16Merge pull request #5425Riccardo Spagni1-12/+17
58585986 p2p: fix integer overflow in host bans (moneromooo-monero)
2019-04-16Merge pull request #5424Riccardo Spagni2-142/+57
93bb2f48 ringct: prevent use of full ringct signatures for more than one input (moneromooo-monero)
2019-04-16Merge pull request #5414Riccardo Spagni1-8/+9
e9fac29a unit_tests/long_term_block_weight: some tweaks that seem to make more sense (stoffu) 467f4c7e tests/block_weight: use integer division when computing median (stoffu) 815d08dc tests/block_weight: remove unused MULTIPLIER_SMALL (stoffu) 661f1fb8 blockchain: remove unused calc of short_term_constraint (stoffu)
2019-04-14blockchain_db: fix db txn ending too earlymoneromooo-monero1-0/+4
The db txn in add_block ending caused the entire overarching batch txn to stop. Also add a new guard class so a db txn can be stopped in the face of exceptions. Also use a read only db txn in init when the db itself is read only, and do not save the max tx size in that case.
2019-04-11p2p: fix integer overflow in host bansmoneromooo-monero1-12/+17
2019-04-11ringct: prevent use of full ringct signatures for more than one inputmoneromooo-monero2-142/+57
2019-04-09unit_tests/long_term_block_weight: some tweaks that seem to make more sensestoffu1-8/+9
2019-04-06Merge pull request #5391Riccardo Spagni1-0/+5
71907980 unit_tests: fix long term block weight test after cache change (moneromooo-monero)
2019-04-06Merge pull request #5341Riccardo Spagni1-6/+7
0218bc49 test: hmac_keccak - fix number of chunks counting (Dusan Klinec)
2019-04-03unit_tests: fix long term block weight test after cache changemoneromooo-monero1-0/+5
2019-04-01Merge pull request #5239Riccardo Spagni3-0/+92
91f4c7f4 Make difficulty 128 bit instead of 64 bit (moneromooo-monero)
2019-03-25Added socks proxy (tor/i2pd/kovri) support to walletLee Clagett2-1/+91
2019-03-24Make difficulty 128 bit instead of 64 bitmoneromooo-monero3-0/+92
Based on Boolberry work by: jahrsg <jahr@jahr.me> cr.zoidberg <crypto.zoidberg@gmail.com>
2019-03-24test: hmac_keccak - fix number of chunks countingDusan Klinec1-6/+7
2019-03-24Merge pull request #5274Riccardo Spagni1-1/+1
dc0c0c91 tests: disable wallet SSL init for tests involving wallet2 (moneromooo-monero)
2019-03-21Merge pull request #5256Riccardo Spagni1-0/+12
4b21d38d blockchain: speed up getting N blocks weights/long term weights (moneromooo-monero)
2019-03-21Merge pull request #5211Riccardo Spagni2-0/+153
c9b13fbb tests/trezor: HF9 and HF10 tests (Dusan Klinec) a1fd1d49 device/trezor: HF10 support added, wallet::API (Dusan Klinec) d74d26f2 crypto: hmac_keccak added (Dusan Klinec)
2019-03-20crypto: hmac_keccak addedDusan Klinec2-0/+153
2019-03-19Adding classes, functions, and utilities for common LMDB operations.Lee Clagett2-0/+406
2019-03-12tests: disable wallet SSL init for tests involving wallet2moneromooo-monero1-1/+1
2019-03-08blockchain: speed up getting N blocks weights/long term weightsmoneromooo-monero1-0/+12
2019-03-05Update 2019 copyrightbinaryFate46-46/+46
2019-03-05Merge pull request #4852Riccardo Spagni1-0/+19
057c279c epee: add SSL support (Martijn Otto)
2019-03-05epee: add SSL supportMartijn Otto1-0/+19
RPC connections now have optional tranparent SSL. An optional private key and certificate file can be passed, using the --{rpc,daemon}-ssl-private-key and --{rpc,daemon}-ssl-certificate options. Those have as argument a path to a PEM format private private key and certificate, respectively. If not given, a temporary self signed certificate will be used. SSL can be enabled or disabled using --{rpc}-ssl, which accepts autodetect (default), disabled or enabled. Access can be restricted to particular certificates using the --rpc-ssl-allowed-certificates, which takes a list of paths to PEM encoded certificates. This can allow a wallet to connect to only the daemon they think they're connected to, by forcing SSL and listing the paths to the known good certificates. To generate long term certificates: openssl genrsa -out /tmp/KEY 4096 openssl req -new -key /tmp/KEY -out /tmp/REQ openssl x509 -req -days 999999 -sha256 -in /tmp/REQ -signkey /tmp/KEY -out /tmp/CERT /tmp/KEY is the private key, and /tmp/CERT is the certificate, both in PEM format. /tmp/REQ can be removed. Adjust the last command to set expiration date, etc, as needed. It doesn't make a whole lot of sense for monero anyway, since most servers will run with one time temporary self signed certificates anyway. SSL support is transparent, so all communication is done on the existing ports, with SSL autodetection. This means you can start using an SSL daemon now, but you should not enforce SSL yet or nothing will talk to you.
2019-03-05cryptonote: avoid double parsing blocks when syncingmoneromooo-monero1-2/+2
2019-03-05save some database calls when getting top block hash and heightmoneromooo-monero1-1/+3
2019-03-05Avoid repeated (de)serialization when syncingmoneromooo-monero2-29/+29
2019-03-04Merge pull request #5117Riccardo Spagni1-1/+0
fcd00079 unit_tests: remove leftover debug print (moneromooo-monero)
2019-03-04ArticMine's new block weight algorithmmoneromooo-monero6-175/+414
This curbs runaway growth while still allowing substantial spikes in block weight Original specification from ArticMine: here is the scaling proposal Define: LongTermBlockWeight Before fork: LongTermBlockWeight = BlockWeight At or after fork: LongTermBlockWeight = min(BlockWeight, 1.4*LongTermEffectiveMedianBlockWeight) Note: To avoid possible consensus issues over rounding the LongTermBlockWeight for a given block should be calculated to the nearest byte, and stored as a integer in the block itself. The stored LongTermBlockWeight is then used for future calculations of the LongTermEffectiveMedianBlockWeight and not recalculated each time. Define: LongTermEffectiveMedianBlockWeight LongTermEffectiveMedianBlockWeight = max(300000, MedianOverPrevious100000Blocks(LongTermBlockWeight)) Change Definition of EffectiveMedianBlockWeight From (current definition) EffectiveMedianBlockWeight = max(300000, MedianOverPrevious100Blocks(BlockWeight)) To (proposed definition) EffectiveMedianBlockWeight = min(max(300000, MedianOverPrevious100Blocks(BlockWeight)), 50*LongTermEffectiveMedianBlockWeight) Notes: 1) There are no other changes to the existing penalty formula, median calculation, fees etc. 2) There is the requirement to store the LongTermBlockWeight of a block unencrypted in the block itself. This is to avoid possible consensus issues over rounding and also to prevent the calculations from becoming unwieldy as we move away from the fork. 3) When the EffectiveMedianBlockWeight cap is reached it is still possible to mine blocks up to 2x the EffectiveMedianBlockWeight by paying the corresponding penalty. Note: the long term block weight is stored in the database, but not in the actual block itself, since it requires recalculating anyway for verification.
2019-02-01unit_tests: remove leftover debug printmoneromooo-monero1-1/+0
2019-01-28Adding initial support for broadcasting transactions over TorLee Clagett4-8/+936
- Support for ".onion" in --add-exclusive-node and --add-peer - Add --anonymizing-proxy for outbound Tor connections - Add --anonymous-inbounds for inbound Tor connections - Support for sharing ".onion" addresses over Tor connections - Support for broadcasting transactions received over RPC exclusively over Tor (else broadcast over public IP when Tor not enabled).
2019-01-28notify: handle arbitrary tagsmoneromooo-monero1-1/+1
2019-01-28Merge pull request #5064Riccardo Spagni1-0/+36
5ecc5cc7 added two tests for partial word and case tolerance in mnemonics (Paul Shapiro)
2019-01-28Merge pull request #5052Riccardo Spagni5-38/+23
b6534c40 ringct: remove unused senderPk from ecdhTuple (moneromooo-monero) 7d375981 ringct: the commitment mask is now deterministic (moneromooo-monero) 99d946e6 ringct: encode 8 byte amount, saving 24 bytes per output (moneromooo-monero) cdc3ccec ringct: save 3 bytes on bulletproof size (moneromooo-monero) f931e16c add a bulletproof version, new bulletproof type, and rct config (moneromooo-monero)
2019-01-22ringct: remove unused senderPk from ecdhTuplemoneromooo-monero2-4/+0
This was an early ringct field, which was never used in production
2019-01-22ringct: the commitment mask is now deterministicmoneromooo-monero2-36/+0
saves space in the tx and is safe Found by knaccc
2019-01-22ringct: encode 8 byte amount, saving 24 bytes per outputmoneromooo-monero2-5/+21
Found by knaccc
2019-01-22add a bulletproof version, new bulletproof type, and rct configmoneromooo-monero4-10/+19
This makes it easier to modify the bulletproof format
2019-01-22Pruningmoneromooo-monero3-0/+243
The blockchain prunes seven eighths of prunable tx data. This saves about two thirds of the blockchain size, while keeping the node useful as a sync source for an eighth of the blockchain. No other data is currently pruned. There are three ways to prune a blockchain: - run monerod with --prune-blockchain - run "prune_blockchain" in the monerod console - run the monero-blockchain-prune utility The first two will prune in place. Due to how LMDB works, this will not reduce the blockchain size on disk. Instead, it will mark parts of the file as free, so that future data will use that free space, causing the file to not grow until free space grows scarce. The third way will create a second database, a pruned copy of the original one. Since this is a new file, this one will be smaller than the original one. Once the database is pruned, it will stay pruned as it syncs. That is, there is no need to use --prune-blockchain again, etc.
2019-01-18Merge pull request #5028Riccardo Spagni1-1/+1
464097e5 blockchain_ancestry: allow getting ancestry of a single output (moneromooo-monero) a6216d1a blockchain_db: allow getting output keys without commitment (moneromooo-monero)
2019-01-16blockchain_db: allow getting output keys without commitmentmoneromooo-monero1-1/+1
Since the commitment has to be calculated for non rct outputs, it slows down a lot unnecessarily if we don't need it
2019-01-16epee: speedup word/number matchingmoneromooo-monero1-0/+84
Number matching semantics are slightly changed: since this is used as a filter to check whether a number is signed and/or floating point, we can speed this up further. strto* functions are called afterwards and will error out where necessary. We now also accept numbers like .4 which were not accepted before. The strto* calls on a boost::string_ref will not access unallocated memory since the parsers always stop at the first bad character, and the original string is zero terminated. in arbitrary time measurement units for some arbitrary test case: match_number2: 235 -> 70 match_word2: 330 -> 108
2019-01-16Merge pull request #4984Riccardo Spagni1-1/+1
008647d7 blockchain_db: speedup tx output gathering (moneromooo-monero)
2019-01-16Merge pull request #4976Riccardo Spagni2-4/+73
85665003 epee: better network buffer data structure (moneromooo-monero)
2019-01-11added two tests for partial word and case tolerance in mnemonicsPaul Shapiro1-1/+36
2019-01-07Make get_output_key method constmoneroexamples1-2/+2
get_output_key method is commonly used when working with txs and their key images. Because the method is not const, passing blockchain object though const& or pointers to const is not possible in this context. This is especially problematic in external projects (e.g., projects in moneroexamples) that use monero C++ api to operate on the blockchain and txs. Thus, having get_output_key method will simplify moving blockchain object around through const references and pointers to const objects.
2019-01-06Merge pull request #4952Riccardo Spagni1-3/+3
570dd369 p2p: use vector instead of list for peer lists (moneromooo-monero)
2018-12-31Merge pull request #4941luigi11111-5/+16
1cfd6f1 unit_tests: strengthen notify test against OS scheduling (moneromooo-monero)
2018-12-23epee: better network buffer data structuremoneromooo-monero2-4/+73
avoids pointless allocs and memcpy
2018-12-18blockchain_db: speedup tx output gatheringmoneromooo-monero1-1/+1
We know all the data we'll want for getblocks.bin is contiguous
2018-12-12Merge pull request #4901Riccardo Spagni1-0/+1
a48f2dab blockchain_prune_known_spent_data: blackball file is now optional (moneromooo-monero) 17b45725 Outputs where all amounts are known spent can now be pruned (moneromooo-monero)
2018-12-12Merge pull request #4787Riccardo Spagni1-0/+1
3dba7f25 protocol: option to pad transaction relay to the next kB (moneromooo-monero)
2018-12-07p2p: use vector instead of list for peer listsmoneromooo-monero1-3/+3
2018-12-05unit_tests: strengthen notify test against OS schedulingmoneromooo-monero1-5/+16
2018-12-04Merge pull request #4895Riccardo Spagni1-1/+1
3de7d52f unit_tests: fix malloc/delete mismatch (moneromooo-monero)
2018-12-04Merge pull request #4894Riccardo Spagni5-9/+6
aee7a4e3 wallet_rpc_server: do not use RPC data if the call failed (moneromooo-monero) 1a0733e5 windows_service: fix memory leak (moneromooo-monero) 0dac3c64 unit_tests: do not rethrow a copy of an exception (moneromooo-monero) 5d9915ab cryptonote: fix get_unit for non default settings (moneromooo-monero) d4f50cb1 remove some unused code (moneromooo-monero) 61163971 a few minor (but easy) performance tweaks (moneromooo-monero) 30023074 tests: slow_memmem now returns size_t (moneromooo-monero)
2018-12-04move int-util.h to epeemoneromooo-monero1-1/+1
2018-12-04Merge pull request #4854Riccardo Spagni1-1/+1
bd98e99c Removed a lot of unnecessary includes (Martijn Otto)
2018-12-04Merge pull request #4850Riccardo Spagni1-0/+29
b36353e2 unit_tests: add some hex parsing test for non hex input (xiphon) 6671110c unit_tests: add a test for parse_hexstr_to_binbuff (moneromooo-monero) f6187cd8 epee: speed up parse_hexstr_to_binbuff a little (Howard Chu)
2018-12-04Merge pull request #4848Riccardo Spagni1-1/+4
80be2dca unit_tests: don't take the address of an unwrapped secret key (moneromooo-monero)
2018-11-27Outputs where all amounts are known spent can now be prunedmoneromooo-monero1-0/+1
Only for pre rct for obvious reasons. Note: DO NOT use a known spent list which includes outputs which are not known spent. If the list includes any output that's just strongly thought to be spent, but not provably so, you risk finding yourself unable to sync past the point where that output is spent. I estimate only 200 MB saved on current mainnet though, unless the new blackballing rule unearths a good amount of large-amount-set extra spent outs.
2018-11-26Merge pull request #4821Riccardo Spagni1-1/+1
fc98f7a0 rpc: speedup get_outs.bin (moneromooo-monero)
2018-11-26rpc: speedup get_outs.binmoneromooo-monero1-1/+1
2018-11-26Merge pull request #4832Riccardo Spagni2-0/+178
9da6c52b unit_tests: add logging unit test (moneromooo-monero)
2018-11-23unit_tests: fix malloc/delete mismatchmoneromooo-monero1-1/+1
2018-11-23unit_tests: do not rethrow a copy of an exceptionmoneromooo-monero1-1/+1
Found by codacy.com
2018-11-23remove some unused codemoneromooo-monero3-4/+1
Found by codacy.com
2018-11-23tests: slow_memmem now returns size_tmoneromooo-monero1-4/+4
Makes more sense than uint64_t for an offset, and agrees with the %zu used to print results. Found by codacy.com
2018-11-16unit_tests: don't take the address of an unwrapped secret keymoneromooo-monero1-1/+4
2018-11-16tests: add unit tests for get_output_distributionmoneromooo-monero4-87/+325
2018-11-16Merge pull request #4803Riccardo Spagni1-2/+2
fa3f756b unit_tests: fix leak when the test check fails (moneromooo-monero)
2018-11-16Merge pull request #4795Riccardo Spagni1-0/+19
5d7c2316 rct: add a zeroCommit cache for common pre-rct case (moneromooo-monero)
2018-11-15unit_tests: add some hex parsing test for non hex inputxiphon1-0/+16
2018-11-15unit_tests: add a test for parse_hexstr_to_binbuffmoneromooo-monero1-0/+13
2018-11-15Removed a lot of unnecessary includesMartijn Otto1-1/+1
2018-11-14Merge pull request #4769Riccardo Spagni1-1/+1
5808530f blockchain: remove unused output_scan_worker parameter (moneromooo-monero) 1426209a blockchain: don't run threads if we have just one function to run (moneromooo-monero) 6f7a5fd4 db_lmdb: slight speedup getting array data from the blockchain (moneromooo-monero) 99fbe100 db_lmdb: save some string copies for readonly db keys/values (moneromooo-monero) bf31447e tx_pool: speed up take_tx for transactions from blocks (moneromooo-monero) 4f005a77 tx_pool: remove unnecessary get_transaction_hash (moneromooo-monero) 593ef598 perf_timer: call reserve on new timer array (moneromooo-monero) 6ecc99ad core: avoid unnecessary tx/blob conversions (moneromooo-monero) 00cc1a16 unit_tests: notify test special case for the usual weirdo (moneromooo-monero)
2018-11-09unit_tests: add logging unit testmoneromooo-monero2-0/+178
2018-11-06Merge pull request #4739Riccardo Spagni1-1/+1
9c1c92db tests: fix MSYS2 gcc 7.3.0 warning -Wtype-limits (xiphon)
2018-11-06protocol: option to pad transaction relay to the next kBmoneromooo-monero1-0/+1
To help protect one's privacy from traffic volume analysis for people using Tor or I2P. This will really fly once we relay txes on a timer rather than on demand, though. Off by default for now since it's wasteful and doesn't bring anything until I2P's in.
2018-11-05unit_tests: fix leak when the test check failsmoneromooo-monero1-2/+2
Coverity 189527
2018-11-04simplewallet: print the number of show/all transfersmoneromooo-monero1-1/+0
2018-11-04wallet2: only export necessary outputs and key imagesmoneromooo-monero1-1/+13
and disable annoying test that requires ridiculous amounts of skullduggery every time some format changes
2018-11-04rct: add a zeroCommit cache for common pre-rct casemoneromooo-monero1-0/+19
This is called for every pre-rct output at blockchain sync time, and a lot of them wil hit the cache, saving a scalarmult each.
2018-11-01core: avoid unnecessary tx/blob conversionsmoneromooo-monero1-1/+1
2018-11-01unit_tests: notify test special case for the usual weirdomoneromooo-monero1-1/+5
2018-10-29tests: fix MSYS2 gcc 7.3.0 warning -Wtype-limitsxiphon1-1/+1
2018-10-27unit_tests: fix notify unit test when /tmp does not existmoneromooo-monero1-1/+9
2018-10-26Merge pull request #4721Riccardo Spagni1-1/+5
a9f9406c unit_tests: notify test special case for the usual weirdo (moneromooo-monero)
2018-10-26Merge pull request #4613Riccardo Spagni1-0/+10
45a6880d unit_tests: call umask before mkstemp (moneromooo-monero)
2018-10-26Merge pull request #4308Riccardo Spagni1-0/+84
9907ea06 cryptonote: sort tx_extra fields (moneromooo-monero)
2018-10-24unit_tests: notify test special case for the usual weirdomoneromooo-monero1-1/+5
2018-10-23Merge pull request #4640Riccardo Spagni1-1/+1
11415128 unit_tests: fix notify test when run from make *test (moneromooo-monero)
2018-10-20Merge pull request #4521Riccardo Spagni1-0/+21
6653062e unit_tests: add unit test for alloc alignment being a power of 2 (moneromooo-monero)
2018-10-18Rename "blackball" for claritymoneromooo-monero1-5/+5
Apparently some people seem to think it's a censorship list...
2018-10-17unit_tests: fix notify test when run from make *testmoneromooo-monero1-1/+1
2018-10-16unit_tests: call umask before mkstempmoneromooo-monero1-0/+10
Coverity 188788
2018-10-15Merge pull request #4481Riccardo Spagni3-1/+117
98c92258 unit_tests: add a notifier test (moneromooo-monero)
2018-10-08unit_tests: add unit test for alloc alignment being a power of 2moneromooo-monero1-0/+21
2018-10-07Merge pull request #4036Riccardo Spagni1-104/+75
9acf42d3 Multisig M/N functionality core tests added (naughtyfox) 9f3963e8 Arbitrary M/N multisig schemes: * support in wallet2 * support in monero-wallet-cli * support in monero-wallet-rpc * support in wallet api * support in monero-gen-trusted-multisig * unit tests for multisig wallets creation (naughtyfox)
2018-10-07cryptonote: sort tx_extra fieldsmoneromooo-monero1-0/+84
This removes some small amount of fingerprinting entropy. There is no consensus rule to require this since this field is technically free form, and a transaction is free to have custom data in it.
2018-10-02Merge pull request #4464Riccardo Spagni1-1/+1
bef1750f unit_tests: fix longstanding DNS related unit test (moneromooo-monero)
2018-10-01Arbitrary M/N multisig schemes:naughtyfox1-104/+75
* support in wallet2 * support in monero-wallet-cli * support in monero-wallet-rpc * support in wallet api * support in monero-gen-trusted-multisig * unit tests for multisig wallets creation
2018-10-01unit_tests: add a notifier testmoneromooo-monero3-1/+117
2018-09-29Merge pull request #4459Riccardo Spagni2-34/+39
bcf3f6af fuzz_tests: catch unhandled exceptions (moneromooo-monero) 3ebd05d4 miner: restore stream flags after changing them (moneromooo-monero) a093092e levin_protocol_handler_async: do not propagate exception through dtor (moneromooo-monero) 1eebb82b net_helper: do not propagate exceptions through dtor (moneromooo-monero) fb6a3630 miner: do not propagate exceptions through dtor (moneromooo-monero) 2e2139ff epee: do not propagate exception through dtor (moneromooo-monero) 0749a8bd db_lmdb: do not propagate exceptions in dtor (moneromooo-monero) 1b0afeeb wallet_rpc_server: exit cleanly on unhandled exceptions (moneromooo-monero) 418a9936 unit_tests: catch unhandled exceptions (moneromooo-monero) ea7f9543 threadpool: do not propagate exceptions through the dtor (moneromooo-monero) 6e855422 gen_multisig: nice exit on unhandled exception (moneromooo-monero) 53df2deb db_lmdb: catch error in mdb_stat calls during migration (moneromooo-monero) e67016dd blockchain_blackball: catch failure to commit db transaction (moneromooo-monero) 661439f4 mlog: don't remove old logs if we failed to rename the current file (moneromooo-monero) 5fdcda50 easylogging++: test for NULL before dereference (moneromooo-monero) 7ece1550 performance_test: fix bad last argument calling add_arg (moneromooo-monero) a085da32 unit_tests: add check for page size > 0 before dividing (moneromooo-monero) d8b1ec8b unit_tests: use std::shared_ptr to shut coverity up about leaks (moneromooo-monero) 02563bf4 simplewallet: top level exception catcher to print nicer messages (moneromooo-monero) c57a65b2 blockchain_blackball: fix shift range for 32 bit archs (moneromooo-monero)
2018-09-29Merge pull request #4424Riccardo Spagni2-6/+6
92d1da28 unit_tests: fix build with GCC 5.4.0 on ubuntu (moneromooo-monero)
2018-09-29Merge pull request #4407Riccardo Spagni1-0/+24
43a06350 ringdb: use cursors to be a bit faster (moneromooo-monero)
2018-09-28unit_tests: fix longstanding DNS related unit testmoneromooo-monero1-1/+1
2018-09-21Merge pull request #4385Riccardo Spagni1-0/+32
6dbbc690 unit_tests: sanity check on transaction weight (moneromooo-monero)
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 #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 encryptionstoffu1-1/+1
2018-09-15unit_tests: sanity check on transaction weightmoneromooo-monero1-0/+32
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-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-11bulletproofs: speed up the latest changes a bitmoneromooo-monero1-0/+7
2018-09-11unit_tests: add a few more multiexp unit testsmoneromooo-monero1-2/+52
2018-09-11v8: per byte fee, pad bulletproofs, fixed 11 ring sizemoneromooo-monero5-73/+73
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-monero1-0/+61
2018-09-11add pippenger unit testsmoneromooo-monero1-0/+55
2018-09-11precalc the ge_p3 representation of Hmoneromooo-monero1-0/+7
2018-09-11unit_tests: a couple more bulletproof unit tests for gammamoneromooo-monero1-0/+19
2018-09-11Bulletproof aggregated verification and testsmoneromooo-monero1-12/+16
Also constrains bulletproofs to simple rct, for simplicity
2018-09-11aligned: aligned memory alloc/realloc/freemoneromooo-monero2-1/+88
2018-09-11bulletproofs: add aggregated verificationmoneromooo-monero2-0/+36
Ported from sarang's java code
2018-09-11make straus cached mode thread safe, and add tests for itmoneromooo-monero2-0/+150
2018-09-11bulletproofs: add multi output bulletproofs to rctmoneromooo-monero2-1/+64
2018-09-11bulletproofs: multi-output bulletproofsmoneromooo-monero1-0/+19
2018-09-10Merge pull request #4293luigi11112-1/+19
9d65399 is_hdd update (p8p)
2018-09-10record blackballs as amount/offset, and add export abilitymoneromooo-monero1-4/+4
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-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-monero1-0/+15
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-monero4-2/+87
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-08wallet: allow adjusting number of rounds for the key derivation functionstoffu1-1/+1
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 #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 #4061luigi11111-4/+18
e6f4d4a unit_tests: do not recreate the same base rct sig all the time (moneromooo-monero)
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 #3854luigi11111-0/+1
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-05crypto: remove slight bias in key generation due to modulomoneromooo-monero2-0/+48
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-27Merge pull request #3716luigi11112-11/+56
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-monero1-5/+5
also use reserve where appropriate
2018-06-25Merge pull request #3962luigi11111-0/+1
55c7fb8 epee: adaptive connection timeout system (moneromooo-monero)
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-10epee: adaptive connection timeout systemmoneromooo-monero1-0/+1
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 #3450luigi11111-0/+1
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-30unit_tests/hardfork: add tests for get_voting_info()stoffu1-0/+49
2018-05-30hardfork: fix get_next_version()stoffu1-0/+29