1
0
Fork 0
forked from lthn/blockchain

Merge remote-tracking branch 'origin/master' into frontend

This commit is contained in:
wildkif 2019-05-08 19:42:39 +03:00
commit d4aecd4ac9
9 changed files with 50 additions and 34 deletions

View file

@ -7,7 +7,7 @@
#pragma once
#define CURRENCY_FORMATION_VERSION 81
#define CURRENCY_FORMATION_VERSION 83
#define CURRENCY_MAX_BLOCK_NUMBER 500000000
@ -53,7 +53,7 @@
// #define CURRENCY_FIXED_REWARD_ZONE_REWARD_AMOUNT ((uint64_t)100000000) // should be TX_MINIMUM_FEE * CURRENCY_FIXED_REWARD_ZONE_FEE_MULTIPLIER
// #define CURRENCY_FIXED_REWARD_ZONE_FEE_MULTIPLIER 1000 // reward in minimum fees for a block in the zone
#define CURRENCY_BLOCK_REWARD 1000000000000 // 1.0 coin
#define CURRENCY_BLOCK_REWARD 1000000000000 // 1.0 coin
#define WALLET_MAX_ALLOWED_OUTPUT_AMOUNT ((uint64_t)0xffffffffffffffffLL)
@ -126,7 +126,7 @@
#define P2P_DEFAULT_PING_CONNECTION_TIMEOUT 2000 //2 seconds
#define P2P_DEFAULT_INVOKE_TIMEOUT 60*2*1000 //2 minutes
#define P2P_DEFAULT_HANDSHAKE_INVOKE_TIMEOUT 10000 //10 seconds
#define P2P_MAINTAINERS_PUB_KEY "888db12b7e0cd325880c815ea13d7062f4c4a89dafc355f4d7b93a7f18342df3"
#define P2P_MAINTAINERS_PUB_KEY "8f138bb73f6d663a3746a542770781a09579a7b84cb4125249e95530824ee607"
#define P2P_DEFAULT_WHITELIST_CONNECTIONS_PERCENT 70
#define P2P_FAILED_ADDR_FORGET_SECONDS (60*5) //5 minutes
@ -162,7 +162,7 @@
#define CURRENCY_NAME_ABR "ZAN"
#define CURRENCY_NAME_ABR "ZANO"
#define CURRENCY_NAME_BASE "Zano"
#define CURRENCY_NAME_SHORT_BASE "Zano"
#ifndef TESTNET
@ -182,7 +182,7 @@
#define ALIAS_REWARDS_ACCOUNT_VIEW_SEC_KEY "0000000000000000000000000000000000000000000000000000000000000000" //burn alias money
#define ALIAS_MINIMUM_PUBLIC_SHORT_NAME_ALLOWED 6
#define ALIAS_SHORT_NAMES_VALIDATION_PUB_KEY "3b63cb2f3d425053f4120b10bced73d87e98c27b6e4bcfd123a5cfac688c551f"
#define ALIAS_SHORT_NAMES_VALIDATION_PUB_KEY "37947f7b6a5268c5d0a48bde73d7a426f0b5f24648f74024279540207dc70031"
#define ALIAS_NAME_MAX_LEN 255
@ -212,7 +212,7 @@
#define BC_OFFERS_CURRENCY_MARKET_FILENAME "market.bin"
#define WALLET_FILE_SERIALIZATION_VERSION (CURRENCY_FORMATION_VERSION+63)
#define WALLET_FILE_SERIALIZATION_VERSION (CURRENCY_FORMATION_VERSION+64)
#define CURRENT_MEMPOOL_ARCHIVE_VER (CURRENCY_FORMATION_VERSION+31)
@ -221,4 +221,4 @@
static_assert(CURRENCY_MINER_TX_MAX_OUTS <= CURRENCY_TX_MAX_ALLOWED_OUTS, "Miner tx must obey normal tx max outs limit");
static_assert(PREMINE_AMOUNT / WALLET_MAX_ALLOWED_OUTPUT_AMOUNT < CURRENCY_MINER_TX_MAX_OUTS, "Premine can't be divided into reasonable number of outs");
//static_assert(CURRENCY_FIXED_REWARD_ZONE_REWARD_AMOUNT == TX_MINIMUM_FEE * CURRENCY_FIXED_REWARD_ZONE_FEE_MULTIPLIER, "CURRENCY_FIXED_REWARD_ZONE_REWARD_AMOUNT is incorrect with regard to TX_MINIMUM_FEE");

