Luke Parker
988c4eae40
Remove reference from m_hash_init_point
...
Identified by kayabaNerve, patch suggested by j-berman.
2024-07-29 03:40:44 -07:00
j-berman
a1ee603132
explicit type response to hash_grow 's
2024-07-29 03:40:44 -07:00
j-berman
517f5a301e
don't want to expose generator lengths in ffi
2024-07-29 03:40:44 -07:00
Luke Parker
effa9eea0e
Only pass a single prior child
2024-07-29 03:40:44 -07:00
Luke Parker
c792b21535
Use statics on the Rust side for generators
2024-07-29 03:40:44 -07:00
Luke Parker
42f6ef273d
fmt, clippy
2024-07-29 03:40:44 -07:00
Luke Parker
af47a135eb
Remove cxx and expose scalars/points directly
2024-07-29 03:40:44 -07:00
j-berman
af9b74fcc7
start LMDB grow_tree
2024-07-29 03:40:44 -07:00
j-berman
e68ea2e054
small cleanup
2024-07-29 03:40:44 -07:00
j-berman
5ad026975a
Cleaner template usage, moved static functions out of CurveTrees class
2024-07-29 03:40:44 -07:00
j-berman
9ba00be519
Move curve_trees.h implementations into curve_trees.cpp file
2024-07-29 03:40:44 -07:00
j-berman
4ade675939
Consolidate hash_leaf_layer into hash_layer
2024-07-29 03:40:44 -07:00
j-berman
26009ba5f1
slight simplification to CurveTrees::hash_layer
2024-07-29 03:40:44 -07:00
j-berman
9e68475ebd
Use widths from fcmp++ repo test & align tests with width
2024-07-29 03:40:44 -07:00
j-berman
29e0fe759e
Add Curve class, and Helios & Selene classes that derive from Curve
2024-07-29 03:40:44 -07:00
j-berman
d9390c7b08
Implement CurveTrees & CurveTreesUnitTest classes to simplify callers
2024-07-29 03:40:44 -07:00
j-berman
5103a94ee9
template all curve_trees types & funcs, rename tower_cycle_types to tower_cycle
2024-07-29 03:40:44 -07:00
j-berman
ad8872a76b
Cleaner file organization
2024-07-29 03:40:44 -07:00
j-berman
c05bd80ee5
actual indexing fix, tests now passing
2024-07-29 03:40:44 -07:00
j-berman
33ad50b176
fix c1 c2 layer indexing issue in test helper get_last_chunk
2024-07-29 03:40:44 -07:00
j-berman
9e6b93b94d
test validates lowest layer in tree
2024-07-29 03:40:44 -07:00
j-berman
1ba876bcc2
remove whitespaces
2024-07-29 03:40:44 -07:00
j-berman
e1c03f4d5a
rough fcmp++ tree impl (lots of work remaining to clean it up and fix)
2024-07-29 03:40:44 -07:00
luigi1111
330212888a
Merge pull request #9383
...
9f83e74
Daemon RPC: /getblocks.bin return chain's top_block_hash in resp (j-berman)
2024-07-16 19:00:39 -04:00
luigi1111
4ed5bc5436
Merge pull request #9382
...
356829a
Daemon RPC: high_height_ok req boolean field /getblocks.bin (j-berman)
2024-07-16 19:00:06 -04:00
luigi1111
8dbbc47804
Merge pull request #9379
...
6c28bdb
wallet2: move get_rpc_status func to RPC server definition file (j-berman)
2024-07-16 18:58:08 -04:00
luigi1111
cfd7f5222d
Merge pull request #9370
...
9fc48f4
Fix ZMQ Tx Pruning (Lee Clagett)
2024-07-16 18:56:44 -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
e3cfaed278
Merge pull request #9346
...
0fad1a8
src: update checkpoints to match v0.18.3.4 (selsta)
2024-07-16 18:49:44 -04:00
luigi1111
c2fceb2939
Merge pull request #9344
...
a026d5a
wallet2: validate fetched block height and parent hash (Oscar Mira)
c634c26
wallet2: use start_height consistently as const in process_parsed_blocks (Oscar Mira)
2024-07-16 18:48:43 -04:00
luigi1111
baf6df06c2
Merge pull request #9343
...
302fa9b
wallet: fetch pool txs in pruned form (jeffro256)
2024-07-16 18:46:04 -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
85cf0b01fa
Merge pull request #9289
...
025021d
BlockchainDB: shorter fixup() (jeffro256)
2024-07-16 18:40:46 -04:00
luigi1111
99e33996f4
Merge pull request #9288
...
262ef47
BlockchainDB: remove lock/unlock methods (jeffro256)
2024-07-16 18:32:42 -04:00
luigi1111
f145cb37a4
Merge pull request #9278
...
18fbe54
add sum of amounts for unspent_outputs (SNeedlewoods)
2024-07-16 18:31:59 -04:00
luigi1111
1ce9960ec6
Merge pull request #9215
...
3837bb8
remove repetitive word (cuinix)
2024-07-16 18:31:27 -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
Oscar Mira
a026d5ac44
wallet2: validate fetched block height and parent hash
2024-07-05 05:45:28 +02:00
Oscar Mira
c634c261c2
wallet2: use start_height consistently as const in process_parsed_blocks
2024-07-04 13:01:12 +02:00
j-berman
9f83e7434d
Daemon RPC: /getblocks.bin return chain's top_block_hash in resp
2024-06-24 17:58:20 -07:00
j-berman
6c28bdb856
wallet2: move get_rpc_status func to RPC server definition file
2024-06-24 17:44:23 -07:00
j-berman
356829a198
Daemon RPC: high_height_ok req boolean field /getblocks.bin
...
Behavior before: when start_height > chain tip, response fails
Behavior after: when req.high_height_ok is true && req.start_height
> chain tip, server rerturns a successful response that includes
chain height
2024-06-24 16:47:06 -07:00
Lee Clagett
9fc48f4a8a
Fix ZMQ Tx Pruning
2024-06-18 21:26:28 -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
selsta
0fad1a8d08
src: update checkpoints to match v0.18.3.4
2024-05-29 15:59:56 +02:00
jeffro256
302fa9b5df
wallet: fetch pool txs in pruned form
2024-05-28 11:19:46 -05: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
selsta
a28c38c946
wallet2: correct variable usage in get_multisig_seed
2024-05-21 19:22:39 +02:00
copyCat
341771ac3e
copyright: bump to 2024
2024-05-21 16:29:33 +00:00
luigi1111
af4fd61fe7
Merge pull request #9316
...
697986d
net_node: update seed nodes (selsta)
2024-05-20 23:44:44 -05:00
luigi1111
e6acde1a07
Merge pull request #9310
...
6d4f7b8
wallet2: fix stagenet get_approximate_blockchain_height (selsta)
2024-05-20 23:41:06 -05:00
luigi1111
a3c67ab5ad
Merge pull request #9307
...
f9d9dd8
simplewallet: change boost::filesystem::complete to absolute. (0xFFFC0000)
2024-05-20 23:39:58 -05: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
fc452bd546
Merge pull request #9282
...
b27fda2
src: update checkpoints to match latest release (selsta)
2024-05-20 23:36:28 -05:00
luigi1111
b208eed32a
Merge pull request #9270
...
267e31f
Add drop_and_recreate in privatefile class. When creating a private file we need to delete the file if exist. (0xFFFC0000)
2024-05-20 23:35:48 -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
812535390f
Merge pull request #9259
...
427ba77
wallet2: ensure transfers and sweeps use same fee calc logic rnd2 (j-berman)
2024-05-20 23:32:48 -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
1e5ad57e2e
Merge pull request #9211
...
9b946ae
Removed default cryptonote address (SyntheticBird45)
2024-05-20 23:16:59 -05:00
luigi1111
9d960f056e
Merge pull request #9198
...
e151ff7
update blake2b test vectors (koe)
fa47c7b
add blake2b to src/crypto (koe)
2024-05-20 23:13:25 -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
69ffc1aa85
Merge pull request #9064
...
4689ad2
trezor: support c++17 and protobuf v25, libusb fix (Dusan Klinec)
2024-05-20 22:48:35 -05:00
luigi1111
d95414aa22
Merge pull request #8920
...
236e5d4
update TimingsDatabase to support csv format and incremental updating (koe)
2024-05-20 22:47:33 -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
selsta
697986d948
net_node: update seed nodes
...
Also remove port for I2P seed nodes
2024-05-12 15:24:28 +02:00
0xFFFC0000
de9c461a98
common: support boost filesystem copy_options.
...
Co-authored-by: selsta <selsta@sent.at>
2024-04-30 23:20:10 +00:00
selsta
6d4f7b89c3
wallet2: fix stagenet get_approximate_blockchain_height
2024-04-28 21:15:38 +02:00
0xFFFC0000
f9d9dd88bb
simplewallet: change boost::filesystem::complete to absolute.
2024-04-27 14:23:39 +00:00
0xFFFC0000
267e31f5b7
Add drop_and_recreate in privatefile class.
...
When creating a private file we need to delete the file if exist.
2024-04-22 14:32:12 +00:00
cuinix
3837bb853f
remove repetitive word
...
Signed-off-by: cuinix <915115094@qq.com>
2024-04-20 19:17:46 +08:00
jeffro256
025021dee0
BlockchainDB: shorter fixup()
...
Instead of hard-coding all missing key images into the code and inserting if missing,
we simply pop all blocks after height 202611. This makes the `monerod` binary about
0.35% smaller.
2024-04-11 14:34:56 -05:00
jeffro256
262ef473db
BlockchainDB: remove lock/unlock methods
2024-04-11 12:12:35 -05:00
Dusan Klinec
4689ad2d3c
trezor: support c++17 and protobuf v25, libusb fix
...
- fix If there is no protobuf version installed, if fails
- passphrase test fix, wallet keys init was missing
2024-04-10 18:19:22 +02:00
selsta
b27fda269e
src: update checkpoints to match latest release
2024-04-06 00:53:05 +02:00
jeffro256
ff49444ee8
@tobtoht: undo rebase changes tx.dsts -> tx_dsts
2024-04-05 13:12:34 -05:00
SNeedlewoods
18fbe54729
add sum of amounts for unspent_outputs
2024-03-30 13:18:12 +01:00
Lee *!* Clagett
463228b961
Skip privacy networks (on tx sends) that don't have outgoing connections
2024-03-29 13:01:58 -04:00
j-berman
427ba7702f
wallet2: ensure transfers and sweeps use same fee calc logic rnd2
...
Looks like the logic from #8882 was accidentally removed in #8861
(regressing to the behavior noted in the #8882 description).
This commit brings that logic back.
2024-03-22 14:05:17 -07:00
koe
e151ff711f
update blake2b test vectors
2024-03-21 09:51:40 -05:00
jeffro256
d6609b83d6
serialization: do any N-tuple
2024-03-19 14:49:36 -05:00
jeffro256
c4e1c5a640
ringct: fix trunc_amount field name change
...
Caused in commit 05231400ce
, PR #9035 .
2024-03-11 20:21:22 -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
luigi1111
1bec71279e
Merge pull request #9225
...
a01d7cc
Fixed mempool pruning (SChernykh)
2024-03-08 20:27:34 -05:00
luigi1111
769202bc52
Merge pull request #9219
...
e6f4875
wallet2: adjust fee during backlog, fix set priority (selsta)
2024-03-08 20:26:58 -05:00
SyntheticBird45
9b946ae527
Removed default cryptonote address
...
- Removed `localhost:8080` default value to address string in wallet rpc
- Added an error response in case string is empty
fixed indentation
removed if and errors, default to localhost and port based on nettype
Forgot ":"
forgot ; and m_
removed wallet_rpc_server_error_codes.h
2024-03-08 21:32:26 +01:00
SChernykh
a01d7ccbfd
Fixed mempool pruning
...
- Fixed undefined behavior after a call to `remove_tx_from_transient_lists` (it used an invalid iterator)
- Fixed `txCompare` (it wasn't strictly weak ordered)
2024-03-08 21:04:16 +01:00
luigi1111
d6d55b507a
Merge pull request #9222
...
66e5081
get_block_template_backlog: better sorting logic (SChernykh)
2024-03-08 13:45:41 -05:00
luigi1111
c23951f339
Merge pull request #9218
...
7815023
tx_memory_pool: make double spends a no-drop offense (jeffro256)
2024-03-08 10:43:20 -05:00
SChernykh
66e5081eae
get_block_template_backlog: better sorting logic
...
std::sort is unstable, so it can return random sets of transactions when mempool has many transactions with the same fee/byte. It can result in p2pool mining empty blocks sometimes because it doesn't pick up "new" transactions immediately.
2024-03-08 14:50:01 +01:00
selsta
e6f4875219
wallet2: adjust fee during backlog, fix set priority
2024-03-08 14:13:58 +01:00
luigi1111
6ade592adf
Merge pull request #9195
...
2a2da79
free function serialization DSL (jeffro256)
2024-03-07 21:37:05 -05:00
jeffro256
7815023117
tx_memory_pool: make double spends a no-drop offense
...
Nodes who see different txs in a double spend attack will drop each other, splitting the network.
Issue found by @boog900.
2024-03-07 09:23:51 -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
jeffro256
2a2da79943
free function serialization DSL
...
Example usage for Seraphis types (in global or `sp` namespace):
```
BEGIN_SERIALIZE_OBJECT_FN(sp::SpCoinbaseEnoteCore)
FIELD_F(onetime_address)
VARINT_FIELD_F(amount)
END_SERIALIZE()
BEGIN_SERIALIZE_OBJECT_FN(sp::SpEnoteCore)
FIELD_F(onetime_address)
FIELD_F(amount_commitment)
END_SERIALIZE()
```
2024-02-24 11:24:47 -06:00
tobtoht
cdab0d489c
cmake: require libsodium
2024-02-24 16:26:43 +01:00
luigi1111
b12766a652
Merge pull request #9189
...
f7670c9
cryptonote_core: early out on out of bounds scaling parameter (selsta)
2024-02-24 10:16:54 -05:00