diff options
Diffstat (limited to 'util-linux/volume_id/ext.c')
-rw-r--r-- | util-linux/volume_id/ext.c | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/util-linux/volume_id/ext.c b/util-linux/volume_id/ext.c index 3c07f5301..db29dae70 100644 --- a/util-linux/volume_id/ext.c +++ b/util-linux/volume_id/ext.c | |||
@@ -47,25 +47,27 @@ int volume_id_probe_ext(struct volume_id *id, uint64_t off) | |||
47 | { | 47 | { |
48 | struct ext2_super_block *es; | 48 | struct ext2_super_block *es; |
49 | 49 | ||
50 | dbg("probing at offset 0x%llx", (unsigned long long) off); | 50 | dbg("ext: probing at offset 0x%llx", (unsigned long long) off); |
51 | 51 | ||
52 | es = volume_id_get_buffer(id, off + EXT_SUPERBLOCK_OFFSET, 0x200); | 52 | es = volume_id_get_buffer(id, off + EXT_SUPERBLOCK_OFFSET, 0x200); |
53 | if (es == NULL) | 53 | if (es == NULL) |
54 | return -1; | 54 | return -1; |
55 | 55 | ||
56 | if (es->magic[0] != 0123 || | 56 | if (es->magic[0] != 0123 || es->magic[1] != 0357) { |
57 | es->magic[1] != 0357) | 57 | dbg("ext: no magic found"); |
58 | return -1; | 58 | return -1; |
59 | } | ||
59 | 60 | ||
60 | volume_id_set_usage(id, VOLUME_ID_FILESYSTEM); | 61 | // volume_id_set_usage(id, VOLUME_ID_FILESYSTEM); |
61 | volume_id_set_label_raw(id, es->volume_name, 16); | 62 | // volume_id_set_label_raw(id, es->volume_name, 16); |
62 | volume_id_set_label_string(id, es->volume_name, 16); | 63 | volume_id_set_label_string(id, es->volume_name, 16); |
63 | volume_id_set_uuid(id, es->uuid, UUID_DCE); | 64 | volume_id_set_uuid(id, es->uuid, UUID_DCE); |
65 | dbg("ext: label '%s' uuid '%s'", id->label, id->uuid); | ||
64 | 66 | ||
65 | if ((le32_to_cpu(es->feature_compat) & EXT3_FEATURE_COMPAT_HAS_JOURNAL) != 0) | 67 | // if ((le32_to_cpu(es->feature_compat) & EXT3_FEATURE_COMPAT_HAS_JOURNAL) != 0) |
66 | id->type = "ext3"; | 68 | // id->type = "ext3"; |
67 | else | 69 | // else |
68 | id->type = "ext2"; | 70 | // id->type = "ext2"; |
69 | 71 | ||
70 | return 0; | 72 | return 0; |
71 | } | 73 | } |