aboutsummaryrefslogtreecommitdiff
path: root/lib/xixanta/src/object.rs
diff options
context:
space:
mode:
Diffstat (limited to 'lib/xixanta/src/object.rs')
-rw-r--r--lib/xixanta/src/object.rs11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/xixanta/src/object.rs b/lib/xixanta/src/object.rs
index 373d06c..920a4f8 100644
--- a/lib/xixanta/src/object.rs
+++ b/lib/xixanta/src/object.rs
@@ -101,7 +101,8 @@ impl Bundle {
}
/// The type of object being referenced, which is either a value as-is, or an
-/// address that needs to be interpreted when fetching it.
+/// address that needs to be interpreted when fetching it; or a reference to a
+/// value (i.e. something the address sanitizer can ignore).
#[derive(Debug, Clone)]
pub enum ObjectType {
Address,
@@ -132,6 +133,12 @@ pub struct Object {
/// The type for this object.
pub object_type: ObjectType,
+
+ /// Whether the address sanitizer should ignore this object or not.
+ pub asan_ignore: bool,
+
+ /// Amount of bytes reserved for this object on the address sanitizer.
+ pub asan_reserve: u8,
}
impl Object {
@@ -143,6 +150,8 @@ impl Object {
mapping,
segment,
object_type,
+ asan_ignore: false,
+ asan_reserve: 1,
}
}
}