Changeset 01ab41b in mainline for uspace/lib/ext4/libext4_superblock.c
- Timestamp:
- 2011-10-03T11:57:14Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 9c0c0e1
- Parents:
- 54935cf6
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/ext4/libext4_superblock.c
r54935cf6 r01ab41b 36 36 */ 37 37 38 #include <byteorder.h> 39 #include <errno.h> 40 #include <libblock.h> 41 #include <malloc.h> 38 42 #include "libext4_superblock.h" 39 43 44 /** 45 * TODO doxy 46 */ 47 uint16_t ext2_superblock_get_magic(ext4_superblock_t *sb) 48 { 49 return uint16_t_le2host(sb->s_magic); 50 } 51 52 /** 53 * TODO doxy 54 */ 55 uint32_t ext4_superblock_get_first_block(ext4_superblock_t *sb) 56 { 57 return uint32_t_le2host(sb->s_first_data_block); 58 } 59 60 /** 61 * TODO doxy 62 */ 63 uint32_t ext4_superblock_get_block_size_log2(ext4_superblock_t *sb) 64 { 65 return uint32_t_le2host(sb->s_log_block_size); 66 } 67 68 /** 69 * TODO doxy 70 */ 71 uint32_t ext4_superblock_get_block_size(ext4_superblock_t *sb) 72 { 73 return 1024 << ext4_superblock_get_block_size_log2(sb); 74 } 75 76 77 /** 78 * TODO doxy 79 */ 80 int ext4_superblock_read_direct(service_id_t service_id, 81 ext4_superblock_t **superblock) 82 { 83 void *data; 84 int rc; 85 86 data = malloc(EXT4_SUPERBLOCK_SIZE); 87 if (data == NULL) { 88 return ENOMEM; 89 } 90 91 rc = block_read_bytes_direct(service_id, EXT4_SUPERBLOCK_OFFSET, 92 EXT4_SUPERBLOCK_SIZE, data); 93 94 if (rc != EOK) { 95 free(data); 96 return rc; 97 } 98 99 (*superblock) = data; 100 101 return EOK; 102 } 103 104 /** 105 * TODO doxy 106 */ 107 int ext4_superblock_check_sanity(ext4_superblock_t *sb) 108 { 109 // TODO 110 return EOK; 111 } 40 112 41 113 /**
Note:
See TracChangeset
for help on using the changeset viewer.