Data Structures |
| struct | fat_boot_sector |
| struct | fat_boot_fsinfo |
| struct | msdos_dir_entry |
| struct | msdos_dir_slot |
| struct | fat_slot_info |
Defines |
| #define | SECTOR_SIZE 512 /* sector size (bytes) */ |
| #define | SECTOR_BITS 9 /* log2(SECTOR_SIZE) */ |
| #define | MSDOS_DPB (MSDOS_DPS) /* dir entries per block */ |
| #define | MSDOS_DPB_BITS 4 /* log2(MSDOS_DPB) */ |
| #define | MSDOS_DPS (SECTOR_SIZE / sizeof(struct msdos_dir_entry)) |
| #define | MSDOS_DPS_BITS 4 /* log2(MSDOS_DPS) */ |
| #define | MSDOS_SUPER_MAGIC 0x4d44 /* MD */ |
| #define | MSDOS_ROOT_INO 1 /* == MINIX_ROOT_INO */ |
| #define | MSDOS_DIR_BITS 5 /* log2(sizeof(struct msdos_dir_entry)) */ |
| #define | FAT_MAX_DIR_ENTRIES (65536) |
| #define | FAT_MAX_DIR_SIZE (FAT_MAX_DIR_ENTRIES << MSDOS_DIR_BITS) |
| #define | ATTR_NONE 0 /* no attribute bits */ |
| #define | ATTR_RO 1 /* read-only */ |
| #define | ATTR_HIDDEN 2 /* hidden */ |
| #define | ATTR_SYS 4 /* system */ |
| #define | ATTR_VOLUME 8 /* volume label */ |
| #define | ATTR_DIR 16 /* directory */ |
| #define | ATTR_ARCH 32 /* archived */ |
| #define | ATTR_UNUSED (ATTR_VOLUME | ATTR_ARCH | ATTR_SYS | ATTR_HIDDEN) |
| #define | ATTR_EXT (ATTR_RO | ATTR_HIDDEN | ATTR_SYS | ATTR_VOLUME) |
| #define | CASE_LOWER_BASE 8 /* base is lower case */ |
| #define | CASE_LOWER_EXT 16 /* extension is lower case */ |
| #define | DELETED_FLAG 0xe5 /* marks file as deleted when in name[0] */ |
| #define | IS_FREE(n) (!*(n) || *(n) == DELETED_FLAG) |
| #define | MSDOS_VALID_MODE (S_IFREG | S_IFDIR | S_IRWXU | S_IRWXG | S_IRWXO) |
| #define | MSDOS_MKMODE(a, m) (m & (a & ATTR_RO ? S_IRUGO|S_IXUGO : S_IRWXUGO)) |
| #define | MSDOS_NAME 11 /* maximum name length */ |
| #define | MSDOS_LONGNAME 256 /* maximum name length */ |
| #define | MSDOS_SLOTS 21 /* max # of slots for short and long names */ |
| #define | MSDOS_DOT ". " /* ".", padded to MSDOS_NAME chars */ |
| #define | MSDOS_DOTDOT ".. " /* "..", padded to MSDOS_NAME chars */ |
| #define | FAT_VALID_MEDIA(x) ((0xF8 <= (x) && (x) <= 0xFF) || (x) == 0xF0) |
| #define | FAT_FIRST_ENT(s, x) |
| #define | FAT_START_ENT 2 |
| #define | MAX_FAT12 0xFF4 |
| #define | MAX_FAT16 0xFFF4 |
| #define | MAX_FAT32 0x0FFFFFF6 |
| #define | MAX_FAT(s) |
| #define | BAD_FAT12 0xFF7 |
| #define | BAD_FAT16 0xFFF7 |
| #define | BAD_FAT32 0x0FFFFFF7 |
| #define | EOF_FAT12 0xFFF |
| #define | EOF_FAT16 0xFFFF |
| #define | EOF_FAT32 0x0FFFFFFF |
| #define | FAT_ENT_FREE (0) |
| #define | FAT_ENT_BAD (BAD_FAT32) |
| #define | FAT_ENT_EOF (EOF_FAT32) |
| #define | FAT_FSINFO_SIG1 0x41615252 |
| #define | FAT_FSINFO_SIG2 0x61417272 |
| #define | IS_FSINFO(x) |
| #define | VFAT_IOCTL_READDIR_BOTH _IOR('r', 1, struct dirent [2]) |
| #define | VFAT_IOCTL_READDIR_SHORT _IOR('r', 2, struct dirent [2]) |
| #define | FAT_IOCTL_GET_ATTRIBUTES _IOR('r', 0x10, __u32) |
| #define | FAT_IOCTL_SET_ATTRIBUTES _IOW('r', 0x11, __u32) |
| #define | VFAT_SFN_DISPLAY_LOWER 0x0001 /* convert to lowercase for display */ |
| #define | VFAT_SFN_DISPLAY_WIN95 0x0002 /* emulate win95 rule for display */ |
| #define | VFAT_SFN_DISPLAY_WINNT 0x0004 /* emulate winnt rule for display */ |
| #define | VFAT_SFN_CREATE_WIN95 0x0100 /* emulate win95 rule for create */ |
| #define | VFAT_SFN_CREATE_WINNT 0x0200 /* emulate winnt rule for create */ |