mirror of
https://github.com/monero-project/monero.git
synced 2025-12-08 16:11:28 +09:00
Compare commits
10 Commits
a440e91790
...
7c6e84466a
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7c6e84466a | ||
|
|
fb76bc4d98 | ||
|
|
020d980647 | ||
|
|
de73139f42 | ||
|
|
f350ebdeeb | ||
|
|
09f5cbbb98 | ||
|
|
1829992970 | ||
|
|
014f3cd0a1 | ||
|
|
7b53197571 | ||
|
|
cfc41b3bdc |
10
README.md
10
README.md
@ -138,8 +138,8 @@ Dates are provided in the format YYYY-MM-DD.
|
|||||||
| 1978433 | 2019-11-30 | v12 | v0.15.0.0 | v0.16.0.0 | New PoW based on RandomX, only allow >= 2 outputs, change to the block median used to calculate penalty, v1 coinbases are forbidden, rct sigs in coinbase forbidden, 10 block lock time for incoming outputs
|
| 1978433 | 2019-11-30 | v12 | v0.15.0.0 | v0.16.0.0 | New PoW based on RandomX, only allow >= 2 outputs, change to the block median used to calculate penalty, v1 coinbases are forbidden, rct sigs in coinbase forbidden, 10 block lock time for incoming outputs
|
||||||
| 2210000 | 2020-10-17 | v13 | v0.17.0.0 | v0.17.3.2 | New CLSAG transaction format
|
| 2210000 | 2020-10-17 | v13 | v0.17.0.0 | v0.17.3.2 | New CLSAG transaction format
|
||||||
| 2210720 | 2020-10-18 | v14 | v0.17.1.1 | v0.17.3.2 | forbid old MLSAG transaction format
|
| 2210720 | 2020-10-18 | v14 | v0.17.1.1 | v0.17.3.2 | forbid old MLSAG transaction format
|
||||||
| 2688888 | 2022-08-13 | v15 | v0.18.0.0 | v0.18.4.2 | ringsize = 16, bulletproofs+, view tags, adjusted dynamic block weight algorithm
|
| 2688888 | 2022-08-13 | v15 | v0.18.0.0 | v0.18.4.3 | ringsize = 16, bulletproofs+, view tags, adjusted dynamic block weight algorithm
|
||||||
| 2689608 | 2022-08-14 | v16 | v0.18.0.0 | v0.18.4.2 | forbid old v14 transaction format
|
| 2689608 | 2022-08-14 | v16 | v0.18.0.0 | v0.18.4.3 | forbid old v14 transaction format
|
||||||
| XXXXXXX | XXX-XX-XX | XXX | vX.XX.X.X | vX.XX.X.X | XXX |
|
| XXXXXXX | XXX-XX-XX | XXX | vX.XX.X.X | vX.XX.X.X | XXX |
|
||||||
|
|
||||||
X's indicate that these details have not been determined as of commit date.
|
X's indicate that these details have not been determined as of commit date.
|
||||||
@ -344,7 +344,7 @@ Tested on a Raspberry Pi Zero with a clean install of minimal Raspbian Stretch (
|
|||||||
```bash
|
```bash
|
||||||
git clone https://github.com/monero-project/monero.git
|
git clone https://github.com/monero-project/monero.git
|
||||||
cd monero
|
cd monero
|
||||||
git checkout v0.18.4.2
|
git checkout v0.18.4.3
|
||||||
```
|
```
|
||||||
|
|
||||||
* Build:
|
* Build:
|
||||||
@ -463,10 +463,10 @@ application.
|
|||||||
cd monero
|
cd monero
|
||||||
```
|
```
|
||||||
|
|
||||||
* If you would like a specific [version/tag](https://github.com/monero-project/monero/tags), do a git checkout for that version. eg. 'v0.18.4.2'. If you don't care about the version and just want binaries from master, skip this step:
|
* If you would like a specific [version/tag](https://github.com/monero-project/monero/tags), do a git checkout for that version. eg. 'v0.18.4.3'. If you don't care about the version and just want binaries from master, skip this step:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git checkout v0.18.4.2
|
git checkout v0.18.4.3
|
||||||
```
|
```
|
||||||
|
|
||||||
* If you are on a 64-bit system, run:
|
* If you are on a 64-bit system, run:
|
||||||
|
|||||||
@ -57,7 +57,7 @@ The dockrun.sh script will do everything to build the binaries. Just specify the
|
|||||||
version to build as its only argument, e.g.
|
version to build as its only argument, e.g.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
VERSION=v0.18.4.2
|
VERSION=v0.18.4.3
|
||||||
./dockrun.sh $VERSION
|
./dockrun.sh $VERSION
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@ -133,7 +133,7 @@ Common setup part:
|
|||||||
su - gitianuser
|
su - gitianuser
|
||||||
|
|
||||||
GH_USER=YOUR_GITHUB_USER_NAME
|
GH_USER=YOUR_GITHUB_USER_NAME
|
||||||
VERSION=v0.18.4.2
|
VERSION=v0.18.4.3
|
||||||
```
|
```
|
||||||
|
|
||||||
Where `GH_USER` is your GitHub user name and `VERSION` is the version tag you want to build.
|
Where `GH_USER` is your GitHub user name and `VERSION` is the version tag you want to build.
|
||||||
|
|||||||
Binary file not shown.
@ -254,6 +254,7 @@ namespace cryptonote
|
|||||||
ADD_CHECKPOINT2(3375700, "96ef57b830ef7a7ccb61ada8595a4670765b6954d8cbf45c6cf583700a676302", "0x61209b7da8a0fa6");
|
ADD_CHECKPOINT2(3375700, "96ef57b830ef7a7ccb61ada8595a4670765b6954d8cbf45c6cf583700a676302", "0x61209b7da8a0fa6");
|
||||||
ADD_CHECKPOINT2(3451000, "0cbc912e06e1adae11f6c9cb675d3159d225b4b04d4a6c61defe50ae1816dd60", "0x6aa5fc4226bab97");
|
ADD_CHECKPOINT2(3451000, "0cbc912e06e1adae11f6c9cb675d3159d225b4b04d4a6c61defe50ae1816dd60", "0x6aa5fc4226bab97");
|
||||||
ADD_CHECKPOINT2(3482000, "629071b10ddad67bdc6156102aba8e008a754c91da252eede852fff9175a9f0a", "0x6f1063da7e70c0e");
|
ADD_CHECKPOINT2(3482000, "629071b10ddad67bdc6156102aba8e008a754c91da252eede852fff9175a9f0a", "0x6f1063da7e70c0e");
|
||||||
|
ADD_CHECKPOINT2(3516300, "fa08acbcda99fcc3cd94a749364a29fa6de9501a023cb6673d0c68fdf988b7c3", "0x738f0af4d65d459");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1273,7 +1273,6 @@ namespace cryptonote
|
|||||||
crypto::hash get_transaction_hash(const transaction& t)
|
crypto::hash get_transaction_hash(const transaction& t)
|
||||||
{
|
{
|
||||||
crypto::hash h = null_hash;
|
crypto::hash h = null_hash;
|
||||||
get_transaction_hash(t, h, NULL);
|
|
||||||
CHECK_AND_ASSERT_THROW_MES(get_transaction_hash(t, h, NULL), "Failed to calculate transaction hash");
|
CHECK_AND_ASSERT_THROW_MES(get_transaction_hash(t, h, NULL), "Failed to calculate transaction hash");
|
||||||
return h;
|
return h;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3009,21 +3009,6 @@ bool Blockchain::check_tx_outputs(const transaction& tx, tx_verification_context
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// from v4, forbid invalid pubkeys
|
|
||||||
if (hf_version >= 4) {
|
|
||||||
for (const auto &o: tx.vout) {
|
|
||||||
crypto::public_key output_public_key;
|
|
||||||
if (!get_output_public_key(o, output_public_key)) {
|
|
||||||
tvc.m_invalid_output = true;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (!crypto::check_key(output_public_key)) {
|
|
||||||
tvc.m_invalid_output = true;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// from v8, allow bulletproofs
|
// from v8, allow bulletproofs
|
||||||
if (hf_version < 8) {
|
if (hf_version < 8) {
|
||||||
if (tx.version >= 2) {
|
if (tx.version >= 2) {
|
||||||
@ -5608,7 +5593,7 @@ void Blockchain::cancel()
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if defined(PER_BLOCK_CHECKPOINT)
|
#if defined(PER_BLOCK_CHECKPOINT)
|
||||||
static const char expected_block_hashes_hash[] = "13593d6c877c021d35f3eeb468662aebccdbe2842b6998fb6e8eaa213bec1b8c";
|
static const char expected_block_hashes_hash[] = "4725ea463d1520b56ce7cd54dd478d44f976e65d73ad6fe01c427eff854ecf79";
|
||||||
void Blockchain::load_compiled_in_block_hashes(const GetCheckpointsCallback& get_checkpoints)
|
void Blockchain::load_compiled_in_block_hashes(const GetCheckpointsCallback& get_checkpoints)
|
||||||
{
|
{
|
||||||
if (get_checkpoints == nullptr || !m_fast_sync)
|
if (get_checkpoints == nullptr || !m_fast_sync)
|
||||||
|
|||||||
@ -1041,6 +1041,8 @@ namespace cryptonote
|
|||||||
for(const auto& in: tx.vin)
|
for(const auto& in: tx.vin)
|
||||||
{
|
{
|
||||||
CHECKED_GET_SPECIFIC_VARIANT(in, const txin_to_key, tokey_in, false);
|
CHECKED_GET_SPECIFIC_VARIANT(in, const txin_to_key, tokey_in, false);
|
||||||
|
if (rct::ki2rct(tokey_in.k_image) == rct::identity())
|
||||||
|
return false;
|
||||||
if (!(rct::scalarmultKey(rct::ki2rct(tokey_in.k_image), rct::curveOrder()) == rct::identity()))
|
if (!(rct::scalarmultKey(rct::ki2rct(tokey_in.k_image), rct::curveOrder()) == rct::identity()))
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1812,6 +1812,7 @@ namespace cryptonote
|
|||||||
{
|
{
|
||||||
error_resp.code = CORE_RPC_ERROR_CODE_TOO_BIG_HEIGHT;
|
error_resp.code = CORE_RPC_ERROR_CODE_TOO_BIG_HEIGHT;
|
||||||
error_resp.message = std::string("Requested block height: ") + std::to_string(h) + " greater than current top block height: " + std::to_string(m_core.get_current_blockchain_height() - 1);
|
error_resp.message = std::string("Requested block height: ") + std::to_string(h) + " greater than current top block height: " + std::to_string(m_core.get_current_blockchain_height() - 1);
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
res = string_tools::pod_to_hex(m_core.get_block_id_by_height(h));
|
res = string_tools::pod_to_hex(m_core.get_block_id_by_height(h));
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
#define DEF_MONERO_VERSION_TAG "@VERSIONTAG@"
|
#define DEF_MONERO_VERSION_TAG "@VERSIONTAG@"
|
||||||
#define DEF_MONERO_VERSION "0.18.4.2"
|
#define DEF_MONERO_VERSION "0.18.4.3"
|
||||||
#define DEF_MONERO_RELEASE_NAME "Fluorine Fermi"
|
#define DEF_MONERO_RELEASE_NAME "Fluorine Fermi"
|
||||||
#define DEF_MONERO_VERSION_FULL DEF_MONERO_VERSION "-" DEF_MONERO_VERSION_TAG
|
#define DEF_MONERO_VERSION_FULL DEF_MONERO_VERSION "-" DEF_MONERO_VERSION_TAG
|
||||||
#define DEF_MONERO_VERSION_IS_RELEASE @VERSION_IS_RELEASE@
|
#define DEF_MONERO_VERSION_IS_RELEASE @VERSION_IS_RELEASE@
|
||||||
|
|||||||
@ -9518,8 +9518,11 @@ void wallet2::get_outs(std::vector<std::vector<tools::wallet2::get_outs_entry>>
|
|||||||
MINFO("Ignoring output " << out << ", too recent");
|
MINFO("Ignoring output " << out << ", too recent");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
THROW_WALLET_EXCEPTION_IF(!own_found, error::wallet_internal_error,
|
if (!own_found)
|
||||||
"Known ring does not include the spent output: " + std::to_string(td.m_global_output_index));
|
{
|
||||||
|
MWARNING("Known ring does not include the spent output: " + std::to_string(td.m_global_output_index)
|
||||||
|
+ ", there may have been a reorg that moved the spent output's position in the chain");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user