1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* 3 * Copyright (C) 2020 Hyunchul Lee <hyc.lee@gmail.com> 4 */ 5 #ifndef _FSCK_H 6 #define _FSCK_H 7 8 #include "list.h" 9 10 enum fsck_ui_options { 11 FSCK_OPTS_REPAIR_ASK = 0x01, 12 FSCK_OPTS_REPAIR_YES = 0x02, 13 FSCK_OPTS_REPAIR_NO = 0x04, 14 FSCK_OPTS_REPAIR_AUTO = 0x08, 15 FSCK_OPTS_REPAIR_WRITE = 0x0b, 16 FSCK_OPTS_REPAIR_ALL = 0x0f, 17 FSCK_OPTS_IGNORE_BAD_FS_NAME = 0x10, 18 FSCK_OPTS_RESCUE_CLUS = 0x20, 19 }; 20 21 struct exfat; 22 struct exfat_inode; 23 24 struct exfat_fsck { 25 struct exfat *exfat; 26 struct exfat_de_iter de_iter; 27 struct buffer_desc *buffer_desc; /* cluster * 2 */ 28 enum fsck_ui_options options; 29 bool dirty:1; 30 bool dirty_fat:1; 31 }; 32 33 off_t exfat_c2o(struct exfat *exfat, unsigned int clus); 34 35 #endif 36