View file

@ -1873,11 +1873,9 @@ namespace currency
bl.minor_version = CURRENT_BLOCK_MINOR_VERSION;
bl.timestamp = 0;
bl.nonce = 101010121 + CURRENCY_FORMATION_VERSION; //bender's nightmare
//miner::find_nonce_for_given_block(bl, 1, 0,);
LOG_PRINT_GREEN("Generated genesis: " << get_block_hash(bl), LOG_LEVEL_0);
return true;
}
//---------------------------------------------------------------
//----------------------------------------------------------------------------------------------------
const crypto::hash& get_genesis_hash(bool need_to_set, const crypto::hash& h)
{

View file

@ -8,7 +8,7 @@
namespace currency
{
const genesis_tx_raw_data ggenesis_tx_raw = { {
0xa080801700000101,0xf30326b0b4a0f2fd,0x46fe96860beb01ea,0x01323293f642c7c6,0x80e8a7730e20c142,0x00cb08b2016bbccc,0xb0b4a0f2fda08080,0xb67d52cae50e0326,0x71bb6e75bf256319,0x76dd703cec5e8f40,0xfca18c41540510b9,0xf2fda080800070f3,0xeea9320326b0b4a0,0xb5d90ea5fe49c4cb,0x3f1e5ca079fe6ebb,0x2f73ac1012e243d0,0x808000887086f29b,0x0326b0b4a0f2fda0,0x44f1a1dfe16379f9,0x50d93954cca94108,0x9ac47bb379e6f074,0xb44bdb69a986211e,0xb4f89aecdce08000,0x88b82d0dc60326b0,0x4e995861a27c03ae,0xdf48c9c97c449f1d,0xdd2ea49c4ecdcbdf,0x93dc80800046f5dc,0xedff0307d0ffc2e0,0x4a8442409d3719b1,0x2e385d03544c8122,0x0c592cfad6e8e900,0x8000ed0b32aa07c6,0x05c6c5bc97b1a080,0xa5d7620e38d8ef03,0x1c68e9cfd35cc1e5,0xbdba8ea5fb49f375,0x7fb77cff80f31c9e,0xbc97b1a080800040,0xd15b16b60305c6c5,0x7af40193ad86f123,0x5ba33fd12279af67,0x0db572d11ea1ad96,0xa080800024fc1fde,0x460305c6c5bc97b1,0x444d02aa28a539b9,0x9846386a58c71f35,0x27fd9af12bd3710a,0x0004b2acf589ce8d,0xc6c5bc97b1a08080,0x610c62c125e80305,0x44217ee86d4ed16f,0x5f27600912875c5f,0x51f2fbfd2b30ff54,0x97b1a08080002698,0x8180fc0305c6c5bc,0xaeb4bfd37d282432,0x10a11a1c799b6165,0x9c69b9b6aac75596,0x8080009c5a6d5e15,0x0305c6c5bc97b1a0,0xbf9f36e03f56393a,0x0a74acb0775f0e02,0x97665a42cb477844,0xff01a0c03c43df12,0xc5bc97b1a0808000,0xd5066341560305c6,0x5aa8c1962a148222,0xf83737ab96d43653,0x4b5007cf8fd4a1e2,0xd2dc808000565d84,0xa6a8030398c7f980,0x32c08d3989aa7f91,0xe4b5de74db34eb45,0xf2bd313bdefdfcba,0x80007e3bb1b21fd2,0x018e8df2b7f0a080,0xb2fe8efdeb17a903,0xe7f89d45d4b05be9,0x96f5300e672fd804,0xbd82737c2ce8c3cf,0xef93bf82808000c2,0x816c799a1f0308f0,0x98bd1487b0e05122,0x044d8ffd583693ba,0x1c954a13f5425015,0xfe848080007c6407,0xcde2510311e1dea6,0x3c62da3d50c8a8ee,0xa3acc1ed75d470b1,0xa479c78eecc2f96c,0x8080005f7388cbcb,0xbd0308f0ef93bf82,0xb5a5cca060105de4,0x92cf66a16d3b4d6b,0x5ca92a654f5a8400,0x00df465ad6e8d895,0x08f0ef93bf828080,0x2ce3338452319303,0xecc7b1c056651998,0xc3696cf2fb2fe9b9,0x69b4edf21f2bdaae,0xafeaa69a808000b8,0x1052e2e6de0301e3,0xa06855ba0d7eaab2,0x344998a33e968f15,0xa8a00006653f7005,0xa69a808000a95440,0x58e0580301e3afea,0xc0524c1a0a1d4b5f,0xad37550b686c838b,0x0eb1ef4a20771a79,0x80800080516862ab,0xa30301e3afeaa69a,0xda2b32dbac7f88cc,0x965536648651d1a2,0xbbe22f6bdc320069,0x00a8ea3fddccf16d,0x03c6dfd4ccb48080,0x9921a91a97490603,0x57ceadcb0611b6de,0xa53cee6b71e61ecb,0x0e56262c5e13302f,0x04ee9ff0161a000a,0xa43f85172baeb3d9,0x782309f5ee0a02f0,0x5d187fedafdfae4f,0x971700150f26e04b,0x17482917b0a717cb,0x1fe617c89e1725b4,0x4017c6e317a97217,0x17a7ca178e6117c1,0xd24717fd3917aa53,0xd217b83c178b9b17,0x17d92517d51c17d4,0xda9d17154f17f6fc },
{ 0x17,0x41,0x0a,0x0e,0x0a,0x00,0x00 } };
0xa080801a00000101,0xd50326b0b4a0f2fd,0x7d16a80675acfb5a,0xf592242f4ad937f9,0x16ad3b88a33ff3c5,0x006bc461ea5d73b6,0xb0b4a0f2fda08080,0x1d62b0f92f9d0326,0xf0bdfd2fd953036b,0xa04870d52251207b,0xc16b093788debb9f,0xf2fda0808000dfc9,0x61692d0326b0b4a0,0xa78954d8053cc36f,0xa2d3cf743dd66a76,0x9929498608bd6585,0x808000ad2dc1cc80,0x0326b0b4a0f2fda0,0xac89549151f0df13,0x9aab134ff7160382,0x3e1f57c803d0f51f,0xc917602de04ffd3b,0xb4f89aecdce08000,0x9aa7bd88b20326b0,0xe28ba6b82529e609,0xf98f6bd94e7d7975,0xb2b47bc1d5d01406,0x93dc808000bd88fa,0x6afe0307d0ffc2e0,0x0b330ff74db36102,0x2e375745f4caa60e,0x69e8c788ef0e9930,0x80001bc58881b025,0x05c6c5bc97b1a080,0xf6c4f2fd3bca5b03,0x55111b42f948ffcc,0xaca8c4d2d05a1ea8,0xe4a08ebc250e29b0,0xbc97b1a080800051,0x7aa6f4600305c6c5,0x4ee697a11ef2c528,0xbee2240a1c186889,0xb0dcd263f75c2887,0xa0808000fb1f6875,0xde0305c6c5bc97b1,0x0c800521c3b1e76a,0x30a319a67f5ce215,0xd704a1d1df7fbd2f,0x00834168cc757223,0xc6c5bc97b1a08080,0x7509800603930305,0xa26dcb6d5a45eb9d,0x884789982d18c79f,0x2ca00f702c6fdc75,0x97b1a08080000071,0xe2309f0305c6c5bc,0xf04a62f7cece31d5,0x6aeaaa970a9ed503,0x65e413ec2817ef63,0x808000e32b0106d0,0x0305c6c5bc97b1a0,0x725e78a74c80b415,0x5509cc5e74bf2a81,0x1d9e09d649e619c5,0xb25188991328f37f,0xc5bc97b1a0808000,0xe9ab618ed20305c6,0x84bb5ebccb88a771,0x9452583c808015c7,0x393fef6d49b84b50,0x91ed808000560c52,0x07780302fddecd95,0xc35f609cb2559776,0x23b1166c909f383e,0xa4c8838cb06bc120,0x8000699481edeb01,0x018e8df2b7f0a080,0x03ee066e7ddb6d03,0xc0ed9d9e0bb00cfc,0xdb21f5df9bdd8026,0x4dc57f4580961a87,0xef93bf82808000a3,0xc69f370c7b0308f0,0xe48d5e545ff067e1,0xf0eec465d851f4c8,0x4bfc90ac1c4930be,0xfe848080003f8ba0,0x9ebc240311e1dea6,0xecce2944ed57c2a9,0xfc0d1e7652958c28,0x97757213dc6a85aa,0x808000a06621c9f0,0x360308f0ef93bf82,0x2017455bc3e98972,0x41466d3334a12a4b,0xd129a60f318f6d9a,0x0088b8f782920cf4,0x08f0ef93bf828080,0x603c3e1cb8e0eb03,0xf0db025a68a21875,0x0da46957155b518a,0x7a89e3a24618c183,0xafeaa69a808000e1,0x0192d897020301e3,0x6fe8c2802f9a3190,0x01640bd74e548b32,0x89eef1cfcc75e093,0xa69a808000dabf0b,0xcb4b850301e3afea,0x514bb4df0aa291f3,0x96128c6dc5d67c3d,0xe5ff65facc796b0f,0x808000ac82de800d,0x020301e3afeaa69a,0xa6e22e789cc0f093,0xce8ef06fbc5d0574,0x400c748e46848f3f,0x00ebe1302cfc426e,0x03c6dfd4ccb48080,0x9954c0e09e5c6503,0xee6c213f457b816f,0x29f25474077177b3,0xfeb092a370663e3d,0xef93bf8280800082,0x12235db0310308f0,0xebf0d7c54fc7d645,0x02c610b69e021994,0xadbe8e0ec619e249,0xfe84808000f63526,0x8bd44f0311e1dea6,0x54fda8db81019365,0x0f9c06688ae81e2d,0x6c4383f8260a2255,0x808000b0b7bf8fed,0xc1fb0316deb183e9,0x4d4d13cdf0da53c6,0x0c4b89278c162692,0xf396d71f12100e0c,0x1e009b56fc359a60,0x444d959d8c6cee16,0x3dffec12613f8082,0xb022e4dfcb6424b0,0x61cf9a1401bf2971,0x666f6f72701113f3,0x20676e6972747320,0x5a17001565726568,0x17c00a17694817ee,0xa2c417593617945b,0x0217a97617c8ef17,0x17133217ef461700,0x8d401726fd17adc8,0x3717070e17700a17,0x1775751762b0175e,0x5a0617c4331786f7,0xdf1723ee17c7d117,0x00000a0e23a11738 },
{} };
}

