| 51 | #include "log_part.h" |
| 52 | |
| 53 | static dir_partition_t dir_partition_init(disk_t *disk, const partition_t *partition, const int verbose, const int expert, dir_data_t *dir_data) |
| 54 | { |
| 55 | dir_partition_t res=DIR_PART_ENOIMP; |
| 56 | if(is_part_fat(partition)) |
| 57 | res=dir_partition_fat_init(disk, partition, dir_data, verbose); |
| 58 | else if(is_part_ntfs(partition)) |
| 59 | { |
| 60 | res=dir_partition_ntfs_init(disk, partition, dir_data, verbose, expert); |
| 61 | if(res!=DIR_PART_OK) |
| 62 | res=dir_partition_exfat_init(disk, partition, dir_data, verbose); |
| 63 | } |
| 64 | else if(is_part_linux(partition)) |
| 65 | { |
| 66 | res=dir_partition_ext2_init(disk, partition, dir_data, verbose); |
| 67 | if(res!=DIR_PART_OK) |
| 68 | res=dir_partition_reiser_init(disk, partition, dir_data, verbose); |
| 69 | } |
| 70 | if(res==DIR_PART_OK) |
| 71 | return DIR_PART_OK; |
| 72 | switch(partition->upart_type) |
| 73 | { |
| 74 | case UP_FAT12: |
| 75 | case UP_FAT16: |
| 76 | case UP_FAT32: |
| 77 | return dir_partition_fat_init(disk, partition, dir_data, verbose); |
| 78 | case UP_EXT4: |
| 79 | case UP_EXT3: |
| 80 | case UP_EXT2: |
| 81 | return dir_partition_ext2_init(disk, partition, dir_data, verbose); |
| 82 | case UP_RFS: |
| 83 | case UP_RFS2: |
| 84 | case UP_RFS3: |
| 85 | return dir_partition_reiser_init(disk, partition, dir_data, verbose); |
| 86 | case UP_NTFS: |
| 87 | return dir_partition_ntfs_init(disk, partition, dir_data, verbose, expert); |
| 88 | case UP_EXFAT: |
| 89 | return dir_partition_exfat_init(disk, partition, dir_data, verbose); |
| 90 | default: |
| 91 | return res; |
| 92 | } |
| 93 | } |
| 94 | |
| 95 | dir_partition_t dir_partition(disk_t *disk, const partition_t *partition, const int verbose, const int expert, char **current_cmd) |
| 96 | { |
no test coverage detected