Riccardo Spagni
557c17e206
Merge pull request #4408
...
341b3931
cryptonote_core: warn when the block rate deviates from expectations (moneromooo-monero)
2018-10-26 22:18:41 +02:00
Riccardo Spagni
1c91963dcd
Merge pull request #4308
...
9907ea06
cryptonote: sort tx_extra fields (moneromooo-monero)
2018-10-26 22:18:28 +02:00
doy-lee
5a2e54a1cb
Fix prune using receive time as tx_weight
2018-10-23 10:03:45 +11:00
xiphon
fd62b6e79f
blocks: use auto-generated .c files instead of 'LD -r -b binary'
2018-10-22 01:12:00 +03:00
moneromooo-monero
3a85af403d
core: fix handle_incoming_tx* comment about return value
2018-10-21 17:09:21 +00:00
Riccardo Spagni
5c418c0522
Merge pull request #4522
...
a39c0358
blockchain: add check test options are given for fakechain mode (moneromooo-monero)
2018-10-20 20:40:16 +02:00
Riccardo Spagni
a38299801f
Merge pull request #4666
...
cf75ee72
blockchain: move two new verification errors to the verify category (moneromooo-monero)
2018-10-20 20:38:37 +02:00
Riccardo Spagni
93f2c13a39
Merge pull request #4637
...
c39e0a17
core: don't verify range proofs multiple times (moneromooo-monero)
2018-10-20 20:36:33 +02:00
moneromooo-monero
cf75ee722a
blockchain: move two new verification errors to the verify category
...
Lest we get people get scared again
2018-10-19 21:11:12 +00:00
stoffu
776aefdac1
tx_pool: revert #4592 and move bin2hex conversion to on_get_transaction_pool
2018-10-18 08:01:56 +09:00
moneromooo-monero
c39e0a1706
core: don't verify range proofs multiple times
2018-10-17 16:23:10 +00:00
Riccardo Spagni
c531df734f
Merge pull request #4389
...
6844ae1b
tx_pool: avoid parsing a whole tx if only the prefix is needed (moneromooo-monero)
2018-10-15 13:36:15 +02:00
stoffu
a677492f1b
tx_pool: store hex string instead of raw binary to tx_blob of get_transaction_pool RPC
...
Inspired by https://github.com/masari-project/masari/issues/93
2018-10-15 11:57:02 +09:00
Riccardo Spagni
ac5674524a
Revert "Merge pull request #4472 "
...
This reverts commit 79d46c4d55
, reversing
changes made to c9fc61dbb5
.
2018-10-08 21:39:54 +02:00
moneromooo-monero
a39c035846
blockchain: add check test options are given for fakechain mode
...
Coverity 188616
2018-10-08 11:37:58 +00:00
moneromooo-monero
6844ae1b8d
tx_pool: avoid parsing a whole tx if only the prefix is needed
2018-10-08 10:18:01 +00:00
moneromooo-monero
9907ea0694
cryptonote: sort tx_extra fields
...
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-07 11:13:22 +00:00
xiphon
02d3ef7bda
blocks: use auto-generated .c files instead of 'LD -r -b binary'
2018-10-04 00:01:09 +00:00
Riccardo Spagni
d1d64327b6
Merge pull request #4476
...
fa9e54b6
build: fix gcc false positive 'stringop-overflow' warning (xiphon)
2018-10-02 22:38:32 +02:00
Riccardo Spagni
e2da7c7817
Merge pull request #4467
...
fa942ef6
daemon: silence daemon update warnings on testnet (iDunk5400)
2018-10-02 22:36:57 +02:00
xiphon
fa9e54b6ee
build: fix gcc false positive 'stringop-overflow' warning
2018-09-30 10:58:00 +00:00
Riccardo Spagni
83d8f03c23
Merge pull request #4333
...
73403004
add --block-notify to monerod and --tx-notify to monero-wallet-{cli,rpc} (moneromooo-monero)
2018-09-29 22:20:44 +02:00
iDunk5400
fa942ef610
daemon: silence daemon update warnings on testnet
2018-09-29 14:42:10 +02:00
Riccardo Spagni
8bf5a00564
Merge pull request #4423
...
357441a2
add checkpoints for testnet and mainnet (Riccardo Spagni)
d9f666d7
update checkpoints.dat (Riccardo Spagni)
6b1b4e83
update version to 13.0 (Riccardo Spagni)
6f153533
update readme with v13.0 (Riccardo Spagni)
2018-09-25 13:33:52 +02:00
Riccardo Spagni
689758d691
Merge pull request #4435
...
c39ad0cd
tx_pool: fix tx removal at startup keeping references (moneromooo-monero)
2018-09-25 13:11:05 +02:00
moneromooo-monero
c39ad0cd72
tx_pool: fix tx removal at startup keeping references
2018-09-25 09:58:37 +00:00
moneromooo-monero
50981c40ce
blockchain: add stagenet v8 and v9, two weeks before mainnet
2018-09-24 20:43:39 +00:00
Riccardo Spagni
d9f666d78c
update checkpoints.dat
2018-09-23 09:51:15 +02:00
Riccardo Spagni
0645dcdbdb
Merge pull request #4378
...
ac934663
rpc: add a "is an update available" flag in get_info (moneromooo-monero)
2018-09-21 20:41:53 +02:00
Riccardo Spagni
d6893aedf6
Merge pull request #4369
...
b2bb9312
blockchain: simplify output distribution code (moneromooo-monero)
befdcbf4
db_lmdb: do not use base for cumulative distribution (moneromooo-monero)
2018-09-21 20:31:21 +02:00
moneromooo-monero
341b3931ed
cryptonote_core: warn when the block rate deviates from expectations
...
The warning threshold is set to allow a false positive every
ten days on average.
2018-09-20 14:01:52 +00:00
Riccardo Spagni
22a6591a70
Merge pull request #4325
...
4e1e9a60
blockchain: add mainnet v8 height targetting 18 october (moneromooo-monero)
2018-09-18 17:39:16 +02:00
Riccardo Spagni
3584a852a3
Merge pull request #4372
...
1660b0e7
tx_pool: make the max tx size a consensus rule from v8 (moneromooo-monero)
2018-09-14 12:56:01 +02:00
moneromooo-monero
be001326d1
remove obsolete daemon selection of fake outs and old tx construction
2018-09-14 10:51:45 +00:00
moneromooo-monero
ac9346637a
rpc: add a "is an update available" flag in get_info
...
Make it easier for a user to be told when to update
2018-09-14 09:28:03 +00:00
moneromooo-monero
1660b0e72c
tx_pool: make the max tx size a consensus rule from v8
2018-09-13 09:43:29 +00:00
moneromooo-monero
b2bb9312a7
blockchain: simplify output distribution code
2018-09-12 19:20:16 +00:00
moneromooo-monero
9137ad2c63
blockchain: add a testnet v9 a day after v8
...
So that bulletproofs become mandatory
2018-09-11 13:38:36 +00:00
moneromooo-monero
5ffb2ff9b7
v8: per byte fee, pad bulletproofs, fixed 11 ring size
2018-09-11 13:38:07 +00:00
moneromooo-monero
c444b1b229
require canonical multi output bulletproof layout
2018-09-11 13:37:39 +00:00
moneromooo-monero
2a8fcb421b
Bulletproof aggregated verification and tests
...
Also constrains bulletproofs to simple rct, for simplicity
2018-09-11 13:37:37 +00:00
moneromooo-monero
bacf0a1e2f
bulletproofs: add aggregated verification
...
Ported from sarang's java code
2018-09-11 13:37:32 +00:00
moneromooo-monero
9ce9f8caf6
bulletproofs: add multi output bulletproofs to rct
2018-09-11 13:37:28 +00:00
luigi1111
03738fdde1
Merge pull request #4276
...
48a7bc4
tx_pool: fix infinite loop when failing to find a meta record (moneromooo-monero)
2018-09-04 13:25:44 -05:00
luigi1111
5f1bbe3bce
Merge pull request #4268
...
1f2409e
Do memwipe for critical secret keys copied to rct::key (stoffu)
2018-09-04 13:16:04 -05:00
moneromooo-monero
4e1e9a607e
blockchain: add mainnet v8 height targetting 18 october
...
and v9 a day later
2018-09-02 16:02:17 +00:00
luigi1111
ec6982f8eb
Merge pull request #4240
...
83f5587
blockchain: use uint64_t for height, not size_t (moneromooo-monero)
2018-08-22 20:58:55 -05:00
luigi1111
4a4ea78ecd
Merge pull request #4204
...
b278b83
core: sync database based on bytes added, not blocks added (moneromooo-monero)
2018-08-22 20:43:51 -05:00
moneromooo-monero
48a7bc4280
tx_pool: fix infinite loop when failing to find a meta record
2018-08-19 17:47:05 +00:00
stoffu
1f2409e9e2
Do memwipe for critical secret keys copied to rct::key
2018-08-16 22:26:30 +09:00
moneromooo-monero
82d1b74500
core: cache block template where possible
...
This avoids constant rechecking of the same things each time
a miner asks for the block template. The tx pool maintains
a cookie to allow users to detect when the pool state changed,
which means the block template needs rebuilding.
2018-08-16 12:44:33 +00:00
luigi1111
fd3b71129b
Merge pull request #4164
...
8e24533
blockchain: some batch tx scanning speedup (moneromooo-monero)
2018-08-15 17:31:24 -05:00
moneromooo-monero
b278b83860
core: sync database based on bytes added, not blocks added
...
Blocks have a very wide range, whereas actual size is the relevant
quantity to consider when syncing
2018-08-12 16:13:46 +00:00
moneromooo-monero
83f5587167
blockchain: use uint64_t for height, not size_t
2018-08-09 17:09:26 +00:00
luigi1111
dda05f357a
Merge pull request #4108
...
8c05237
blockchain: cache next block difficulty after adding a block (moneromooo-monero)
2018-07-27 14:26:01 -05:00
moneromooo-monero
8e24533a7f
blockchain: some batch tx scanning speedup
2018-07-21 12:05:12 +01:00
luigi1111
61eea83978
Merge pull request #4081
...
d95bc44
blockchain: fix getting invalid block data on failure (moneromooo-monero)
2018-07-19 14:12:30 -05:00
luigi1111
9474567d76
Merge pull request #4076
...
aa0ea0a
blockchain: set the m_verifivation_failed flag in a couple more places (moneromooo-monero)
2018-07-19 14:11:24 -05:00
luigi1111
5cade94189
Merge pull request #4047
...
41b4bf9
tx_pool: cache check_tx_inputs results (moneromooo-monero)
2018-07-19 14:02:20 -05:00
luigi1111
21afa71ba6
Merge pull request #3981
...
45e419b
db: store cumulative rct output distribution in the db for speed (moneromooo-monero)
2018-07-19 13:39:24 -05:00
luigi1111
d518dae4bf
Merge pull request #3973
...
50af357
alt_chain_info can now give more info about a particular alt chain (moneromooo-monero)
2018-07-19 13:37:10 -05:00
luigi1111
025187e6c9
Merge pull request #3854
...
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-19 13:35:25 -05:00
moneromooo-monero
45e419bd5c
db: store cumulative rct output distribution in the db for speed
...
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-13 11:37:04 +01:00
moneromooo-monero
8c0523771f
blockchain: cache next block difficulty after adding a block
...
It's not 100% certain it'll be needed, but it avoids getinfo
needing the blockchain lock and potentially blocking
2018-07-07 19:34:21 +01:00
moneromooo-monero
d95bc44c6b
blockchain: fix getting invalid block data on failure
2018-06-29 15:50:34 +01:00
victorsintnicolaas
34cb6b4b70
add --regtest and --fixed-difficulty for regression testing
...
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-29 10:06:11 +02:00
moneromooo-monero
aa0ea0aafc
blockchain: set the m_verifivation_failed flag in a couple more places
...
when a block being added to the main chain is invalid.
This ensures the peer is banned after a number of these.
2018-06-28 16:57:22 +01:00
moneromooo-monero
84d9e7faec
blockchain: fix build after waiter::wait prototype change
2018-06-28 00:24:39 +01:00
luigi1111
87d7612311
Merge pull request #3986
...
b628503
Remove old logic saved in comments. (jeandudey)
2018-06-27 16:22:03 -05:00
luigi1111
3ad4ecd4ff
Merge pull request #3982
...
08b85a8
cryptonote_config: add get_config to refactor x = testnet ? config::testnet::X : stagenet ? config::stagenet::X : config::X (stoffu)
0cf80ba
net_node: resolve host for node addresses given via command line flags (stoffu)
2018-06-27 15:38:23 -05:00
luigi1111
a844844cda
Merge pull request #3716
...
a2b557f
6795bd0
209ec96
ed2c81e
a830db2
57ea902
31a895e
ba8331c
f7f1917
41be339
f025ae9
ef2cb63
dcfd299
5d3e702
2704624
2771a18
0e4c7d0
(moneromooo-monero)
2018-06-27 15:33:01 -05:00
moneromooo-monero
2771a18e85
threadpool: allow leaf functions to run concurrently
...
Decrease the number of worker threads by one to account
for the fact the calling thread acts as a worker thread now
2018-06-26 22:15:22 +01:00
moneromooo-monero
ef2cb63287
blockchain: simplify/speedup handle_get_objects
2018-06-26 22:15:14 +01:00
moneromooo-monero
a830db2577
rpc: rework to avoid repeated calculations in get_blocks.bin
2018-06-26 22:14:23 +01:00
moneromooo-monero
ed2c81ed95
replace std::list with std::vector on some hot paths
...
also use reserve where appropriate
2018-06-26 22:14:21 +01:00
moneromooo-monero
50af3579ee
alt_chain_info can now give more info about a particular alt chain
2018-06-26 08:19:51 +01:00
luigi1111
14372ca95a
Merge pull request #3975
...
2d5921e
blockchain: avoid duplicate db query for height (moneromooo-monero)
2018-06-25 15:24:45 -05:00
luigi1111
c3ec5373b3
Merge pull request #3936
...
d81e042
tx_pool: initialize bitflags padding since it gets written to storage (moneromooo-monero)
2018-06-25 14:53:27 -05:00
moneromooo-monero
41b4bf9d6d
tx_pool: cache check_tx_inputs results
...
This is called a lot when creating a block template, and
does not change until the blockchain changes.
This also avoids tx parsing when cached.
2018-06-24 11:22:26 +01:00
luigi1111
9eb51887b0
Merge pull request #3919
...
ace2eda
blockchain: pop forked blocks only when DB is not read-only (stoffu)
2018-06-20 14:39:09 -05:00
luigi1111
5a221c0e48
Merge pull request #3904
...
4f3a4fb
blockchain: return error when requesting non existent output (moneromooo-monero)
2018-06-20 14:33:08 -05:00
luigi1111
81a2ff768b
Merge pull request #3903
...
2b0c632
tx_pool: hold off parsing a tx blob till we actually need it (moneromooo-monero)
2018-06-20 14:31:33 -05:00
luigi1111
50bc95519e
Merge pull request #3828
...
16e209e
core: lock incoming tx lock when checking the txpool and chain (moneromooo-monero)
2018-06-19 12:41:07 -05:00
luigi1111
cfd66dae4b
Merge pull request #3691
...
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-17 22:04:39 -05:00
luigi1111
fb2b16f10a
Merge pull request #3732
...
fa0839f
Ensure m_timestamps has the correct number for computing difficulty. (thaerkh)
2018-06-16 14:05:53 -05:00
luigi1111
b3363e8e0a
Merge pull request #3726
...
b5cb1bc
blockchain: avoid exception if asked for a block we do not have (moneromooo-monero)
2018-06-16 14:02:56 -05:00
luigi1111
6be2516140
Merge pull request #3687
...
6b13976
blockchain: log in DEBUG when a block is found, and where (moneromooo-monero)
2018-06-12 12:22:12 -05:00
Jean Pierre Dudey
b628503bad
Remove old logic saved in comments.
...
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-06-11 09:36:05 -04:00
stoffu
08b85a8e00
cryptonote_config: add get_config to refactor x = testnet ? config::testnet::X : stagenet ? config::stagenet::X : config::X
2018-06-11 20:17:02 +09:00
moneromooo-monero
2d5921eefa
blockchain: avoid duplicate db query for height
2018-06-09 19:51:27 +01:00
luigi1111
2619d966c6
Merge pull request #3908
...
827ca3f
bump version for 0.12.2 point release (fluffypony)
95ccf50
update checkpoints.dat for point release (fluffypony)
2018-06-08 14:53:54 -05:00
luigi1111
22c8730261
Merge pull request #3450
...
3b941be
core: add get_earliest_ideal_height_for_version() (stoffu)
2018-06-08 14:31:49 -05:00
luigi1111
8a1f0d7d13
Merge pull request #3940
...
f24cbc5
blockchain: fix deadlock with the difficulty cache (moneromooo-monero)
2018-06-07 12:19:43 -05:00
moneromooo-monero
f24cbc5245
blockchain: fix deadlock with the difficulty cache
2018-06-06 10:37:51 +01:00
moneromooo-monero
d81e042306
tx_pool: initialize bitflags padding since it gets written to storage
...
Avoids valgrind reporting uninitialized data usage
2018-06-05 20:26:44 +01:00
stoffu
ace2edacb6
blockchain: pop forked blocks only when DB is not read-only
2018-06-04 20:59:50 +09:00
moneromooo-monero
f0322a083a
blockchain: demote a hash-of-hashes validation warning to debug
...
This data comes from untrusted peers, and validation failures
are therefore normal.
2018-06-02 23:48:12 +01:00
Riccardo Spagni
95ccf508cd
update checkpoints.dat for point release
2018-06-02 14:31:37 +02:00
moneromooo-monero
2b0c632f32
tx_pool: hold off parsing a tx blob till we actually need it
2018-06-02 09:17:41 +01:00
moneromooo-monero
4f3a4fb701
blockchain: return error when requesting non existent output
...
avoids RPC thread dying, causing the wallet to timeout
2018-06-01 21:52:04 +01:00
luigi1111
9bc8f76924
Merge pull request #3525
...
66a659b
blockchain: add scope guard to waiter for threaded txv1 verification (stoffu)
2018-05-30 16:08:50 -05:00
luigi1111
a7ea14dc6a
Merge pull request #3876
...
740da1b
core: fix automatic safe db sync mode switching (moneromooo-monero)
e942d34
protocol: do not switch to unsafe sync mode for just a few blocks (moneromooo-monero)
2018-05-30 15:46:13 -05:00
luigi1111
4267a0bb51
Merge pull request #3731
...
a66f152
Use median timestamp if current time renders a block invalid. (thaerkh)
2018-05-30 15:44:25 -05:00
luigi1111
c534fe8d19
Merge pull request #3251
...
b9389e5
db_lmdb: save pruned and prunable tx data separately (moneromooo-monero)
2018-05-29 17:56:26 -05:00
luigi1111
ed72f35e9a
Merge pull request #3446
...
a6b8d3f
tx_pool: remove old comment from fill_block_template() (stoffu)
2018-05-29 12:57:43 -05:00
luigi1111
764340d112
Merge pull request #3420
...
a6a54fa
blockchain: cache difficulty for next block (moneromooo-monero)
2018-05-29 12:55:19 -05:00
moneromooo-monero
740da1ba95
core: fix automatic safe db sync mode switching
2018-05-28 12:14:04 +01:00
stoffu
a6b8d3fee1
tx_pool: remove old comment from fill_block_template()
2018-05-28 13:41:39 +09:00
moneromooo-monero
b9389e582e
db_lmdb: save pruned and prunable tx data separately
...
This bumps DB version to 2, migration code will run for v1 DBs
2018-05-23 22:48:12 +01:00
Riccardo Spagni
45975fd8eb
update checkpoints
2018-05-23 21:20:15 +02:00
Riccardo Spagni
f794d3b3df
Merge pull request #3787
...
ce63ab09
blockchain: invalidate misc caches when popping blocks (moneromooo-monero)
2018-05-21 21:36:38 +02:00
Riccardo Spagni
709658d166
Merge pull request #3832
...
cb9c7972
Fix output shuffling for multisig (stoffu)
2018-05-21 20:57:52 +02:00
moneromooo-monero
5f8ffca34d
speed up get_output_distribution (and precalc common case)
2018-05-21 19:51:58 +01:00
Riccardo Spagni
791da4343c
Merge pull request #3749
...
872cb4ef
blockchain: pop top if block version disagrees with the ideal fork version (stoffu)
2018-05-21 20:45:35 +02:00
moneromooo-monero
ce173cbb5b
core: remove threadpool dependency from header
2018-05-20 12:06:07 +01:00
stoffu
cb9c7972b6
Fix output shuffling for multisig
2018-05-20 09:38:41 +09:00
moneromooo-monero
16e209e08d
core: lock incoming tx lock when checking the txpool and chain
...
This gets rid of an innocuous race trying to add the same tx
twice to the txpool
2018-05-18 09:39:56 +01:00
Thaer Khawaja
a66f152f75
Use median timestamp if current time renders a block invalid.
2018-05-13 11:58:05 -07:00
moneromooo-monero
b5cb1bc403
blockchain: avoid exception if asked for a block we do not have
...
This can happen if a peer tries to obtain the next span from other
peers if that span is needed for not downloaded yet. Also if the
peer maliciously requests a non existent block hash.
2018-05-09 14:03:07 +01:00
moneromooo-monero
ce63ab09db
blockchain: invalidate misc caches when popping blocks
...
Might be a bit heavy handed, but conservative.
2018-05-09 09:10:56 +01:00
moneromooo-monero
6f859e4328
cryptonote: make sure outPk setup always happens
2018-05-07 19:21:52 +01:00
stoffu
872cb4efd8
blockchain: pop top if block version disagrees with the ideal fork version
2018-05-06 20:50:46 +09:00
Thaer Khawaja
fa0839f2f5
Ensure m_timestamps has the correct number for computing difficulty.
2018-04-29 19:50:55 -07:00
Riccardo Spagni
2ab5b1a21f
Merge pull request #3683
...
dad10775
Only log an error if fork version is higher AND is not known. (Thaer Khawaja)
2018-04-28 16:57:36 +02:00
moneromooo-monero
6b13976330
blockchain: log in DEBUG when a block is found, and where
...
Eases up debugging
2018-04-23 11:43:12 +01:00
moneromooo-monero
ffeeefde60
speedup get_output_histogram for all amounts when min_count > 0
...
This skips the vast majority of "dust" output amounts with just
one instance on the chain. Clocks in at 0.15% of the original
time on testnet.
2018-04-23 10:54:28 +01:00
Thaer Khawaja
dad1077577
Only log an error if fork version is higher AND is not known.
2018-04-22 17:26:44 -07:00
Riccardo Spagni
a95461e76d
Merge pull request #3609
...
08343aba
tx_pool: fix loading with colliding key images (moneromooo-monero)
2018-04-12 13:48:44 +02:00
Riccardo Spagni
226de8e928
Merge pull request #3530
...
eb59f7c5
cryptonote_tx_util: make destinations properly shuffled (stoffu)
2018-04-12 13:46:34 +02:00
Riccardo Spagni
5053f8f40b
Merge pull request #3502
...
11c933e1
fix lambda compile error on openbsd (moneromooo-monero)
2018-04-12 11:14:43 +02:00
moneromooo-monero
08343abaf4
tx_pool: fix loading with colliding key images
...
A key image may be present more than once if all but one of the
txes spending that key image are coming from blocks. When loading
a txpool from storage, we must load the one that's not from a
block first to avoid rejection
2018-04-11 15:27:56 +01:00
stoffu
eb59f7c563
cryptonote_tx_util: make destinations properly shuffled
2018-03-31 18:37:46 +09:00
stoffu
66a659bb03
blockchain: add scope guard to waiter for threaded txv1 verification
2018-03-30 19:22:32 +09:00
moneromooo-monero
11c933e137
fix lambda compile error on openbsd
2018-03-27 14:48:36 +01:00
Riccardo Spagni
dac3895ac1
update block hashes for checkpoints.dat
2018-03-24 08:36:10 +02:00
stoffu
3b941befae
core: add get_earliest_ideal_height_for_version()
2018-03-21 01:53:24 +09:00
moneromooo-monero
a6a54fa883
blockchain: cache difficulty for next block
...
Takes about 10 ms, which takes pretty much all of the get_info
RPC, which is called pretty often from wallets.
Also add a new lock so we don't need to lock the blockchain lock,
which will avoid blocking for a long time when calling the getinfo
RPC while syncing. Users of get_difficulty_for_next_block who need
the lock will have locked it already.
2018-03-19 09:05:40 +00:00
moneromooo-monero
b1398fff40
core: fix use of uninitialised data
2018-03-18 23:37:00 +00:00
moneromooo-monero
bb20f104ba
Move v7 fork to 1546000 to give more update time
2018-03-18 09:29:31 +00:00
Riccardo Spagni
83651630bc
Merge pull request #3418
...
20a00266
blockchain: forbid bulletproof types before v8 (moneromooo-monero)
2018-03-17 16:51:47 +02:00
moneromooo-monero
20a002667c
blockchain: forbid bulletproof types before v8
...
They were already forbidden implicitely, but let's make that
explicit for robustness
2018-03-16 18:18:34 +00:00
Riccardo Spagni
432480fa42
Merge pull request #3414
...
524cbdc1
blockchain: fix log message about per-kB fee (stoffu)
2018-03-16 18:09:34 +02:00
Riccardo Spagni
0f27fc57ac
Merge pull request #3336
...
57c0b1ed
Fix typos in various files (Dimitris Apostolou)
2018-03-16 18:08:07 +02:00
moneromooo-monero
41f727ce42
add RPC to get a histogram of outputs of a given amount
2018-03-16 10:32:26 +00:00
stoffu
524cbdc1e2
blockchain: fix log message about per-kB fee
2018-03-16 10:43:19 +09:00
Dimitris Apostolou
57c0b1ed9f
Fix typos in various files
2018-03-15 18:25:38 +02:00
Jean Pierre Dudey
e1b526b371
Remove the Blockchain::get_all_known_block_ids
function.
...
This function isn't used in the codebase.
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-03-14 21:56:19 -04:00
stoffu
8705beaf51
keypair::generate: always require hw::device to avoid possible mistake
2018-03-14 21:00:16 +09:00
stoffu
27a196b126
device: untangle cyclic depenency
...
When #3303 was merged, a cyclic dependency chain was generated:
libdevice <- libcncrypto <- libringct <- libdevice
This was because libdevice needs access to a set of basic crypto operations
implemented in libringct such as scalarmultBase(), while libringct also needs
access to abstracted crypto operations implemented in libdevice such as
ecdhEncode(). To untangle this cyclic dependency chain, this patch splits libringct
into libringct_basic and libringct, where the basic crypto ops previously in
libringct are moved into libringct_basic. The cyclic dependency is now resolved
thanks to this separation:
libcncrypto <- libringct_basic <- libdevice <- libcryptonote_basic <- libringct
This eliminates the need for crypto_device.cpp and rctOps_device.cpp.
Also, many abstracted interfaces of hw::device such as encrypt_payment_id() and
get_subaddress_secret_key() were previously implemented in libcryptonote_basic
(cryptonote_format_utils.cpp) and were then called from hw::core::device_default,
which is odd because libdevice is supposed to be independent of libcryptonote_basic.
Therefore, those functions were moved to device_default.cpp.
2018-03-14 21:00:15 +09:00
Riccardo Spagni
9a63fbcf83
Merge pull request #3371
...
84decbea
core: add v7 for 1539500 on mainnet (moneromooo-monero)
2018-03-14 13:37:25 +02:00
Riccardo Spagni
2e074e2ae7
Merge pull request #3358
...
978663d4
Stagenet: successive forks up to v7 (stoffu)
2018-03-14 13:36:47 +02:00
Cédric
73dd883d51
Ledger HW Bug fixes
...
Fix the way the REAL mode is handle:
Let create_transactions_2 and create_transactions_from construct the vector of transactions.
Then iterate on it and resign.
We just need to add 'outs' list in the TX struct for that.
Fix default secret keys value when DEBUG_HWDEVICE mode is off
The magic value (00...00 for view key and FF..FF for spend key) was not correctly set
when DEBUG_HWDEVICE was off. Both was set to 00...00.
Add sub-address info in ABP map in order to correctly display destination sub-address on device
Fix DEBUG_HWDEVICE mode:
- Fix compilation errors.
- Fix control device init in ledger device.
- Add more log.
Fix sub addr control
Fix debug Info
2018-03-12 10:43:06 +01:00
stoffu
978663d461
Stagenet: successive forks up to v7
2018-03-09 13:59:11 +09:00
moneromooo-monero
84decbea48
core: add v7 for 1539500 on mainnet
2018-03-07 17:19:50 +00:00
moneromooo-monero
38657fd0e9
Bump min ring size from 5 to 7 from v7
2018-03-07 13:19:04 +00:00
Riccardo Spagni
9841a452e5
Merge pull request #3338
...
51219457
core: fix sending to the source address with a short payment id (moneromooo-monero)
2018-03-05 19:13:28 +02:00
Riccardo Spagni
abcdb7b5c4
Merge pull request #3308
...
6f8779d2
blockchain: fix random sync failures (moneromooo-monero)
2018-03-05 19:12:05 +02:00
Riccardo Spagni
4f93f74528
Merge pull request #3277
...
0e7ad2e2
Wallet API: generalize 'bool testnet' to 'NetworkType nettype' (stoffu)
af773211
Stagenet (stoffu)
cc9a0bee
command_line: allow args to depend on more than one args (stoffu)
55f8d917
command_line::get_arg: remove 'required' for dependent args as they're always optional (stoffu)
450306a0
command line: allow has_arg to handle arg_descriptor<bool,false,true> #3318 (stoffu)
9f9e095a
Use `genesis_tx` parameter in `generate_genesis_block`. #3261 (Jean Pierre Dudey)
2018-03-05 19:11:20 +02:00
Edward Betts
fbcc91c2a4
Correct spelling mistakes.
2018-03-05 17:00:40 +00:00
stoffu
af773211cb
Stagenet
2018-03-05 11:55:05 +09:00
Jean Pierre Dudey
9f9e095a8c
Use genesis_tx
parameter in generate_genesis_block
. #3261
...
* src/cryptnote_config.h: The constant `config::testnet::GENESIS_TX` was
changed to be the same as `config::GENESIS_TX` (the mainnet's transaction)
because the mainnet's transaction was being used for both networks.
* src/cryptonote_core/cryptonote_tx_utils.cpp: The `generate_genesis_block` function
was ignoring the `genesis_tx` parameter, and instead it was using the `config::GENESIS_TX`
constant. That's why the testnet genesis transaction was changed. Also five lines of unused
code were removed.
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-03-05 11:19:01 +09:00
cslashm
e745c1e38d
Code modifications to integrate Ledger HW device into monero-wallet-cli.
...
The basic approach it to delegate all sensitive data (master key, secret
ephemeral key, key derivation, ....) and related operations to the device.
As device has low memory, it does not keep itself the values
(except for view/spend keys) but once computed there are encrypted (with AES
are equivalent) and return back to monero-wallet-cli. When they need to be
manipulated by the device, they are decrypted on receive.
Moreover, using the client for storing the value in encrypted form limits
the modification in the client code. Those values are transfered from one
C-structure to another one as previously.
The code modification has been done with the wishes to be open to any
other hardware wallet. To achieve that a C++ class hw::Device has been
introduced. Two initial implementations are provided: the "default", which
remaps all calls to initial Monero code, and the "Ledger", which delegates
all calls to Ledger device.
2018-03-04 12:54:53 +01:00
moneromooo-monero
51219457b1
core: fix sending to the source address with a short payment id
...
It would fail to send, thinking it needs a destination address,
since the destination matches the change address in this case.
2018-03-02 23:27:57 +00:00
moneromooo-monero
6f8779d282
blockchain: fix random sync failures
...
When a block is added as part of a chunk (when syncing historical
blocks), a block may end up already in the blockchain if it was
added to the queue before being added to the chain (though it's
not clear how that could happen, but it's an implementation detail)
and thus may not be added to the chain when add_block is called.
This would cause m_blocks_txs_check to not be cleared, causing it
to get out of sync at next call, and thus wrongfully reject the
next block.
2018-02-23 19:47:17 +00:00
moneromooo-monero
4a78a99f96
cryptonote_core: change wording of fork warning message
...
An udpate may or may not be available now, but should be soon if not.
This will prevent too many people freaking out.
2018-02-18 23:44:59 +00:00
Riccardo Spagni
6198c816b1
Merge pull request #3170
...
b3b2d4d2
options: add testnet option dependencies (whythat)
c5f55bb4
common: implement dynamic option dependencies mechanism (whythat)
05a12ccc
options: remove testnet-* options (whythat)
c33cb60e
common: implement dependent option descriptor (whythat)
2018-02-17 11:51:57 +01:00
Riccardo Spagni
a2cbedd29f
Merge pull request #3191
...
3607d467
core: add --no-fluffy-blocks, and enable fluffy blocks by default (moneromooo-monero)
2018-02-17 11:48:31 +01:00
whythat
b3b2d4d20c
options: add testnet option dependencies
2018-02-16 22:32:01 +02:00
whythat
05a12ccc2d
options: remove testnet-* options
2018-02-16 22:32:01 +02:00
Leon Klingele
7c1a607c40
txpool: Don't bail out when blob_size == tx_size_limit
...
Previously, when blob_size == tx_size_limit, the "m_too_big" property was set
and the transaction was rejected. This should not have been the case.
2018-02-16 16:27:08 +01:00
moneromooo-monero
3607d467f3
core: add --no-fluffy-blocks, and enable fluffy blocks by default
2018-02-16 13:46:46 +00:00
Riccardo Spagni
f4a6bc79d9
Merge pull request #3226
...
e4646379
keccak: fix mdlen bounds sanity checking (moneromooo-monero)
2e3e90ac
pass large parameters by const ref, not value (moneromooo-monero)
61defd89
blockchain: sanity check number of precomputed hash of hash blocks (moneromooo-monero)
9af6b2d1
ringct: fix infinite loop in unused h2b function (moneromooo-monero)
8cea8d0c
simplewallet: double check a new multisig wallet is multisig (moneromooo-monero)
9b98a6ac
threadpool: catch exceptions in dtor, to avoid terminate (moneromooo-monero)
24803ed9
blockchain_export: fix buffer overflow in exporter (moneromooo-monero)
f3f7da62
perf_timer: rewrite to make it clear there is no division by zero (moneromooo-monero)
c6ea3df0
performance_tests: remove add_arg call stray extra param (moneromooo-monero)
fa6b4566
fuzz_tests: fix an uninitialized var in setup (moneromooo-monero)
03887f11
keccak: fix sanity check bounds test (moneromooo-monero)
ad11db91
blockchain_db: initialize m_open in base class ctor (moneromooo-monero)
bece67f9
miner: restore std::cout precision after modification (moneromooo-monero)
1aabd14c
db_lmdb: check hard fork info drop succeeded (moneromooo-monero)
2018-02-16 14:26:58 +01:00
Riccardo Spagni
24d8f9237f
Merge pull request #3248
...
d6a0ae96
blockchain: don't try to use hash check array after it's freed (moneromooo-monero)
2018-02-16 14:24:22 +01:00
Riccardo Spagni
bfddb2283b
Merge pull request #3210
...
39992134
txpool: Properly bail out when outputs_amount == inputs_amount (Leon Klingele)
2018-02-16 14:22:10 +01:00
Riccardo Spagni
079eea7b70
Merge pull request #3205
...
bc61ae69
tx_pool: add a max pool size, settable with --max-txpool-size (moneromooo-monero)
3b4e6b35
txpool: increase unmined tx expiry to three days (moneromooo-monero)
2018-02-16 14:21:50 +01:00
Riccardo Spagni
a43be404c7
Merge pull request #3171
...
402c9eef
cryptonote_tx_utils: fixed logic bug in get_destination_view_key_pub (stoffu)
2018-02-16 14:19:10 +01:00
moneromooo-monero
d6a0ae96c6
blockchain: don't try to use hash check array after it's freed
...
It's freed when we've synced past its end, but we might still
find an old chain somewhere
2018-02-10 11:26:06 +00:00
moneromooo-monero
bc61ae69bf
tx_pool: add a max pool size, settable with --max-txpool-size
2018-02-07 13:42:12 +00:00
moneromooo-monero
61defd89e3
blockchain: sanity check number of precomputed hash of hash blocks
...
Coverity 142951
2018-02-02 17:10:13 +00:00
Leon Klingele
399921347f
txpool: Properly bail out when outputs_amount == inputs_amount
...
Previously, when outputs_amount == inputs_amount, the "m_overspend" property
was set, whereas "m_fee_too_low" would have been the correct property to set.
This is unlikely to ever occur and just something I've noticed while reading
through the code.
2018-02-01 00:48:45 +01:00
moneromooo-monero
c70f03cacf
blockchain: move bulletproofs to v8
...
and set v7 height to 1057027 on testnet (one block earlier)
This is to easily dump current nodes since we're going to change
the v7 rules with this.
2018-01-31 15:52:39 +00:00
stoffu
402c9eef0e
cryptonote_tx_utils: fixed logic bug in get_destination_view_key_pub
2018-01-29 17:05:07 +09:00
Riccardo Spagni
f7dcb730cb
Merge pull request #3144
...
42f86624
rpc: expose recent median block size in getinfo (moneromooo-monero)
2018-01-27 17:25:40 -08:00
Riccardo Spagni
e93ff8f22d
Merge pull request #3143
...
ba6d2975
cryptonote_core: add --disable-dns-checkpoints flag (moneromooo-monero)
2018-01-27 17:25:33 -08:00
xmr-eric
18216f19dd
Update 2018 copyright
2018-01-26 10:03:20 -05:00
Riccardo Spagni
9872620781
Merge pull request #3014
...
deeffaeb
blockchain: remove minor floating point usage (moneromooo-monero)
2018-01-25 16:38:32 -08:00
moneromooo-monero
42f86624a3
rpc: expose recent median block size in getinfo
2018-01-17 11:12:26 +00:00
moneromooo-monero
ba6d2975bc
cryptonote_core: add --disable-dns-checkpoints flag
2018-01-17 10:14:48 +00:00
moneromooo-monero
deeffaeb5c
blockchain: remove minor floating point usage
2018-01-10 11:05:30 +00:00
Riccardo Spagni
0a110aefbb
Merge pull request #2971
...
ae860230
Fix exceptions not finding txpool txes when relaying (moneromooo-monero)
2018-01-10 11:45:15 +01:00
Riccardo Spagni
b38f6dcf0b
Merge pull request #2929
...
ae55bacd
resumption support for updates using range requests (moneromooo-monero)
fe0fae50
epee: add a get_file_size function (moneromooo-monero)
2017-12-25 21:20:22 +02:00
moneromooo-monero
ae8602303a
Fix exceptions not finding txpool txes when relaying
2017-12-20 13:02:53 +00:00
moneromooo-monero
24f584d90d
cryptonote_core: remove unused functions with off by one bugs
2017-12-18 15:16:06 +00:00
moneromooo-monero
b1634aa3e8
blockchain: don't leave dangling pointers in this
2017-12-18 15:16:03 +00:00
moneromooo-monero
8e60b81c48
cryptonote_core: fix db leak on error
2017-12-18 15:16:00 +00:00
moneromooo-monero
b49ddc766d
check accessing an element past the end of a container
2017-12-18 15:15:49 +00:00
moneromooo-monero
d753d716a6
fix a few leaks by throwing objects, not newed pointers to objects
2017-12-18 15:15:13 +00:00
Riccardo Spagni
1cc7451130
Merge pull request #2134
...
ceabc4f9
change the N-1/N multisig second message signer for auth (moneromooo-monero)
55c2845d
core_tests: multisig test now tests multiple inputs (moneromooo-monero)
98db7ee4
wallet: factor multisig info parsing (moneromooo-monero)
31a97e76
wallet: use raw encrypted data in multisig import/export RPC (moneromooo-monero)
2fa707d1
wallet: add multisig sign/submit RPC (moneromooo-monero)
e36f5b60
Match surae's recommendation to derive multisig keys (moneromooo-monero)
a36c261d
wallet2: fix slow multisig unit tests with subaddress patch (moneromooo-monero)
fa569712
make multisig work with subaddresses (moneromooo-monero)
dffa0dce
simplewallet: add export_raw_multisig command (moneromooo-monero)
7f4c220b
simplewallet: add multisig to wallet type in wallet_info output (moneromooo-monero)
26529038
wallet: guard against partly initialized multisig wallet (moneromooo-monero)
66e34e85
add multisig core test and factor multisig building blocks (moneromooo-monero)
f4eda44c
N-1/N multisig (moneromooo-monero)
cd64c799
multisig address generation RPC (moneromooo-monero)
fff871a4
gen_multisig: generates multisig wallets if participants trust each other (moneromooo-monero)
95a21a79
wallet2: allow empty wallet filename to avoid saving data (moneromooo-monero)
b84b3565
tests: add multisig unit tests (moneromooo-monero)
4c313324
Add N/N multisig tx generation and signing (moneromooo-monero)
6d219a92
wallet: add multisig key generation (moneromooo-monero)
2017-12-17 21:05:16 +02:00
moneromooo-monero
d9b137f161
cryptonote_core: fix blockchain init call after prototype change
2017-12-17 18:47:46 +00:00
moneromooo-monero
fa5697127f
make multisig work with subaddresses
...
Thanks to kenshi84 for help getting this work
2017-12-17 16:12:27 +00:00