dissect.hypervisor.disk.vhd¶
Module Contents¶
Classes¶
Basic buffered stream that provides aligned reads. |
|
Implementation of the BAT. |
Functions¶
- class dissect.hypervisor.disk.vhd.VHD(fh: BinaryIO)¶
Bases:
dissect.util.stream.AlignedStreamBasic buffered stream that provides aligned reads.
- Must be subclassed for various stream implementations. Subclasses can implement:
_read()_seek()
The offset and length for
_readare guaranteed to be aligned for streams of a known size. If your stream has an unknown size (i.e.size == None), reads of length-1(i.e. read until EOF) will be passed through to your implementation of_read. The only time that overriding_seekwould make sense is if there’s no known size of your stream, but still want to provideSEEK_ENDfunctionality.Most subclasses of
AlignedStreamtake one or more file-like objects as source. Operations on these subclasses, like reading, will modify the source file-like object as a side effect.- Parameters:
size – The size of the stream. This is used in read and seek operations.
Noneif unknown.align – The alignment size. Read operations are aligned on this boundary. Also determines buffer size.
- _seek(pos: int, whence: int = 0) int¶
Calculate and return the new stream position after a seek.
- fh¶
- class dissect.hypervisor.disk.vhd.Disk(fh: BinaryIO, footer: dissect.hypervisor.disk.c_vhd.c_vhd.footer | None = None)¶
- fh¶
- size¶
- class dissect.hypervisor.disk.vhd.FixedDisk(fh: BinaryIO, footer: dissect.hypervisor.disk.c_vhd.c_vhd.footer | None = None)¶
Bases:
Disk