Correct min/max cluster counts for FAT12/16/32

FAT12      1..4084
FAT16   4085..65524
FAT32  65525..

This is required for interoperability with other FAT implementations,
and in particular UEFI.

Obtained from:      NetBSD
Sponsored by:       The FreeBSD Foundation
This commit is contained in:
emaste 2014-04-24 20:53:09 +00:00
parent 285b96444f
commit f2b36dcede

View File

@ -64,11 +64,11 @@ static const char rcsid[] =
#define DEFRDE 512 /* default root directory entries */
#define RESFTE 2 /* reserved FAT entries */
#define MINCLS12 1U /* minimum FAT12 clusters */
#define MINCLS16 0x1000U /* minimum FAT16 clusters */
#define MINCLS32 2U /* minimum FAT32 clusters */
#define MAXCLS12 0xfedU /* maximum FAT12 clusters */
#define MAXCLS16 0xfff5U /* maximum FAT16 clusters */
#define MAXCLS32 0xffffff5U /* maximum FAT32 clusters */
#define MINCLS16 0xff5U /* minimum FAT16 clusters */
#define MINCLS32 0xfff5U /* minimum FAT32 clusters */
#define MAXCLS12 0xff4U /* maximum FAT12 clusters */
#define MAXCLS16 0xfff4U /* maximum FAT16 clusters */
#define MAXCLS32 0xffffff4U /* maximum FAT32 clusters */
#define mincls(fat) ((fat) == 12 ? MINCLS12 : \
(fat) == 16 ? MINCLS16 : \