X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;ds=sidebyside;f=extras%2Fvolume_id%2Fvolume_id%2Freiserfs.c;h=a53fc4a5a90c3171da7c4d323b9911c966ab28f3;hb=7d227c5f34d96a560baed6dc1b9d9865db2e678d;hp=094062dba20c1e8f329cce4dcee6cfd65c669099;hpb=8d1b4df2192915dc94442c1ef3327a28a57b3615;p=elogind.git diff --git a/extras/volume_id/volume_id/reiserfs.c b/extras/volume_id/volume_id/reiserfs.c index 094062dba..a53fc4a5a 100644 --- a/extras/volume_id/volume_id/reiserfs.c +++ b/extras/volume_id/volume_id/reiserfs.c @@ -73,20 +73,24 @@ int volume_id_probe_reiserfs(struct volume_id *id, __u64 off) struct reiser4_super_block *rs4; __u8 *buf; - dbg("probing at offset %llu", off); + dbg("probing at offset 0x%llx", (unsigned long long) off); buf = volume_id_get_buffer(id, off + REISERFS_SUPERBLOCK_OFFSET, 0x200); if (buf == NULL) return -1; rs = (struct reiserfs_super_block *) buf;; + if (memcmp(rs->magic, "ReIsErFs", 8) == 0) { + strcpy(id->type_version, "3.5"); + goto found; + } if (memcmp(rs->magic, "ReIsEr2Fs", 9) == 0) { strcpy(id->type_version, "3.6"); - goto found_v3; + goto found_label; } if (memcmp(rs->magic, "ReIsEr3Fs", 9) == 0) { strcpy(id->type_version, "JR"); - goto found_v3; + goto found_label; } rs4 = (struct reiser4_super_block *) buf; @@ -104,12 +108,12 @@ int volume_id_probe_reiserfs(struct volume_id *id, __u64 off) if (memcmp(rs->magic, "ReIsErFs", 8) == 0) { strcpy(id->type_version, "3.5"); - goto found_v3; + goto found; } return -1; -found_v3: +found_label: volume_id_set_label_raw(id, rs->label, 16); volume_id_set_label_string(id, rs->label, 16); volume_id_set_uuid(id, rs->uuid, UUID_DCE);