/// read super block and write to image head extern void initial_image_hdr(char* device, image_head* image_hdr) { int fs_type = 0; fs_type = test_extfs_type(device); log_mesg(1, 0, 0, fs_opt.debug, "%s: extfs version is %i\n", __FILE__, fs_type); strncpy(image_hdr->magic, IMAGE_MAGIC, IMAGE_MAGIC_SIZE); strncpy(image_hdr->fs, extfs_MAGIC, FS_MAGIC_SIZE); fs_open(device); image_hdr->block_size = (int)block_size(); image_hdr->totalblock = (unsigned long long)block_count(); image_hdr->usedblocks = (unsigned long long)get_used_blocks(); image_hdr->device_size = (unsigned long long)(image_hdr->block_size * image_hdr->totalblock); fs_close(); }
void read_super_blocks(char* device, file_system_info* fs_info) { int fs_type = 0; fs_type = test_extfs_type(device); log_mesg(1, 0, 0, fs_opt.debug, "%s: extfs version is %i\n", __FILE__, fs_type); strncpy(fs_info->fs, extfs_MAGIC, FS_MAGIC_SIZE); fs_open(device); fs_info->block_size = block_size(); fs_info->totalblock = block_count(); fs_info->usedblocks = get_used_blocks(); fs_info->device_size = fs_info->block_size * fs_info->totalblock; log_mesg(1, 0, 0, fs_opt.debug, "%s: extfs block_size %i\n", __FILE__, fs_info->block_size); log_mesg(1, 0, 0, fs_opt.debug, "%s: extfs total block %lli\n", __FILE__, fs_info->totalblock); log_mesg(1, 0, 0, fs_opt.debug, "%s: extfs used blocks %lli\n", __FILE__, fs_info->usedblocks); log_mesg(1, 0, 0, fs_opt.debug, "%s: extfs device size %lli\n", __FILE__, fs_info->device_size); fs_close(); }