pub struct WindowsSectionObject<'a, Driver>{ /* private fields */ }Expand description
A Windows section object.
A section object in Windows is a kernel structure used for memory mapping and shared memory management. It allows multiple processes to share memory regions or map files into their address space.
§Implementation Details
Corresponds to _SECTION_OBJECT or _SECTION.
Implementations§
Source§impl<'a, Driver> WindowsSectionObject<'a, Driver>
impl<'a, Driver> WindowsSectionObject<'a, Driver>
Sourcepub fn new(vmi: VmiState<'a, Driver, WindowsOs<Driver>>, va: Va) -> Self
pub fn new(vmi: VmiState<'a, Driver, WindowsOs<Driver>>, va: Va) -> Self
Creates a new Windows section object.
Sourcepub fn start(&self) -> Result<Va, VmiError>
pub fn start(&self) -> Result<Va, VmiError>
Returns the starting address of the section.
§Implementation Details
Corresponds to _SECTION_OBJECT.StartingVa or _SECTION.StartingVpn
shifted left by 12 bits.
Sourcepub fn end(&self) -> Result<Va, VmiError>
pub fn end(&self) -> Result<Va, VmiError>
Returns the ending address of the section (exclusive).
§Implementation Details
Corresponds to _SECTION_OBJECT.EndingVa or _SECTION.EndingVpn
incremented by 1 and shifted left by 12 bits.
Sourcepub fn size(&self) -> Result<u64, VmiError>
pub fn size(&self) -> Result<u64, VmiError>
Returns the size of the section.
§Implementation Details
Corresponds to _SECTION_OBJECT.SizeOfSegment or _SECTION.SizeOfSection.
Sourcepub fn flags(&self) -> Result<u64, VmiError>
pub fn flags(&self) -> Result<u64, VmiError>
Returns the flags of the section.
§Implementation Details
Corresponds to _SECTION.Flags or _SEGMENT_OBJECT.MmSectionFlags.
Sourcepub fn file_object(
&self,
) -> Result<Option<WindowsFileObject<'a, Driver>>, VmiError>
pub fn file_object( &self, ) -> Result<Option<WindowsFileObject<'a, Driver>>, VmiError>
Returns the file object of the section.
§Implementation Details
Corresponds to _SECTION.ControlArea.FilePointer or
_SEGMENT_OBJECT.ControlArea.FilePointer.