Interchained
c61abf87c0
remove empty statements
...
Cleaning up a little around the code base.
2020-02-17 11:55:15 -05:00
moneromooo-monero
e3779775d7
tx_pool: catch theoretical error in get_block_reward
...
Coverity 196626
2020-02-12 21:05:28 +00:00
moneromooo-monero
9bde70e567
core: mention time being off in hash rate changes message
2020-02-10 16:56:10 +00:00
Alexander Blair
e552ba14b2
Merge pull request #6127
...
67b4a19e
simplewallet: noob-friendly help menu (wowario)
2020-02-06 00:33:31 -08:00
Alexander Blair
2532567091
Merge pull request #6078
...
b9fc2066
Add a --keep-fakechain option to keep fakechain databases (JamesWrigley)
2020-02-06 00:30:15 -08:00
Alexander Blair
9a08ac98c0
Merge pull request #6050
...
65301c40
core: point out when we hit the block rate visibility limit (moneromooo-monero)
2020-02-06 00:28:18 -08:00
luigi1111
d7aeb5a9f8
Merge pull request #6233
...
8a27645
blockchain: fix flushing txes from the txpool (moneromooo-monero)
2020-02-04 14:38:35 -05:00
Alexander Blair
8eedc8a390
Merge pull request #6140
...
08635a08
blockchain: speedup fetching pruned contiguous tx blobs (moneromooo-monero)
2020-01-25 16:55:18 -08:00
Alexander Blair
d1b08c00cf
Merge pull request #6146
...
70c9cd3c
Change to Tx diffusion (Dandelion++ fluff) instead of flooding (Lee Clagett)
2020-01-24 20:06:34 -08:00
Alexander Blair
c4abfbfbe7
Merge pull request #6124
...
21d4c216
blockchain: error out if the builtin hashes data size is wrong (moneromooo-monero)
2020-01-16 17:31:35 -08:00
xiphon
ffe7165ebf
wallet: reroll fake outs selection on local tx_sanity_check failure
2020-01-14 22:56:23 +00:00
UkoeHB
02224e714d
Fix check_fee() discrepancy.
...
M100 = max{300kb, min{100block_median, m_long_term_effective_median_block_weight}}
not
M100 = max{300kb, m_long_term_effective_median_block_weight}
Fix base reward in get_dynamic_base_fee_estimate().
get_dynamic_base_fee_estimate() should match check_fee()
Fee is calculated based on block reward, and the reward penalty takes into account 0.5*max_block_weight (both before and after HF_VERSION_EFFECTIVE_SHORT_TERM_MEDIAN_IN_PENALTY).
Moved median calculation according to best practice of 'keep definitions close to where they are used'.
2020-01-09 09:11:09 -06:00
moneromooo-monero
8a276451b2
blockchain: fix flushing txes from the txpool
2019-12-14 02:13:39 +00:00
luigi1111
e5cc6d39a9
Merge pull request #6055
...
886ed25
blockchain: fix comment wrongly refering to SHA-3 rather than Keccak (moneromooo-monero)
2019-12-12 13:47:04 -06:00
luigi1111
fb64463c4c
Merge pull request #6052
...
c96b7ee
tx_pool: fix error message assuming incorrectly (moneromooo-monero)
2019-12-12 13:44:50 -06:00
moneromooo-monero
987c3139dc
print_coinbase_tx_sum now supports 128 bits sums
...
The tail emission will bring the total above 64 bits
2019-12-12 01:56:59 +00:00
moneromooo-monero
5985c5afe8
rpc: add bad-blocks to flush_cache RPC
...
Flushes m_invalid_blocks in Blockchain.
2019-12-02 18:53:30 +00:00
moneromooo-monero
08635a0875
blockchain: speedup fetching pruned contiguous tx blobs
...
About twice as fast, very roughly
2019-11-15 13:23:30 +00:00
wowario
67b4a19edf
simplewallet: noob-friendly help menu
2019-11-13 10:24:10 +03:00
moneromooo-monero
21d4c21619
blockchain: error out if the builtin hashes data size is wrong
2019-11-12 12:43:08 +00:00
Lee Clagett
70c9cd3c9c
Change to Tx diffusion (Dandelion++ fluff) instead of flooding
2019-11-04 09:23:20 +00:00
Lee Clagett
5d7ae2d279
Adding support for hidden (anonymity) txpool
2019-11-02 20:36:03 +00:00
Riccardo Spagni
eaadbbdab0
Merge pull request #6079
...
e4d1674e8
0.15.0.0 release engineering (Riccardo Spagni)
2019-11-02 17:31:22 +02:00
Riccardo Spagni
e4d1674e8c
0.15.0.0 release engineering
2019-11-02 17:21:52 +02:00
JamesWrigley
b9fc206660
Add a --keep-fakechain option to keep fakechain databases
...
This is handy when doing tests that generate a lot of transactions, since that
takes time it's preferable to re-use the database for future runs.
2019-11-01 23:56:08 +01:00
moneromooo-monero
ebc6ce44f4
cryptonote: untangle dependency from miner to blockchain
...
It causes link errors at least on mac
2019-10-31 01:06:42 +00:00
moneromooo-monero
886ed25055
blockchain: fix comment wrongly refering to SHA-3 rather than Keccak
2019-10-29 11:37:08 +00:00
moneromooo-monero
c96b7ee619
tx_pool: fix error message assuming incorrectly
2019-10-29 10:43:59 +00:00
moneromooo-monero
65301c406e
core: point out when we hit the block rate visibility limit
2019-10-28 16:06:15 +00:00
moneromooo-monero
eb16755083
blockchain: fix unwanted error when probing the pool for a tx
2019-10-27 19:23:25 +00:00
luigi1111
07c6789148
Merge pull request #5958
...
d25acd7
Add hmac over encrypted value during transaction (clashm)
34f28a7
Add display address (clashm)
235b94e
Revert PR #5835 (export view key) (clashm)
32febd2
Fix debug feature (clashm)
2019-10-25 16:03:24 -05:00
luigi1111
86d085e988
Merge pull request #6028
...
174a6ac
tx_pool: fix divide by 0 in log (moneromooo-monero)
2019-10-25 14:29:15 -05:00
moneromooo-monero
a4dc575ccb
rpc: add a flush_cache RPC
...
This allows flushing internal caches (for now, the bad tx cache,
which will allow debugging a stuck monerod after it has failed to
verify a transaction in a block, since it would otherwise not try
again, making subsequent log changes pointless)
2019-10-25 18:41:54 +00:00
moneromooo-monero
174a6ac9c5
tx_pool: fix divide by 0 in log
...
Coverity 205394
2019-10-25 16:56:55 +00:00
luigi1111
4233d88341
Merge pull request #5973
...
abd3763
cryptonote: fill in tx weight when syncing from pruned blocks (moneromooo-monero)
2019-10-22 10:54:46 -05:00
luigi1111
426d2ac8ee
Merge pull request #5981
...
88c9d90
protocol: initialize block_weight in block_complete_entry ctor (moneromooo-monero)
fe443bb
cryptonote: don't leave block_weight uninitialized (moneromooo-monero)
1ba9baf
tx_pool: do not divide by 0 (moneromooo-monero)
2019-10-22 10:18:28 -05:00
luigi1111
cf2d4d9a16
Merge pull request #5974
...
7fcd0b5
blockchain: initialize pow to ff..ff (moneromooo-monero)
2019-10-22 10:13:34 -05:00
luigi1111
8bb3c6a8e6
Merge pull request #5970
...
ab96181
blockchain: use effective median block weight for penalty from v12 (moneromooo-monero)
2019-10-22 10:09:56 -05:00
luigi1111
84ce43a239
Merge pull request #5966
...
be82c40
Support median block size > 4 GB (moneromooo-monero)
2019-10-22 10:08:32 -05:00
luigi1111
6f202844b5
Merge pull request #5919
...
01f660f
blockchain: fill in cumulative block weight for alt blocks (moneromooo-monero)
2019-10-22 10:06:10 -05:00
moneromooo-monero
be82c40703
Support median block size > 4 GB
...
add a 128/64 division routine so we can use a > 32 bit median block
size in calculations
2019-10-21 10:41:07 +00:00
luigi1111
461a25e1b5
Merge pull request #5962
...
ec14abd
tx_pool: make spent return-by-reference as intended (stoffu)
2019-10-16 13:51:34 -05:00
moneromooo-monero
7fcd0b55ea
blockchain: initialize pow to ff..ff
...
as a safety to reject if it somehow does not get initialised
2019-10-16 09:00:30 +00:00
luigi1111
37a72fd6ae
Merge pull request #5941
...
d37d30f
blockchain: tweak fee as a function of median values (moneromooo-monero)
2019-10-14 18:11:13 -05:00
luigi1111
dc48cdc998
Merge pull request #5933
...
3455efa
ban peers sending bad pow outright (moneromooo-monero)
2019-10-14 18:07:54 -05:00
moneromooo-monero
ab96181e91
blockchain: use effective median block weight for penalty from v12
...
It was using the raw block weight median, which was not what was
intended in ArticMine's design
2019-10-11 14:16:09 +00:00
moneromooo-monero
1ba9bafd33
tx_pool: do not divide by 0
...
In case of a 0 tx weight, we use a placeholder value to insert in the
fee-per-byte set. This is used for pruning and mining, and those txes
are pruned, so will not be too large, nor added to the block template
if mining, so this is safe.
CID 204465
2019-10-11 14:09:31 +00:00
moneromooo-monero
fe443bbdec
cryptonote: don't leave block_weight uninitialized
...
CID 204467
2019-10-11 14:09:31 +00:00
moneromooo-monero
01f660f60f
blockchain: fill in cumulative block weight for alt blocks
2019-10-10 20:26:40 +00:00
moneromooo-monero
abd376313b
cryptonote: fill in tx weight when syncing from pruned blocks
2019-10-10 11:08:02 +00:00
luigi1111
bf525793c7
Merge pull request #5915
...
8330e77
monerod can now sync from pruned blocks (moneromooo-monero)
2019-10-08 15:55:03 -05:00
stoffu
ec14abdbe8
tx_pool: make spent return-by-reference as intended
2019-10-06 12:28:30 +09:00
cslashm
d25acd7a1d
Add hmac over encrypted value during transaction
2019-10-03 16:01:34 +02:00
luigi1111
17f063a50f
Merge pull request #5902
...
b9da023
blockchain: keep block template timestamp not below recent median (moneromooo-monero)
2019-09-30 18:52:11 -05:00
luigi1111
d9cb50870d
Merge pull request #5900
...
6bbc646
Fix bug in mempool get_transaction_stats histogram calculation (tomsmeding)
2019-09-30 18:49:09 -05:00
moneromooo-monero
d37d30f79a
blockchain: tweak fee as a function of median values
...
Use the lesser of the short and long terms medians, rather then
the long term median alone
From ArticMine:
I found a bug in the new fee calculation formula with using only the long term median
It actually needs to be the lesser of the long term median and the old (modified short term median)
short term median with the last 10 blocks calculated as empty
Yes the issue occurs if there is a large long term median and, the short term median then falls and tries to then rise again
The fees are could be not high enough
for example LTM and STM rise to say 2000000 bytes
STM falls back to 300000 bytes
Fees are now based on 2000000 bytes until LTM also falls
So the STM is could prevented from rising back up
STM short term median LTM long term median
2019-09-28 22:53:41 +00:00
moneromooo-monero
8330e772f1
monerod can now sync from pruned blocks
...
If the peer (whether pruned or not itself) supports sending pruned blocks
to syncing nodes, the pruned version will be sent along with the hash
of the pruned data and the block weight. The original tx hashes can be
reconstructed from the pruned txes and theur prunable data hash. Those
hashes and the block weights are hashes and checked against the set of
precompiled hashes, ensuring the data we received is the original data.
It is currently not possible to use this system when not using the set
of precompiled hashes, since block weights can not otherwise be checked
for validity.
This is off by default for now, and is enabled by --sync-pruned-blocks
2019-09-27 00:10:37 +00:00
Howard Chu
81c2ad6d5b
RandomX integration
...
Support RandomX PoW algorithm
2019-09-25 21:29:42 +01:00
moneromooo-monero
3455efafa8
ban peers sending bad pow outright
...
PoW is expensive to verify, so be strict
2019-09-25 16:00:43 +00:00
luigi1111
44aa7d5439
Merge pull request #5882
...
a444f06
blockchain: enforce 10 block age for spending outputs (moneromooo-monero)
2019-09-24 10:27:22 -05:00
luigi1111
06bee964a8
Merge pull request #5878
...
f9b3f6e
Removed Berkeley DB and db switching logic (JesusRami)
2019-09-24 10:10:28 -05:00
luigi1111
ee6e849627
Merge pull request #5877
...
2cd4fd8
Changed the use of boost:value_initialized for C++ list initializer (JesusRami)
4ad191f
Removed unused boost/value_init header (whyamiroot)
928f4be
Make null hash constants constexpr (whyamiroot)
2019-09-24 10:08:44 -05:00
luigi1111
8c41d36a08
Merge pull request #5864
...
32f725d
Properly format multiline logs (moneromooo-monero)
2019-09-24 10:05:21 -05:00
moneromooo-monero
d0663837d2
core: move hardforks into its own lib
...
So it can be used by others without encumbrance
2019-09-19 11:28:18 +00:00
moneromooo-monero
a444f06e53
blockchain: enforce 10 block age for spending outputs
...
Some custom wallet code apparently ignores this, which causes users
of that code to be fingerprinted
2019-09-17 11:39:25 +00:00
moneromooo-monero
32f725d32f
Properly format multiline logs
...
As a side effect, colouring on Windows should now work
regardless of version
2019-09-16 16:58:01 +00:00
Jesus Ramirez
f9b3f6ef3b
Removed Berkeley DB and db switching logic
2019-09-16 16:18:05 +02:00
luigi1111
4a39e1a4a5
Merge pull request #5865
...
11f13da
blockchain: fix logging bad number of blocks if first one fails (moneromooo-monero)
19bfe7e
simplewallet: fix warnings about useless std::move (moneromooo-monero)
2019-09-14 13:07:35 -05:00
luigi1111
3e75df42a7
Merge pull request #5854
...
2cb22d4
core: make the 'update probably needed soon' message less scary (moneromooo-monero)
2019-09-14 13:06:05 -05:00
luigi1111
29e0f11305
Merge pull request #5823
...
26072f1
blockchain: forbid v1 coinbase from v12 (moneromooo-monero)
555dc7c
core: from v12, require consistent ring size for mixable txes (moneromooo-monero)
d22dfb7
blockchain: reject rct signatures in coinbase txes from v12 (moneromooo-monero)
2019-09-14 13:04:41 -05:00
moneromooo-monero
b9da0234e9
blockchain: keep block template timestamp not below recent median
...
Such a template would yield an invalid block, though would require
an attacker to have mined a long blockchain with drifting times
(assuming the miner's clock is roughly correct)
Fixed by crCr62U0
2019-09-11 15:21:52 +00:00
luigi1111
e4f11a68fe
Merge pull request #5819
...
07cb087
blockchain: Fix alt chain generated coins overflow (iamamyth)
2019-09-04 09:37:32 -05:00
Jesus Ramirez
2cd4fd8972
Changed the use of boost:value_initialized for C++ list initializer
2019-09-02 14:16:29 +02:00
moneromooo-monero
11f13da8b4
blockchain: fix logging bad number of blocks if first one fails
2019-08-28 14:53:29 +00:00
Tom Smeding
6bbc646e6f
Fix bug in mempool get_transaction_stats histogram calculation
...
The 98th percentile position in the agebytes map was incorrectly
calculated: it assumed the transactions in the mempool all have unique
timestamps at second-granularity. This commit fixes this by correctly
finding the right cumulative number of transactions in the map suffix.
This bug could lead to an out-of-bounds write in the rare case that
all transactions in the mempool were received (and added to the mempool)
at a rate of at least 50 transactions per second. (More specifically,
the number of *unique* receive_time values, which have second-
granularity, must be at most 2% of the number of transactions in the
mempool for this crash to trigger.) If this condition is satisfied, 'it'
points to *before* the agebytes map, 'delta' gets a nonsense value, and
the value of 'i' in the first stats.histo-filling loop will be out of
bounds of stats.histo.
2019-08-28 16:46:31 +02:00
moneromooo-monero
2cb22d4071
core: make the "update probably needed soon" message less scary
2019-08-26 07:56:55 +00:00
luigi1111
eea0123de4
Merge pull request #5755
...
7a3e458
improve tx_sanity_check clarification (vicsn)
2019-08-21 15:23:58 -05:00
luigi1111
1bd3f1a1fb
Merge pull request #5750
...
884df82
wallet: provide original address for outgoing transfers (xiphon)
2019-08-21 15:20:51 -05:00
luigi1111
f205d28e96
Merge pull request #5727
...
7b9a420
Replace std::random_shuffle with std::shuffle (tomsmeding)
2019-08-19 17:31:39 -05:00
luigi1111
1010a6503e
Merge pull request #5721
...
c164f90
Remove unnecessary m_check_txin_table, fix const correctness (omartijn)
2019-08-19 17:25:52 -05:00
moneromooo-monero
d22dfb7594
blockchain: reject rct signatures in coinbase txes from v12
2019-08-19 16:43:53 +00:00
moneromooo-monero
555dc7c394
core: from v12, require consistent ring size for mixable txes
...
We're supposed to have a fixed ring size now
Already checked by MLSAG verification, but here seems more intuitive
2019-08-19 16:43:53 +00:00
moneromooo-monero
26072f1393
blockchain: forbid v1 coinbase from v12
2019-08-19 16:43:52 +00:00
iamamyth
07cb087e5d
blockchain: Fix alt chain generated coins overflow
...
Apply the overflow logic used for computing already_generated_coins in
the main chain to alternative chains.
2019-08-18 17:26:58 -07:00
luigi1111
1167370239
Merge pull request #5637
...
69f9420
core: do not complain about low block rate if disconnected (moneromooo-monero)
2019-08-15 17:09:15 -05:00
Tom Smeding
7b9a420787
Replace std::random_shuffle with std::shuffle
...
According to [1], std::random_shuffle is deprecated in C++14 and removed
in C++17. Since std::shuffle is available since C++11 as a replacement
and monero already requires C++11, this is a good replacement.
A cryptographically secure random number generator is used in all cases
to prevent people from perhaps copying an insecure std::shuffle call
over to a place where a secure one would be warranted. A form of
defense-in-depth.
[1]: https://en.cppreference.com/w/cpp/algorithm/random_shuffle
2019-08-15 16:33:15 +02:00
luigi1111
564bb1da3a
Merge pull request #5525
...
0605406
daemon: sort alt chains by height (moneromooo-monero)
4228ee0
daemon: add optional arguments to alt_chain_info (moneromooo-monero)
880ebfd
daemon: add more chain specific info in alt_chain_info (moneromooo-monero)
2019-08-14 15:31:52 -05:00
luigi1111
2258551ef9
Merge pull request #5487
...
df83ed7
consensus: from v12, enforce >= 2 outputs (moneromooo-monero)
2019-08-14 15:26:55 -05:00
luigi1111
8adde33e01
Merge pull request #5635
...
03aa14e
tx_sanity_check: don't print an error when not enough outs to check (monermooo-monero)
2019-07-24 14:43:00 -05:00
luigi1111
c62ba1d08f
Merge pull request #5591
...
f17dcde
Remove unused txs member in NOTIFY_RESPONSE_GET_OBJECT (Doy-lee)
2019-07-24 14:23:11 -05:00
luigi1111
9f746b72e2
Merge pull request #5585
...
270a3ae
Unused private member m_miner_address (JesusRami)
2019-07-24 14:19:15 -05:00
luigi1111
4b76656f5c
Merge pull request #5524
...
06b8f29
blockchain: keep alternative blocks in LMDB (moneromooo-monero)
2019-07-24 14:04:16 -05:00
luigi1111
e3de4aa68b
Merge pull request #5502
...
25a7cfd
add a few checks where it seems appropriate (moneromooo-monero)
1a66a86
remove unused code (moneromooo-monero)
2019-07-24 13:57:06 -05:00
Riccardo Spagni
4850520b6a
update checkpoints.dat hash
2019-07-18 16:54:43 +02:00
vicsn
7a3e458881
improve tx_sanity_check clarification
2019-07-15 15:19:14 +02:00
Doyle
f17dcde451
Remove unused txs member in NOTIFY_RESPONSE_GET_OBJECT
2019-07-15 13:27:06 +10:00
xiphon
884df82db3
wallet: provide original address for outgoing transfers
2019-07-10 13:39:18 +00:00
luigi1111
9d7107c870
Merge pull request #5663
...
5d6b43b
core: fix --prune-blockchain not pruning if no blockchain exists (moneromooo-monero)
2019-07-04 14:46:37 -05:00
luigi1111
59ba0eee69
Merge pull request #5650
...
3c071d2
blockchain: silence an error getting blocks for pruned nodes (moneromooo-monero)
2019-07-04 14:44:05 -05:00
Martijn Otto
c164f9037e
Remove unnecessary m_check_txin_table, fix const correctness
2019-07-03 14:39:52 +02:00