Skip to content

Commit

Permalink
featurize bpf function hash collision fix
Browse files Browse the repository at this point in the history
  • Loading branch information
jackcmay committed Apr 12, 2022
1 parent 4ac7309 commit 06d1871
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 2 deletions.
7 changes: 5 additions & 2 deletions programs/bpf_loader/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,8 @@ use {
feature_set::{
cap_accounts_data_len, disable_bpf_deprecated_load_instructions,
disable_bpf_unresolved_symbols_at_runtime, disable_deprecated_loader,
do_support_realloc, reduce_required_deploy_balance, requestable_heap_size,
do_support_realloc, error_on_syscall_bpf_function_hash_collisions,
reduce_required_deploy_balance, requestable_heap_size,
},
instruction::{AccountMeta, InstructionError},
keyed_account::keyed_account_at_index,
Expand Down Expand Up @@ -142,7 +143,9 @@ pub fn create_executor(
&& invoke_context
.feature_set
.is_active(&disable_bpf_deprecated_load_instructions::id()),
syscall_bpf_function_hash_collision: false,
syscall_bpf_function_hash_collision: invoke_context
.feature_set
.is_active(&error_on_syscall_bpf_function_hash_collisions::id()),
reject_callx_r10: false,
// Warning, do not use `Config::default()` so that configuration here is explicit.
};
Expand Down
5 changes: 5 additions & 0 deletions sdk/src/feature_set.rs
Original file line number Diff line number Diff line change
Expand Up @@ -335,6 +335,10 @@ pub mod add_get_minimum_delegation_instruction_to_stake_program {
solana_sdk::declare_id!("St8k9dVXP97xT6faW24YmRSYConLbhsMJA4TJTBLmMT");
}

pub mod error_on_syscall_bpf_function_hash_collisions {
solana_sdk::declare_id!("8199Q2gMD2kwgfopK5qqVWuDbegLgpuFUFHCcUJQDN8b");
}

lazy_static! {
/// Map of feature identifiers to user-visible description
pub static ref FEATURE_NAMES: HashMap<Pubkey, &'static str> = [
Expand Down Expand Up @@ -413,6 +417,7 @@ lazy_static! {
(check_slice_translation_size::id(), "check size when translating slices"),
(stake_split_uses_rent_sysvar::id(), "stake split instruction uses rent sysvar"),
(add_get_minimum_delegation_instruction_to_stake_program::id(), "add GetMinimumDelegation instruction to stake program"),
(error_on_syscall_bpf_function_hash_collisions::id(), "error on bpf function hash collisions"),
/*************** ADD NEW FEATURES HERE ***************/
]
.iter()
Expand Down

0 comments on commit 06d1871

Please sign in to comment.