dissect.fat.fat
¶
Module Contents¶
Classes¶
Functions¶
- class dissect.fat.fat.FATFS(fh: BinaryIO, encoding: str = 'ibm437')¶
- fh¶
- encoding = 'ibm437'¶
- bpb¶
- fat_size¶
- total_sectors¶
- first_data_sector¶
- sector_size¶
- cluster_size¶
- fat¶
- data_stream¶
- volume_label = ''¶
- volume_id¶
- root¶
- get(path: str, dirent: DirectoryEntry | RootDirectory | None = None) DirectoryEntry | RootDirectory ¶
- class dissect.fat.fat.FAT(fh: BinaryIO, fattype: dissect.fat.c_fat.Fattype)¶
- fh¶
- entry_count¶
- get¶
- chain(cluster: int) collections.abc.Iterator[int] ¶
- runlist(cluster: int) collections.abc.Iterator[tuple[int, int]] ¶
Create a runlist from a cluster chain.
First two clusters are reserved, so substract those. Also combine consecutive clusters for a more efficient runlist.
- class dissect.fat.fat.DirectoryEntry(fs: FATFS, fh: BinaryIO, parent: DirectoryEntry | RootDirectory | None = None)¶
- fs¶
- parent = None¶
- dirent = None¶
- ldirents = []¶
- name = None¶
- short_name = None¶
- __repr__() str ¶
- property path: str¶
- property size: size¶
- property cluster: int¶
- property ctime: datetime.datetime¶
- property atime: datetime.datetime¶
- property mtime: datetime.datetime¶
- is_readonly() bool ¶
- is_system() bool ¶
- is_volume_id() bool ¶
- is_directory() bool ¶
- is_archive() bool ¶
- iterdir() collections.abc.Iterator[DirectoryEntry] ¶
- dataruns() list[tuple[int, int]] ¶
- class dissect.fat.fat.RootDirectory(fs: FATFS)¶
Bases:
DirectoryEntry
- fs¶
- name = '\\'¶
- short_name = '\\'¶
- property path: str¶
- property size: int¶
- property cluster: int | None¶
- property ctime: datetime.datetime¶
- property atime: datetime.datetime¶
- property mtime: datetime.datetime¶
- is_readonly() bool ¶
- is_system() bool ¶
- is_volume_id() bool ¶
- is_directory() bool ¶
- is_archive() bool ¶
- iterdir() collections.abc.Iterator[DirectoryEntry] ¶
- dataruns() list[tuple[int, int]] ¶
- dissect.fat.fat.mask(v: int, bits: int) int ¶