From 3cbd7682c8696a2005b98e3c1b09f3357ced012d Mon Sep 17 00:00:00 2001 From: toolCHAINZ Date: Thu, 4 May 2023 21:19:32 -0400 Subject: Added some stack layout and reference APIs --- rust/src/function.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'rust/src/function.rs') diff --git a/rust/src/function.rs b/rust/src/function.rs index 426f936b..ab504bb7 100644 --- a/rust/src/function.rs +++ b/rust/src/function.rs @@ -23,7 +23,7 @@ use crate::{ llil, platform::Platform, symbol::Symbol, - types::{Conf, Type}, + types::{Conf, NamedTypedVariable, Type}, }; use std::{fmt, mem}; @@ -258,6 +258,14 @@ impl Function { BNSetFunctionUserType(self.handle, t.handle); } } + + pub fn stack_layout(&self) -> Array { + let mut count = 0; + unsafe { + let variables = BNGetStackLayout(self.handle, &mut count); + Array::new(variables, count, ()) + } + } } impl fmt::Debug for Function { -- cgit v1.3.1