| 106 | } |
| 107 | |
| 108 | int check_BSD(disk_t *disk_car,partition_t *partition,const int verbose, const unsigned int max_partitions) |
| 109 | { |
| 110 | unsigned char *buffer; |
| 111 | buffer=(unsigned char*)MALLOC(BSD_DISKLABEL_SIZE); |
| 112 | if(disk_car->pread(disk_car, buffer, BSD_DISKLABEL_SIZE, partition->part_offset + 0x200) != BSD_DISKLABEL_SIZE) |
| 113 | { |
| 114 | free(buffer); |
| 115 | return 1; |
| 116 | } |
| 117 | if(test_BSD(disk_car,(const struct disklabel*)buffer,partition,verbose,0,max_partitions)) |
| 118 | { |
| 119 | free(buffer); |
| 120 | return 1; |
| 121 | } |
| 122 | set_part_name(partition,((const struct disklabel*)buffer)->d_packname,16); |
| 123 | free(buffer); |
| 124 | return 0; |
| 125 | } |
| 126 | |
| 127 | int recover_BSD(const disk_t *disk_car, const struct disklabel*bsd_header,partition_t *partition,const int verbose, const int dump_ind) |
| 128 | { |
no test coverage detected