:py:mod:`dissect.fat` ===================== .. py:module:: dissect.fat Submodules ---------- .. toctree:: :titlesonly: :maxdepth: 1 c_exfat/index.rst c_fat/index.rst exceptions/index.rst exfat/index.rst fat/index.rst Package Contents ---------------- Classes ~~~~~~~ .. autoapisummary:: dissect.fat.ExFAT dissect.fat.FATFS .. py:exception:: BadClusterError Bases: :py:obj:`Error` Common base class for all non-exit exceptions. .. py:exception:: EmptyDirectoryError Bases: :py:obj:`Error` Common base class for all non-exit exceptions. .. py:exception:: Error Bases: :py:obj:`Exception` Common base class for all non-exit exceptions. .. py:exception:: FileNotFoundError Bases: :py:obj:`Error` Common base class for all non-exit exceptions. .. py:exception:: FreeClusterError Bases: :py:obj:`Error` Common base class for all non-exit exceptions. .. py:exception:: InvalidBPB Bases: :py:obj:`Error` Common base class for all non-exit exceptions. .. py:exception:: InvalidDirectoryError Bases: :py:obj:`Error` Common base class for all non-exit exceptions. .. py:exception:: InvalidHeaderMagic Bases: :py:obj:`Error` Common base class for all non-exit exceptions. .. py:exception:: LastEmptyDirectoryError Bases: :py:obj:`Error` Common base class for all non-exit exceptions. .. py:exception:: NotADirectoryError Bases: :py:obj:`Error` Common base class for all non-exit exceptions. .. py:class:: ExFAT(fh) .. py:method:: cluster_to_sector(cluster) Returns the clusters' corresponding sector address :param cluster: cluster address :type cluster: int :returns: corresponding sector address if available :rtype: int .. py:method:: sector_to_cluster(sector) Returns the sectors' corresponding cluster address :param sector: sector address :type sector: int :returns: corresponding cluster address if available :rtype: int .. py:method:: runlist(starting_cluster, not_fragmented=True, size=None) Creates a RunlistStream compatible runlist from exFAT FAT structures :param starting_cluster: First cluster of file, folder or location in question :type starting_cluster: int :returns: [(sector_offset, run_length)] :rtype: runlist .. py:method:: get_cluster_chain(starting_cluster) Reads the on disk FAT to construct the cluster chain :param starting_cluster: cluster to look-up the chain from :type starting_cluster: int :returns: Chain of clusters. Including starting_cluster :rtype: list .. py:class:: FATFS(fh, encoding='ibm437') .. py:method:: get(path, dirent=None)