HomeFreeBSD

fstyp(8): Show exFAT volume labels with -l flag

Description

fstyp(8): Show exFAT volume labels with -l flag

exfat is fundamentally the same design as fat32. The superblock differs
marginally, and there are some additional optional features irrelevant to
fstype(8); the structure of dirents has changed slightly to enable, among
other things, larger files; the directory entries are no longer DOS 8.3
ASCII or local 8-bit encoding, but instead explicitly UCS-2-LE.

(As a result, this change uses iconv to convert a found exfat volume label
to the user's locale.)

Locating the volume label is identical to FAT32: locate the root directory
and walk through dirents until you find a volume label. Like FAT32, follow
the FAT chain between root directory clusters as necessary.

PR: 242225
Reported by: Victor Sudakov <vas AT sibptus.ru>

(cherry picked from commit 85b4c344c8c69ff7993bc0ac833aaf9a8108b88d)

fstyp(8): Fix WITHOUT_ICONV build

Reported by: olivier

(cherry picked from commit 5ab1cb52b21fdc5524bd970e9b5cdff21a5bcabf)

Details

Provenance
cemAuthored on Dec 22 2019, 3:19 AM
emasteCommitted on Feb 2 2021, 9:12 PM
Parents
rGa2c37aa836c0: ixl: Permit 802.1ad frames to pass though the chip
Branches
Unknown
Tags
Unknown