From a80126681e84c5cef9408db1f0eff227e9502153 Mon Sep 17 00:00:00 2001 From: s1341 Date: Sun, 7 Nov 2021 19:17:47 +0200 Subject: [PATCH] Fix cfg directives for frida-asan (#365) * Fix cfg directives for frida-asan * drop unneeded line * clippy Co-authored-by: Dominik Maier --- libafl_frida/src/asan_rt.rs | 5 +++-- libafl_frida/src/helper.rs | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/libafl_frida/src/asan_rt.rs b/libafl_frida/src/asan_rt.rs index 93ef16c77e..c36938e969 100644 --- a/libafl_frida/src/asan_rt.rs +++ b/libafl_frida/src/asan_rt.rs @@ -64,6 +64,7 @@ const ANONYMOUS_FLAG: MapFlags = MapFlags::MAP_ANONYMOUS; #[cfg(target_arch = "x86_64")] pub const ASAN_SAVE_REGISTER_COUNT: usize = 19; +#[cfg(target_arch = "x86_64")] pub const ASAN_SAVE_REGISTER_NAMES: [&str; ASAN_SAVE_REGISTER_COUNT] = [ "rax", "rbx", @@ -86,7 +87,7 @@ pub const ASAN_SAVE_REGISTER_NAMES: [&str; ASAN_SAVE_REGISTER_COUNT] = [ "actual rip", ]; -#[cfg(tareget_arch = "aarch64")] +#[cfg(target_arch = "aarch64")] pub const ASAN_SAVE_REGISTER_COUNT: usize = 32; /// The frida address sanitizer runtime, providing address sanitization. @@ -1959,7 +1960,7 @@ impl AsanRuntime { 3, ) .unwrap(); - let instructions = instructions.iter().collect::>(); + let instructions = instructions.iter().collect::>(); let mut insn = instructions.first().unwrap(); if insn.mnemonic().unwrap() == "msr" && insn.op_str().unwrap() == "nzcv, x0" { insn = instructions.get(2).unwrap(); diff --git a/libafl_frida/src/helper.rs b/libafl_frida/src/helper.rs index 45ea33ed74..97db65499c 100644 --- a/libafl_frida/src/helper.rs +++ b/libafl_frida/src/helper.rs @@ -62,12 +62,13 @@ enum CmplogOperandType { Mem(capstone::RegId, capstone::RegId, i32, u32), } +#[cfg(all(feature = "cmplog", target_arch = "aarch64"))] enum SpecialCmpLogCase { Tbz, Tbnz, } -#[cfg(any(target_vendor = "apple"))] +#[cfg(target_vendor = "apple")] const ANONYMOUS_FLAG: MapFlags = MapFlags::MAP_ANON; #[cfg(not(any(target_vendor = "apple", target_os = "windows")))] const ANONYMOUS_FLAG: MapFlags = MapFlags::MAP_ANONYMOUS;