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_TXN_PB_H_INCLUDED
5 : #define PB_ORG_SOLANA_SEALEVEL_V1_TXN_PB_H_INCLUDED
6 :
7 : #include "../../../nanopb/pb_firedancer.h"
8 : #include "context.pb.h"
9 : #include "metadata.pb.h"
10 :
11 : #if PB_PROTO_HEADER_VERSION != 40
12 : #error Regenerate this file with the current version of nanopb generator.
13 : #endif
14 :
15 : /* Struct definitions */
16 : /* Message header contains the counts of required readonly and signatures */
17 : typedef struct fd_exec_test_message_header {
18 : uint32_t num_required_signatures;
19 : uint32_t num_readonly_signed_accounts;
20 : uint32_t num_readonly_unsigned_accounts;
21 : } fd_exec_test_message_header_t;
22 :
23 : /* The instruction a transaction executes */
24 : typedef struct fd_exec_test_compiled_instruction {
25 : /* Index into the message pubkey array */
26 : uint32_t program_id_index;
27 : /* Indexes into the message pubkey array */
28 : pb_size_t accounts_count;
29 : uint32_t *accounts;
30 : pb_bytes_array_t *data;
31 : } fd_exec_test_compiled_instruction_t;
32 :
33 : /* List of address table lookups used to load additional accounts for a transaction */
34 : typedef struct fd_exec_test_message_address_table_lookup {
35 : pb_byte_t account_key[32];
36 : pb_size_t writable_indexes_count;
37 : uint32_t *writable_indexes;
38 : pb_size_t readonly_indexes_count;
39 : uint32_t *readonly_indexes;
40 : } fd_exec_test_message_address_table_lookup_t;
41 :
42 : /* Message contains the transaction data */
43 : typedef struct fd_exec_test_transaction_message {
44 : /* Whether this is a legacy message or not */
45 : bool is_legacy;
46 : bool has_header;
47 : fd_exec_test_message_header_t header;
48 : /* Vector of pubkeys */
49 : pb_size_t account_keys_count;
50 : pb_bytes_array_t **account_keys;
51 : /* Recent blockhash provided in message */
52 : pb_bytes_array_t *recent_blockhash;
53 : /* The instructions this transaction executes */
54 : pb_size_t instructions_count;
55 : struct fd_exec_test_compiled_instruction *instructions;
56 : /* Not available in legacy message */
57 : pb_size_t address_table_lookups_count;
58 : struct fd_exec_test_message_address_table_lookup *address_table_lookups;
59 : } fd_exec_test_transaction_message_t;
60 :
61 : /* A valid verified transaction */
62 : typedef struct fd_exec_test_sanitized_transaction {
63 : /* The transaction information */
64 : bool has_message;
65 : fd_exec_test_transaction_message_t message;
66 : /* The message hash */
67 : pb_byte_t message_hash[32];
68 : /* The signatures needed in the transaction */
69 : pb_size_t signatures_count;
70 : pb_bytes_array_t **signatures;
71 : } fd_exec_test_sanitized_transaction_t;
72 :
73 : /* This Transaction context be used to fuzz either `load_execute_and_commit_transactions`,
74 : `load_and_execute_transactions` in `bank.rs` or `load_and_execute_sanitized_transactions`
75 : in `svm/transaction_processor.rs` */
76 : typedef struct fd_exec_test_txn_context {
77 : /* The transaction data */
78 : bool has_tx;
79 : fd_exec_test_sanitized_transaction_t tx;
80 : /* Data associated with transaction accounts, sysvars, etc. */
81 : pb_size_t account_shared_data_count;
82 : struct fd_exec_test_acct_state *account_shared_data;
83 : /* Up to 300 (actually 301) most recent blockhashes (ordered from oldest to newest) */
84 : pb_size_t blockhash_queue_count;
85 : pb_bytes_array_t **blockhash_queue;
86 : bool has_epoch_ctx;
87 : fd_exec_test_epoch_context_t epoch_ctx;
88 : bool has_slot_ctx;
89 : fd_exec_test_slot_context_t slot_ctx;
90 : } fd_exec_test_txn_context_t;
91 :
92 : /* The resulting state of an account after a transaction */
93 : typedef struct fd_exec_test_resulting_state {
94 : pb_size_t acct_states_count;
95 : struct fd_exec_test_acct_state *acct_states;
96 : pb_size_t rent_debits_count;
97 : struct fd_exec_test_rent_debits *rent_debits;
98 : uint64_t transaction_rent;
99 : } fd_exec_test_resulting_state_t;
100 :
101 : /* The rent state for an account after a transaction */
102 : typedef struct fd_exec_test_rent_debits {
103 : pb_byte_t pubkey[32];
104 : int64_t rent_collected;
105 : } fd_exec_test_rent_debits_t;
106 :
107 : typedef struct fd_exec_test_fee_details {
108 : uint64_t transaction_fee;
109 : uint64_t prioritization_fee;
110 : } fd_exec_test_fee_details_t;
111 :
112 : /* The execution results for a transaction */
113 : typedef struct fd_exec_test_txn_result {
114 : /* Whether this transaction was executed */
115 : bool executed;
116 : /* Whether there was a sanitization error */
117 : bool sanitization_error;
118 : /* The state of each account after the transaction */
119 : bool has_resulting_state;
120 : fd_exec_test_resulting_state_t resulting_state;
121 : uint64_t rent;
122 : /* If an executed transaction has no error */
123 : bool is_ok;
124 : /* The transaction status (error code) */
125 : uint32_t status;
126 : /* The instruction error, if any */
127 : uint32_t instruction_error;
128 : /* The instruction error index, if any */
129 : uint32_t instruction_error_index;
130 : /* Custom error, if any */
131 : uint32_t custom_error;
132 : /* The return data from this transaction, if any */
133 : pb_bytes_array_t *return_data;
134 : /* Number of executed compute units */
135 : uint64_t executed_units;
136 : /* The collected fees in this transaction */
137 : bool has_fee_details;
138 : fd_exec_test_fee_details_t fee_details;
139 : } fd_exec_test_txn_result_t;
140 :
141 : /* Txn fixtures */
142 : typedef struct fd_exec_test_txn_fixture {
143 : bool has_metadata;
144 : fd_exec_test_fixture_metadata_t metadata;
145 : /* Context */
146 : bool has_input;
147 : fd_exec_test_txn_context_t input;
148 : /* Effects */
149 : bool has_output;
150 : fd_exec_test_txn_result_t output;
151 : } fd_exec_test_txn_fixture_t;
152 :
153 :
154 : #ifdef __cplusplus
155 : extern "C" {
156 : #endif
157 :
158 : /* Initializer values for message structs */
159 0 : #define FD_EXEC_TEST_MESSAGE_HEADER_INIT_DEFAULT {0, 0, 0}
160 : #define FD_EXEC_TEST_COMPILED_INSTRUCTION_INIT_DEFAULT {0, 0, NULL, NULL}
161 : #define FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_INIT_DEFAULT {{0}, 0, NULL, 0, NULL}
162 0 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_INIT_DEFAULT {0, false, FD_EXEC_TEST_MESSAGE_HEADER_INIT_DEFAULT, 0, NULL, NULL, 0, NULL, 0, NULL}
163 0 : #define FD_EXEC_TEST_SANITIZED_TRANSACTION_INIT_DEFAULT {false, FD_EXEC_TEST_TRANSACTION_MESSAGE_INIT_DEFAULT, {0}, 0, NULL}
164 0 : #define FD_EXEC_TEST_TXN_CONTEXT_INIT_DEFAULT {false, FD_EXEC_TEST_SANITIZED_TRANSACTION_INIT_DEFAULT, 0, NULL, 0, NULL, false, FD_EXEC_TEST_EPOCH_CONTEXT_INIT_DEFAULT, false, FD_EXEC_TEST_SLOT_CONTEXT_INIT_DEFAULT}
165 : #define FD_EXEC_TEST_RESULTING_STATE_INIT_DEFAULT {0, NULL, 0, NULL, 0}
166 : #define FD_EXEC_TEST_RENT_DEBITS_INIT_DEFAULT {{0}, 0}
167 : #define FD_EXEC_TEST_FEE_DETAILS_INIT_DEFAULT {0, 0}
168 : #define FD_EXEC_TEST_TXN_RESULT_INIT_DEFAULT {0, 0, false, FD_EXEC_TEST_RESULTING_STATE_INIT_DEFAULT, 0, 0, 0, 0, 0, 0, NULL, 0, false, FD_EXEC_TEST_FEE_DETAILS_INIT_DEFAULT}
169 : #define FD_EXEC_TEST_TXN_FIXTURE_INIT_DEFAULT {false, FD_EXEC_TEST_FIXTURE_METADATA_INIT_DEFAULT, false, FD_EXEC_TEST_TXN_CONTEXT_INIT_DEFAULT, false, FD_EXEC_TEST_TXN_RESULT_INIT_DEFAULT}
170 : #define FD_EXEC_TEST_MESSAGE_HEADER_INIT_ZERO {0, 0, 0}
171 : #define FD_EXEC_TEST_COMPILED_INSTRUCTION_INIT_ZERO {0, 0, NULL, NULL}
172 : #define FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_INIT_ZERO {{0}, 0, NULL, 0, NULL}
173 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_INIT_ZERO {0, false, FD_EXEC_TEST_MESSAGE_HEADER_INIT_ZERO, 0, NULL, NULL, 0, NULL, 0, NULL}
174 : #define FD_EXEC_TEST_SANITIZED_TRANSACTION_INIT_ZERO {false, FD_EXEC_TEST_TRANSACTION_MESSAGE_INIT_ZERO, {0}, 0, NULL}
175 : #define FD_EXEC_TEST_TXN_CONTEXT_INIT_ZERO {false, FD_EXEC_TEST_SANITIZED_TRANSACTION_INIT_ZERO, 0, NULL, 0, NULL, false, FD_EXEC_TEST_EPOCH_CONTEXT_INIT_ZERO, false, FD_EXEC_TEST_SLOT_CONTEXT_INIT_ZERO}
176 : #define FD_EXEC_TEST_RESULTING_STATE_INIT_ZERO {0, NULL, 0, NULL, 0}
177 : #define FD_EXEC_TEST_RENT_DEBITS_INIT_ZERO {{0}, 0}
178 : #define FD_EXEC_TEST_FEE_DETAILS_INIT_ZERO {0, 0}
179 : #define FD_EXEC_TEST_TXN_RESULT_INIT_ZERO {0, 0, false, FD_EXEC_TEST_RESULTING_STATE_INIT_ZERO, 0, 0, 0, 0, 0, 0, NULL, 0, false, FD_EXEC_TEST_FEE_DETAILS_INIT_ZERO}
180 : #define FD_EXEC_TEST_TXN_FIXTURE_INIT_ZERO {false, FD_EXEC_TEST_FIXTURE_METADATA_INIT_ZERO, false, FD_EXEC_TEST_TXN_CONTEXT_INIT_ZERO, false, FD_EXEC_TEST_TXN_RESULT_INIT_ZERO}
181 :
182 : /* Field tags (for use in manual encoding/decoding) */
183 : #define FD_EXEC_TEST_MESSAGE_HEADER_NUM_REQUIRED_SIGNATURES_TAG 1
184 : #define FD_EXEC_TEST_MESSAGE_HEADER_NUM_READONLY_SIGNED_ACCOUNTS_TAG 2
185 : #define FD_EXEC_TEST_MESSAGE_HEADER_NUM_READONLY_UNSIGNED_ACCOUNTS_TAG 3
186 : #define FD_EXEC_TEST_COMPILED_INSTRUCTION_PROGRAM_ID_INDEX_TAG 1
187 : #define FD_EXEC_TEST_COMPILED_INSTRUCTION_ACCOUNTS_TAG 2
188 : #define FD_EXEC_TEST_COMPILED_INSTRUCTION_DATA_TAG 3
189 : #define FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_ACCOUNT_KEY_TAG 1
190 : #define FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_WRITABLE_INDEXES_TAG 2
191 : #define FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_READONLY_INDEXES_TAG 3
192 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_IS_LEGACY_TAG 1
193 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_HEADER_TAG 2
194 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_ACCOUNT_KEYS_TAG 3
195 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_RECENT_BLOCKHASH_TAG 5
196 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_INSTRUCTIONS_TAG 6
197 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_ADDRESS_TABLE_LOOKUPS_TAG 7
198 : #define FD_EXEC_TEST_SANITIZED_TRANSACTION_MESSAGE_TAG 1
199 : #define FD_EXEC_TEST_SANITIZED_TRANSACTION_MESSAGE_HASH_TAG 2
200 : #define FD_EXEC_TEST_SANITIZED_TRANSACTION_SIGNATURES_TAG 4
201 : #define FD_EXEC_TEST_TXN_CONTEXT_TX_TAG 1
202 : #define FD_EXEC_TEST_TXN_CONTEXT_ACCOUNT_SHARED_DATA_TAG 2
203 : #define FD_EXEC_TEST_TXN_CONTEXT_BLOCKHASH_QUEUE_TAG 3
204 : #define FD_EXEC_TEST_TXN_CONTEXT_EPOCH_CTX_TAG 4
205 : #define FD_EXEC_TEST_TXN_CONTEXT_SLOT_CTX_TAG 5
206 : #define FD_EXEC_TEST_RESULTING_STATE_ACCT_STATES_TAG 1
207 : #define FD_EXEC_TEST_RESULTING_STATE_RENT_DEBITS_TAG 2
208 : #define FD_EXEC_TEST_RESULTING_STATE_TRANSACTION_RENT_TAG 3
209 : #define FD_EXEC_TEST_RENT_DEBITS_PUBKEY_TAG 1
210 : #define FD_EXEC_TEST_RENT_DEBITS_RENT_COLLECTED_TAG 2
211 : #define FD_EXEC_TEST_FEE_DETAILS_TRANSACTION_FEE_TAG 1
212 : #define FD_EXEC_TEST_FEE_DETAILS_PRIORITIZATION_FEE_TAG 2
213 : #define FD_EXEC_TEST_TXN_RESULT_EXECUTED_TAG 1
214 : #define FD_EXEC_TEST_TXN_RESULT_SANITIZATION_ERROR_TAG 2
215 : #define FD_EXEC_TEST_TXN_RESULT_RESULTING_STATE_TAG 3
216 : #define FD_EXEC_TEST_TXN_RESULT_RENT_TAG 4
217 : #define FD_EXEC_TEST_TXN_RESULT_IS_OK_TAG 5
218 : #define FD_EXEC_TEST_TXN_RESULT_STATUS_TAG 6
219 : #define FD_EXEC_TEST_TXN_RESULT_INSTRUCTION_ERROR_TAG 7
220 : #define FD_EXEC_TEST_TXN_RESULT_INSTRUCTION_ERROR_INDEX_TAG 8
221 : #define FD_EXEC_TEST_TXN_RESULT_CUSTOM_ERROR_TAG 9
222 : #define FD_EXEC_TEST_TXN_RESULT_RETURN_DATA_TAG 10
223 : #define FD_EXEC_TEST_TXN_RESULT_EXECUTED_UNITS_TAG 11
224 : #define FD_EXEC_TEST_TXN_RESULT_FEE_DETAILS_TAG 12
225 : #define FD_EXEC_TEST_TXN_FIXTURE_METADATA_TAG 1
226 : #define FD_EXEC_TEST_TXN_FIXTURE_INPUT_TAG 2
227 : #define FD_EXEC_TEST_TXN_FIXTURE_OUTPUT_TAG 3
228 :
229 : /* Struct field encoding specification for nanopb */
230 : #define FD_EXEC_TEST_MESSAGE_HEADER_FIELDLIST(X, a) \
231 : X(a, STATIC, SINGULAR, UINT32, num_required_signatures, 1) \
232 : X(a, STATIC, SINGULAR, UINT32, num_readonly_signed_accounts, 2) \
233 : X(a, STATIC, SINGULAR, UINT32, num_readonly_unsigned_accounts, 3)
234 : #define FD_EXEC_TEST_MESSAGE_HEADER_CALLBACK NULL
235 : #define FD_EXEC_TEST_MESSAGE_HEADER_DEFAULT NULL
236 :
237 : #define FD_EXEC_TEST_COMPILED_INSTRUCTION_FIELDLIST(X, a) \
238 : X(a, STATIC, SINGULAR, UINT32, program_id_index, 1) \
239 : X(a, POINTER, REPEATED, UINT32, accounts, 2) \
240 : X(a, POINTER, SINGULAR, BYTES, data, 3)
241 : #define FD_EXEC_TEST_COMPILED_INSTRUCTION_CALLBACK NULL
242 : #define FD_EXEC_TEST_COMPILED_INSTRUCTION_DEFAULT NULL
243 :
244 : #define FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_FIELDLIST(X, a) \
245 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, account_key, 1) \
246 : X(a, POINTER, REPEATED, UINT32, writable_indexes, 2) \
247 : X(a, POINTER, REPEATED, UINT32, readonly_indexes, 3)
248 : #define FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_CALLBACK NULL
249 : #define FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_DEFAULT NULL
250 :
251 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_FIELDLIST(X, a) \
252 : X(a, STATIC, SINGULAR, BOOL, is_legacy, 1) \
253 : X(a, STATIC, OPTIONAL, MESSAGE, header, 2) \
254 : X(a, POINTER, REPEATED, BYTES, account_keys, 3) \
255 : X(a, POINTER, SINGULAR, BYTES, recent_blockhash, 5) \
256 : X(a, POINTER, REPEATED, MESSAGE, instructions, 6) \
257 : X(a, POINTER, REPEATED, MESSAGE, address_table_lookups, 7)
258 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_CALLBACK NULL
259 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_DEFAULT NULL
260 : #define fd_exec_test_transaction_message_t_header_MSGTYPE fd_exec_test_message_header_t
261 : #define fd_exec_test_transaction_message_t_instructions_MSGTYPE fd_exec_test_compiled_instruction_t
262 : #define fd_exec_test_transaction_message_t_address_table_lookups_MSGTYPE fd_exec_test_message_address_table_lookup_t
263 :
264 : #define FD_EXEC_TEST_SANITIZED_TRANSACTION_FIELDLIST(X, a) \
265 : X(a, STATIC, OPTIONAL, MESSAGE, message, 1) \
266 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, message_hash, 2) \
267 : X(a, POINTER, REPEATED, BYTES, signatures, 4)
268 : #define FD_EXEC_TEST_SANITIZED_TRANSACTION_CALLBACK NULL
269 : #define FD_EXEC_TEST_SANITIZED_TRANSACTION_DEFAULT NULL
270 : #define fd_exec_test_sanitized_transaction_t_message_MSGTYPE fd_exec_test_transaction_message_t
271 :
272 : #define FD_EXEC_TEST_TXN_CONTEXT_FIELDLIST(X, a) \
273 : X(a, STATIC, OPTIONAL, MESSAGE, tx, 1) \
274 : X(a, POINTER, REPEATED, MESSAGE, account_shared_data, 2) \
275 : X(a, POINTER, REPEATED, BYTES, blockhash_queue, 3) \
276 : X(a, STATIC, OPTIONAL, MESSAGE, epoch_ctx, 4) \
277 : X(a, STATIC, OPTIONAL, MESSAGE, slot_ctx, 5)
278 : #define FD_EXEC_TEST_TXN_CONTEXT_CALLBACK NULL
279 : #define FD_EXEC_TEST_TXN_CONTEXT_DEFAULT NULL
280 : #define fd_exec_test_txn_context_t_tx_MSGTYPE fd_exec_test_sanitized_transaction_t
281 : #define fd_exec_test_txn_context_t_account_shared_data_MSGTYPE fd_exec_test_acct_state_t
282 : #define fd_exec_test_txn_context_t_epoch_ctx_MSGTYPE fd_exec_test_epoch_context_t
283 : #define fd_exec_test_txn_context_t_slot_ctx_MSGTYPE fd_exec_test_slot_context_t
284 :
285 : #define FD_EXEC_TEST_RESULTING_STATE_FIELDLIST(X, a) \
286 : X(a, POINTER, REPEATED, MESSAGE, acct_states, 1) \
287 : X(a, POINTER, REPEATED, MESSAGE, rent_debits, 2) \
288 : X(a, STATIC, SINGULAR, UINT64, transaction_rent, 3)
289 : #define FD_EXEC_TEST_RESULTING_STATE_CALLBACK NULL
290 : #define FD_EXEC_TEST_RESULTING_STATE_DEFAULT NULL
291 : #define fd_exec_test_resulting_state_t_acct_states_MSGTYPE fd_exec_test_acct_state_t
292 : #define fd_exec_test_resulting_state_t_rent_debits_MSGTYPE fd_exec_test_rent_debits_t
293 :
294 : #define FD_EXEC_TEST_RENT_DEBITS_FIELDLIST(X, a) \
295 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, pubkey, 1) \
296 : X(a, STATIC, SINGULAR, INT64, rent_collected, 2)
297 : #define FD_EXEC_TEST_RENT_DEBITS_CALLBACK NULL
298 : #define FD_EXEC_TEST_RENT_DEBITS_DEFAULT NULL
299 :
300 : #define FD_EXEC_TEST_FEE_DETAILS_FIELDLIST(X, a) \
301 : X(a, STATIC, SINGULAR, UINT64, transaction_fee, 1) \
302 : X(a, STATIC, SINGULAR, UINT64, prioritization_fee, 2)
303 : #define FD_EXEC_TEST_FEE_DETAILS_CALLBACK NULL
304 : #define FD_EXEC_TEST_FEE_DETAILS_DEFAULT NULL
305 :
306 : #define FD_EXEC_TEST_TXN_RESULT_FIELDLIST(X, a) \
307 : X(a, STATIC, SINGULAR, BOOL, executed, 1) \
308 : X(a, STATIC, SINGULAR, BOOL, sanitization_error, 2) \
309 : X(a, STATIC, OPTIONAL, MESSAGE, resulting_state, 3) \
310 : X(a, STATIC, SINGULAR, UINT64, rent, 4) \
311 : X(a, STATIC, SINGULAR, BOOL, is_ok, 5) \
312 : X(a, STATIC, SINGULAR, UINT32, status, 6) \
313 : X(a, STATIC, SINGULAR, UINT32, instruction_error, 7) \
314 : X(a, STATIC, SINGULAR, UINT32, instruction_error_index, 8) \
315 : X(a, STATIC, SINGULAR, UINT32, custom_error, 9) \
316 : X(a, POINTER, SINGULAR, BYTES, return_data, 10) \
317 : X(a, STATIC, SINGULAR, UINT64, executed_units, 11) \
318 : X(a, STATIC, OPTIONAL, MESSAGE, fee_details, 12)
319 : #define FD_EXEC_TEST_TXN_RESULT_CALLBACK NULL
320 : #define FD_EXEC_TEST_TXN_RESULT_DEFAULT NULL
321 : #define fd_exec_test_txn_result_t_resulting_state_MSGTYPE fd_exec_test_resulting_state_t
322 : #define fd_exec_test_txn_result_t_fee_details_MSGTYPE fd_exec_test_fee_details_t
323 :
324 : #define FD_EXEC_TEST_TXN_FIXTURE_FIELDLIST(X, a) \
325 : X(a, STATIC, OPTIONAL, MESSAGE, metadata, 1) \
326 : X(a, STATIC, OPTIONAL, MESSAGE, input, 2) \
327 : X(a, STATIC, OPTIONAL, MESSAGE, output, 3)
328 : #define FD_EXEC_TEST_TXN_FIXTURE_CALLBACK NULL
329 : #define FD_EXEC_TEST_TXN_FIXTURE_DEFAULT NULL
330 : #define fd_exec_test_txn_fixture_t_metadata_MSGTYPE fd_exec_test_fixture_metadata_t
331 : #define fd_exec_test_txn_fixture_t_input_MSGTYPE fd_exec_test_txn_context_t
332 : #define fd_exec_test_txn_fixture_t_output_MSGTYPE fd_exec_test_txn_result_t
333 :
334 : extern const pb_msgdesc_t fd_exec_test_message_header_t_msg;
335 : extern const pb_msgdesc_t fd_exec_test_compiled_instruction_t_msg;
336 : extern const pb_msgdesc_t fd_exec_test_message_address_table_lookup_t_msg;
337 : extern const pb_msgdesc_t fd_exec_test_transaction_message_t_msg;
338 : extern const pb_msgdesc_t fd_exec_test_sanitized_transaction_t_msg;
339 : extern const pb_msgdesc_t fd_exec_test_txn_context_t_msg;
340 : extern const pb_msgdesc_t fd_exec_test_resulting_state_t_msg;
341 : extern const pb_msgdesc_t fd_exec_test_rent_debits_t_msg;
342 : extern const pb_msgdesc_t fd_exec_test_fee_details_t_msg;
343 : extern const pb_msgdesc_t fd_exec_test_txn_result_t_msg;
344 : extern const pb_msgdesc_t fd_exec_test_txn_fixture_t_msg;
345 :
346 : /* Defines for backwards compatibility with code written before nanopb-0.4.0 */
347 : #define FD_EXEC_TEST_MESSAGE_HEADER_FIELDS &fd_exec_test_message_header_t_msg
348 : #define FD_EXEC_TEST_COMPILED_INSTRUCTION_FIELDS &fd_exec_test_compiled_instruction_t_msg
349 : #define FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_FIELDS &fd_exec_test_message_address_table_lookup_t_msg
350 : #define FD_EXEC_TEST_TRANSACTION_MESSAGE_FIELDS &fd_exec_test_transaction_message_t_msg
351 : #define FD_EXEC_TEST_SANITIZED_TRANSACTION_FIELDS &fd_exec_test_sanitized_transaction_t_msg
352 0 : #define FD_EXEC_TEST_TXN_CONTEXT_FIELDS &fd_exec_test_txn_context_t_msg
353 : #define FD_EXEC_TEST_RESULTING_STATE_FIELDS &fd_exec_test_resulting_state_t_msg
354 : #define FD_EXEC_TEST_RENT_DEBITS_FIELDS &fd_exec_test_rent_debits_t_msg
355 : #define FD_EXEC_TEST_FEE_DETAILS_FIELDS &fd_exec_test_fee_details_t_msg
356 : #define FD_EXEC_TEST_TXN_RESULT_FIELDS &fd_exec_test_txn_result_t_msg
357 : #define FD_EXEC_TEST_TXN_FIXTURE_FIELDS &fd_exec_test_txn_fixture_t_msg
358 :
359 : /* Maximum encoded size of messages (where known) */
360 : /* fd_exec_test_CompiledInstruction_size depends on runtime parameters */
361 : /* fd_exec_test_MessageAddressTableLookup_size depends on runtime parameters */
362 : /* fd_exec_test_TransactionMessage_size depends on runtime parameters */
363 : /* fd_exec_test_SanitizedTransaction_size depends on runtime parameters */
364 : /* fd_exec_test_TxnContext_size depends on runtime parameters */
365 : /* fd_exec_test_ResultingState_size depends on runtime parameters */
366 : /* fd_exec_test_TxnResult_size depends on runtime parameters */
367 : /* fd_exec_test_TxnFixture_size depends on runtime parameters */
368 : #define FD_EXEC_TEST_FEE_DETAILS_SIZE 22
369 : #define FD_EXEC_TEST_MESSAGE_HEADER_SIZE 18
370 : #define FD_EXEC_TEST_RENT_DEBITS_SIZE 45
371 : #define ORG_SOLANA_SEALEVEL_V1_TXN_PB_H_MAX_SIZE FD_EXEC_TEST_RENT_DEBITS_SIZE
372 :
373 : /* Mapping from canonical names (mangle_names or overridden package name) */
374 : #define org_solana_sealevel_v1_MessageHeader fd_exec_test_MessageHeader
375 : #define org_solana_sealevel_v1_CompiledInstruction fd_exec_test_CompiledInstruction
376 : #define org_solana_sealevel_v1_MessageAddressTableLookup fd_exec_test_MessageAddressTableLookup
377 : #define org_solana_sealevel_v1_TransactionMessage fd_exec_test_TransactionMessage
378 : #define org_solana_sealevel_v1_SanitizedTransaction fd_exec_test_SanitizedTransaction
379 : #define org_solana_sealevel_v1_TxnContext fd_exec_test_TxnContext
380 : #define org_solana_sealevel_v1_ResultingState fd_exec_test_ResultingState
381 : #define org_solana_sealevel_v1_RentDebits fd_exec_test_RentDebits
382 : #define org_solana_sealevel_v1_FeeDetails fd_exec_test_FeeDetails
383 : #define org_solana_sealevel_v1_TxnResult fd_exec_test_TxnResult
384 : #define org_solana_sealevel_v1_TxnFixture fd_exec_test_TxnFixture
385 : #define ORG_SOLANA_SEALEVEL_V1_MESSAGE_HEADER_INIT_DEFAULT FD_EXEC_TEST_MESSAGE_HEADER_INIT_DEFAULT
386 : #define ORG_SOLANA_SEALEVEL_V1_COMPILED_INSTRUCTION_INIT_DEFAULT FD_EXEC_TEST_COMPILED_INSTRUCTION_INIT_DEFAULT
387 : #define ORG_SOLANA_SEALEVEL_V1_MESSAGE_ADDRESS_TABLE_LOOKUP_INIT_DEFAULT FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_INIT_DEFAULT
388 : #define ORG_SOLANA_SEALEVEL_V1_TRANSACTION_MESSAGE_INIT_DEFAULT FD_EXEC_TEST_TRANSACTION_MESSAGE_INIT_DEFAULT
389 : #define ORG_SOLANA_SEALEVEL_V1_SANITIZED_TRANSACTION_INIT_DEFAULT FD_EXEC_TEST_SANITIZED_TRANSACTION_INIT_DEFAULT
390 : #define ORG_SOLANA_SEALEVEL_V1_TXN_CONTEXT_INIT_DEFAULT FD_EXEC_TEST_TXN_CONTEXT_INIT_DEFAULT
391 : #define ORG_SOLANA_SEALEVEL_V1_RESULTING_STATE_INIT_DEFAULT FD_EXEC_TEST_RESULTING_STATE_INIT_DEFAULT
392 : #define ORG_SOLANA_SEALEVEL_V1_RENT_DEBITS_INIT_DEFAULT FD_EXEC_TEST_RENT_DEBITS_INIT_DEFAULT
393 : #define ORG_SOLANA_SEALEVEL_V1_FEE_DETAILS_INIT_DEFAULT FD_EXEC_TEST_FEE_DETAILS_INIT_DEFAULT
394 : #define ORG_SOLANA_SEALEVEL_V1_TXN_RESULT_INIT_DEFAULT FD_EXEC_TEST_TXN_RESULT_INIT_DEFAULT
395 : #define ORG_SOLANA_SEALEVEL_V1_TXN_FIXTURE_INIT_DEFAULT FD_EXEC_TEST_TXN_FIXTURE_INIT_DEFAULT
396 : #define ORG_SOLANA_SEALEVEL_V1_MESSAGE_HEADER_INIT_ZERO FD_EXEC_TEST_MESSAGE_HEADER_INIT_ZERO
397 : #define ORG_SOLANA_SEALEVEL_V1_COMPILED_INSTRUCTION_INIT_ZERO FD_EXEC_TEST_COMPILED_INSTRUCTION_INIT_ZERO
398 : #define ORG_SOLANA_SEALEVEL_V1_MESSAGE_ADDRESS_TABLE_LOOKUP_INIT_ZERO FD_EXEC_TEST_MESSAGE_ADDRESS_TABLE_LOOKUP_INIT_ZERO
399 : #define ORG_SOLANA_SEALEVEL_V1_TRANSACTION_MESSAGE_INIT_ZERO FD_EXEC_TEST_TRANSACTION_MESSAGE_INIT_ZERO
400 : #define ORG_SOLANA_SEALEVEL_V1_SANITIZED_TRANSACTION_INIT_ZERO FD_EXEC_TEST_SANITIZED_TRANSACTION_INIT_ZERO
401 : #define ORG_SOLANA_SEALEVEL_V1_TXN_CONTEXT_INIT_ZERO FD_EXEC_TEST_TXN_CONTEXT_INIT_ZERO
402 : #define ORG_SOLANA_SEALEVEL_V1_RESULTING_STATE_INIT_ZERO FD_EXEC_TEST_RESULTING_STATE_INIT_ZERO
403 : #define ORG_SOLANA_SEALEVEL_V1_RENT_DEBITS_INIT_ZERO FD_EXEC_TEST_RENT_DEBITS_INIT_ZERO
404 : #define ORG_SOLANA_SEALEVEL_V1_FEE_DETAILS_INIT_ZERO FD_EXEC_TEST_FEE_DETAILS_INIT_ZERO
405 : #define ORG_SOLANA_SEALEVEL_V1_TXN_RESULT_INIT_ZERO FD_EXEC_TEST_TXN_RESULT_INIT_ZERO
406 : #define ORG_SOLANA_SEALEVEL_V1_TXN_FIXTURE_INIT_ZERO FD_EXEC_TEST_TXN_FIXTURE_INIT_ZERO
407 :
408 : #ifdef __cplusplus
409 : } /* extern "C" */
410 : #endif
411 :
412 : #endif
|