Line data Source code
1 : /* Automatically generated nanopb header */
2 : /* Generated by nanopb-0.4.9.1 */
3 :
4 : #ifndef PB_ORG_SOLANA_SEALEVEL_V1_BLOCK_PB_H_INCLUDED
5 : #define PB_ORG_SOLANA_SEALEVEL_V1_BLOCK_PB_H_INCLUDED
6 :
7 : #include "../../../../third_party/nanopb/pb_firedancer.h"
8 : #include "context.pb.h"
9 : #include "txn.pb.h"
10 : #include "metadata.pb.h"
11 :
12 : #if PB_PROTO_HEADER_VERSION != 40
13 : #error Regenerate this file with the current version of nanopb generator.
14 : #endif
15 :
16 : /* Enum definitions */
17 : typedef enum fd_exec_test_vote_account_version {
18 : FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V1_14_11 = 0,
19 : FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V3 = 1,
20 : FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V4 = 2
21 : } fd_exec_test_vote_account_version_t;
22 :
23 : typedef enum fd_exec_test_warmup_cooldown_rate {
24 : FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_RATE_025 = 0, /* 0.25 */
25 : FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_RATE_009 = 1 /* 0.09 */
26 : } fd_exec_test_warmup_cooldown_rate_t;
27 :
28 : /* Struct definitions */
29 : typedef struct fd_exec_test_cost_tracker {
30 : uint64_t block_cost;
31 : } fd_exec_test_cost_tracker_t;
32 :
33 : typedef struct fd_exec_test_inflation {
34 : double initial;
35 : double terminal;
36 : double taper;
37 : double foundation;
38 : double foundation_term;
39 : } fd_exec_test_inflation_t;
40 :
41 : typedef struct fd_exec_test_epoch_credit {
42 : uint64_t epoch;
43 : uint64_t credits;
44 : uint64_t prev_credits;
45 : } fd_exec_test_epoch_credit_t;
46 :
47 : typedef PB_BYTES_ARRAY_T(32) fd_exec_test_prev_vote_account_inflation_rewards_collector_t;
48 : typedef PB_BYTES_ARRAY_T(32) fd_exec_test_prev_vote_account_block_revenue_collector_t;
49 : typedef struct fd_exec_test_prev_vote_account {
50 : pb_byte_t address[32];
51 : pb_byte_t node_pubkey[32];
52 : uint64_t stake;
53 : uint32_t commission_bps;
54 : /* Epoch credits are only needed for recalculating partitioned
55 : epoch rewards during the distribution phase. */
56 : pb_size_t epoch_credits_count;
57 : struct fd_exec_test_epoch_credit *epoch_credits;
58 : fd_exec_test_vote_account_version_t version;
59 : /* SIMD-0232 collector accounts. Empty/absent means the default
60 : collector applies (the vote account address for inflation
61 : rewards, node_pubkey for block revenue). */
62 : fd_exec_test_prev_vote_account_inflation_rewards_collector_t inflation_rewards_collector;
63 : fd_exec_test_prev_vote_account_block_revenue_collector_t block_revenue_collector;
64 : /* SIMD-0123 block revenue sharing */
65 : uint32_t block_revenue_commission_bps;
66 : uint64_t pending_delegator_rewards;
67 : } fd_exec_test_prev_vote_account_t;
68 :
69 : typedef struct fd_exec_test_block_bank {
70 : /* Up to 300 (actually 301) most recent blockhashes (ordered from oldest to newest) */
71 : pb_size_t blockhash_queue_count;
72 : struct fd_exec_test_blockhash_queue_entry *blockhash_queue;
73 : uint32_t rbh_lamports_per_signature;
74 : bool has_fee_rate_governor;
75 : fd_exec_test_fee_rate_governor_t fee_rate_governor;
76 : /* The slot number of the block being executed */
77 : uint64_t slot;
78 : /* 0 <= parent_slot < slot */
79 : uint64_t parent_slot;
80 : uint64_t capitalization;
81 : /* uint128: nanoseconds per slot */
82 : pb_byte_t ns_per_slot[16];
83 : /* Constraints (all f64, must be finite and non-negative):
84 : initial: 0.0 - 0.15 (mainnet: 0.08)
85 : terminal: 0.0 - initial (mainnet: 0.015)
86 : taper: 0.0 - 1.0 (mainnet: 0.15)
87 : foundation: 0.0 - 1.0 (mainnet: 0.05)
88 : foundation_term: 0.0 - 100.0 (mainnet: 7.0) */
89 : bool has_inflation;
90 : fd_exec_test_inflation_t inflation;
91 : /* 0 <= block_height <= slot */
92 : uint64_t block_height;
93 : /* POH (computed right before block execution) */
94 : pb_byte_t poh[32];
95 : /* Parent bank hash */
96 : pb_byte_t parent_bank_hash[32];
97 : /* Parent LT hash */
98 : pb_byte_t parent_lt_hash[2048];
99 : uint64_t parent_signature_count;
100 : bool has_features;
101 : fd_exec_test_feature_set_t features;
102 : pb_size_t vote_accounts_t_1_count;
103 : struct fd_exec_test_prev_vote_account *vote_accounts_t_1;
104 : pb_size_t vote_accounts_t_2_count;
105 : struct fd_exec_test_prev_vote_account *vote_accounts_t_2;
106 : } fd_exec_test_block_bank_t;
107 :
108 : typedef struct fd_exec_test_block_context {
109 : /* All transactions in this microblock (can be 0) */
110 : pb_size_t txns_count;
111 : struct fd_exec_test_sanitized_transaction *txns;
112 : /* Input account states */
113 : pb_size_t acct_states_count;
114 : struct fd_exec_test_acct_state *acct_states;
115 : /* Bank fields for the block fuzzer */
116 : bool has_bank;
117 : fd_exec_test_block_bank_t bank;
118 : } fd_exec_test_block_context_t;
119 :
120 : typedef struct fd_exec_test_leader_schedule_effects {
121 : /* Epoch number for which this leader schedule applies */
122 : uint64_t leaders_epoch;
123 : /* First slot number covered by this leader schedule */
124 : uint64_t leaders_slot0;
125 : /* Total number of slots covered by this leader schedule */
126 : uint64_t leaders_slot_cnt;
127 : /* Number of unique validator public keys in the leader schedule */
128 : uint64_t leader_pub_cnt;
129 : /* Number of entries in the leader schedule (slots with assigned leaders) */
130 : uint64_t leaders_sched_cnt;
131 : /* Hash of the leader schedule */
132 : pb_byte_t leader_schedule_hash[16];
133 : } fd_exec_test_leader_schedule_effects_t;
134 :
135 : /* Post-block stakes cache entry (not covered by the bank hash). */
136 : typedef struct fd_exec_test_stake_delegation {
137 : pb_byte_t stake_account[32];
138 : pb_byte_t vote_account[32];
139 : uint64_t stake;
140 : uint64_t activation_epoch;
141 : uint64_t deactivation_epoch;
142 : uint64_t credits_observed;
143 : uint64_t lamports;
144 : uint64_t data_len;
145 : } fd_exec_test_stake_delegation_t;
146 :
147 : typedef struct fd_exec_test_block_effects {
148 : /* If block execution failed */
149 : bool has_error;
150 : /* Slot capitalization */
151 : uint64_t slot_capitalization;
152 : /* Bank hash */
153 : pb_byte_t bank_hash[32];
154 : /* The cost tracker */
155 : bool has_cost_tracker;
156 : fd_exec_test_cost_tracker_t cost_tracker;
157 : /* Leader schedule */
158 : bool has_leader_schedule;
159 : fd_exec_test_leader_schedule_effects_t leader_schedule;
160 : /* Sorted by stake_account; empty when has_error */
161 : pb_size_t stake_delegations_count;
162 : struct fd_exec_test_stake_delegation *stake_delegations;
163 : } fd_exec_test_block_effects_t;
164 :
165 : typedef struct fd_exec_test_block_fixture {
166 : bool has_metadata;
167 : fd_exec_test_fixture_metadata_t metadata;
168 : /* The block input */
169 : bool has_input;
170 : fd_exec_test_block_context_t input;
171 : /* The output */
172 : bool has_output;
173 : fd_exec_test_block_effects_t output;
174 : } fd_exec_test_block_fixture_t;
175 :
176 :
177 : #ifdef __cplusplus
178 : extern "C" {
179 : #endif
180 :
181 : /* Helper constants for enums */
182 : #define _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MIN FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V1_14_11
183 : #define _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MAX FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V4
184 : #define _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_ARRAYSIZE ((fd_exec_test_vote_account_version_t)(FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V4+1))
185 :
186 : #define _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_MIN FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_RATE_025
187 : #define _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_MAX FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_RATE_009
188 : #define _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_ARRAYSIZE ((fd_exec_test_warmup_cooldown_rate_t)(FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_RATE_009+1))
189 :
190 :
191 :
192 :
193 : #define fd_exec_test_prev_vote_account_t_version_ENUMTYPE fd_exec_test_vote_account_version_t
194 :
195 :
196 :
197 :
198 :
199 :
200 :
201 :
202 : /* Initializer values for message structs */
203 : #define FD_EXEC_TEST_COST_TRACKER_INIT_DEFAULT {0}
204 : #define FD_EXEC_TEST_INFLATION_INIT_DEFAULT {0, 0, 0, 0, 0}
205 : #define FD_EXEC_TEST_EPOCH_CREDIT_INIT_DEFAULT {0, 0, 0}
206 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_INIT_DEFAULT {{0}, {0}, 0, 0, 0, NULL, _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MIN, {0, {0}}, {0, {0}}, 0, 0}
207 : #define FD_EXEC_TEST_BLOCK_BANK_INIT_DEFAULT {0, NULL, 0, false, FD_EXEC_TEST_FEE_RATE_GOVERNOR_INIT_DEFAULT, 0, 0, 0, {0}, false, FD_EXEC_TEST_INFLATION_INIT_DEFAULT, 0, {0}, {0}, {0}, 0, false, FD_EXEC_TEST_FEATURE_SET_INIT_DEFAULT, 0, NULL, 0, NULL}
208 : #define FD_EXEC_TEST_BLOCK_CONTEXT_INIT_DEFAULT {0, NULL, 0, NULL, false, FD_EXEC_TEST_BLOCK_BANK_INIT_DEFAULT}
209 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_DEFAULT {0, 0, 0, 0, 0, {0}}
210 : #define FD_EXEC_TEST_STAKE_DELEGATION_INIT_DEFAULT {{0}, {0}, 0, 0, 0, 0, 0, 0}
211 : #define FD_EXEC_TEST_BLOCK_EFFECTS_INIT_DEFAULT {0, 0, {0}, false, FD_EXEC_TEST_COST_TRACKER_INIT_DEFAULT, false, FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_DEFAULT, 0, NULL}
212 : #define FD_EXEC_TEST_BLOCK_FIXTURE_INIT_DEFAULT {false, FD_EXEC_TEST_FIXTURE_METADATA_INIT_DEFAULT, false, FD_EXEC_TEST_BLOCK_CONTEXT_INIT_DEFAULT, false, FD_EXEC_TEST_BLOCK_EFFECTS_INIT_DEFAULT}
213 : #define FD_EXEC_TEST_COST_TRACKER_INIT_ZERO {0}
214 : #define FD_EXEC_TEST_INFLATION_INIT_ZERO {0, 0, 0, 0, 0}
215 : #define FD_EXEC_TEST_EPOCH_CREDIT_INIT_ZERO {0, 0, 0}
216 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_INIT_ZERO {{0}, {0}, 0, 0, 0, NULL, _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MIN, {0, {0}}, {0, {0}}, 0, 0}
217 : #define FD_EXEC_TEST_BLOCK_BANK_INIT_ZERO {0, NULL, 0, false, FD_EXEC_TEST_FEE_RATE_GOVERNOR_INIT_ZERO, 0, 0, 0, {0}, false, FD_EXEC_TEST_INFLATION_INIT_ZERO, 0, {0}, {0}, {0}, 0, false, FD_EXEC_TEST_FEATURE_SET_INIT_ZERO, 0, NULL, 0, NULL}
218 : #define FD_EXEC_TEST_BLOCK_CONTEXT_INIT_ZERO {0, NULL, 0, NULL, false, FD_EXEC_TEST_BLOCK_BANK_INIT_ZERO}
219 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_ZERO {0, 0, 0, 0, 0, {0}}
220 : #define FD_EXEC_TEST_STAKE_DELEGATION_INIT_ZERO {{0}, {0}, 0, 0, 0, 0, 0, 0}
221 : #define FD_EXEC_TEST_BLOCK_EFFECTS_INIT_ZERO {0, 0, {0}, false, FD_EXEC_TEST_COST_TRACKER_INIT_ZERO, false, FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_ZERO, 0, NULL}
222 : #define FD_EXEC_TEST_BLOCK_FIXTURE_INIT_ZERO {false, FD_EXEC_TEST_FIXTURE_METADATA_INIT_ZERO, false, FD_EXEC_TEST_BLOCK_CONTEXT_INIT_ZERO, false, FD_EXEC_TEST_BLOCK_EFFECTS_INIT_ZERO}
223 :
224 : /* Field tags (for use in manual encoding/decoding) */
225 : #define FD_EXEC_TEST_COST_TRACKER_BLOCK_COST_TAG 1
226 : #define FD_EXEC_TEST_INFLATION_INITIAL_TAG 1
227 : #define FD_EXEC_TEST_INFLATION_TERMINAL_TAG 2
228 : #define FD_EXEC_TEST_INFLATION_TAPER_TAG 3
229 : #define FD_EXEC_TEST_INFLATION_FOUNDATION_TAG 4
230 : #define FD_EXEC_TEST_INFLATION_FOUNDATION_TERM_TAG 5
231 : #define FD_EXEC_TEST_EPOCH_CREDIT_EPOCH_TAG 1
232 : #define FD_EXEC_TEST_EPOCH_CREDIT_CREDITS_TAG 2
233 : #define FD_EXEC_TEST_EPOCH_CREDIT_PREV_CREDITS_TAG 3
234 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_ADDRESS_TAG 1
235 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_NODE_PUBKEY_TAG 2
236 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_STAKE_TAG 3
237 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_COMMISSION_BPS_TAG 4
238 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_EPOCH_CREDITS_TAG 5
239 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_VERSION_TAG 6
240 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_INFLATION_REWARDS_COLLECTOR_TAG 7
241 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_BLOCK_REVENUE_COLLECTOR_TAG 8
242 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_BLOCK_REVENUE_COMMISSION_BPS_TAG 9
243 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_PENDING_DELEGATOR_REWARDS_TAG 10
244 : #define FD_EXEC_TEST_BLOCK_BANK_BLOCKHASH_QUEUE_TAG 1
245 : #define FD_EXEC_TEST_BLOCK_BANK_RBH_LAMPORTS_PER_SIGNATURE_TAG 2
246 : #define FD_EXEC_TEST_BLOCK_BANK_FEE_RATE_GOVERNOR_TAG 3
247 : #define FD_EXEC_TEST_BLOCK_BANK_SLOT_TAG 4
248 : #define FD_EXEC_TEST_BLOCK_BANK_PARENT_SLOT_TAG 5
249 : #define FD_EXEC_TEST_BLOCK_BANK_CAPITALIZATION_TAG 6
250 : #define FD_EXEC_TEST_BLOCK_BANK_NS_PER_SLOT_TAG 7
251 : #define FD_EXEC_TEST_BLOCK_BANK_INFLATION_TAG 8
252 : #define FD_EXEC_TEST_BLOCK_BANK_BLOCK_HEIGHT_TAG 9
253 : #define FD_EXEC_TEST_BLOCK_BANK_POH_TAG 10
254 : #define FD_EXEC_TEST_BLOCK_BANK_PARENT_BANK_HASH_TAG 11
255 : #define FD_EXEC_TEST_BLOCK_BANK_PARENT_LT_HASH_TAG 12
256 : #define FD_EXEC_TEST_BLOCK_BANK_PARENT_SIGNATURE_COUNT_TAG 13
257 : #define FD_EXEC_TEST_BLOCK_BANK_FEATURES_TAG 16
258 : #define FD_EXEC_TEST_BLOCK_BANK_VOTE_ACCOUNTS_T_1_TAG 17
259 : #define FD_EXEC_TEST_BLOCK_BANK_VOTE_ACCOUNTS_T_2_TAG 18
260 : #define FD_EXEC_TEST_BLOCK_CONTEXT_TXNS_TAG 1
261 : #define FD_EXEC_TEST_BLOCK_CONTEXT_ACCT_STATES_TAG 2
262 : #define FD_EXEC_TEST_BLOCK_CONTEXT_BANK_TAG 6
263 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADERS_EPOCH_TAG 1
264 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADERS_SLOT0_TAG 2
265 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADERS_SLOT_CNT_TAG 3
266 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADER_PUB_CNT_TAG 4
267 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADERS_SCHED_CNT_TAG 5
268 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADER_SCHEDULE_HASH_TAG 6
269 : #define FD_EXEC_TEST_STAKE_DELEGATION_STAKE_ACCOUNT_TAG 1
270 : #define FD_EXEC_TEST_STAKE_DELEGATION_VOTE_ACCOUNT_TAG 2
271 : #define FD_EXEC_TEST_STAKE_DELEGATION_STAKE_TAG 3
272 : #define FD_EXEC_TEST_STAKE_DELEGATION_ACTIVATION_EPOCH_TAG 4
273 : #define FD_EXEC_TEST_STAKE_DELEGATION_DEACTIVATION_EPOCH_TAG 5
274 : #define FD_EXEC_TEST_STAKE_DELEGATION_CREDITS_OBSERVED_TAG 6
275 : #define FD_EXEC_TEST_STAKE_DELEGATION_LAMPORTS_TAG 7
276 : #define FD_EXEC_TEST_STAKE_DELEGATION_DATA_LEN_TAG 8
277 : #define FD_EXEC_TEST_BLOCK_EFFECTS_HAS_ERROR_TAG 1
278 : #define FD_EXEC_TEST_BLOCK_EFFECTS_SLOT_CAPITALIZATION_TAG 2
279 : #define FD_EXEC_TEST_BLOCK_EFFECTS_BANK_HASH_TAG 3
280 : #define FD_EXEC_TEST_BLOCK_EFFECTS_COST_TRACKER_TAG 4
281 : #define FD_EXEC_TEST_BLOCK_EFFECTS_LEADER_SCHEDULE_TAG 5
282 : #define FD_EXEC_TEST_BLOCK_EFFECTS_STAKE_DELEGATIONS_TAG 6
283 : #define FD_EXEC_TEST_BLOCK_FIXTURE_METADATA_TAG 1
284 : #define FD_EXEC_TEST_BLOCK_FIXTURE_INPUT_TAG 2
285 : #define FD_EXEC_TEST_BLOCK_FIXTURE_OUTPUT_TAG 3
286 :
287 : /* Struct field encoding specification for nanopb */
288 : #define FD_EXEC_TEST_COST_TRACKER_FIELDLIST(X, a) \
289 : X(a, STATIC, SINGULAR, UINT64, block_cost, 1)
290 : #define FD_EXEC_TEST_COST_TRACKER_CALLBACK NULL
291 : #define FD_EXEC_TEST_COST_TRACKER_DEFAULT NULL
292 :
293 : #define FD_EXEC_TEST_INFLATION_FIELDLIST(X, a) \
294 : X(a, STATIC, SINGULAR, DOUBLE, initial, 1) \
295 : X(a, STATIC, SINGULAR, DOUBLE, terminal, 2) \
296 : X(a, STATIC, SINGULAR, DOUBLE, taper, 3) \
297 : X(a, STATIC, SINGULAR, DOUBLE, foundation, 4) \
298 : X(a, STATIC, SINGULAR, DOUBLE, foundation_term, 5)
299 : #define FD_EXEC_TEST_INFLATION_CALLBACK NULL
300 : #define FD_EXEC_TEST_INFLATION_DEFAULT NULL
301 :
302 : #define FD_EXEC_TEST_EPOCH_CREDIT_FIELDLIST(X, a) \
303 : X(a, STATIC, SINGULAR, UINT64, epoch, 1) \
304 : X(a, STATIC, SINGULAR, UINT64, credits, 2) \
305 : X(a, STATIC, SINGULAR, UINT64, prev_credits, 3)
306 : #define FD_EXEC_TEST_EPOCH_CREDIT_CALLBACK NULL
307 : #define FD_EXEC_TEST_EPOCH_CREDIT_DEFAULT NULL
308 :
309 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_FIELDLIST(X, a) \
310 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, address, 1) \
311 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, node_pubkey, 2) \
312 : X(a, STATIC, SINGULAR, UINT64, stake, 3) \
313 : X(a, STATIC, SINGULAR, UINT32, commission_bps, 4) \
314 : X(a, POINTER, REPEATED, MESSAGE, epoch_credits, 5) \
315 : X(a, STATIC, SINGULAR, UENUM, version, 6) \
316 : X(a, STATIC, SINGULAR, BYTES, inflation_rewards_collector, 7) \
317 : X(a, STATIC, SINGULAR, BYTES, block_revenue_collector, 8) \
318 : X(a, STATIC, SINGULAR, UINT32, block_revenue_commission_bps, 9) \
319 : X(a, STATIC, SINGULAR, UINT64, pending_delegator_rewards, 10)
320 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_CALLBACK NULL
321 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_DEFAULT NULL
322 : #define fd_exec_test_prev_vote_account_t_epoch_credits_MSGTYPE fd_exec_test_epoch_credit_t
323 :
324 : #define FD_EXEC_TEST_BLOCK_BANK_FIELDLIST(X, a) \
325 : X(a, POINTER, REPEATED, MESSAGE, blockhash_queue, 1) \
326 : X(a, STATIC, SINGULAR, UINT32, rbh_lamports_per_signature, 2) \
327 : X(a, STATIC, OPTIONAL, MESSAGE, fee_rate_governor, 3) \
328 : X(a, STATIC, SINGULAR, UINT64, slot, 4) \
329 : X(a, STATIC, SINGULAR, UINT64, parent_slot, 5) \
330 : X(a, STATIC, SINGULAR, UINT64, capitalization, 6) \
331 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, ns_per_slot, 7) \
332 : X(a, STATIC, OPTIONAL, MESSAGE, inflation, 8) \
333 : X(a, STATIC, SINGULAR, UINT64, block_height, 9) \
334 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, poh, 10) \
335 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, parent_bank_hash, 11) \
336 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, parent_lt_hash, 12) \
337 : X(a, STATIC, SINGULAR, UINT64, parent_signature_count, 13) \
338 : X(a, STATIC, OPTIONAL, MESSAGE, features, 16) \
339 : X(a, POINTER, REPEATED, MESSAGE, vote_accounts_t_1, 17) \
340 : X(a, POINTER, REPEATED, MESSAGE, vote_accounts_t_2, 18)
341 : #define FD_EXEC_TEST_BLOCK_BANK_CALLBACK NULL
342 : #define FD_EXEC_TEST_BLOCK_BANK_DEFAULT NULL
343 : #define fd_exec_test_block_bank_t_blockhash_queue_MSGTYPE fd_exec_test_blockhash_queue_entry_t
344 : #define fd_exec_test_block_bank_t_fee_rate_governor_MSGTYPE fd_exec_test_fee_rate_governor_t
345 : #define fd_exec_test_block_bank_t_inflation_MSGTYPE fd_exec_test_inflation_t
346 : #define fd_exec_test_block_bank_t_features_MSGTYPE fd_exec_test_feature_set_t
347 : #define fd_exec_test_block_bank_t_vote_accounts_t_1_MSGTYPE fd_exec_test_prev_vote_account_t
348 : #define fd_exec_test_block_bank_t_vote_accounts_t_2_MSGTYPE fd_exec_test_prev_vote_account_t
349 :
350 : #define FD_EXEC_TEST_BLOCK_CONTEXT_FIELDLIST(X, a) \
351 : X(a, POINTER, REPEATED, MESSAGE, txns, 1) \
352 : X(a, POINTER, REPEATED, MESSAGE, acct_states, 2) \
353 : X(a, STATIC, OPTIONAL, MESSAGE, bank, 6)
354 : #define FD_EXEC_TEST_BLOCK_CONTEXT_CALLBACK NULL
355 : #define FD_EXEC_TEST_BLOCK_CONTEXT_DEFAULT NULL
356 : #define fd_exec_test_block_context_t_txns_MSGTYPE fd_exec_test_sanitized_transaction_t
357 : #define fd_exec_test_block_context_t_acct_states_MSGTYPE fd_exec_test_acct_state_t
358 : #define fd_exec_test_block_context_t_bank_MSGTYPE fd_exec_test_block_bank_t
359 :
360 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_FIELDLIST(X, a) \
361 : X(a, STATIC, SINGULAR, UINT64, leaders_epoch, 1) \
362 : X(a, STATIC, SINGULAR, UINT64, leaders_slot0, 2) \
363 : X(a, STATIC, SINGULAR, UINT64, leaders_slot_cnt, 3) \
364 : X(a, STATIC, SINGULAR, UINT64, leader_pub_cnt, 4) \
365 : X(a, STATIC, SINGULAR, UINT64, leaders_sched_cnt, 5) \
366 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, leader_schedule_hash, 6)
367 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_CALLBACK NULL
368 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_DEFAULT NULL
369 :
370 : #define FD_EXEC_TEST_STAKE_DELEGATION_FIELDLIST(X, a) \
371 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, stake_account, 1) \
372 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, vote_account, 2) \
373 : X(a, STATIC, SINGULAR, UINT64, stake, 3) \
374 : X(a, STATIC, SINGULAR, UINT64, activation_epoch, 4) \
375 : X(a, STATIC, SINGULAR, UINT64, deactivation_epoch, 5) \
376 : X(a, STATIC, SINGULAR, UINT64, credits_observed, 6) \
377 : X(a, STATIC, SINGULAR, UINT64, lamports, 7) \
378 : X(a, STATIC, SINGULAR, UINT64, data_len, 8)
379 : #define FD_EXEC_TEST_STAKE_DELEGATION_CALLBACK NULL
380 : #define FD_EXEC_TEST_STAKE_DELEGATION_DEFAULT NULL
381 :
382 : #define FD_EXEC_TEST_BLOCK_EFFECTS_FIELDLIST(X, a) \
383 : X(a, STATIC, SINGULAR, BOOL, has_error, 1) \
384 : X(a, STATIC, SINGULAR, UINT64, slot_capitalization, 2) \
385 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, bank_hash, 3) \
386 : X(a, STATIC, OPTIONAL, MESSAGE, cost_tracker, 4) \
387 : X(a, STATIC, OPTIONAL, MESSAGE, leader_schedule, 5) \
388 : X(a, POINTER, REPEATED, MESSAGE, stake_delegations, 6)
389 : #define FD_EXEC_TEST_BLOCK_EFFECTS_CALLBACK NULL
390 : #define FD_EXEC_TEST_BLOCK_EFFECTS_DEFAULT NULL
391 : #define fd_exec_test_block_effects_t_cost_tracker_MSGTYPE fd_exec_test_cost_tracker_t
392 : #define fd_exec_test_block_effects_t_leader_schedule_MSGTYPE fd_exec_test_leader_schedule_effects_t
393 : #define fd_exec_test_block_effects_t_stake_delegations_MSGTYPE fd_exec_test_stake_delegation_t
394 :
395 : #define FD_EXEC_TEST_BLOCK_FIXTURE_FIELDLIST(X, a) \
396 : X(a, STATIC, OPTIONAL, MESSAGE, metadata, 1) \
397 : X(a, STATIC, OPTIONAL, MESSAGE, input, 2) \
398 : X(a, STATIC, OPTIONAL, MESSAGE, output, 3)
399 : #define FD_EXEC_TEST_BLOCK_FIXTURE_CALLBACK NULL
400 : #define FD_EXEC_TEST_BLOCK_FIXTURE_DEFAULT NULL
401 : #define fd_exec_test_block_fixture_t_metadata_MSGTYPE fd_exec_test_fixture_metadata_t
402 : #define fd_exec_test_block_fixture_t_input_MSGTYPE fd_exec_test_block_context_t
403 : #define fd_exec_test_block_fixture_t_output_MSGTYPE fd_exec_test_block_effects_t
404 :
405 : extern const pb_msgdesc_t fd_exec_test_cost_tracker_t_msg;
406 : extern const pb_msgdesc_t fd_exec_test_inflation_t_msg;
407 : extern const pb_msgdesc_t fd_exec_test_epoch_credit_t_msg;
408 : extern const pb_msgdesc_t fd_exec_test_prev_vote_account_t_msg;
409 : extern const pb_msgdesc_t fd_exec_test_block_bank_t_msg;
410 : extern const pb_msgdesc_t fd_exec_test_block_context_t_msg;
411 : extern const pb_msgdesc_t fd_exec_test_leader_schedule_effects_t_msg;
412 : extern const pb_msgdesc_t fd_exec_test_stake_delegation_t_msg;
413 : extern const pb_msgdesc_t fd_exec_test_block_effects_t_msg;
414 : extern const pb_msgdesc_t fd_exec_test_block_fixture_t_msg;
415 :
416 : /* Defines for backwards compatibility with code written before nanopb-0.4.0 */
417 : #define FD_EXEC_TEST_COST_TRACKER_FIELDS &fd_exec_test_cost_tracker_t_msg
418 : #define FD_EXEC_TEST_INFLATION_FIELDS &fd_exec_test_inflation_t_msg
419 : #define FD_EXEC_TEST_EPOCH_CREDIT_FIELDS &fd_exec_test_epoch_credit_t_msg
420 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_FIELDS &fd_exec_test_prev_vote_account_t_msg
421 : #define FD_EXEC_TEST_BLOCK_BANK_FIELDS &fd_exec_test_block_bank_t_msg
422 0 : #define FD_EXEC_TEST_BLOCK_CONTEXT_FIELDS &fd_exec_test_block_context_t_msg
423 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_FIELDS &fd_exec_test_leader_schedule_effects_t_msg
424 : #define FD_EXEC_TEST_STAKE_DELEGATION_FIELDS &fd_exec_test_stake_delegation_t_msg
425 : #define FD_EXEC_TEST_BLOCK_EFFECTS_FIELDS &fd_exec_test_block_effects_t_msg
426 : #define FD_EXEC_TEST_BLOCK_FIXTURE_FIELDS &fd_exec_test_block_fixture_t_msg
427 :
428 : /* Maximum encoded size of messages (where known) */
429 : /* fd_exec_test_PrevVoteAccount_size depends on runtime parameters */
430 : /* fd_exec_test_BlockBank_size depends on runtime parameters */
431 : /* fd_exec_test_BlockContext_size depends on runtime parameters */
432 : /* fd_exec_test_BlockEffects_size depends on runtime parameters */
433 : /* fd_exec_test_BlockFixture_size depends on runtime parameters */
434 : #define FD_EXEC_TEST_COST_TRACKER_SIZE 11
435 : #define FD_EXEC_TEST_EPOCH_CREDIT_SIZE 33
436 : #define FD_EXEC_TEST_INFLATION_SIZE 45
437 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_SIZE 73
438 : #define FD_EXEC_TEST_STAKE_DELEGATION_SIZE 134
439 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_PB_H_MAX_SIZE FD_EXEC_TEST_STAKE_DELEGATION_SIZE
440 :
441 : /* Mapping from canonical names (mangle_names or overridden package name) */
442 : #define org_solana_sealevel_v1_VoteAccountVersion fd_exec_test_VoteAccountVersion
443 : #define org_solana_sealevel_v1_WarmupCooldownRate fd_exec_test_WarmupCooldownRate
444 : #define org_solana_sealevel_v1_CostTracker fd_exec_test_CostTracker
445 : #define org_solana_sealevel_v1_Inflation fd_exec_test_Inflation
446 : #define org_solana_sealevel_v1_EpochCredit fd_exec_test_EpochCredit
447 : #define org_solana_sealevel_v1_PrevVoteAccount fd_exec_test_PrevVoteAccount
448 : #define org_solana_sealevel_v1_BlockBank fd_exec_test_BlockBank
449 : #define org_solana_sealevel_v1_BlockContext fd_exec_test_BlockContext
450 : #define org_solana_sealevel_v1_LeaderScheduleEffects fd_exec_test_LeaderScheduleEffects
451 : #define org_solana_sealevel_v1_StakeDelegation fd_exec_test_StakeDelegation
452 : #define org_solana_sealevel_v1_BlockEffects fd_exec_test_BlockEffects
453 : #define org_solana_sealevel_v1_BlockFixture fd_exec_test_BlockFixture
454 : #define _ORG_SOLANA_SEALEVEL_V1_VOTE_ACCOUNT_VERSION_MIN _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MIN
455 : #define _ORG_SOLANA_SEALEVEL_V1_VOTE_ACCOUNT_VERSION_MAX _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MAX
456 : #define _ORG_SOLANA_SEALEVEL_V1_VOTE_ACCOUNT_VERSION_ARRAYSIZE _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_ARRAYSIZE
457 : #define _ORG_SOLANA_SEALEVEL_V1_WARMUP_COOLDOWN_RATE_MIN _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_MIN
458 : #define _ORG_SOLANA_SEALEVEL_V1_WARMUP_COOLDOWN_RATE_MAX _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_MAX
459 : #define _ORG_SOLANA_SEALEVEL_V1_WARMUP_COOLDOWN_RATE_ARRAYSIZE _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_ARRAYSIZE
460 : #define ORG_SOLANA_SEALEVEL_V1_COST_TRACKER_INIT_DEFAULT FD_EXEC_TEST_COST_TRACKER_INIT_DEFAULT
461 : #define ORG_SOLANA_SEALEVEL_V1_INFLATION_INIT_DEFAULT FD_EXEC_TEST_INFLATION_INIT_DEFAULT
462 : #define ORG_SOLANA_SEALEVEL_V1_EPOCH_CREDIT_INIT_DEFAULT FD_EXEC_TEST_EPOCH_CREDIT_INIT_DEFAULT
463 : #define ORG_SOLANA_SEALEVEL_V1_PREV_VOTE_ACCOUNT_INIT_DEFAULT FD_EXEC_TEST_PREV_VOTE_ACCOUNT_INIT_DEFAULT
464 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_BANK_INIT_DEFAULT FD_EXEC_TEST_BLOCK_BANK_INIT_DEFAULT
465 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_CONTEXT_INIT_DEFAULT FD_EXEC_TEST_BLOCK_CONTEXT_INIT_DEFAULT
466 : #define ORG_SOLANA_SEALEVEL_V1_LEADER_SCHEDULE_EFFECTS_INIT_DEFAULT FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_DEFAULT
467 : #define ORG_SOLANA_SEALEVEL_V1_STAKE_DELEGATION_INIT_DEFAULT FD_EXEC_TEST_STAKE_DELEGATION_INIT_DEFAULT
468 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_EFFECTS_INIT_DEFAULT FD_EXEC_TEST_BLOCK_EFFECTS_INIT_DEFAULT
469 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_FIXTURE_INIT_DEFAULT FD_EXEC_TEST_BLOCK_FIXTURE_INIT_DEFAULT
470 : #define ORG_SOLANA_SEALEVEL_V1_COST_TRACKER_INIT_ZERO FD_EXEC_TEST_COST_TRACKER_INIT_ZERO
471 : #define ORG_SOLANA_SEALEVEL_V1_INFLATION_INIT_ZERO FD_EXEC_TEST_INFLATION_INIT_ZERO
472 : #define ORG_SOLANA_SEALEVEL_V1_EPOCH_CREDIT_INIT_ZERO FD_EXEC_TEST_EPOCH_CREDIT_INIT_ZERO
473 : #define ORG_SOLANA_SEALEVEL_V1_PREV_VOTE_ACCOUNT_INIT_ZERO FD_EXEC_TEST_PREV_VOTE_ACCOUNT_INIT_ZERO
474 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_BANK_INIT_ZERO FD_EXEC_TEST_BLOCK_BANK_INIT_ZERO
475 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_CONTEXT_INIT_ZERO FD_EXEC_TEST_BLOCK_CONTEXT_INIT_ZERO
476 : #define ORG_SOLANA_SEALEVEL_V1_LEADER_SCHEDULE_EFFECTS_INIT_ZERO FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_ZERO
477 : #define ORG_SOLANA_SEALEVEL_V1_STAKE_DELEGATION_INIT_ZERO FD_EXEC_TEST_STAKE_DELEGATION_INIT_ZERO
478 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_EFFECTS_INIT_ZERO FD_EXEC_TEST_BLOCK_EFFECTS_INIT_ZERO
479 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_FIXTURE_INIT_ZERO FD_EXEC_TEST_BLOCK_FIXTURE_INIT_ZERO
480 :
481 : #ifdef __cplusplus
482 : } /* extern "C" */
483 : #endif
484 :
485 : #endif
|