Jelajahi Sumber

Update for the latest solana_rbpf crate

Signed-off-by: Sean Young <sean@mess.org>
Sean Young 4 tahun lalu
induk
melakukan
aa3fd9fd49
2 mengubah file dengan 8 tambahan dan 9 penghapusan
  1. 1 1
      Cargo.toml
  2. 7 8
      tests/solana.rs

+ 1 - 1
Cargo.toml

@@ -54,7 +54,7 @@ ethereum-types = "0.10"
 wasmi = "0.9"
 rand = "0.8"
 sha2 = "0.9"
-solana_rbpf = "0.2"
+solana_rbpf = "^0.2.11"
 byteorder = "1.3"
 assert_cmd = "1.0"
 bincode = "1.3"

+ 7 - 8
tests/solana.rs

@@ -894,13 +894,6 @@ impl VirtualMachine {
 
         let program = &self.stack[0];
 
-        let mut executable = <dyn Executable<UserError, DefaultInstructionMeter>>::from_elf(
-            &self.account_data[&program.program].data,
-            None,
-            Config::default(),
-        )
-        .expect("should work");
-
         let mut syscall_registry = SyscallRegistry::default();
         syscall_registry
             .register_syscall_by_name(b"sol_log_", SolLog::call)
@@ -926,7 +919,13 @@ impl VirtualMachine {
             .register_syscall_by_name(b"sol_alloc_free_", SyscallAllocFree::call)
             .unwrap();
 
-        executable.set_syscall_registry(syscall_registry);
+        let executable = <dyn Executable<UserError, DefaultInstructionMeter>>::from_elf(
+            &self.account_data[&program.program].data,
+            None,
+            Config::default(),
+            syscall_registry,
+        )
+        .expect("should work");
 
         let mut vm = EbpfVm::<UserError, DefaultInstructionMeter>::new(
             executable.as_ref(),