Bumps solana_rbpf to version v0.2.22 (#22923)

* Bumps solana_rbpf to v0.2.22

* Adjusts vm::Config and feature gates.
This commit is contained in:
Alexander Meißner
2022-02-04 21:17:49 +01:00
committed by GitHub
parent 27aaf9df85
commit 96c88d1a5e
10 changed files with 28 additions and 59 deletions

View File

@ -3766,9 +3766,9 @@ dependencies = [
[[package]]
name = "solana_rbpf"
version = "0.2.21"
version = "0.2.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8fb565d026461ba89d1d92cc36cf0882fba44076559c3bbed1e8a9888112b3d7"
checksum = "425e41726409233aa2b4e5063a94a8bc5861e6d59cf700cfd9dd142084437c6f"
dependencies = [
"byteorder 1.4.3",
"combine",

View File

@ -33,7 +33,7 @@ solana-bpf-rust-realloc-invoke = { path = "rust/realloc_invoke", version = "=1.1
solana-cli-output = { path = "../../cli-output", version = "=1.10.0" }
solana-logger = { path = "../../logger", version = "=1.10.0" }
solana-measure = { path = "../../measure", version = "=1.10.0" }
solana_rbpf = "=0.2.21"
solana_rbpf = "=0.2.22"
solana-runtime = { path = "../../runtime", version = "=1.10.0" }
solana-program-runtime = { path = "../../program-runtime", version = "=1.10.0" }
solana-sdk = { path = "../../sdk", version = "=1.10.0" }

View File

@ -211,10 +211,7 @@ fn run_program(name: &str) -> u64 {
let mut instruction_meter = ThisInstructionMeter { compute_meter };
let config = Config {
enable_instruction_tracing: true,
reject_unresolved_syscalls: true,
reject_section_virtual_address_file_offset_mismatch: true,
verify_mul64_imm_nonzero: false,
verify_shift32_imm: true,
reject_broken_elfs: true,
..Config::default()
};
let mut executable = Executable::<BpfError, ThisInstructionMeter>::from_elf(

View File

@ -19,7 +19,7 @@ solana-metrics = { path = "../../metrics", version = "=1.10.0" }
solana-program-runtime = { path = "../../program-runtime", version = "=1.10.0" }
solana-sdk = { path = "../../sdk", version = "=1.10.0" }
solana-zk-token-sdk = { path = "../../zk-token-sdk", version = "=1.10.0" }
solana_rbpf = "=0.2.21"
solana_rbpf = "=0.2.22"
thiserror = "1.0"
[dev-dependencies]

View File

@ -41,10 +41,9 @@ use {
bpf_loader_upgradeable::{self, UpgradeableLoaderState},
entrypoint::{HEAP_LENGTH, SUCCESS},
feature_set::{
cap_accounts_data_len, do_support_realloc, reduce_required_deploy_balance,
reject_all_elf_rw, reject_deployment_of_unresolved_syscalls,
reject_section_virtual_address_file_offset_mismatch, requestable_heap_size,
start_verify_shift32_imm, stop_verify_mul64_imm_nonzero,
cap_accounts_data_len, disable_bpf_deprecated_load_instructions,
disable_bpf_unresolved_symbols_at_runtime, do_support_realloc,
reduce_required_deploy_balance, requestable_heap_size,
},
instruction::{AccountMeta, InstructionError},
keyed_account::{keyed_account_at_index, KeyedAccount},
@ -126,23 +125,14 @@ pub fn create_executor(
max_call_depth: compute_budget.max_call_depth,
stack_frame_size: compute_budget.stack_frame_size,
enable_instruction_tracing: log_enabled!(Trace),
reject_unresolved_syscalls: reject_deployment_of_broken_elfs
disable_deprecated_load_instructions: reject_deployment_of_broken_elfs
&& invoke_context
.feature_set
.is_active(&reject_deployment_of_unresolved_syscalls::id()),
reject_section_virtual_address_file_offset_mismatch: reject_deployment_of_broken_elfs
&& invoke_context
.feature_set
.is_active(&reject_section_virtual_address_file_offset_mismatch::id()),
verify_mul64_imm_nonzero: !invoke_context
.is_active(&disable_bpf_deprecated_load_instructions::id()),
disable_unresolved_symbols_at_runtime: invoke_context
.feature_set
.is_active(&stop_verify_mul64_imm_nonzero::id()),
verify_shift32_imm: invoke_context
.feature_set
.is_active(&start_verify_shift32_imm::id()),
reject_all_writable_sections: invoke_context
.feature_set
.is_active(&reject_all_elf_rw::id()),
.is_active(&disable_bpf_unresolved_symbols_at_runtime::id()),
reject_broken_elfs: reject_deployment_of_broken_elfs,
..Config::default()
};
let mut create_executor_metrics = executor_metrics::CreateMetrics::default();