Electroneum
Toggle main menu visibility
Loading...
Searching...
No Matches
cryptonote_protocol_defs.h
Go to the documentation of this file.
1
// Copyrights(c) 2017-2021, The Electroneum Project
2
// Copyrights(c) 2014-2019, The Monero Project
3
//
4
// All rights reserved.
5
//
6
// Redistribution and use in source and binary forms, with or without modification, are
7
// permitted provided that the following conditions are met:
8
//
9
// 1. Redistributions of source code must retain the above copyright notice, this list of
10
// conditions and the following disclaimer.
11
//
12
// 2. Redistributions in binary form must reproduce the above copyright notice, this list
13
// of conditions and the following disclaimer in the documentation and/or other
14
// materials provided with the distribution.
15
//
16
// 3. Neither the name of the copyright holder nor the names of its contributors may be
17
// used to endorse or promote products derived from this software without specific
18
// prior written permission.
19
//
20
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
21
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
22
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
23
// THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
25
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
28
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
//
30
// Parts of this file are originally copyright (c) 2012-2013 The Cryptonote developers
31
32
#pragma once
33
34
#include <list>
35
#include "
serialization/keyvalue_serialization.h
"
36
#include "
cryptonote_basic/cryptonote_basic.h
"
37
#include "
cryptonote_basic/blobdatatype.h
"
38
39
namespace
cryptonote
40
{
41
42
43
#define BC_COMMANDS_POOL_BASE 2000
44
45
/************************************************************************/
46
/* P2P connection info, serializable to json */
47
/************************************************************************/
48
struct
connection_info
49
{
50
bool
incoming
;
51
bool
localhost
;
52
bool
local_ip
;
53
bool
ssl
;
54
55
std::string
address
;
56
std::string
host
;
57
std::string
ip
;
58
std::string
port
;
59
uint16_t
rpc_port
;
60
61
std::string
peer_id
;
62
63
uint64_t
recv_count
;
64
uint64_t
recv_idle_time
;
65
66
uint64_t
send_count
;
67
uint64_t
send_idle_time
;
68
69
std::string
state
;
70
71
uint64_t
live_time
;
72
73
uint64_t
avg_download
;
74
uint64_t
current_download
;
75
76
uint64_t
avg_upload
;
77
uint64_t
current_upload
;
78
79
uint32_t
support_flags
;
80
81
std::string
connection_id
;
82
83
uint64_t
height
;
84
85
uint32_t
pruning_seed
;
86
87
BEGIN_KV_SERIALIZE_MAP
()
88
KV_SERIALIZE
(
incoming
)
89
KV_SERIALIZE
(
localhost
)
90
KV_SERIALIZE
(
local_ip
)
91
KV_SERIALIZE
(
address
)
92
KV_SERIALIZE
(
host
)
93
KV_SERIALIZE
(
ip
)
94
KV_SERIALIZE
(
port
)
95
KV_SERIALIZE
(
rpc_port
)
96
KV_SERIALIZE
(
peer_id
)
97
KV_SERIALIZE
(
recv_count
)
98
KV_SERIALIZE
(
recv_idle_time
)
99
KV_SERIALIZE
(
send_count
)
100
KV_SERIALIZE
(
send_idle_time
)
101
KV_SERIALIZE
(
state
)
102
KV_SERIALIZE
(
live_time
)
103
KV_SERIALIZE
(
avg_download
)
104
KV_SERIALIZE
(
current_download
)
105
KV_SERIALIZE
(
avg_upload
)
106
KV_SERIALIZE
(
current_upload
)
107
KV_SERIALIZE
(
support_flags
)
108
KV_SERIALIZE
(
connection_id
)
109
KV_SERIALIZE
(
height
)
110
KV_SERIALIZE
(
pruning_seed
)
111
END_KV_SERIALIZE_MAP
()
112
};
113
114
/************************************************************************/
115
/* */
116
/************************************************************************/
117
struct
block_complete_entry
118
{
119
blobdata
block
;
120
std::vector<blobdata>
txs
;
121
BEGIN_KV_SERIALIZE_MAP
()
122
KV_SERIALIZE
(
block
)
123
KV_SERIALIZE
(
txs
)
124
END_KV_SERIALIZE_MAP
()
125
};
126
127
128
/************************************************************************/
129
/* */
130
/************************************************************************/
131
struct
NOTIFY_NEW_BLOCK
132
{
133
const
static
int
ID
=
BC_COMMANDS_POOL_BASE
+ 1;
134
135
struct
request_t
136
{
137
block_complete_entry
b
;
138
uint64_t
current_blockchain_height
;
139
140
BEGIN_KV_SERIALIZE_MAP
()
141
KV_SERIALIZE
(
b
)
142
KV_SERIALIZE
(
current_blockchain_height
)
143
END_KV_SERIALIZE_MAP
()
144
};
145
typedef
epee
::misc_utils::struct_init<
request_t
>
request
;
146
};
147
148
/************************************************************************/
149
/* */
150
/************************************************************************/
151
struct
NOTIFY_NEW_TRANSACTIONS
152
{
153
const
static
int
ID
=
BC_COMMANDS_POOL_BASE
+ 2;
154
155
struct
request_t
156
{
157
std::vector<blobdata>
txs
;
158
std::string
_
;
// padding
159
160
BEGIN_KV_SERIALIZE_MAP
()
161
KV_SERIALIZE
(
txs
)
162
KV_SERIALIZE
(
_
)
163
END_KV_SERIALIZE_MAP
()
164
};
165
typedef
epee
::misc_utils::struct_init<
request_t
>
request
;
166
};
167
/************************************************************************/
168
/* */
169
/************************************************************************/
170
struct
NOTIFY_REQUEST_GET_OBJECTS
171
{
172
const
static
int
ID
=
BC_COMMANDS_POOL_BASE
+ 3;
173
174
struct
request_t
175
{
176
std::vector<crypto::hash>
txs
;
177
std::vector<crypto::hash>
blocks
;
178
179
BEGIN_KV_SERIALIZE_MAP
()
180
KV_SERIALIZE_CONTAINER_POD_AS_BLOB
(
txs
)
181
KV_SERIALIZE_CONTAINER_POD_AS_BLOB
(
blocks
)
182
END_KV_SERIALIZE_MAP
()
183
};
184
typedef
epee
::misc_utils::struct_init<
request_t
>
request
;
185
};
186
187
struct
NOTIFY_RESPONSE_GET_OBJECTS
188
{
189
const
static
int
ID
=
BC_COMMANDS_POOL_BASE
+ 4;
190
191
struct
request_t
192
{
193
std::vector<blobdata>
txs
;
194
std::vector<block_complete_entry>
blocks
;
195
std::vector<crypto::hash>
missed_ids
;
196
uint64_t
current_blockchain_height
;
197
198
BEGIN_KV_SERIALIZE_MAP
()
199
KV_SERIALIZE
(
txs
)
200
KV_SERIALIZE
(
blocks
)
201
KV_SERIALIZE_CONTAINER_POD_AS_BLOB
(
missed_ids
)
202
KV_SERIALIZE
(
current_blockchain_height
)
203
END_KV_SERIALIZE_MAP
()
204
};
205
typedef
epee
::misc_utils::struct_init<
request_t
>
request
;
206
};
207
208
209
struct
CORE_SYNC_DATA
210
{
211
uint64_t
current_height
;
212
uint64_t
cumulative_difficulty
;
213
uint64_t
cumulative_difficulty_top64
;
214
crypto::hash
top_id
;
215
uint8_t
top_version
;
216
uint32_t
pruning_seed
;
217
218
BEGIN_KV_SERIALIZE_MAP
()
219
KV_SERIALIZE
(
current_height
)
220
KV_SERIALIZE
(
cumulative_difficulty
)
221
KV_SERIALIZE
(
cumulative_difficulty_top64
)
222
KV_SERIALIZE_VAL_POD_AS_BLOB
(
top_id
)
223
KV_SERIALIZE_OPT
(
top_version
, (
uint8_t
)0)
224
KV_SERIALIZE_OPT
(
pruning_seed
, (
uint32_t
)0)
225
END_KV_SERIALIZE_MAP
()
226
};
227
228
struct
NOTIFY_REQUEST_CHAIN
229
{
230
const
static
int
ID
=
BC_COMMANDS_POOL_BASE
+ 6;
231
232
struct
request_t
233
{
234
std::list<crypto::hash>
block_ids
;
/*IDs of the first 10 blocks are sequential, next goes with pow(2,n) offset, like 2, 4, 8, 16, 32, 64 and so on, and the last one is always genesis block */
235
236
BEGIN_KV_SERIALIZE_MAP
()
237
KV_SERIALIZE_CONTAINER_POD_AS_BLOB
(
block_ids
)
238
END_KV_SERIALIZE_MAP
()
239
};
240
typedef
epee
::misc_utils::struct_init<
request_t
>
request
;
241
};
242
243
struct
NOTIFY_RESPONSE_CHAIN_ENTRY
244
{
245
const
static
int
ID
=
BC_COMMANDS_POOL_BASE
+ 7;
246
247
struct
request_t
248
{
249
uint64_t
start_height
;
250
uint64_t
total_height
;
251
uint64_t
cumulative_difficulty
;
252
uint64_t
cumulative_difficulty_top64
;
253
std::vector<crypto::hash>
m_block_ids
;
254
255
BEGIN_KV_SERIALIZE_MAP
()
256
KV_SERIALIZE
(
start_height
)
257
KV_SERIALIZE
(
total_height
)
258
KV_SERIALIZE
(
cumulative_difficulty
)
259
KV_SERIALIZE
(
cumulative_difficulty_top64
)
260
KV_SERIALIZE_CONTAINER_POD_AS_BLOB
(
m_block_ids
)
261
END_KV_SERIALIZE_MAP
()
262
};
263
typedef
epee
::misc_utils::struct_init<
request_t
>
request
;
264
};
265
266
/************************************************************************/
267
/* */
268
/************************************************************************/
269
struct
NOTIFY_NEW_FLUFFY_BLOCK
270
{
271
const
static
int
ID
=
BC_COMMANDS_POOL_BASE
+ 8;
272
273
struct
request_t
274
{
275
block_complete_entry
b
;
276
uint64_t
current_blockchain_height
;
277
278
BEGIN_KV_SERIALIZE_MAP
()
279
KV_SERIALIZE
(
b
)
280
KV_SERIALIZE
(
current_blockchain_height
)
281
END_KV_SERIALIZE_MAP
()
282
};
283
typedef
epee
::misc_utils::struct_init<
request_t
>
request
;
284
};
285
286
/************************************************************************/
287
/* */
288
/************************************************************************/
289
struct
NOTIFY_REQUEST_FLUFFY_MISSING_TX
290
{
291
const
static
int
ID
=
BC_COMMANDS_POOL_BASE
+ 9;
292
293
struct
request_t
294
{
295
crypto::hash
block_hash
;
296
uint64_t
current_blockchain_height
;
297
std::vector<uint64_t>
missing_tx_indices
;
298
299
BEGIN_KV_SERIALIZE_MAP
()
300
KV_SERIALIZE_VAL_POD_AS_BLOB
(
block_hash
)
301
KV_SERIALIZE
(
current_blockchain_height
)
302
KV_SERIALIZE_CONTAINER_POD_AS_BLOB
(
missing_tx_indices
)
303
END_KV_SERIALIZE_MAP
()
304
};
305
typedef
epee
::misc_utils::struct_init<
request_t
>
request
;
306
};
307
308
/************************************************************************/
309
/* */
310
/************************************************************************/
311
struct
NOTIFY_REQUEST_VALIDATORS_LIST
312
{
313
const
static
int
ID
=
BC_COMMANDS_POOL_BASE
+ 10;
314
315
struct
request_t
316
{
317
BEGIN_KV_SERIALIZE_MAP
()
318
END_KV_SERIALIZE_MAP
()
319
};
320
typedef
epee::misc_utils::struct_init<request_t>
request
;
321
322
struct
response_t
323
{
324
std::string
serialized_v_list
;
325
326
BEGIN_KV_SERIALIZE_MAP
()
327
KV_SERIALIZE
(
serialized_v_list
)
328
END_KV_SERIALIZE_MAP
()
329
};
330
typedef
epee
::misc_utils::struct_init<
response_t
>
response
;
331
332
BEGIN_KV_SERIALIZE_MAP
()
333
END_KV_SERIALIZE_MAP
()
334
};
335
336
/************************************************************************/
337
/* */
338
/************************************************************************/
339
340
struct
NOTIFY_EMERGENCY_VALIDATORS_LIST
341
{
342
const
static
int
ID
=
BC_COMMANDS_POOL_BASE
+ 11;
343
344
struct
request_t
345
{
346
std::string
serialized_v_list
;
347
348
BEGIN_KV_SERIALIZE_MAP
()
349
KV_SERIALIZE
(
serialized_v_list
)
350
END_KV_SERIALIZE_MAP
()
351
};
352
typedef
epee
::misc_utils::struct_init<
request_t
>
request
;
353
};
354
}
blobdatatype.h
cryptonote_basic.h
BC_COMMANDS_POOL_BASE
#define BC_COMMANDS_POOL_BASE
Definition
cryptonote_protocol_defs.h:43
keyvalue_serialization.h
KV_SERIALIZE_VAL_POD_AS_BLOB
#define KV_SERIALIZE_VAL_POD_AS_BLOB(varialble)
Definition
keyvalue_serialization.h:105
KV_SERIALIZE
#define KV_SERIALIZE(varialble)
Definition
keyvalue_serialization.h:104
KV_SERIALIZE_OPT
#define KV_SERIALIZE_OPT(variable, default_value)
Definition
keyvalue_serialization.h:109
KV_SERIALIZE_CONTAINER_POD_AS_BLOB
#define KV_SERIALIZE_CONTAINER_POD_AS_BLOB(varialble)
Definition
keyvalue_serialization.h:108
END_KV_SERIALIZE_MAP
#define END_KV_SERIALIZE_MAP()
Definition
keyvalue_serialization.h:102
BEGIN_KV_SERIALIZE_MAP
#define BEGIN_KV_SERIALIZE_MAP()
Definition
keyvalue_serialization.h:43
blocks
Definition
blocks.cpp:13
crypto::hash
POD_CLASS hash
Definition
hash.h:50
cryptonote
Holds cryptonote related classes and helpers.
Definition
ban.cpp:40
cryptonote::blobdata
std::string blobdata
Definition
blobdatatype.h:39
epee
Definition
ado_db_helper.h:67
uint16_t
unsigned short uint16_t
Definition
stdint.h:125
uint32_t
unsigned int uint32_t
Definition
stdint.h:126
uint8_t
unsigned char uint8_t
Definition
stdint.h:124
uint64_t
unsigned __int64 uint64_t
Definition
stdint.h:136
cryptonote::CORE_SYNC_DATA
Definition
cryptonote_protocol_defs.h:210
cryptonote::CORE_SYNC_DATA::cumulative_difficulty_top64
uint64_t cumulative_difficulty_top64
Definition
cryptonote_protocol_defs.h:213
cryptonote::CORE_SYNC_DATA::pruning_seed
uint32_t pruning_seed
Definition
cryptonote_protocol_defs.h:216
cryptonote::CORE_SYNC_DATA::cumulative_difficulty
uint64_t cumulative_difficulty
Definition
cryptonote_protocol_defs.h:212
cryptonote::CORE_SYNC_DATA::top_version
uint8_t top_version
Definition
cryptonote_protocol_defs.h:215
cryptonote::CORE_SYNC_DATA::current_height
uint64_t current_height
Definition
cryptonote_protocol_defs.h:211
cryptonote::CORE_SYNC_DATA::top_id
crypto::hash top_id
Definition
cryptonote_protocol_defs.h:214
cryptonote::NOTIFY_EMERGENCY_VALIDATORS_LIST::request_t
Definition
cryptonote_protocol_defs.h:345
cryptonote::NOTIFY_EMERGENCY_VALIDATORS_LIST::request_t::serialized_v_list
std::string serialized_v_list
Definition
cryptonote_protocol_defs.h:346
cryptonote::NOTIFY_EMERGENCY_VALIDATORS_LIST
Definition
cryptonote_protocol_defs.h:341
cryptonote::NOTIFY_EMERGENCY_VALIDATORS_LIST::request
epee::misc_utils::struct_init< request_t > request
Definition
cryptonote_protocol_defs.h:352
cryptonote::NOTIFY_EMERGENCY_VALIDATORS_LIST::ID
static const int ID
Definition
cryptonote_protocol_defs.h:342
cryptonote::NOTIFY_NEW_BLOCK::request_t
Definition
cryptonote_protocol_defs.h:136
cryptonote::NOTIFY_NEW_BLOCK::request_t::current_blockchain_height
uint64_t current_blockchain_height
Definition
cryptonote_protocol_defs.h:138
cryptonote::NOTIFY_NEW_BLOCK::request_t::b
block_complete_entry b
Definition
cryptonote_protocol_defs.h:137
cryptonote::NOTIFY_NEW_BLOCK
Definition
cryptonote_protocol_defs.h:132
cryptonote::NOTIFY_NEW_BLOCK::request
epee::misc_utils::struct_init< request_t > request
Definition
cryptonote_protocol_defs.h:145
cryptonote::NOTIFY_NEW_BLOCK::ID
static const int ID
Definition
cryptonote_protocol_defs.h:133
cryptonote::NOTIFY_NEW_FLUFFY_BLOCK::request_t
Definition
cryptonote_protocol_defs.h:274
cryptonote::NOTIFY_NEW_FLUFFY_BLOCK::request_t::current_blockchain_height
uint64_t current_blockchain_height
Definition
cryptonote_protocol_defs.h:276
cryptonote::NOTIFY_NEW_FLUFFY_BLOCK::request_t::b
block_complete_entry b
Definition
cryptonote_protocol_defs.h:275
cryptonote::NOTIFY_NEW_FLUFFY_BLOCK
Definition
cryptonote_protocol_defs.h:270
cryptonote::NOTIFY_NEW_FLUFFY_BLOCK::request
epee::misc_utils::struct_init< request_t > request
Definition
cryptonote_protocol_defs.h:283
cryptonote::NOTIFY_NEW_FLUFFY_BLOCK::ID
static const int ID
Definition
cryptonote_protocol_defs.h:271
cryptonote::NOTIFY_NEW_TRANSACTIONS::request_t
Definition
cryptonote_protocol_defs.h:156
cryptonote::NOTIFY_NEW_TRANSACTIONS::request_t::_
std::string _
Definition
cryptonote_protocol_defs.h:158
cryptonote::NOTIFY_NEW_TRANSACTIONS::request_t::txs
std::vector< blobdata > txs
Definition
cryptonote_protocol_defs.h:157
cryptonote::NOTIFY_NEW_TRANSACTIONS
Definition
cryptonote_protocol_defs.h:152
cryptonote::NOTIFY_NEW_TRANSACTIONS::ID
static const int ID
Definition
cryptonote_protocol_defs.h:153
cryptonote::NOTIFY_NEW_TRANSACTIONS::request
epee::misc_utils::struct_init< request_t > request
Definition
cryptonote_protocol_defs.h:165
cryptonote::NOTIFY_REQUEST_CHAIN::request_t
Definition
cryptonote_protocol_defs.h:233
cryptonote::NOTIFY_REQUEST_CHAIN::request_t::block_ids
std::list< crypto::hash > block_ids
Definition
cryptonote_protocol_defs.h:234
cryptonote::NOTIFY_REQUEST_CHAIN
Definition
cryptonote_protocol_defs.h:229
cryptonote::NOTIFY_REQUEST_CHAIN::request
epee::misc_utils::struct_init< request_t > request
Definition
cryptonote_protocol_defs.h:240
cryptonote::NOTIFY_REQUEST_CHAIN::ID
static const int ID
Definition
cryptonote_protocol_defs.h:230
cryptonote::NOTIFY_REQUEST_FLUFFY_MISSING_TX::request_t
Definition
cryptonote_protocol_defs.h:294
cryptonote::NOTIFY_REQUEST_FLUFFY_MISSING_TX::request_t::current_blockchain_height
uint64_t current_blockchain_height
Definition
cryptonote_protocol_defs.h:296
cryptonote::NOTIFY_REQUEST_FLUFFY_MISSING_TX::request_t::missing_tx_indices
std::vector< uint64_t > missing_tx_indices
Definition
cryptonote_protocol_defs.h:297
cryptonote::NOTIFY_REQUEST_FLUFFY_MISSING_TX::request_t::block_hash
crypto::hash block_hash
Definition
cryptonote_protocol_defs.h:295
cryptonote::NOTIFY_REQUEST_FLUFFY_MISSING_TX
Definition
cryptonote_protocol_defs.h:290
cryptonote::NOTIFY_REQUEST_FLUFFY_MISSING_TX::ID
static const int ID
Definition
cryptonote_protocol_defs.h:291
cryptonote::NOTIFY_REQUEST_FLUFFY_MISSING_TX::request
epee::misc_utils::struct_init< request_t > request
Definition
cryptonote_protocol_defs.h:305
cryptonote::NOTIFY_REQUEST_GET_OBJECTS::request_t
Definition
cryptonote_protocol_defs.h:175
cryptonote::NOTIFY_REQUEST_GET_OBJECTS::request_t::txs
std::vector< crypto::hash > txs
Definition
cryptonote_protocol_defs.h:176
cryptonote::NOTIFY_REQUEST_GET_OBJECTS
Definition
cryptonote_protocol_defs.h:171
cryptonote::NOTIFY_REQUEST_GET_OBJECTS::request
epee::misc_utils::struct_init< request_t > request
Definition
cryptonote_protocol_defs.h:184
cryptonote::NOTIFY_REQUEST_GET_OBJECTS::ID
static const int ID
Definition
cryptonote_protocol_defs.h:172
cryptonote::NOTIFY_REQUEST_VALIDATORS_LIST::request_t
Definition
cryptonote_protocol_defs.h:316
cryptonote::NOTIFY_REQUEST_VALIDATORS_LIST::response_t
Definition
cryptonote_protocol_defs.h:323
cryptonote::NOTIFY_REQUEST_VALIDATORS_LIST::response_t::serialized_v_list
std::string serialized_v_list
Definition
cryptonote_protocol_defs.h:324
cryptonote::NOTIFY_REQUEST_VALIDATORS_LIST
Definition
cryptonote_protocol_defs.h:312
cryptonote::NOTIFY_REQUEST_VALIDATORS_LIST::response
epee::misc_utils::struct_init< response_t > response
Definition
cryptonote_protocol_defs.h:330
cryptonote::NOTIFY_REQUEST_VALIDATORS_LIST::request
epee::misc_utils::struct_init< request_t > request
Definition
cryptonote_protocol_defs.h:320
cryptonote::NOTIFY_REQUEST_VALIDATORS_LIST::ID
static const int ID
Definition
cryptonote_protocol_defs.h:313
cryptonote::NOTIFY_RESPONSE_CHAIN_ENTRY::request_t
Definition
cryptonote_protocol_defs.h:248
cryptonote::NOTIFY_RESPONSE_CHAIN_ENTRY::request_t::total_height
uint64_t total_height
Definition
cryptonote_protocol_defs.h:250
cryptonote::NOTIFY_RESPONSE_CHAIN_ENTRY::request_t::cumulative_difficulty_top64
uint64_t cumulative_difficulty_top64
Definition
cryptonote_protocol_defs.h:252
cryptonote::NOTIFY_RESPONSE_CHAIN_ENTRY::request_t::cumulative_difficulty
uint64_t cumulative_difficulty
Definition
cryptonote_protocol_defs.h:251
cryptonote::NOTIFY_RESPONSE_CHAIN_ENTRY::request_t::m_block_ids
std::vector< crypto::hash > m_block_ids
Definition
cryptonote_protocol_defs.h:253
cryptonote::NOTIFY_RESPONSE_CHAIN_ENTRY::request_t::start_height
uint64_t start_height
Definition
cryptonote_protocol_defs.h:249
cryptonote::NOTIFY_RESPONSE_CHAIN_ENTRY
Definition
cryptonote_protocol_defs.h:244
cryptonote::NOTIFY_RESPONSE_CHAIN_ENTRY::ID
static const int ID
Definition
cryptonote_protocol_defs.h:245
cryptonote::NOTIFY_RESPONSE_CHAIN_ENTRY::request
epee::misc_utils::struct_init< request_t > request
Definition
cryptonote_protocol_defs.h:263
cryptonote::NOTIFY_RESPONSE_GET_OBJECTS::request_t
Definition
cryptonote_protocol_defs.h:192
cryptonote::NOTIFY_RESPONSE_GET_OBJECTS::request_t::txs
std::vector< blobdata > txs
Definition
cryptonote_protocol_defs.h:193
cryptonote::NOTIFY_RESPONSE_GET_OBJECTS::request_t::missed_ids
std::vector< crypto::hash > missed_ids
Definition
cryptonote_protocol_defs.h:195
cryptonote::NOTIFY_RESPONSE_GET_OBJECTS::request_t::current_blockchain_height
uint64_t current_blockchain_height
Definition
cryptonote_protocol_defs.h:196
cryptonote::NOTIFY_RESPONSE_GET_OBJECTS
Definition
cryptonote_protocol_defs.h:188
cryptonote::NOTIFY_RESPONSE_GET_OBJECTS::request
epee::misc_utils::struct_init< request_t > request
Definition
cryptonote_protocol_defs.h:205
cryptonote::NOTIFY_RESPONSE_GET_OBJECTS::ID
static const int ID
Definition
cryptonote_protocol_defs.h:189
cryptonote::block_complete_entry
Definition
cryptonote_protocol_defs.h:118
cryptonote::block_complete_entry::txs
std::vector< blobdata > txs
Definition
cryptonote_protocol_defs.h:120
cryptonote::block_complete_entry::block
blobdata block
Definition
cryptonote_protocol_defs.h:119
cryptonote::connection_info
Definition
cryptonote_protocol_defs.h:49
cryptonote::connection_info::connection_id
std::string connection_id
Definition
cryptonote_protocol_defs.h:81
cryptonote::connection_info::pruning_seed
uint32_t pruning_seed
Definition
cryptonote_protocol_defs.h:85
cryptonote::connection_info::address
std::string address
Definition
cryptonote_protocol_defs.h:55
cryptonote::connection_info::recv_count
uint64_t recv_count
Definition
cryptonote_protocol_defs.h:63
cryptonote::connection_info::live_time
uint64_t live_time
Definition
cryptonote_protocol_defs.h:71
cryptonote::connection_info::support_flags
uint32_t support_flags
Definition
cryptonote_protocol_defs.h:79
cryptonote::connection_info::localhost
bool localhost
Definition
cryptonote_protocol_defs.h:51
cryptonote::connection_info::port
std::string port
Definition
cryptonote_protocol_defs.h:58
cryptonote::connection_info::height
uint64_t height
Definition
cryptonote_protocol_defs.h:83
cryptonote::connection_info::send_idle_time
uint64_t send_idle_time
Definition
cryptonote_protocol_defs.h:67
cryptonote::connection_info::host
std::string host
Definition
cryptonote_protocol_defs.h:56
cryptonote::connection_info::ip
std::string ip
Definition
cryptonote_protocol_defs.h:57
cryptonote::connection_info::current_download
uint64_t current_download
Definition
cryptonote_protocol_defs.h:74
cryptonote::connection_info::avg_download
uint64_t avg_download
Definition
cryptonote_protocol_defs.h:73
cryptonote::connection_info::recv_idle_time
uint64_t recv_idle_time
Definition
cryptonote_protocol_defs.h:64
cryptonote::connection_info::rpc_port
uint16_t rpc_port
Definition
cryptonote_protocol_defs.h:59
cryptonote::connection_info::send_count
uint64_t send_count
Definition
cryptonote_protocol_defs.h:66
cryptonote::connection_info::state
std::string state
Definition
cryptonote_protocol_defs.h:69
cryptonote::connection_info::local_ip
bool local_ip
Definition
cryptonote_protocol_defs.h:52
cryptonote::connection_info::ssl
bool ssl
Definition
cryptonote_protocol_defs.h:53
cryptonote::connection_info::incoming
bool incoming
Definition
cryptonote_protocol_defs.h:50
cryptonote::connection_info::peer_id
std::string peer_id
Definition
cryptonote_protocol_defs.h:61
cryptonote::connection_info::current_upload
uint64_t current_upload
Definition
cryptonote_protocol_defs.h:77
cryptonote::connection_info::avg_upload
uint64_t avg_upload
Definition
cryptonote_protocol_defs.h:76
epee::misc_utils::struct_init
Definition
misc_language.h:163
src
cryptonote_protocol
cryptonote_protocol_defs.h
Generated on
for Electroneum by
1.17.0