|
@@ -31,7 +31,7 @@
|
|
|
static block_dev_desc_t *ext2fs_block_dev_desc;
|
|
|
static disk_partition_t part_info;
|
|
|
|
|
|
-int ext2fs_set_blk_dev (block_dev_desc_t * rbdd, int part)
|
|
|
+int ext2fs_set_blk_dev(block_dev_desc_t *rbdd, int part)
|
|
|
{
|
|
|
ext2fs_block_dev_desc = rbdd;
|
|
|
|
|
@@ -46,51 +46,55 @@ int ext2fs_set_blk_dev (block_dev_desc_t * rbdd, int part)
|
|
|
return 0;
|
|
|
}
|
|
|
}
|
|
|
- return (part_info.size);
|
|
|
+ return part_info.size;
|
|
|
}
|
|
|
|
|
|
|
|
|
-int ext2fs_devread (int sector, int byte_offset, int byte_len, char *buf) {
|
|
|
+int ext2fs_devread(int sector, int byte_offset, int byte_len, char *buf)
|
|
|
+{
|
|
|
char sec_buf[SECTOR_SIZE];
|
|
|
unsigned block_len;
|
|
|
|
|
|
-/*
|
|
|
- * Check partition boundaries
|
|
|
- */
|
|
|
- if ((sector < 0)
|
|
|
- || ((sector + ((byte_offset + byte_len - 1) >> SECTOR_BITS)) >=
|
|
|
+ /*
|
|
|
+ * Check partition boundaries
|
|
|
+ */
|
|
|
+ if ((sector < 0) ||
|
|
|
+ ((sector + ((byte_offset + byte_len - 1) >> SECTOR_BITS)) >=
|
|
|
part_info.size)) {
|
|
|
- /* errnum = ERR_OUTSIDE_PART; */
|
|
|
- printf (" ** ext2fs_devread() read outside partition sector %d\n", sector);
|
|
|
- return (0);
|
|
|
+ /* errnum = ERR_OUTSIDE_PART; */
|
|
|
+ printf(" ** %s read outside partition sector %d\n",
|
|
|
+ __func__,
|
|
|
+ sector);
|
|
|
+ return 0;
|
|
|
}
|
|
|
|
|
|
-/*
|
|
|
- * Get the read to the beginning of a partition.
|
|
|
- */
|
|
|
+ /*
|
|
|
+ * Get the read to the beginning of a partition.
|
|
|
+ */
|
|
|
sector += byte_offset >> SECTOR_BITS;
|
|
|
byte_offset &= SECTOR_SIZE - 1;
|
|
|
|
|
|
- debug (" <%d, %d, %d>\n", sector, byte_offset, byte_len);
|
|
|
+ debug(" <%d, %d, %d>\n", sector, byte_offset, byte_len);
|
|
|
|
|
|
if (ext2fs_block_dev_desc == NULL) {
|
|
|
- printf ("** Invalid Block Device Descriptor (NULL)\n");
|
|
|
- return (0);
|
|
|
+ printf(" ** %s Invalid Block Device Descriptor (NULL)\n",
|
|
|
+ __func__);
|
|
|
+ return 0;
|
|
|
}
|
|
|
|
|
|
if (byte_offset != 0) {
|
|
|
/* read first part which isn't aligned with start of sector */
|
|
|
if (ext2fs_block_dev_desc->
|
|
|
- block_read (ext2fs_block_dev_desc->dev,
|
|
|
- part_info.start + sector, 1,
|
|
|
- (unsigned long *) sec_buf) != 1) {
|
|
|
- printf (" ** ext2fs_devread() read error **\n");
|
|
|
- return (0);
|
|
|
+ block_read(ext2fs_block_dev_desc->dev,
|
|
|
+ part_info.start + sector, 1,
|
|
|
+ (unsigned long *) sec_buf) != 1) {
|
|
|
+ printf(" ** %s read error **\n", __func__);
|
|
|
+ return 0;
|
|
|
}
|
|
|
- memcpy (buf, sec_buf + byte_offset,
|
|
|
- min (SECTOR_SIZE - byte_offset, byte_len));
|
|
|
- buf += min (SECTOR_SIZE - byte_offset, byte_len);
|
|
|
- byte_len -= min (SECTOR_SIZE - byte_offset, byte_len);
|
|
|
+ memcpy(buf, sec_buf + byte_offset,
|
|
|
+ min(SECTOR_SIZE - byte_offset, byte_len));
|
|
|
+ buf += min(SECTOR_SIZE - byte_offset, byte_len);
|
|
|
+ byte_len -= min(SECTOR_SIZE - byte_offset, byte_len);
|
|
|
sector++;
|
|
|
}
|
|
|
|
|
@@ -111,13 +115,13 @@ int ext2fs_devread (int sector, int byte_offset, int byte_len, char *buf) {
|
|
|
return 1;
|
|
|
}
|
|
|
|
|
|
- if (ext2fs_block_dev_desc->block_read (ext2fs_block_dev_desc->dev,
|
|
|
- part_info.start + sector,
|
|
|
- block_len / SECTOR_SIZE,
|
|
|
- (unsigned long *) buf) !=
|
|
|
+ if (ext2fs_block_dev_desc->block_read(ext2fs_block_dev_desc->dev,
|
|
|
+ part_info.start + sector,
|
|
|
+ block_len / SECTOR_SIZE,
|
|
|
+ (unsigned long *) buf) !=
|
|
|
block_len / SECTOR_SIZE) {
|
|
|
- printf (" ** ext2fs_devread() read error - block\n");
|
|
|
- return (0);
|
|
|
+ printf(" ** %s read error - block\n", __func__);
|
|
|
+ return 0;
|
|
|
}
|
|
|
block_len = byte_len & ~(SECTOR_SIZE - 1);
|
|
|
buf += block_len;
|
|
@@ -127,13 +131,13 @@ int ext2fs_devread (int sector, int byte_offset, int byte_len, char *buf) {
|
|
|
if (byte_len != 0) {
|
|
|
/* read rest of data which are not in whole sector */
|
|
|
if (ext2fs_block_dev_desc->
|
|
|
- block_read (ext2fs_block_dev_desc->dev,
|
|
|
- part_info.start + sector, 1,
|
|
|
- (unsigned long *) sec_buf) != 1) {
|
|
|
- printf (" ** ext2fs_devread() read error - last part\n");
|
|
|
- return (0);
|
|
|
+ block_read(ext2fs_block_dev_desc->dev,
|
|
|
+ part_info.start + sector, 1,
|
|
|
+ (unsigned long *) sec_buf) != 1) {
|
|
|
+ printf(" ** %s read error - last part\n", __func__);
|
|
|
+ return 0;
|
|
|
}
|
|
|
- memcpy (buf, sec_buf, byte_len);
|
|
|
+ memcpy(buf, sec_buf, byte_len);
|
|
|
}
|
|
|
- return (1);
|
|
|
+ return 1;
|
|
|
}
|