diff --git a/script/src/v2_syscalls.rs b/script/src/v2_syscalls.rs index f30e736dc3..b769fa5e35 100644 --- a/script/src/v2_syscalls.rs +++ b/script/src/v2_syscalls.rs @@ -504,14 +504,62 @@ impl< 2177 => self.debug(machine), // The syscall numbers here are picked intentionally to be different // than currently assigned syscall numbers for spawn calls - 2601 => self.spawn(machine), - 2602 => self.wait(machine), - 2603 => self.process_id(machine), - 2604 => self.pipe(machine), - 2605 => self.pipe_write(machine), - 2606 => self.pipe_read(machine), - 2607 => self.inherited_file_descriptors(machine), - 2608 => self.close(machine), + 2601 => { + if self.script_version >= ScriptVersion::V2 { + self.spawn(machine) + } else { + return Ok(false); + } + } + 2602 => { + if self.script_version >= ScriptVersion::V2 { + self.wait(machine) + } else { + return Ok(false); + } + } + 2603 => { + if self.script_version >= ScriptVersion::V2 { + self.process_id(machine) + } else { + return Ok(false); + } + } + 2604 => { + if self.script_version >= ScriptVersion::V2 { + self.pipe(machine) + } else { + return Ok(false); + } + } + 2605 => { + if self.script_version >= ScriptVersion::V2 { + self.pipe_write(machine) + } else { + return Ok(false); + } + } + 2606 => { + if self.script_version >= ScriptVersion::V2 { + self.pipe_read(machine) + } else { + return Ok(false); + } + } + 2607 => { + if self.script_version >= ScriptVersion::V2 { + self.inherited_file_descriptors(machine) + } else { + return Ok(false); + } + } + 2608 => { + if self.script_version >= ScriptVersion::V2 { + self.close(machine) + } else { + return Ok(false); + } + } _ => return Ok(false), }?; Ok(true) diff --git a/script/src/verify/tests/mod.rs b/script/src/verify/tests/mod.rs index 7e7a3bd428..9729a4f943 100644 --- a/script/src/verify/tests/mod.rs +++ b/script/src/verify/tests/mod.rs @@ -4,8 +4,7 @@ pub(crate) mod utils; -// TODO: enable again -// mod ckb_2019; -// mod ckb_2021; +mod ckb_2019; +mod ckb_2021; #[path = "ckb_latest/mod.rs"] mod ckb_2023;