Line data Source code
1 : /* Automatically generated by fd_pb_gen.py. Do not edit. */
2 :
3 : #include "vm.pb.h"
4 :
5 : static int
6 : fd_exec_test_input_data_region_encode( fd_pb_encoder_t * enc,
7 0 : void const * msg_ ) {
8 0 : fd_exec_test_input_data_region_t const * msg = msg_;
9 0 : if( msg->offset && FD_UNLIKELY( !fd_pb_push_uint64( enc, 1U, msg->offset ) ) ) return 0;
10 0 : if( msg->is_writable && FD_UNLIKELY( !fd_pb_push_bool( enc, 3U, msg->is_writable ) ) ) return 0;
11 0 : if( msg->content_hash && FD_UNLIKELY( !fd_pb_push_fixed64( enc, 4U, msg->content_hash ) ) ) return 0;
12 0 : return 1;
13 0 : }
14 :
15 : static int
16 : fd_exec_test_input_data_region_decode( fd_pb_inbuf_t * in,
17 : void * msg_,
18 0 : fd_spad_t * spad FD_PARAM_UNUSED ) {
19 0 : fd_exec_test_input_data_region_t * msg = msg_;
20 0 : while( fd_pb_inbuf_sz( in ) ) {
21 0 : fd_pb_tlv_t tlv[1];
22 0 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
23 0 : switch( tlv->field_id ) {
24 0 : case 1:
25 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->offset ) ) ) return 0;
26 0 : break;
27 0 : case 4:
28 0 : if( FD_UNLIKELY( !fd_pb_dec_fixed64( tlv, &msg->content_hash ) ) ) return 0;
29 0 : break;
30 0 : case 3:
31 0 : if( FD_UNLIKELY( !fd_pb_dec_bool( tlv, &msg->is_writable ) ) ) return 0;
32 0 : break;
33 0 : default:
34 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
35 0 : break;
36 0 : }
37 0 : }
38 0 : return 1;
39 0 : }
40 :
41 : fd_pb_msgdesc_t const fd_exec_test_input_data_region_desc = {
42 : .encode = fd_exec_test_input_data_region_encode,
43 : .decode = fd_exec_test_input_data_region_decode
44 : };
45 :
46 : static int
47 : fd_exec_test_return_data_encode( fd_pb_encoder_t * enc,
48 0 : void const * msg_ ) {
49 0 : fd_exec_test_return_data_t const * msg = msg_;
50 0 : if( msg->program_id && msg->program_id->size && FD_UNLIKELY( !fd_pb_push_bytes( enc, 1U, msg->program_id->bytes, msg->program_id->size ) ) ) return 0;
51 0 : if( msg->data && msg->data->size && FD_UNLIKELY( !fd_pb_push_bytes( enc, 2U, msg->data->bytes, msg->data->size ) ) ) return 0;
52 0 : return 1;
53 0 : }
54 :
55 : static int
56 : fd_exec_test_return_data_decode( fd_pb_inbuf_t * in,
57 : void * msg_,
58 0 : fd_spad_t * spad ) {
59 0 : fd_exec_test_return_data_t * msg = msg_;
60 0 : while( fd_pb_inbuf_sz( in ) ) {
61 0 : fd_pb_tlv_t tlv[1];
62 0 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
63 0 : switch( tlv->field_id ) {
64 0 : case 1:
65 0 : if( FD_UNLIKELY( !fd_pb_dec_bytes_ptr( in, tlv, spad, &msg->program_id ) ) ) return 0;
66 0 : break;
67 0 : case 2:
68 0 : if( FD_UNLIKELY( !fd_pb_dec_bytes_ptr( in, tlv, spad, &msg->data ) ) ) return 0;
69 0 : break;
70 0 : default:
71 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
72 0 : break;
73 0 : }
74 0 : }
75 0 : return 1;
76 0 : }
77 :
78 : fd_pb_msgdesc_t const fd_exec_test_return_data_desc = {
79 : .encode = fd_exec_test_return_data_encode,
80 : .decode = fd_exec_test_return_data_decode
81 : };
82 :
83 : static int
84 : fd_exec_test_vm_context_encode( fd_pb_encoder_t * enc,
85 0 : void const * msg_ ) {
86 0 : fd_exec_test_vm_context_t const * msg = msg_;
87 0 : if( msg->heap_max && FD_UNLIKELY( !fd_pb_push_uint64( enc, 1U, msg->heap_max ) ) ) return 0;
88 0 : if( msg->rodata && msg->rodata->size && FD_UNLIKELY( !fd_pb_push_bytes( enc, 2U, msg->rodata->bytes, msg->rodata->size ) ) ) return 0;
89 0 : if( msg->r0 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 6U, msg->r0 ) ) ) return 0;
90 0 : if( msg->r1 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 7U, msg->r1 ) ) ) return 0;
91 0 : if( msg->r2 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 8U, msg->r2 ) ) ) return 0;
92 0 : if( msg->r3 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 9U, msg->r3 ) ) ) return 0;
93 0 : if( msg->r4 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 10U, msg->r4 ) ) ) return 0;
94 0 : if( msg->r5 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 11U, msg->r5 ) ) ) return 0;
95 0 : if( msg->r6 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 12U, msg->r6 ) ) ) return 0;
96 0 : if( msg->r7 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 13U, msg->r7 ) ) ) return 0;
97 0 : if( msg->r8 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 14U, msg->r8 ) ) ) return 0;
98 0 : if( msg->r9 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 15U, msg->r9 ) ) ) return 0;
99 0 : if( msg->r10 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 16U, msg->r10 ) ) ) return 0;
100 0 : if( msg->r11 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 17U, msg->r11 ) ) ) return 0;
101 0 : if( msg->entry_pc && FD_UNLIKELY( !fd_pb_push_uint64( enc, 20U, msg->entry_pc ) ) ) return 0;
102 0 : if( msg->call_whitelist && msg->call_whitelist->size && FD_UNLIKELY( !fd_pb_push_bytes( enc, 21U, msg->call_whitelist->bytes, msg->call_whitelist->size ) ) ) return 0;
103 0 : if( msg->has_return_data && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 23U, &fd_exec_test_return_data_desc, &msg->return_data ) ) ) return 0;
104 0 : if( msg->sbpf_version && FD_UNLIKELY( !fd_pb_push_uint32( enc, 24U, msg->sbpf_version ) ) ) return 0;
105 0 : return 1;
106 0 : }
107 :
108 : static int
109 : fd_exec_test_vm_context_decode( fd_pb_inbuf_t * in,
110 : void * msg_,
111 0 : fd_spad_t * spad ) {
112 0 : fd_exec_test_vm_context_t * msg = msg_;
113 0 : while( fd_pb_inbuf_sz( in ) ) {
114 0 : fd_pb_tlv_t tlv[1];
115 0 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
116 0 : switch( tlv->field_id ) {
117 0 : case 1:
118 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->heap_max ) ) ) return 0;
119 0 : break;
120 0 : case 2:
121 0 : if( FD_UNLIKELY( !fd_pb_dec_bytes_ptr( in, tlv, spad, &msg->rodata ) ) ) return 0;
122 0 : break;
123 0 : case 6:
124 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r0 ) ) ) return 0;
125 0 : break;
126 0 : case 7:
127 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r1 ) ) ) return 0;
128 0 : break;
129 0 : case 8:
130 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r2 ) ) ) return 0;
131 0 : break;
132 0 : case 9:
133 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r3 ) ) ) return 0;
134 0 : break;
135 0 : case 10:
136 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r4 ) ) ) return 0;
137 0 : break;
138 0 : case 11:
139 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r5 ) ) ) return 0;
140 0 : break;
141 0 : case 12:
142 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r6 ) ) ) return 0;
143 0 : break;
144 0 : case 13:
145 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r7 ) ) ) return 0;
146 0 : break;
147 0 : case 14:
148 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r8 ) ) ) return 0;
149 0 : break;
150 0 : case 15:
151 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r9 ) ) ) return 0;
152 0 : break;
153 0 : case 16:
154 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r10 ) ) ) return 0;
155 0 : break;
156 0 : case 17:
157 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r11 ) ) ) return 0;
158 0 : break;
159 0 : case 20:
160 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->entry_pc ) ) ) return 0;
161 0 : break;
162 0 : case 21:
163 0 : if( FD_UNLIKELY( !fd_pb_dec_bytes_ptr( in, tlv, spad, &msg->call_whitelist ) ) ) return 0;
164 0 : break;
165 0 : case 23:
166 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_return_data_desc, &msg->return_data ) ) ) return 0;
167 0 : msg->has_return_data = 1;
168 0 : break;
169 0 : case 24:
170 0 : if( FD_UNLIKELY( !fd_pb_dec_uint32( tlv, &msg->sbpf_version ) ) ) return 0;
171 0 : break;
172 0 : default:
173 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
174 0 : break;
175 0 : }
176 0 : }
177 0 : return 1;
178 0 : }
179 :
180 : fd_pb_msgdesc_t const fd_exec_test_vm_context_desc = {
181 : .encode = fd_exec_test_vm_context_encode,
182 : .decode = fd_exec_test_vm_context_decode
183 : };
184 :
185 : static int
186 : fd_exec_test_syscall_invocation_encode( fd_pb_encoder_t * enc,
187 0 : void const * msg_ ) {
188 0 : fd_exec_test_syscall_invocation_t const * msg = msg_;
189 0 : if( FD_UNLIKELY( msg->function_name.size>1400U ) ) return 0;
190 0 : if( msg->function_name.size && FD_UNLIKELY( !fd_pb_push_bytes( enc, 1U, msg->function_name.bytes, msg->function_name.size ) ) ) return 0;
191 0 : if( msg->heap_prefix && msg->heap_prefix->size && FD_UNLIKELY( !fd_pb_push_bytes( enc, 2U, msg->heap_prefix->bytes, msg->heap_prefix->size ) ) ) return 0;
192 0 : if( msg->stack_prefix && msg->stack_prefix->size && FD_UNLIKELY( !fd_pb_push_bytes( enc, 3U, msg->stack_prefix->bytes, msg->stack_prefix->size ) ) ) return 0;
193 0 : return 1;
194 0 : }
195 :
196 : static int
197 : fd_exec_test_syscall_invocation_decode( fd_pb_inbuf_t * in,
198 : void * msg_,
199 0 : fd_spad_t * spad ) {
200 0 : fd_exec_test_syscall_invocation_t * msg = msg_;
201 0 : while( fd_pb_inbuf_sz( in ) ) {
202 0 : fd_pb_tlv_t tlv[1];
203 0 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
204 0 : switch( tlv->field_id ) {
205 0 : case 1:
206 0 : if( FD_UNLIKELY( !fd_pb_dec_bytes_static( in, tlv, msg->function_name.bytes, &msg->function_name.size, 1400UL ) ) ) return 0;
207 0 : break;
208 0 : case 2:
209 0 : if( FD_UNLIKELY( !fd_pb_dec_bytes_ptr( in, tlv, spad, &msg->heap_prefix ) ) ) return 0;
210 0 : break;
211 0 : case 3:
212 0 : if( FD_UNLIKELY( !fd_pb_dec_bytes_ptr( in, tlv, spad, &msg->stack_prefix ) ) ) return 0;
213 0 : break;
214 0 : default:
215 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
216 0 : break;
217 0 : }
218 0 : }
219 0 : return 1;
220 0 : }
221 :
222 : fd_pb_msgdesc_t const fd_exec_test_syscall_invocation_desc = {
223 : .encode = fd_exec_test_syscall_invocation_encode,
224 : .decode = fd_exec_test_syscall_invocation_decode
225 : };
226 :
227 : static int
228 : fd_exec_test_syscall_context_encode( fd_pb_encoder_t * enc,
229 0 : void const * msg_ ) {
230 0 : fd_exec_test_syscall_context_t const * msg = msg_;
231 0 : if( msg->has_vm_ctx && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 1U, &fd_exec_test_vm_context_desc, &msg->vm_ctx ) ) ) return 0;
232 0 : if( msg->has_instr_ctx && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 2U, &fd_exec_test_instr_context_desc, &msg->instr_ctx ) ) ) return 0;
233 0 : if( msg->has_syscall_invocation && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 3U, &fd_exec_test_syscall_invocation_desc, &msg->syscall_invocation ) ) ) return 0;
234 0 : return 1;
235 0 : }
236 :
237 : static int
238 : fd_exec_test_syscall_context_decode( fd_pb_inbuf_t * in,
239 : void * msg_,
240 0 : fd_spad_t * spad ) {
241 0 : fd_exec_test_syscall_context_t * msg = msg_;
242 0 : while( fd_pb_inbuf_sz( in ) ) {
243 0 : fd_pb_tlv_t tlv[1];
244 0 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
245 0 : switch( tlv->field_id ) {
246 0 : case 1:
247 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_vm_context_desc, &msg->vm_ctx ) ) ) return 0;
248 0 : msg->has_vm_ctx = 1;
249 0 : break;
250 0 : case 2:
251 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_instr_context_desc, &msg->instr_ctx ) ) ) return 0;
252 0 : msg->has_instr_ctx = 1;
253 0 : break;
254 0 : case 3:
255 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_syscall_invocation_desc, &msg->syscall_invocation ) ) ) return 0;
256 0 : msg->has_syscall_invocation = 1;
257 0 : break;
258 0 : default:
259 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
260 0 : break;
261 0 : }
262 0 : }
263 0 : return 1;
264 0 : }
265 :
266 : fd_pb_msgdesc_t const fd_exec_test_syscall_context_desc = {
267 : .encode = fd_exec_test_syscall_context_encode,
268 : .decode = fd_exec_test_syscall_context_decode
269 : };
270 :
271 : static int
272 : fd_exec_test_syscall_effects_encode( fd_pb_encoder_t * enc,
273 0 : void const * msg_ ) {
274 0 : fd_exec_test_syscall_effects_t const * msg = msg_;
275 0 : if( msg->error && FD_UNLIKELY( !fd_pb_push_int64( enc, 1U, msg->error ) ) ) return 0;
276 0 : if( msg->r0 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 2U, msg->r0 ) ) ) return 0;
277 0 : if( msg->cu_avail && FD_UNLIKELY( !fd_pb_push_uint64( enc, 3U, msg->cu_avail ) ) ) return 0;
278 0 : if( msg->frame_count && FD_UNLIKELY( !fd_pb_push_uint64( enc, 7U, msg->frame_count ) ) ) return 0;
279 0 : if( msg->pc && FD_UNLIKELY( !fd_pb_push_uint64( enc, 10U, msg->pc ) ) ) return 0;
280 0 : for( ulong i=0UL; i<msg->input_data_regions_count; i++ ) {
281 0 : if( FD_UNLIKELY( !fd_pb_enc_submsg( enc, 11U, &fd_exec_test_input_data_region_desc, &msg->input_data_regions[ i ] ) ) ) return 0;
282 0 : }
283 0 : if( msg->error_kind && FD_UNLIKELY( !fd_pb_push_int64( enc, 12U, (long)msg->error_kind ) ) ) return 0;
284 0 : if( msg->heap_hash && FD_UNLIKELY( !fd_pb_push_fixed64( enc, 13U, msg->heap_hash ) ) ) return 0;
285 0 : if( msg->stack_hash && FD_UNLIKELY( !fd_pb_push_fixed64( enc, 14U, msg->stack_hash ) ) ) return 0;
286 0 : if( msg->rodata_hash && FD_UNLIKELY( !fd_pb_push_fixed64( enc, 15U, msg->rodata_hash ) ) ) return 0;
287 0 : if( msg->r1 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 107U, msg->r1 ) ) ) return 0;
288 0 : if( msg->r2 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 108U, msg->r2 ) ) ) return 0;
289 0 : if( msg->r3 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 109U, msg->r3 ) ) ) return 0;
290 0 : if( msg->r4 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 110U, msg->r4 ) ) ) return 0;
291 0 : if( msg->r5 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 111U, msg->r5 ) ) ) return 0;
292 0 : if( msg->r6 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 112U, msg->r6 ) ) ) return 0;
293 0 : if( msg->r7 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 113U, msg->r7 ) ) ) return 0;
294 0 : if( msg->r8 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 114U, msg->r8 ) ) ) return 0;
295 0 : if( msg->r9 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 115U, msg->r9 ) ) ) return 0;
296 0 : if( msg->r10 && FD_UNLIKELY( !fd_pb_push_uint64( enc, 116U, msg->r10 ) ) ) return 0;
297 0 : return 1;
298 0 : }
299 :
300 : static int
301 : fd_exec_test_syscall_effects_decode( fd_pb_inbuf_t * in,
302 : void * msg_,
303 0 : fd_spad_t * spad ) {
304 0 : fd_exec_test_syscall_effects_t * msg = msg_;
305 0 : while( fd_pb_inbuf_sz( in ) ) {
306 0 : fd_pb_tlv_t tlv[1];
307 0 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
308 0 : switch( tlv->field_id ) {
309 0 : case 1:
310 0 : if( FD_UNLIKELY( !fd_pb_dec_int64( tlv, &msg->error ) ) ) return 0;
311 0 : break;
312 0 : case 12:
313 0 : if( FD_UNLIKELY( !fd_pb_dec_int32( tlv, (int *)&msg->error_kind ) ) ) return 0;
314 0 : break;
315 0 : case 2:
316 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r0 ) ) ) return 0;
317 0 : break;
318 0 : case 3:
319 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->cu_avail ) ) ) return 0;
320 0 : break;
321 0 : case 13:
322 0 : if( FD_UNLIKELY( !fd_pb_dec_fixed64( tlv, &msg->heap_hash ) ) ) return 0;
323 0 : break;
324 0 : case 14:
325 0 : if( FD_UNLIKELY( !fd_pb_dec_fixed64( tlv, &msg->stack_hash ) ) ) return 0;
326 0 : break;
327 0 : case 11:
328 0 : {
329 0 : void * ele = fd_pb_dec_grow( spad, &msg->input_data_regions, &msg->input_data_regions_count, alignof(fd_exec_test_input_data_region_t), sizeof(fd_exec_test_input_data_region_t) );
330 0 : if( FD_UNLIKELY( !ele ) ) return 0;
331 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_input_data_region_desc, ele ) ) ) return 0;
332 0 : }
333 0 : break;
334 0 : case 7:
335 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->frame_count ) ) ) return 0;
336 0 : break;
337 0 : case 15:
338 0 : if( FD_UNLIKELY( !fd_pb_dec_fixed64( tlv, &msg->rodata_hash ) ) ) return 0;
339 0 : break;
340 0 : case 10:
341 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->pc ) ) ) return 0;
342 0 : break;
343 0 : case 107:
344 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r1 ) ) ) return 0;
345 0 : break;
346 0 : case 108:
347 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r2 ) ) ) return 0;
348 0 : break;
349 0 : case 109:
350 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r3 ) ) ) return 0;
351 0 : break;
352 0 : case 110:
353 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r4 ) ) ) return 0;
354 0 : break;
355 0 : case 111:
356 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r5 ) ) ) return 0;
357 0 : break;
358 0 : case 112:
359 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r6 ) ) ) return 0;
360 0 : break;
361 0 : case 113:
362 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r7 ) ) ) return 0;
363 0 : break;
364 0 : case 114:
365 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r8 ) ) ) return 0;
366 0 : break;
367 0 : case 115:
368 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r9 ) ) ) return 0;
369 0 : break;
370 0 : case 116:
371 0 : if( FD_UNLIKELY( !fd_pb_dec_uint64( tlv, &msg->r10 ) ) ) return 0;
372 0 : break;
373 0 : default:
374 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
375 0 : break;
376 0 : }
377 0 : }
378 0 : return 1;
379 0 : }
380 :
381 : fd_pb_msgdesc_t const fd_exec_test_syscall_effects_desc = {
382 : .encode = fd_exec_test_syscall_effects_encode,
383 : .decode = fd_exec_test_syscall_effects_decode
384 : };
385 :
386 : static int
387 : fd_exec_test_syscall_fixture_encode( fd_pb_encoder_t * enc,
388 0 : void const * msg_ ) {
389 0 : fd_exec_test_syscall_fixture_t const * msg = msg_;
390 0 : if( msg->has_metadata && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 1U, &fd_exec_test_fixture_metadata_desc, &msg->metadata ) ) ) return 0;
391 0 : if( msg->has_input && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 2U, &fd_exec_test_syscall_context_desc, &msg->input ) ) ) return 0;
392 0 : if( msg->has_output && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 3U, &fd_exec_test_syscall_effects_desc, &msg->output ) ) ) return 0;
393 0 : return 1;
394 0 : }
395 :
396 : static int
397 : fd_exec_test_syscall_fixture_decode( fd_pb_inbuf_t * in,
398 : void * msg_,
399 0 : fd_spad_t * spad ) {
400 0 : fd_exec_test_syscall_fixture_t * msg = msg_;
401 0 : while( fd_pb_inbuf_sz( in ) ) {
402 0 : fd_pb_tlv_t tlv[1];
403 0 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
404 0 : switch( tlv->field_id ) {
405 0 : case 1:
406 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_fixture_metadata_desc, &msg->metadata ) ) ) return 0;
407 0 : msg->has_metadata = 1;
408 0 : break;
409 0 : case 2:
410 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_syscall_context_desc, &msg->input ) ) ) return 0;
411 0 : msg->has_input = 1;
412 0 : break;
413 0 : case 3:
414 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_syscall_effects_desc, &msg->output ) ) ) return 0;
415 0 : msg->has_output = 1;
416 0 : break;
417 0 : default:
418 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
419 0 : break;
420 0 : }
421 0 : }
422 0 : return 1;
423 0 : }
424 :
425 : fd_pb_msgdesc_t const fd_exec_test_syscall_fixture_desc = {
426 : .encode = fd_exec_test_syscall_fixture_encode,
427 : .decode = fd_exec_test_syscall_fixture_decode
428 : };
429 :
430 : static int
431 : fd_exec_test_full_vm_context_encode( fd_pb_encoder_t * enc,
432 0 : void const * msg_ ) {
433 0 : fd_exec_test_full_vm_context_t const * msg = msg_;
434 0 : if( msg->has_vm_ctx && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 1U, &fd_exec_test_vm_context_desc, &msg->vm_ctx ) ) ) return 0;
435 0 : if( msg->has_features && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 3U, &fd_exec_test_feature_set_desc, &msg->features ) ) ) return 0;
436 0 : return 1;
437 0 : }
438 :
439 : static int
440 : fd_exec_test_full_vm_context_decode( fd_pb_inbuf_t * in,
441 : void * msg_,
442 0 : fd_spad_t * spad ) {
443 0 : fd_exec_test_full_vm_context_t * msg = msg_;
444 0 : while( fd_pb_inbuf_sz( in ) ) {
445 0 : fd_pb_tlv_t tlv[1];
446 0 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
447 0 : switch( tlv->field_id ) {
448 0 : case 1:
449 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_vm_context_desc, &msg->vm_ctx ) ) ) return 0;
450 0 : msg->has_vm_ctx = 1;
451 0 : break;
452 0 : case 3:
453 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_feature_set_desc, &msg->features ) ) ) return 0;
454 0 : msg->has_features = 1;
455 0 : break;
456 0 : default:
457 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
458 0 : break;
459 0 : }
460 0 : }
461 0 : return 1;
462 0 : }
463 :
464 : fd_pb_msgdesc_t const fd_exec_test_full_vm_context_desc = {
465 : .encode = fd_exec_test_full_vm_context_encode,
466 : .decode = fd_exec_test_full_vm_context_decode
467 : };
468 :
469 : static int
470 : fd_exec_test_validate_vm_effects_encode( fd_pb_encoder_t * enc,
471 0 : void const * msg_ ) {
472 0 : fd_exec_test_validate_vm_effects_t const * msg = msg_;
473 0 : if( msg->result && FD_UNLIKELY( !fd_pb_push_int32( enc, 1U, msg->result ) ) ) return 0;
474 0 : if( msg->success && FD_UNLIKELY( !fd_pb_push_bool( enc, 2U, msg->success ) ) ) return 0;
475 0 : return 1;
476 0 : }
477 :
478 : static int
479 : fd_exec_test_validate_vm_effects_decode( fd_pb_inbuf_t * in,
480 : void * msg_,
481 0 : fd_spad_t * spad FD_PARAM_UNUSED ) {
482 0 : fd_exec_test_validate_vm_effects_t * msg = msg_;
483 0 : while( fd_pb_inbuf_sz( in ) ) {
484 0 : fd_pb_tlv_t tlv[1];
485 0 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
486 0 : switch( tlv->field_id ) {
487 0 : case 1:
488 0 : if( FD_UNLIKELY( !fd_pb_dec_int32( tlv, &msg->result ) ) ) return 0;
489 0 : break;
490 0 : case 2:
491 0 : if( FD_UNLIKELY( !fd_pb_dec_bool( tlv, &msg->success ) ) ) return 0;
492 0 : break;
493 0 : default:
494 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
495 0 : break;
496 0 : }
497 0 : }
498 0 : return 1;
499 0 : }
500 :
501 : fd_pb_msgdesc_t const fd_exec_test_validate_vm_effects_desc = {
502 : .encode = fd_exec_test_validate_vm_effects_encode,
503 : .decode = fd_exec_test_validate_vm_effects_decode
504 : };
505 :
506 : static int
507 : fd_exec_test_validate_vm_fixture_encode( fd_pb_encoder_t * enc,
508 0 : void const * msg_ ) {
509 0 : fd_exec_test_validate_vm_fixture_t const * msg = msg_;
510 0 : if( msg->has_metadata && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 1U, &fd_exec_test_fixture_metadata_desc, &msg->metadata ) ) ) return 0;
511 0 : if( msg->has_input && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 2U, &fd_exec_test_full_vm_context_desc, &msg->input ) ) ) return 0;
512 0 : if( msg->has_output && FD_UNLIKELY( !fd_pb_enc_submsg( enc, 3U, &fd_exec_test_validate_vm_effects_desc, &msg->output ) ) ) return 0;
513 0 : return 1;
514 0 : }
515 :
516 : static int
517 : fd_exec_test_validate_vm_fixture_decode( fd_pb_inbuf_t * in,
518 : void * msg_,
519 0 : fd_spad_t * spad ) {
520 0 : fd_exec_test_validate_vm_fixture_t * msg = msg_;
521 0 : while( fd_pb_inbuf_sz( in ) ) {
522 0 : fd_pb_tlv_t tlv[1];
523 0 : if( FD_UNLIKELY( !fd_pb_dec_tlv( in, tlv ) ) ) return 0;
524 0 : switch( tlv->field_id ) {
525 0 : case 1:
526 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_fixture_metadata_desc, &msg->metadata ) ) ) return 0;
527 0 : msg->has_metadata = 1;
528 0 : break;
529 0 : case 2:
530 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_full_vm_context_desc, &msg->input ) ) ) return 0;
531 0 : msg->has_input = 1;
532 0 : break;
533 0 : case 3:
534 0 : if( FD_UNLIKELY( !fd_pb_dec_submsg( in, tlv, spad, &fd_exec_test_validate_vm_effects_desc, &msg->output ) ) ) return 0;
535 0 : msg->has_output = 1;
536 0 : break;
537 0 : default:
538 0 : if( FD_UNLIKELY( !fd_pb_dec_skip( in, tlv ) ) ) return 0;
539 0 : break;
540 0 : }
541 0 : }
542 0 : return 1;
543 0 : }
544 :
545 : fd_pb_msgdesc_t const fd_exec_test_validate_vm_fixture_desc = {
546 : .encode = fd_exec_test_validate_vm_fixture_encode,
547 : .decode = fd_exec_test_validate_vm_fixture_decode
548 : };
549 :
|