Skip to content
  • mckusick's avatar
    The error reported in FS-14-UFS-3 can only happen on UFS/FFS · eb5503c1
    mckusick authored
    filesystems that have block pointers that are out-of-range for their
    filesystem. These out-of-range block pointers are corrected by
    fsck(8) so are only encountered when an unchecked filesystem is
    mounted.
    
    A new "untrusted" flag has been added to the generic mount interface
    that can be set when mounting media of unknown provenance or integrity.
    For example, a daemon that automounts a filesystem on a flash drive
    when it is plugged into a system.
    
    This commit adds a test to UFS/FFS that validates all block numbers
    before using them. Because checking for out-of-range blocks adds
    unnecessary overhead to normal operation, the tests are only done
    when the filesystem is mounted as an "untrusted" filesystem.
    
    Reported by:  Christopher Krah, Thomas Barabosch, and Jan-Niclas Hilgert of Fraunhofer FKIE
    Reported as:  FS-14-UFS-3: Out of bounds read in write-2 (ffs_alloccg)
    Reviewed by:  kib
    Sponsored by: Netflix
    eb5503c1