Commit Graph

862 Commits

Author SHA1 Message Date
luigi1111
1f7290f329
Merge pull request #9176
49ca1ad variant: split into variant and optional_variant (jeffro256)
2024-12-23 10:19:55 -05:00
luigi1111
575bc099a0
Merge pull request #9172
62fdacc variant: visit lambda and value-initialize by index (jeffro256)
2024-12-23 10:19:05 -05:00
luigi1111
893916ad09
Merge pull request #9435
89ad8ac epee: string_tools: keep full path in cut_off_extension (tobtoht)
c51ca53 epee: string_tools: remove dot from get_extension (tobtoht)
2024-10-14 10:17:10 -04:00
jeffro256
ed955bf751
build: fix build with Boost 1.85 and remove instances of viewkey logging
1. Use `std::is_standard_layout` and `std::is_trivially_copyable` instead of `std::is_pod` for KV byte-wise serialization, which fixes compile issue for Boost UUIDs
2. Use `std::has_unique_object_representations` instead of `alignof(T) == 1` for epee byte spans and epee hex functions
3. Removed reimplementation of `std::hash` for `boost::uuids::uuid
4. Removed `<<` operator overload for `crypto::secret_key`
5. Removed instances in code where private view key was dumped to the log in plaintext
2024-09-06 11:46:22 -05:00
tobtoht
89ad8ac8b1
epee: string_tools: keep full path in cut_off_extension 2024-08-14 19:51:12 +02:00
tobtoht
c51ca53daa
epee: string_tools: remove dot from get_extension
Fixes a regression introduced in #9254. Previously it did not
include the dot.
2024-08-14 16:59:09 +02:00
luigi1111
93d6e0964e
Merge pull request #9384
88afcdb Fix ZMQ DaemonInfo: (Lee *!* Clagett)
2024-08-13 12:15:28 -04:00
luigi1111
3b53db47cf
Merge pull request #9386
1d024f0 chore: fix some comments (haouvw)
2024-07-16 19:01:09 -04:00
luigi1111
66c5917876
Merge pull request #9353
32f3245 cryptonote_protocol: prevent duplicate txs in fluff queue (0xFFFC0000)
2024-07-16 18:51:30 -04:00
luigi1111
040bccc22f
Merge pull request #9338
4a376d6 copyright: fix vector.h typo (hinto.janaiyo)
d61e8e9 workflows: delete copyright.yml (plowsof)
341771a copyright: bump to 2024 (copyCat)
2024-07-16 18:42:49 -04:00
luigi1111
d7eece3cae
Merge pull request #8619
e71c8bf wallet: background sync with just the view key (j-berman)
2024-07-16 18:29:47 -04:00
haouvw
1d024f0701 chore: fix some comments
Signed-off-by: haouvw <jchaodaohang@foxmail.com>
2024-07-11 14:56:25 +08:00
Lee *!* Clagett
88afcdb8fa Fix ZMQ DaemonInfo:
* top_block_hash was never set in handler
  * wide_difficulty was never sent in JSON
  * wide_cumulative_difficulty was never sent in JSON
2024-06-24 19:57:20 -04:00
0xFFFC0000
32f32453f1
cryptonote_protocol: prevent duplicate txs in fluff queue
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-06-05 16:33:15 +00:00
j-berman
e71c8bf190 wallet: background sync with just the view key
- 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-24 23:11:58 -07:00
koe
ddf3af1f0c add key exchange round booster to multisig_account 2024-05-21 15:27:08 -05:00
copyCat
341771ac3e copyright: bump to 2024 2024-05-21 16:29:33 +00:00
luigi1111
6c346eca03
Merge pull request #9305
de9c461 common: support boost filesystem copy_options. Co-authored-by: selsta <selsta@sent.at> (0xFFFC0000)
2024-05-20 23:38:20 -05:00
luigi1111
58b1e931f7
Merge pull request #9268
463228b Skip privacy networks (on tx sends) that don't have outgoing connections (Lee *!* Clagett)
2024-05-20 23:34:39 -05:00
luigi1111
eb35250895
Merge pull request #9257
d6609b8 serialization: do any N-tuple (jeffro256)
2024-05-20 23:31:17 -05:00
luigi1111
6462d3760d
Merge pull request #9232
7194506 Blockchain: remove old fee calc logic (jeffro256)
2024-05-20 23:18:07 -05:00
luigi1111
689381dff9
Merge pull request #9194
9d101d5 serialization: protect blob serialization from undefined behavior (jeffro256)
2024-05-20 23:12:28 -05:00
luigi1111
cdd7fc09b4
Merge pull request #9151
ff49444 @tobtoht: undo rebase changes tx.dsts -> tx_dsts (jeffro256)
38f354e Enforce Tx unlock_time is Zero by Relay Rule (jeffro256)
2024-05-20 23:11:09 -05:00
luigi1111
8db863c415
Merge pull request #8396
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-20 22:45:46 -05:00
luigi1111
3a47cdad13
Merge pull request #7852
8d94d08 replace 'multisig()' with 'get_multisig_status()' using multisig_account_status and including '.kex_is_done' member (koe)
2024-05-20 22:35:57 -05:00
0xFFFC0000
de9c461a98
common: support boost filesystem copy_options.
Co-authored-by: selsta <selsta@sent.at>
2024-04-30 23:20:10 +00:00
Lee *!* Clagett
463228b961 Skip privacy networks (on tx sends) that don't have outgoing connections 2024-03-29 13:01:58 -04:00
jeffro256
d6609b83d6
serialization: do any N-tuple 2024-03-19 14:49:36 -05:00
jeffro256
9d101d5ea0
serialization: protect blob serialization from undefined behavior
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-10 14:15:48 -05:00
jeffro256
7194506792
Blockchain: remove old fee calc logic 2024-03-10 13:30:46 -05:00
jeffro256
399b884a9c
unit_tests: fix strtoul unit test 2024-03-07 09:05:09 -06:00
jeffro256
38f354e89f
Enforce Tx unlock_time is Zero by Relay Rule
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-24 14:27:17 -06:00
luigi1111
f2493d9139
Merge pull request #9143
b1c9a80 Add <cstdint> to aligned test (Lee *!* Clagett)
2024-02-24 10:06:57 -05:00
luigi1111
486ae9f1cf
Merge pull request #9138
cd7ccfb Disable/fix ports with I2P (Lee Clagett)
2024-02-24 10:05:25 -05:00
luigi1111
b91c433788
Merge pull request #8940
48b7d08 epee binary: container can read from empty seq of any type (jeffro256)
2024-02-24 09:55:58 -05:00
jeffro256
b13c5f6669
wallet: feature: transfer amount with fee included
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-20 17:08:06 -06:00
jeffro256
49ca1ad6ae
variant: split into variant and optional_variant
Upstreaming https://github.com/UkoeHB/monero/pull/28
2024-02-16 19:12:13 -06:00
jeffro256
48b7d0895a
epee binary: container can read from empty seq of any type 2024-02-16 15:53:07 -06:00
jeffro256
62fdacca07
variant: visit lambda and value-initialize by index 2024-02-14 02:01:44 -06:00
Lee Clagett
cd7ccfbdab Disable/fix ports with I2P 2024-01-30 13:40:05 -05:00
Lee *!* Clagett
b1c9a809a0 Add <cstdint> to aligned test 2024-01-29 21:37:22 -05:00
luigi1111
36addc1e56
Merge pull request #9084
01c6e4b OpenBSD: node server fix IP localhost by aliasing (mesaoptimizer)
2024-01-18 18:05:28 -05:00
luigi1111
e9a4deef81
Merge pull request #9079
eed975d Fix missing checks for IsObject in ZMQ jsonrpc reading (Lee Clagett)
2024-01-18 18:03:18 -05:00
luigi1111
4b1910af13
Merge pull request #9073
53e632b fix merge mining with more than one merge mined chain (Crypto City)
2024-01-18 18:01:34 -05:00
luigi1111
5d3679c43c
Merge pull request #9069
a11e03a serialization: fix infinite loops and clean up dispatching (jeffro256)
2024-01-18 18:00:25 -05:00
mesaoptimizer
01c6e4b4ad
OpenBSD: node server fix IP localhost by aliasing
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-12-10 22:08:05 +01:00
Crypto City
53e632b435
fix merge mining with more than one merge mined chain
reported by sech1
2023-11-30 17:01:52 +00:00
Lee Clagett
eed975db5d Fix missing checks for IsObject in ZMQ jsonrpc reading 2023-11-28 18:02:57 -05:00
jeffro256
a11e03afa6
serialization: fix infinite loops and clean up dispatching
Resolves #8687
2023-11-18 03:47:55 -06:00
luigi1111
cab0ebdeb5
Merge pull request #9045
504269e unit tests: fix running from pwd and auto test selected location (jeffro256)
2023-11-06 09:35:11 -05:00