Go to the documentation of this file.
34 #include "serialization/keyvalue_serialization.h"
42 #define BC_COMMANDS_POOL_BASE 2000
89 BEGIN_KV_SERIALIZE_MAP()
115 END_KV_SERIALIZE_MAP()
125 BEGIN_KV_SERIALIZE_MAP()
127 KV_SERIALIZE_VAL_POD_AS_BLOB(prunable_hash)
128 END_KV_SERIALIZE_MAP()
137 std::vector<tx_blob_entry>
txs;
138 BEGIN_KV_SERIALIZE_MAP()
139 KV_SERIALIZE_OPT(pruned,
false)
141 KV_SERIALIZE_OPT(block_weight, (uint64_t)0)
148 std::vector<blobdata> txs;
151 txs.reserve(this_ref.txs.size());
152 for (
const auto &e: this_ref.txs) txs.push_back(e.blob);
159 self.txs.reserve(txs.size());
163 END_KV_SERIALIZE_MAP()
181 BEGIN_KV_SERIALIZE_MAP()
183 KV_SERIALIZE(current_blockchain_height)
184 END_KV_SERIALIZE_MAP()
198 std::vector<blobdata>
txs;
202 BEGIN_KV_SERIALIZE_MAP()
205 KV_SERIALIZE_OPT(dandelionpp_fluff,
true)
206 END_KV_SERIALIZE_MAP()
222 BEGIN_KV_SERIALIZE_MAP()
223 KV_SERIALIZE_CONTAINER_POD_AS_BLOB(
blocks)
225 END_KV_SERIALIZE_MAP()
236 std::vector<block_complete_entry>
blocks;
240 BEGIN_KV_SERIALIZE_MAP()
242 KV_SERIALIZE_CONTAINER_POD_AS_BLOB(missed_ids)
243 KV_SERIALIZE(current_blockchain_height)
244 END_KV_SERIALIZE_MAP()
259 BEGIN_KV_SERIALIZE_MAP()
260 KV_SERIALIZE(current_height)
261 KV_SERIALIZE(cumulative_difficulty)
263 KV_SERIALIZE(cumulative_difficulty_top64)
265 KV_SERIALIZE_OPT(cumulative_difficulty_top64, (uint64_t)0)
266 KV_SERIALIZE_VAL_POD_AS_BLOB(top_id)
267 KV_SERIALIZE_OPT(top_version, (uint8_t)0)
269 END_KV_SERIALIZE_MAP()
281 BEGIN_KV_SERIALIZE_MAP()
282 KV_SERIALIZE_CONTAINER_POD_AS_BLOB(block_ids)
284 END_KV_SERIALIZE_MAP()
302 BEGIN_KV_SERIALIZE_MAP()
303 KV_SERIALIZE(start_height)
304 KV_SERIALIZE(total_height)
305 KV_SERIALIZE(cumulative_difficulty)
307 KV_SERIALIZE(cumulative_difficulty_top64)
309 KV_SERIALIZE_OPT(cumulative_difficulty_top64, (uint64_t)0)
310 KV_SERIALIZE_CONTAINER_POD_AS_BLOB(m_block_ids)
311 KV_SERIALIZE_CONTAINER_POD_AS_BLOB(m_block_weights)
312 END_KV_SERIALIZE_MAP()
329 BEGIN_KV_SERIALIZE_MAP()
331 KV_SERIALIZE(current_blockchain_height)
332 END_KV_SERIALIZE_MAP()
350 BEGIN_KV_SERIALIZE_MAP()
351 KV_SERIALIZE_VAL_POD_AS_BLOB(block_hash)
352 KV_SERIALIZE(current_blockchain_height)
353 KV_SERIALIZE_CONTAINER_POD_AS_BLOB(missing_tx_indices)
354 END_KV_SERIALIZE_MAP()
370 BEGIN_KV_SERIALIZE_MAP()
371 KV_SERIALIZE_CONTAINER_POD_AS_BLOB(hashes)
372 END_KV_SERIALIZE_MAP()
Definition: cryptonote_protocol_defs.h:367
bool dandelionpp_fluff
Definition: cryptonote_protocol_defs.h:200
uint64_t current_blockchain_height
Definition: cryptonote_protocol_defs.h:179
uint16_t rpc_port
Definition: cryptonote_protocol_defs.h:58
Definition: cryptonote_protocol_defs.h:122
Definition: cryptonote_protocol_defs.h:277
uint64_t avg_download
Definition: cryptonote_protocol_defs.h:73
uint64_t recv_count
Definition: cryptonote_protocol_defs.h:63
Definition: cryptonote_protocol_defs.h:193
Definition: cryptonote_protocol_defs.h:133
epee::misc_utils::struct_init< request_t > request
Definition: cryptonote_protocol_defs.h:227
crypto::hash block_hash
Definition: cryptonote_protocol_defs.h:346
bool incoming
Definition: cryptonote_protocol_defs.h:49
uint64_t total_height
Definition: cryptonote_protocol_defs.h:296
bool prune
Definition: cryptonote_protocol_defs.h:279
uint32_t pruning_seed
Definition: cryptonote_protocol_defs.h:85
std::vector< uint64_t > m_block_weights
Definition: cryptonote_protocol_defs.h:300
Definition: cryptonote_protocol_defs.h:363
Definition: cryptonote_protocol_defs.h:290
std::vector< uint64_t > missing_tx_indices
Definition: cryptonote_protocol_defs.h:348
Definition: cryptonote_protocol_defs.h:173
Definition: cryptonote_protocol_defs.h:48
uint64_t current_blockchain_height
Definition: cryptonote_protocol_defs.h:327
uint8_t top_version
Definition: cryptonote_protocol_defs.h:256
std::string state
Definition: cryptonote_protocol_defs.h:69
std::string address
Definition: cryptonote_protocol_defs.h:54
std::string peer_id
Definition: cryptonote_protocol_defs.h:61
uint64_t recv_idle_time
Definition: cryptonote_protocol_defs.h:64
Definition: cryptonote_protocol_defs.h:321
const
Definition: build_protob.py:9
bool prune
Definition: cryptonote_protocol_defs.h:220
uint32_t rpc_credits_per_hash
Definition: cryptonote_protocol_defs.h:59
if(APPLE) if(DEPENDS) list(APPEND EXTRA_LIBRARIES "-framework Foundation -framework ApplicationServices -framework AppKit -framework IOKit") else() find_library(IOKIT_LIBRARY IOKit) mark_as_advanced(IOKIT_LIBRARY) list(APPEND EXTRA_LIBRARIES $
Definition: CMakeLists.txt:29
uint64_t start_height
Definition: cryptonote_protocol_defs.h:295
int b
Definition: base.py:1
blobdata block
Definition: cryptonote_protocol_defs.h:135
Definition: cryptonote_protocol_defs.h:231
crypto::hash top_id
Definition: cryptonote_protocol_defs.h:255
Definition: cryptonote_protocol_defs.h:218
uint64_t cumulative_difficulty
Definition: cryptonote_protocol_defs.h:253
crypto::hash prunable_hash
Definition: cryptonote_protocol_defs.h:124
Definition: cryptonote_protocol_defs.h:235
Definition: blocks.cpp:13
Definition: cryptonote_protocol_defs.h:197
std::string host
Definition: cryptonote_protocol_defs.h:55
Definition: cryptonote_basic.h:464
uint64_t current_blockchain_height
Definition: cryptonote_protocol_defs.h:347
uint32_t pruning_seed
Definition: cryptonote_protocol_defs.h:257
std::vector< crypto::hash > m_block_ids
Definition: cryptonote_protocol_defs.h:299
std::string port
Definition: cryptonote_protocol_defs.h:57
epee::misc_utils::struct_init< request_t > request
Definition: cryptonote_protocol_defs.h:314
Definition: cryptonote_protocol_defs.h:214
Holds cryptonote related classes and helpers.
Definition: blockchain_db.cpp:45
void serialize(Archive &a, std::unordered_map< h_key, hval > &x, const boost::serialization::version_type ver)
Definition: unordered_containers_boost_serialization.h:126
std::vector< tx_blob_entry > txs
Definition: cryptonote_protocol_defs.h:137
std::vector< crypto::hash > hashes
Definition: cryptonote_protocol_defs.h:368
epee::misc_utils::struct_init< request_t > request
Definition: cryptonote_protocol_defs.h:356
uint32_t support_flags
Definition: cryptonote_protocol_defs.h:79
#define false
Definition: stdbool.h:37
uint64_t cumulative_difficulty_top64
Definition: cryptonote_protocol_defs.h:298
uint64_t current_height
Definition: cryptonote_protocol_defs.h:252
Definition: cryptonote_protocol_defs.h:345
constexpr static crypto::hash null_hash
Definition: hash.h:92
std::vector< crypto::hash > missed_ids
Definition: cryptonote_protocol_defs.h:237
uint64_t current_upload
Definition: cryptonote_protocol_defs.h:77
Definition: cryptonote_protocol_defs.h:251
epee::misc_utils::struct_init< request_t > request
Definition: cryptonote_protocol_defs.h:374
uint64_t cumulative_difficulty_top64
Definition: cryptonote_protocol_defs.h:254
bool pruned
Definition: cryptonote_protocol_defs.h:134
uint64_t height
Definition: cryptonote_protocol_defs.h:83
std::string blobdata
Definition: blobdatatype.h:39
std::vector< blobdata > txs
Definition: cryptonote_protocol_defs.h:198
blobdata blob
Definition: cryptonote_protocol_defs.h:123
block_complete_entry b
Definition: cryptonote_protocol_defs.h:178
std::vector< block_complete_entry > blocks
Definition: cryptonote_protocol_defs.h:236
uint8_t address_type
Definition: cryptonote_protocol_defs.h:87
uint64_t avg_upload
Definition: cryptonote_protocol_defs.h:76
epee::misc_utils::struct_init< request_t > request
Definition: cryptonote_protocol_defs.h:286
Definition: blake256.h:36
bool localhost
Definition: cryptonote_protocol_defs.h:50
epee::misc_utils::struct_init< request_t > request
Definition: cryptonote_protocol_defs.h:186
bool local_ip
Definition: cryptonote_protocol_defs.h:51
uint64_t send_count
Definition: cryptonote_protocol_defs.h:66
static void prune(MDB_env *env0, MDB_env *env1)
Definition: blockchain_prune.cpp:246
std::list< crypto::hash > block_ids
Definition: cryptonote_protocol_defs.h:278
uint64_t current_download
Definition: cryptonote_protocol_defs.h:74
Definition: cryptonote_protocol_defs.h:325
uint64_t cumulative_difficulty
Definition: cryptonote_protocol_defs.h:297
Definition: cryptonote_protocol_defs.h:341
Definition: cryptonote_protocol_defs.h:273
std::string _
Definition: cryptonote_protocol_defs.h:199
uint64_t live_time
Definition: cryptonote_protocol_defs.h:71
Definition: cryptonote_protocol_defs.h:294
epee::misc_utils::struct_init< request_t > request
Definition: cryptonote_protocol_defs.h:246
Definition: cryptonote_protocol_defs.h:177
#define true
Definition: stdbool.h:36
std::string ip
Definition: cryptonote_protocol_defs.h:56
bool ssl
Definition: cryptonote_protocol_defs.h:52
uint64_t block_weight
Definition: cryptonote_protocol_defs.h:136
epee::misc_utils::struct_init< request_t > request
Definition: cryptonote_protocol_defs.h:208
std::string connection_id
Definition: cryptonote_protocol_defs.h:81
uint64_t send_idle_time
Definition: cryptonote_protocol_defs.h:67
Definition: cryptonote_format_utils.h:44
#define BC_COMMANDS_POOL_BASE
Definition: cryptonote_protocol_defs.h:42
std::vector< crypto::hash > blocks
Definition: cryptonote_protocol_defs.h:219
epee::misc_utils::struct_init< request_t > request
Definition: cryptonote_protocol_defs.h:334
block_complete_entry b
Definition: cryptonote_protocol_defs.h:326
uint64_t current_blockchain_height
Definition: cryptonote_protocol_defs.h:238
POD_CLASS hash
Definition: hash.h:48