atlas_svm_feature_set/
lib.rs1#[derive(Clone, Copy, Default)]
2pub struct SVMFeatureSet {
3 pub lift_cpi_caller_restriction: bool,
4 pub move_precompile_verification_to_svm: bool,
5 pub remove_accounts_executable_flag_checks: bool,
6 pub bpf_account_data_direct_mapping: bool,
7 pub enable_bpf_loader_set_authority_checked_ix: bool,
8 pub enable_loader_v4: bool,
9 pub deplete_cu_meter_on_vm_failure: bool,
10 pub abort_on_invalid_curve: bool,
11 pub blake3_syscall_enabled: bool,
12 pub curve25519_syscall_enabled: bool,
13 pub disable_deploy_of_alloc_free_syscall: bool,
14 pub disable_fees_sysvar: bool,
15 pub disable_sbpf_v0_execution: bool,
16 pub enable_alt_bn128_compression_syscall: bool,
17 pub enable_alt_bn128_syscall: bool,
18 pub enable_big_mod_exp_syscall: bool,
19 pub enable_get_epoch_stake_syscall: bool,
20 pub enable_poseidon_syscall: bool,
21 pub enable_sbpf_v1_deployment_and_execution: bool,
22 pub enable_sbpf_v2_deployment_and_execution: bool,
23 pub enable_sbpf_v3_deployment_and_execution: bool,
24 pub get_sysvar_syscall_enabled: bool,
25 pub last_restart_slot_sysvar: bool,
26 pub reenable_sbpf_v0_execution: bool,
27 pub remaining_compute_units_syscall_enabled: bool,
28 pub remove_bpf_loader_incorrect_program_id: bool,
29 pub move_stake_and_move_lamports_ixs: bool,
30 pub stake_raise_minimum_delegation_to_1_sol: bool,
31 pub deprecate_legacy_vote_ixs: bool,
32 pub mask_out_rent_epoch_in_vm_serialization: bool,
33 pub simplify_alt_bn128_syscall_error_codes: bool,
34 pub fix_alt_bn128_multiplication_input_length: bool,
35 pub loosen_cpi_size_restriction: bool,
36 pub increase_tx_account_lock_limit: bool,
37 pub disable_rent_fees_collection: bool,
38 pub enable_extend_program_checked: bool,
39 pub formalize_loaded_transaction_data_size: bool,
40 pub disable_zk_elgamal_proof_program: bool,
41 pub reenable_zk_elgamal_proof_program: bool,
42}
43
44impl SVMFeatureSet {
45 pub fn all_enabled() -> Self {
46 Self {
47 lift_cpi_caller_restriction: true,
48 move_precompile_verification_to_svm: true,
49 remove_accounts_executable_flag_checks: true,
50 bpf_account_data_direct_mapping: true,
51 enable_bpf_loader_set_authority_checked_ix: true,
52 enable_loader_v4: true,
53 deplete_cu_meter_on_vm_failure: true,
54 abort_on_invalid_curve: true,
55 blake3_syscall_enabled: true,
56 curve25519_syscall_enabled: true,
57 disable_deploy_of_alloc_free_syscall: true,
58 disable_fees_sysvar: true,
59 disable_sbpf_v0_execution: true,
60 enable_alt_bn128_compression_syscall: true,
61 enable_alt_bn128_syscall: true,
62 enable_big_mod_exp_syscall: true,
63 enable_get_epoch_stake_syscall: true,
64 enable_poseidon_syscall: true,
65 enable_sbpf_v1_deployment_and_execution: true,
66 enable_sbpf_v2_deployment_and_execution: true,
67 enable_sbpf_v3_deployment_and_execution: true,
68 get_sysvar_syscall_enabled: true,
69 last_restart_slot_sysvar: true,
70 reenable_sbpf_v0_execution: true,
71 remaining_compute_units_syscall_enabled: true,
72 remove_bpf_loader_incorrect_program_id: true,
73 move_stake_and_move_lamports_ixs: true,
74 stake_raise_minimum_delegation_to_1_sol: true,
75 deprecate_legacy_vote_ixs: true,
76 mask_out_rent_epoch_in_vm_serialization: true,
77 simplify_alt_bn128_syscall_error_codes: true,
78 fix_alt_bn128_multiplication_input_length: true,
79 loosen_cpi_size_restriction: true,
80 increase_tx_account_lock_limit: true,
81 disable_rent_fees_collection: true,
82 enable_extend_program_checked: true,
83 formalize_loaded_transaction_data_size: true,
84 disable_zk_elgamal_proof_program: true,
85 reenable_zk_elgamal_proof_program: true,
86 }
87 }
88}