View file

@ -8,12 +8,11 @@
#include <string>
namespace currency
{
#pragma pack(push, 1)
#pragma pack(push, 1)
struct genesis_tx_raw_data
{
uint64_t const v[136];
uint8_t const r[7];
uint64_t const v[156];
uint8_t const r[0];
};
#pragma pack(pop)
extern const genesis_tx_raw_data ggenesis_tx_raw;

View file

@ -9,10 +9,10 @@
namespace currency
{
const std::string ggenesis_tx_pub_key_str = "f09fee04d9b3ae2b17853fa4f0020aeef50923784faedfafed7f185d4be0260f";
const std::string ggenesis_tx_pub_key_str = "ee6c8c9d954d4482803f6112ecff3db02464cbdfe422b07129bf01149acf61f3";
const crypto::public_key ggenesis_tx_pub_key = epee::string_tools::parse_tpod_from_hex_string<crypto::public_key>(ggenesis_tx_pub_key_str);
const genesis_tx_dictionary_entry ggenesis_dict[23] = {
const genesis_tx_dictionary_entry ggenesis_dict[26] = {
{ 898363347618325980ULL,7 },
{ 1234271292339965434ULL,1 },
{ 2785329203593578547ULL,12 },
@ -20,7 +20,7 @@ namespace currency
{ 3515932779881697835ULL,17 },
{ 4955366495399988463ULL,11 },
{ 5233257582118330150ULL,5 },
{ 5511617689742669301ULL,22 },
{ 5931539148443336682ULL,24 },
{ 6436517662239927298ULL,19 },
{ 6604452700210763953ULL,13 },
{ 7200550178847042641ULL,15 },
@ -30,7 +30,10 @@ namespace currency
{ 9527474759752332295ULL,2 },
{ 9647541513390373765ULL,20 },
{ 9921730437908704447ULL,8 },
{ 10751885755236960099ULL,25 },
{ 11032572278436047420ULL,22 },
{ 11109691972771859220ULL,0 },
{ 13554174209305230569ULL,23 },
{ 14297297752337562678ULL,3 },
{ 15636081871140663679ULL,21 },
{ 15951161519112687845ULL,6 },

View file

@ -24,7 +24,7 @@ namespace currency
}
};
#pragma pack(pop)
extern const genesis_tx_dictionary_entry ggenesis_dict[23];
extern const genesis_tx_dictionary_entry ggenesis_dict[26];
extern const crypto::public_key ggenesis_tx_pub_key;

View file

@ -821,7 +821,7 @@ namespace
}
m_json_helper.feed(str, data_size);
LP_CC_WORKER(m_context, "DATA received <<<<<<<<<<<<< " << data_size << " bytes:" << ENDL << std::string(str, data_size), LOG_LEVEL_0);
LP_CC_WORKER(m_context, "DATA received <<<<<<<<<<<<< " << data_size << " bytes:" << ENDL << std::string(str, data_size), LOG_LEVEL_4);
if (m_json_helper.has_objects())
{
@ -975,7 +975,7 @@ namespace
void send(const std::string& data)
{
static_cast<epee::net_utils::i_service_endpoint*>(m_p_connection)->do_send(data.c_str(), data.size());
LOG_PRINT_CC(m_context, "DATA sent >>>>>>>>>>>>> " << ENDL << data, LOG_LEVEL_0);
LOG_PRINT_CC(m_context, "DATA sent >>>>>>>>>>>>> " << ENDL << data, LOG_LEVEL_4);
}
void send_notification(const std::string& json)

View file

@ -2,6 +2,6 @@
#define BUILD_COMMIT_ID "@VERSION@"
#define PROJECT_VERSION "1.0"
#define PROJECT_VERSION_BUILD_NO 21
#define PROJECT_VERSION_BUILD_NO 24
#define PROJECT_VERSION_BUILD_NO_STR STRINGIFY_EXPAND(PROJECT_VERSION_BUILD_NO)
#define PROJECT_VERSION_LONG PROJECT_VERSION "." PROJECT_VERSION_BUILD_NO_STR "[" BUILD_COMMIT_ID "]"

View file

@ -610,30 +610,46 @@ namespace tools
{
// do not load wallet if data version is greather than the code version
if (ver > WALLET_FILE_SERIALIZATION_VERSION)
{
LOG_PRINT_MAGENTA("Wallet file truncated due to WALLET_FILE_SERIALIZATION_VERSION is more then curren build", LOG_LEVEL_0);
return;
}
if (ver < 147)
{
LOG_PRINT_MAGENTA("Wallet file truncated due to old version", LOG_LEVEL_0);
return;
}
if (t_archive::is_saving::value)
{
uint64_t formation_ver = CURRENCY_FORMATION_VERSION;
a & formation_ver;
}
else
{
uint64_t formation_ver = 0;
a & formation_ver;
if (formation_ver != CURRENCY_FORMATION_VERSION)
{
LOG_PRINT_MAGENTA("Wallet file truncated due to mismatch CURRENCY_FORMATION_VERSION", LOG_LEVEL_0);
return;
}
}
a & m_blockchain;
a & m_transfers;
a & m_multisig_transfers;
a & m_key_images;
a & m_key_images;
a & m_unconfirmed_txs;
if (ver < 144) //reset unconfirmed due to "coinbase relay bug"
{
m_unconfirmed_txs.clear();
}
a & m_unconfirmed_multisig_transfers;
a & m_payments;
a & m_transfer_history;
a & m_unconfirmed_in_transfers;
a & m_contracts;
a & m_money_expirations;
if (ver >= 144)
{
a & m_pending_key_images;
a & m_tx_keys;
}
a & m_pending_key_images;
a & m_tx_keys;
}