aboutsummaryrefslogtreecommitdiff
path: root/tests (follow)
AgeCommit message (Collapse)AuthorFilesLines
2024-07-16Merge pull request #9353luigi11111-0/+57
32f3245 cryptonote_protocol: prevent duplicate txs in fluff queue (0xFFFC0000)
2024-07-16Merge pull request #9338luigi1111235-235/+235
4a376d6 copyright: fix vector.h typo (hinto.janaiyo) d61e8e9 workflows: delete copyright.yml (plowsof) 341771a copyright: bump to 2024 (copyCat)
2024-07-16Merge pull request #8619luigi11114-35/+445
e71c8bf wallet: background sync with just the view key (j-berman)
2024-06-05cryptonote_protocol: prevent duplicate txs in fluff queue0xFFFC00001-0/+57
1. Fix duplicate transaction #9335 2. Add test for cases where there are duplicate transaction in fluff Co-authored-by: Boog900 <boog900@tutanota.com>
2024-05-24wallet: background sync with just the view keyj-berman4-35/+445
- When background syncing, the wallet wipes the spend key from memory and processes all new transactions. The wallet saves all receives, spends, and "plausible" spends of receives the wallet does not know key images for. - When background sync disabled, the wallet processes all background synced txs and then clears the background sync cache. - Adding "plausible" spends to the background sync cache ensures that the wallet does not need to query the daemon to see if any received outputs were spent while background sync was enabled. This would harm privacy especially for users of 3rd party daemons. - To enable the feature in the CLI wallet, the user can set background-sync to reuse-wallet-password or custom-background-password and the wallet automatically syncs in the background when the wallet locks, then processes all background synced txs when the wallet is unlocked. - The custom-background-password option enables the user to open a distinct background wallet that only has a view key saved and can be opened/closed/synced separately from the main wallet. When the main wallet opens, it processes the background wallet's cache. - To enable the feature in the RPC wallet, there is a new `/setup_background_sync` endpoint. - HW, multsig and view-only wallets cannot background sync.
2024-05-21add key exchange round booster to multisig_accountkoe1-20/+141
2024-05-21copyright: bump to 2024copyCat235-235/+235
2024-05-20Merge pull request #9305luigi11112-7/+9
de9c461 common: support boost filesystem copy_options. Co-authored-by: selsta <selsta@sent.at> (0xFFFC0000)
2024-05-20Merge pull request #9268luigi11111-0/+33
463228b Skip privacy networks (on tx sends) that don't have outgoing connections (Lee *!* Clagett)
2024-05-20Merge pull request #9257luigi11111-0/+92
d6609b8 serialization: do any N-tuple (jeffro256)
2024-05-20Merge pull request #9245luigi11112-11/+123
8e80585 functional_tests: test HTTP digest auth (jeffro256)
2024-05-20Merge pull request #9232luigi11113-191/+12
7194506 Blockchain: remove old fee calc logic (jeffro256)
2024-05-20Merge pull request #9198luigi11111-1/+1
e151ff7 update blake2b test vectors (koe) fa47c7b add blake2b to src/crypto (koe)
2024-05-20Merge pull request #9194luigi11111-0/+5
9d101d5 serialization: protect blob serialization from undefined behavior (jeffro256)
2024-05-20Merge pull request #9151luigi111121-35/+62
ff49444 @tobtoht: undo rebase changes tx.dsts -> tx_dsts (jeffro256) 38f354e Enforce Tx unlock_time is Zero by Relay Rule (jeffro256)
2024-05-20Merge pull request #9064luigi11112-0/+2
4689ad2 trezor: support c++17 and protobuf v25, libusb fix (Dusan Klinec)
2024-05-20Merge pull request #8920luigi11111-7/+6
236e5d4 update TimingsDatabase to support csv format and incremental updating (koe)
2024-05-20Merge pull request #8488luigi11112-8/+14
e0b3507 tests: update block_weight for 2021 scaling (moneromooo-monero)
2024-05-20Merge pull request #8396luigi11111-2/+7
a46b6ba contrib: add more valgrind suppressions for spurious issues (moneromooo-monero) 7f3e31d unit_tests: fix accessing invalid memory in tree_hash test (moneromooo-monero)
2024-05-20Merge pull request #7852luigi11111-14/+11
8d94d08 replace 'multisig()' with 'get_multisig_status()' using multisig_account_status and including '.kex_is_done' member (koe)
2024-04-30common: support boost filesystem copy_options.0xFFFC00002-7/+9
Co-authored-by: selsta <selsta@sent.at>
2024-04-10trezor: support c++17 and protobuf v25, libusb fixDusan Klinec2-0/+2
- fix If there is no protobuf version installed, if fails - passphrase test fix, wallet keys init was missing
2024-03-29Skip privacy networks (on tx sends) that don't have outgoing connectionsLee *!* Clagett1-0/+33
2024-03-21update blake2b test vectorskoe1-1/+1
2024-03-19serialization: do any N-tuplejeffro2561-0/+92
2024-03-11functional_tests: test HTTP digest authjeffro2562-11/+123
Test: 1. Can't login to RPC server with --rpc-login enabled, but no auth provided 2. Can access RPC server with correct login 3. Can use internal HTTP client to access RPC server with correct login With commit 0ae5c91e504b8007dedc2b89c9b2b49c404ffec6 not reverted, we fail test 3.
2024-03-10serialization: protect blob serialization from undefined behaviorjeffro2561-0/+5
There is currently no compiler protection when someone tries to do (for example) `BLOB_SERIALIZER(std::vector<int>)`. You just get runtime allocation errors. This has already eaten up dev time before, so this PR adds a static assertion that the type must be trivially copyable, as defined by the C++ standard. Types can override this if applicable if they use `BLOB_SERIALIZER_FORCED`.
2024-03-10Blockchain: remove old fee calc logicjeffro2563-191/+12
2024-03-07unit_tests: fix strtoul unit testjeffro2561-1/+0
2024-02-24Enforce Tx unlock_time is Zero by Relay Rulejeffro25621-35/+62
Related to https://github.com/monero-project/research-lab/issues/78 Added a relay rule that enforces the `unlock_time` field is equal to 0 for non-coinbase transactions. UIs changed: * Removed `locked_transfer` and `locked_sweep_all` commands from `monero-wallet-cli` APIs changed: * Removed `unlock_time` parameters from `wallet2` transfer methods * Wallet RPC transfer endpoints send error codes when requested unlock time is not 0 * Removed `unlock_time` parameters from `construct_tx*` cryptonote core functions
2024-02-24Merge pull request #9143luigi11111-0/+1
b1c9a80 Add <cstdint> to aligned test (Lee *!* Clagett)
2024-02-24Merge pull request #9138luigi11111-42/+37
cd7ccfb Disable/fix ports with I2P (Lee Clagett)
2024-02-24Merge pull request #9125luigi11114-465/+0
0c545f6 epee/test: remove levin_protocol_handler and core_proxy tests (jeffro256)
2024-02-24Merge pull request #8940luigi11111-0/+87
48b7d08 epee binary: container can read from empty seq of any type (jeffro256)
2024-02-20wallet: feature: transfer amount with fee includedjeffro2562-0/+138
To transfer ~5 XMR to an address such that your balance drops by exactly 5 XMR, provide a `subtractfeefrom` flag to the `transfer` command. For example: transfer 76bDHojqFYiFCCYYtzTveJ8oFtmpNp3X1TgV2oKP7rHmZyFK1RvyE4r8vsJzf7SyNohMnbKT9wbcD3XUTgsZLX8LU5JBCfm 5 subtractfeefrom=all If my walet balance was exactly 30 XMR before this transaction, it will be exactly 25 XMR afterwards and the destination address will receive slightly less than 5 XMR. You can manually select which destinations fund the transaction fee and which ones do not by providing the destination index. For example: transfer 75sr8AAr... 3 74M7W4eg... 4 7AbWqDZ6... 5 subtractfeefrom=0,2 This will drop your balance by exactly 12 XMR including fees and will spread the fee cost proportionally (3:5 ratio) over destinations with addresses `75sr8AAr...` and `7AbWqDZ6...`, respectively. Disclaimer: This feature was paid for by @LocalMonero.
2024-02-16epee binary: container can read from empty seq of any typejeffro2561-0/+87
2024-01-30Disable/fix ports with I2PLee Clagett1-42/+37
2024-01-29Add <cstdint> to aligned testLee *!* Clagett1-0/+1
2024-01-18Merge pull request #9084luigi11111-2/+2
01c6e4b OpenBSD: node server fix IP localhost by aliasing (mesaoptimizer)
2024-01-18Merge pull request #9079luigi11111-0/+7
eed975d Fix missing checks for IsObject in ZMQ jsonrpc reading (Lee Clagett)
2024-01-18Merge pull request #9073luigi11111-3/+7
53e632b fix merge mining with more than one merge mined chain (Crypto City)
2024-01-18Merge pull request #9069luigi11111-5/+34
a11e03a serialization: fix infinite loops and clean up dispatching (jeffro256)
2024-01-17epee/test: remove levin_protocol_handler and core_proxy testsjeffro2564-465/+0
2023-12-10OpenBSD: node server fix IP localhost by aliasingmesaoptimizer1-2/+2
The test node_server.bind_same_p2p_port fails by default on OpenBSD for at least the debug build. Using the same ifconfig command as described for MacOS results in the test passing.
2023-11-30fix merge mining with more than one merge mined chainCrypto City1-3/+7
reported by sech1
2023-11-28Fix missing checks for IsObject in ZMQ jsonrpc readingLee Clagett1-0/+7
2023-11-18serialization: fix infinite loops and clean up dispatchingjeffro2561-5/+34
Resolves #8687
2023-11-06Merge pull request #9045luigi11112-2/+2
504269e unit tests: fix running from pwd and auto test selected location (jeffro256)
2023-11-06Merge pull request #9044luigi11111-3/+4
5443240 core_tests: fix gcc7 compilation (selsta)
2023-11-06Merge pull request #9030luigi11111-0/+117
30cf537 unit tests: wallet_storage: generate in 'Ascii' format test (jeffro256)
2023-11-06Merge pull request #8990luigi11112-0/+2
c17f73a add sp_transcript (koe) 51e40f7 add seraphis_crypto directory (koe)
2023-10-28unit tests: fix running from pwd and auto test selected locationjeffro2562-2/+2
2023-10-28core_tests: fix gcc7 compilationselsta1-3/+4
2023-10-25Merge pull request #8987luigi11112-4/+12
1025e4f unit_test: set data dir relative to exe & add log-level arg (jeff)
2023-10-25Merge pull request #8969luigi11111-2/+2
8190f25 KV_SERIALIZE: remove extraneous semicolons in DSL (jeffro256)
2023-10-25Merge pull request #8958luigi11113-1/+501
b0bf49a blockchain_db: add k-anonymity to txid fetching (jeffro256)
2023-10-25Merge pull request #8752luigi111119-400/+895
c444a7e trezor: support v2.5.2+, add more trezor tests, fix chaingen and tests (Dusan Klinec) 056c996 fix chaingen tests (Dusan Klinec)
2023-10-21unit tests: wallet_storage: generate in "Ascii" format testjeffro2561-0/+117
2023-10-02add a test for the long term weight cacheBoog9001-0/+35
2023-09-30trezor: support v2.5.2+, add more trezor tests, fix chaingen and testsDusan Klinec5-265/+704
- passphrase logic: remove backward compatibility for 2.4.3, code cleanup. - fix LibUSB cmake for static builds on OSX - tests: all tests now work with passphrase logic enabled. Passphrase test added with different passphrase. no_passphrase test added, Trezor pin test added. Testing wallet opening with correct and incorrect passphrase. Trezor test chain revamp, cleanup. Smaller chain, chain file versioning added. - tests: Trezor tests support TEST_MINING_ENABLED, TEST_MINING_TIMEOUT env vars to change mining-related tests behaviour. - requires protobuf@21 on osx for now (c++14), building with unlinked protobuf: `CMAKE_PREFIX_PATH=$(find /opt/homebrew/Cellar/protobuf@21 -maxdepth 1 -type d -name "21.*" -print -quit) \ make debug-test-trezor -j8`
2023-09-29fix chaingen testsDusan Klinec15-135/+191
- fix tx create from sources, input locking. Originally, creating a synthetic transactions with chaingen could create a transaction with outputs that are still locked in the current block, thus failing chain validation by the daemon. Simple unlock check was added. Some buggy tests were fixed as well as new unlock-checking version of tx creation rejected those, fixes are simple - mostly using correct block after a rewind to construct a transaction
2023-09-14Merge pull request #8976luigi11111-89/+50
d4d8840 functional_tests: fix multisig tests noutputs assertion (jeffro256)
2023-09-10add seraphis_crypto directorykoe2-0/+2
2023-09-10update TimingsDatabase to support csv format and incremental updatingkoe1-7/+6
2023-09-10unit_test: set data dir relative to exe & add log-level argjeff2-4/+12
2023-08-23wallet2: fix `store_to()` and `change_password()`jeffro2565-8/+269
Resolves #8932 and: 2. Not storing cache when new path is different from old in `store_to()` and 3. Detecting same path when new path contains entire string of old path in `store_to()` and 4. Changing your password / decrypting your keys (in this method or others) and providing a bad original password and getting no error and 5. Changing your password and storing to a new file
2023-08-19functional_tests: fix multisig tests noutputs assertionjeffro2561-89/+50
The changes to the multisig tests in #8914 and #8904 affected each other, this PR cleans up the code and fixes that issue.
2023-08-17Merge pull request #8924luigi11115-38/+18
ffbf9f4 blockchain_and_pool: move to crytonote_core and enforce its usage (jeffro256) d6f86e5 Avoid nullptr dereference when constructing Blockchain and tx_memory_pool (lukas)
2023-08-17Merge pull request #8914luigi11111-9/+146
45b52de wallet-rpc: restore from multisig seed (jeffro256)
2023-08-17Merge pull request #8890luigi11111-0/+10
e8cac61 core_rpc_server: return ID of submitted block (jeffro256)
2023-08-17Merge pull request #8853luigi11111-93/+10
6ff87ef net: tor_address: remove support for v2 onion addresses (tobtoht)
2023-08-10`KV_SERIALIZE`: remove extraneous semicolons in DSLjeffro2561-2/+2
Prereq of https://github.com/monero-project/monero/pull/8867
2023-08-01blockchain_db: add k-anonymity to txid fetchingjeffro2563-1/+501
Read more about k-anonymity [here](https://en.wikipedia.org/wiki/K-anonymity). We implement this feature in the monero daemon for transactions by providing a "Txid Template", which is simply a txid with all but `num_matching_bits` bits zeroed out, and the number `num_matching_bits`. We add an operation to `BlockchainLMDB` called `get_txids_loose` which takes a txid template and returns all txids in the database (chain and mempool) that satisfy that template. Thus, a client can ask about a specific transaction from a daemon without revealing the exact transaction they are inquiring about. The client can control the statistical chance that other TXIDs (besides the one in question) match the txid template sent to the daemon up to a power of 2. For example, if a client sets their `num_matching_bits` to 5, then statistically any txid has a 1/(2^5) chance to match. With `num_matching_bits`=10, there is a 1/(2^10) chance, so on and so forth. Co-authored-by: ACK-J <60232273+ACK-J@users.noreply.github.com>
2023-07-28wallet-rpc: restore from multisig seedjeffro2561-9/+146
2023-07-06Merge pull request #8904luigi11111-0/+101
369a5a8 wallet: respect frozen key images in multisig wallets (jeffro256)
2023-07-06Merge pull request #8901luigi11114-2/+1112
ea053b6 Update tests/hash/main.cpp (0xFFFC0000) 6bae913 Tests: Add blake2b Test Cases for hash testing. * Adding blake2b test function to src/tests/hash * New files for testvector. * Adding the test to CMakeLists.txt * Adding brief documentation for the test. (0xFFFC0000)
2023-07-06Merge pull request #8854luigi11112-0/+51
d9c7cd5 common: do not use DNS to determine if address is local (tobtoht)
2023-07-03common: do not use DNS to determine if address is localtobtoht2-0/+51
Co-authored-by: j-berman <justinberman@protonmail.com>
2023-07-01blockchain_and_pool: move to crytonote_core and enforce its usagejeffro2565-38/+18
2023-06-30core_rpc_server: return ID of submitted blockjeffro2561-0/+10
2023-06-28add crypto/generators for direct access to canonical fixed generatorskoe1-0/+24
2023-06-27Merge pull request #8870luigi11111-0/+16
eb94356 Add to_hex::buffer (Lee *!* Clagett)
2023-06-27Merge pull request #8858luigi11112-319/+0
25a803f tests: remove unused perl scripts (tobtoht)
2023-06-27Merge pull request #8857luigi11114-159/+0
f7deb7d tests: remove daemon_tests (tobtoht)
2023-06-27Merge pull request #8660luigi11112-0/+437
2a7435e variant: add mutable unwrap and visitation (koe) bc3cec4 add variant class with cleaner interface than boost::variant<> (koe)
2023-06-27Merge pull request #8659luigi11112-30/+81
5c505bd performance test framework updates: allow custom test parameters, better error reporting (koe)
2023-06-15wallet2: fix rescanning tx via scan_txj-berman3-8/+225
- Detach & re-process txs >= lowest scan height - ensures that if a user calls scan_tx(tx1) after scanning tx2, the wallet correctly processes tx1 and tx2 - if a user provides a tx with a height higher than the wallet's last scanned height, the wallet will scan starting from that tx's height - scan_tx requires trusted daemon iff need to re-process existing txs: in addition to querying a daemon for txids, if a user provides a txid of a tx with height *lower* than any *already* scanned txs in the wallet, then the wallet will also query the daemon for all the *higher* txs as well. This is likely unexpected behavior to a caller, and so to protect a caller from revealing txid's to an untrusted daemon in an unexpected way, require the daemon be trusted.
2023-06-13Update tests/hash/main.cpp 0xFFFC00001-1/+1
Removing preprocessor macro and replacing it with constexpr. Co-authored-by: Jeffro <jeffreyryan@tutanota.com>
2023-06-12wallet: respect frozen key images in multisig walletsjeffro2561-0/+101
Before this change, if a multisig peer asked you to sign a transaction with a frozen enote, the wallet will do it without any error or warning. This change makes it so that wallets will refuse to sign multisig transactions with frozen enotes. Disclaimer: This PR was generously funded by @LocalMonero.
2023-06-12Tests: Add blake2b Test Cases for hash testing.0xFFFC00004-2/+1112
* Adding blake2b test function to src/tests/hash * New files for testvector. * Adding the test to CMakeLists.txt * Adding brief documentation for the test.
2023-05-22Add to_hex::bufferLee *!* Clagett1-0/+16
2023-05-12tests: remove unused perl scriptstobtoht2-319/+0
2023-05-12tests: remove daemon_teststobtoht4-159/+0
2023-05-12net: tor_address: remove support for v2 onion addressestobtoht1-93/+10
2023-04-25Merge pull request #8802luigi11111-0/+56
eb0e405 gamma picker: relax constructor requirements and test for selecting outputs from first spendable block (jeffro256)
2023-04-25Merge pull request #8796luigi11111-0/+34
7a4a03d wallet2: do not commit transactions more than once (moneromooo-monero)
2023-04-25Merge pull request #8698luigi1111237-237/+237
5b4fea7 Copyright: Update to 2023 (mj-xmr)
2023-04-02gamma picker: relax constructor requirements and test for selecting outputs ↵jeffro2561-0/+56
from first spendable block
2023-03-21wallet2: do not commit transactions more than oncemoneromooo-monero1-0/+34
Fixes #8793
2023-03-17verRctNonSemanticsSimpleCached: fix fragilityJeffrey Ryan3-0/+427
2023-02-28replace 'multisig()' with 'get_multisig_status()' using ↵koe1-14/+11
multisig_account_status and including '.kex_is_done' member
2023-02-12variant: add mutable unwrap and visitationkoe1-1/+22
2023-01-30add variant class with cleaner interface than boost::variant<>koe2-0/+416
2023-01-16Copyright: Update to 2023mj-xmr237-237/+237
Co-authored-by: plowsof <plowsof@protonmail.com> extra files
2023-01-11Merge pull request #8686luigi11112-1/+125
7a3a593 common: move boost_serialization_helper.h out and cleanup includes (Jeffrey Ryan)
2023-01-11Merge pull request #8648luigi11111-0/+11
8687da6 common: DNSResolver can handle hostnames without dot characters (Jeffrey Ryan)
2023-01-11Merge pull request #8643luigi11111-0/+35
faaf2af p2p: fix exclusive node DNS resolution for certain hosts (Jeffrey Ryan)
2022-12-22common: move boost_serialization_helper.h out and cleanup includesJeffrey Ryan2-1/+125
2022-12-01performance test framework updates: allow custom test parameters, better ↵koe2-30/+81
error reporting
2022-12-01Merge pull request #8627luigi11111-15/+84
a7bf3af Fix dandelion++ fluff/stem bug with local txes (Lee Clagett)
2022-12-01Merge pull request #8618luigi11113-5/+24
1114e7e fix(trezor-tests): fix trezor tests build, fix integrated addr test (Dusan Klinec)
2022-12-01Merge pull request #8572luigi11111-0/+4
50b7492 unit_tests: suppress memwipe unit warning (Jeffrey Ryan)
2022-11-21common: DNSResolver can handle hostnames without dot charactersJeffrey Ryan1-0/+11
Unrelated, but similar code-wise to #8643. There is a check in `DNSResolver` which automatically fails to resolve hostnames which do not contain the `.` character. This PR removes that check.
2022-11-17p2p: fix exclusive node DNS resolution for certain hostsJeffrey Ryan1-0/+35
Fixes #8633. The function `append_net_address` did not parse hostname + port addresses (e.g. `bar:29080`) correctly if the hostname did not contain a `'.'` character. @vtnerd comments 1 clear up 2nd conditional statement
2022-11-17fix(trezor-tests): fix trezor tests build, fix integrated addr testDusan Klinec3-5/+24
- fix integrated address test, it was not testing integrated address suport - fix trezor test build as dependent classes were changed - add a friend test class for Monero::WalletImpl to support wallet api tests When using wallet_api in tests, synthetic chain is used. Without being able to set `allow_mismatched_daemon_version` in the underlying wallet, we are not able to use a synthetic chain with the tests
2022-10-25Fix dandelion++ fluff/stem bug with local txesLee Clagett1-15/+84
2022-09-26Merge pull request #8587luigi11112-0/+2
8e7c7af Move update_checkpoints() to a later stage (SChernykh)
2022-09-26Merge pull request #8576luigi11111-1/+1
28f25c0 Second thread pool for IO (SChernykh)
2022-09-26Merge pull request #8329luigi11111-24/+64
4b0785f add an option to force-update multisig key exchange under some circumstances (koe)
2022-09-22Move update_checkpoints() to a later stageSChernykh2-0/+2
update_checkpoints() makes a few DNS requests and can take up to 20-30 seconds to complete (3-6 seconds on average). It is currently called from core::handle_incoming_block() which holds m_incoming_tx_lock, so it blocks all incoming transactions and blocks processing while update_checkpoints() is running. This PR moves it to until after a new block has been processed and relayed, to avoid full monerod locking.
2022-09-21add an option to force-update multisig key exchange under some circumstanceskoe1-24/+64
2022-09-20Second thread pool for IOSChernykh1-1/+1
2022-09-16unit_tests: suppress memwipe unit warningJeffrey Ryan1-0/+4
Fixes warning: ``` warning: ‘*(uint32_t*)quux’ may be used uninitialized [-Wmaybe-uninitialized] 49 | MDEBUG(std::hex << std::setw(8) << std::setfill('0') << *(uint32_t*)quux); warning: ‘quux’ may be used uninitialized [-Wmaybe-uninitialized] 50 | if (wipe) { ASSERT_TRUE(memcmp(quux, "bar", 3)); } ```
2022-09-15Merge pull request #8556luigi11111-1/+1
b8271ab wallet2: check wallet compatibility with daemon's hard fork version (j-berman)
2022-09-15Merge pull request #8551luigi11111-1/+1
eca7f6a Fix segfault restoring encrypted multisig seed (j-berman) f713c3c Require user ack multisig is experimental to restore (j-berman) 564a7a3 multisig: fix #8537 seed restore (suggestions by @UkoeHB) (j-berman)
2022-09-12wallet2: check wallet compatibility with daemon's hard fork versionj-berman1-1/+1
2022-09-09Merge pull request #8538luigi11111-2/+5
3987827 Fix shared_ptr cycle in test_epee_connection.test_lifetime (Lee Clagett)
2022-09-09Merge pull request #8513luigi11114-20/+104
959a3e6 wallet2: ensure imported outputs subaddresses are created (moneromooo-monero) a098504 wallet2: better test on whether to allow output import (moneromooo-monero) c5579ac allow exporting outputs in chunks (moneromooo-monero) 1e912ec wallet2: fixes for export/import output flow (j-berman) 692f1d4 wallet2: do not assume imported outputs must be non empty (moneromooo-monero) 67b6d6a wallet2: prevent importing outputs in a hot wallet (moneromooo-monero) d9fc666 wallet2: fix missing subaddress indices in 'light' exported outputs (moneromooo-monero)
2022-09-06multisig: fix #8537 seed restore (suggestions by @UkoeHB)j-berman1-1/+1
- spend secret key is no longer the sum of multisig key shares; no need to check that is the case upon restore. - restoring a multisig wallet from multisig info means that the wallet must have already completed all setup rounds. Upon restore, set the number of rounds completed accordingly.
2022-08-26Fix shared_ptr cycle in test_epee_connection.test_lifetimeLee Clagett1-2/+5
2022-08-22Merge pull request #8450luigi11112-2/+4
600de07 wallet_rpc_server: longer timeout for stop_mining (moneromooo-monero) ac6db92 functional_tests: silence the cpu power test program (moneromooo-monero)
2022-08-22Merge pull request #8427luigi11114-5/+25
1fc60ca Publish submitted txs via zmq (j-berman)
2022-08-22Merge pull request #8299luigi11113-17/+96
a0df140 feat(trezor): add HF15 support, BP+ (Dusan Klinec)
2022-08-18wallet2: better test on whether to allow output importmoneromooo-monero1-0/+9
Being offline is not a good enough heuristic, so we keep track of whether the wallet ever refreshed from a daemon, which is a lot better, and probably the best we can do without manual user designation (which would break existing cold wallet setups till the user designates those wallets)
2022-08-18allow exporting outputs in chunksmoneromooo-monero3-15/+41
this will make it easier huge wallets to do so without hitting random limits (eg, max string size in node).
2022-08-16wallet2: fixes for export/import output flowj-berman2-18/+67
- only allow offline wallets to import outputs - don't import empty outputs - export subaddress indexes when exporting outputs
2022-08-08tests: update block_weight for 2021 scalingmoneromooo-monero2-8/+14
the test was still performed with consensus rules from before that change
2022-07-21Publish submitted txs via zmqj-berman4-5/+25
2022-07-21functional_tests: silence the cpu power test programmoneromooo-monero2-2/+4
it's very spammy and drowns the test output
2022-07-15Merge pull request #8426luigi11111-2/+252
a82fba4 address PR comments (j-berman) 3be1dbd connection: fix implementation (anon) 724ff21 connection: add segfault and deadlocks demo (anon)
2022-07-13derive multisig tx secret keys from an entropy source plus the tx inputs' ↵koe1-2/+3
key images
2022-07-08address PR commentsj-berman1-5/+5
2022-07-05connection: add segfault and deadlocks demoanon1-2/+252
2022-06-30multisig: fix critical vulnerabilities in signinganon11-124/+114
2022-06-21unit_tests: fix accessing invalid memory in tree_hash testmoneromooo-monero1-2/+7
2022-06-20feat(trezor): add HF15 support, BP+Dusan Klinec3-17/+96
- BP+ support added for Trezor - old Trezor firmware version support removed, code cleanup
2022-05-26Merge pull request #8340luigi11115-0/+42
08080df unit_tests: add more sha256sum test cases (Jeffrey Ryan) a66a52d common: update sha256sum to use OpenSSL 3.0 API (Jeffrey Ryan)
2022-05-26Merge pull request #8330luigi11111-2/+2
2dab31f Don't exclusively drop tor/i2p outgoing cxns in idle loop (j-berman)
2022-05-18Don't exclusively drop tor/i2p outgoing cxns in idle loopj-berman1-2/+2
2022-05-18unit_tests: add more sha256sum test casesJeffrey Ryan5-0/+42
2022-05-17disable multisig by defaultmoneromooo-monero1-5/+5
There are vulnerabilities in multisig protocol if the parties do not trust each other, and while there is a patch for it, it has not been throroughly reviewed yet, so it is felt safer to disable multisig by default for now. If all parties in a multisig setup trust each other, then it is safe to enable multisig.
2022-05-10Merge pull request #8304luigi11111-0/+14
0226df9 More tests for view tags (SChernykh)
2022-05-10Merge pull request #8302luigi11117-7/+7
41da2fe Update copyright to 2022 for Hardfork files (Akrit)
2022-05-10Merge pull request #8277luigi11111-2/+0
baee2c0 Preserve commitment format inside transactions (kayabaNerve)
2022-05-10Merge pull request #8220luigi11113-47/+61
0d6ecb1 multisig: add post-kex verification round to check that all participants have completed the multisig address (koe)
2022-04-29More tests for view tagsSChernykh1-0/+14
P2Pool can create transactions with more than 128 outputs, which make output_index's varint larger than 1 byte. Added this test case.
2022-04-29multisig: add post-kex verification round to check that all participants ↵koe3-47/+61
have completed the multisig address
2022-04-29Update copyright to 2022 for Hardfork filesAkrit7-7/+7
Update Makefile and LICENSE
2022-04-25Merge pull request #8178luigi11114-13/+13
5d388eb Bump ring size to 16 for v15 & remove set default in wallet cli (j-berman)
2022-04-21Preserve commitment format inside transactionsLuke Parker1-2/+0
2022-04-19Merge pull request #8061luigi111114-20/+603
ea87b30 Add view tags to outputs to reduce wallet scanning time (j-berman)
2022-04-18Bump ring size to 16 for v15 & remove set default in wallet clij-berman4-13/+13
2022-04-18Add Include statementsJeffrey1-0/+1
2022-04-18Add view tags to outputs to reduce wallet scanning timej-berman14-20/+603
Implements view tags as proposed by @UkoeHB in MRL issue https://github.com/monero-project/research-lab/issues/73 At tx construction, the sender adds a 1-byte view tag to each output. The view tag is derived from the sender-receiver shared secret. When scanning for outputs, the receiver can check the view tag for a match, in order to reduce scanning time. When the view tag does not match, the wallet avoids the more expensive EC operations when deriving the output public key using the shared secret.
2022-04-10Fee changes from ArticMinemoneromooo-monero3-4/+192
https://github.com/ArticMine/Monero-Documents/blob/master/MoneroScaling2021-02.pdf with a change to use 1.7 instead of 2.0 for the max long term increase rate
2022-04-10epee: allow copying a rolling_median_t objectmoneromooo-monero1-0/+18
2022-04-06tests: integrated_address: remove missing payment id assertionreemuru1-3/+1
The integrated address functional test fails in the workflows due to an assertion for missing payment id that is no longer needed. Remove the assertion and update the assertion count. Fixes 7dcfccb: ("wallet_rpc_server: fix make_integrated_address with no payment id")
2022-04-06Merge pull request #8228luigi11111-67/+74
1ce9e9c Remove dead code from parserse_base_utils and fix unit tests (Jeffrey)
2022-04-06Merge pull request #8205luigi11111-0/+2
0d6fce8 Compil. time: cryptonote_core minus portable_storage header (mj-xmr)
2022-04-06Merge pull request #8197luigi1111228-228/+259
da9aa1f Copyright: Update to 2022 (mj-xmr)
2022-04-05store outPk/8 in the tx for speedmoneromooo-monero1-0/+2
It avoids dividing by 8 when deserializing a tx, which is a slow operation, and multiplies by 8 when verifying and extracing the amount, which is much faster as well as less frequent
2022-04-05plug bulletproofs plus into consensusmoneromooo-monero13-24/+645
2022-04-04Bulletproofs+Sarang Noether5-0/+292
2022-03-30Remove dead code from parserse_base_utils and fix unit testsJeffrey1-67/+74
* Remove `match_string()`, `match_number()`, and `match_word()` * Remove `match_word_with_extrasymb()` and `match_word_til_equal_mark()` * Adapt unit test for `match_number()` to `match_number2()` * Adapt unit test for `match_string()` to `match_string2()` Note: the unit tests were testing for the old version of the functions, and the interfaces for these functions changed slightly, so I had to also edit the tests. As of writing, this PR has no merge conflicts with #8211 Additional changes during review: * Explicitly set up is_[float/signed]_val to be changed before each call * Structify the tests and fix uninitialized variables
2022-03-18Merge pull request #8158luigi11111-5/+2
e5000a9 Balance includes unconfirmed transfers to self (woodser)
2022-03-04Compil. time: cryptonote_core minus portable_storage headermj-xmr1-0/+2
2022-03-04Copyright: Update to 2022mj-xmr228-228/+259
2022-03-02Merge pull request #8052luigi11114-0/+64
c36ea26 fix ge_p3_is_point_at_infinity(), which is evaluating field elements that haven't been reduced by the field order (koe)
2022-03-02Merge pull request #7877luigi11114-120/+271
e08abaa multisig key exchange update and refactor (koe)
2022-02-22multisig key exchange update and refactorkoe4-120/+271
2022-01-31Balance includes unconfirmed transfers to selfwoodser1-5/+2
2022-01-25fix ge_p3_is_point_at_infinity(), which is evaluating field elements that ↵koe4-0/+64
haven't been reduced by the field order
2021-12-14functional_tests: update uri test with external pidselsta1-9/+5
2021-11-01tx_pool: full tx revalidation on fork boundariesmoneromooo-monero1-5/+10
avoids mining txes after a fork that are invalid by this fork's rules, but were valid by the previous fork rules at the time they were verified and added to the txpool.
2021-10-11Merge pull request #7874luigi11112-36/+337
9154883 node_server: fix race condition (anon) 8922f96 node_server: add race condition demo (anon)
2021-09-23Merge pull request #7923luigi11111-2/+4
5eaedb5 unit_tests: fix use after free in serialization test (moneromooo-monero)
2021-09-20node_server: fix race conditionanon1-36/+77
2021-09-20node_server: add race condition demoanon1-0/+260
2021-09-12Mac: UT node server fix IP localhost by aliasingmj-xmr1-0/+3
2021-09-09Merge pull request #7880luigi11111-1/+0
573a025 core_tests: remove unused typedef, fix warning (selsta)
2021-09-09Merge pull request #7828luigi11111-0/+7
b2c59af EasyLogging++: new anti-UB test and propagating exception (mj-xmr)
2021-09-08unit_tests: fix use after free in serialization testmoneromooo-monero1-2/+4
2021-08-19core_tests: remove unused typedef, fix warningselsta1-1/+0
2021-08-11Merge pull request #7818luigi11112-8/+8
9c8e3e8 unit_tests: fix broken tests (anon)
2021-08-11Merge pull request #7809luigi11111-0/+1
7354ffb p2p: remove blocked addresses/hosts from peerlist (moneromooo-monero)
2021-08-05p2p: remove blocked addresses/hosts from peerlistmoneromooo-monero1-0/+1
2021-08-03EasyLogging++: new anti-UB test and propagating exceptionmj-xmr1-0/+7
2021-07-28unit_tests: fix broken testsanon2-8/+8
boosted_tcp_server: check condition before sleep too cryptonote_protocol_handler: each instance of BlockchainLMDB requires separate thread due to private thread local fields
2021-07-06EasyLogging++: Add UTests, that protect against regressionsmj-xmr1-0/+13
2021-06-11unit_tests: check for ge_frombytes_vartime failuremoneromooo-monero2-4/+4
CID 1446559