chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
volume_id: old md metadata has only 32 bit for the uuid
[elogind.git]
/
extras
/
volume_id
/
lib
/
iso9660.c
diff --git
a/extras/volume_id/lib/iso9660.c
b/extras/volume_id/lib/iso9660.c
index 7b78a7e99285b964b3ddfb01adb5e2c1c9e2122f..227641e42a7c52b03be936799f5c4bf3c047e37f 100644
(file)
--- a/
extras/volume_id/lib/iso9660.c
+++ b/
extras/volume_id/lib/iso9660.c
@@
-35,9
+35,9
@@
#define ISO_VD_MAX 16
struct iso_volume_descriptor {
#define ISO_VD_MAX 16
struct iso_volume_descriptor {
- uint8_t
vd_
type;
- uint8_t
vd_
id[5];
- uint8_t v
d_v
ersion;
+ uint8_t type;
+ uint8_t id[5];
+ uint8_t version;
uint8_t flags;
uint8_t system_id[32];
uint8_t volume_id[32];
uint8_t flags;
uint8_t system_id[32];
uint8_t volume_id[32];
@@
-49,17
+49,17
@@
struct iso_volume_descriptor {
struct high_sierra_volume_descriptor {
uint8_t foo[8];
uint8_t type;
struct high_sierra_volume_descriptor {
uint8_t foo[8];
uint8_t type;
- uint8_t id[
4
];
+ uint8_t id[
5
];
uint8_t version;
} PACKED;
uint8_t version;
} PACKED;
-int volume_id_probe_iso9660(struct volume_id *id, uint64_t off)
+int volume_id_probe_iso9660(struct volume_id *id, uint64_t off
, uint64_t size
)
{
uint8_t *buf;
struct iso_volume_descriptor *is;
struct high_sierra_volume_descriptor *hs;
{
uint8_t *buf;
struct iso_volume_descriptor *is;
struct high_sierra_volume_descriptor *hs;
-
dbg
("probing at offset 0x%llx", (unsigned long long) off);
+
info
("probing at offset 0x%llx", (unsigned long long) off);
buf = volume_id_get_buffer(id, off + ISO_SUPERBLOCK_OFFSET, 0x200);
if (buf == NULL)
buf = volume_id_get_buffer(id, off + ISO_SUPERBLOCK_OFFSET, 0x200);
if (buf == NULL)
@@
-67,7
+67,7
@@
int volume_id_probe_iso9660(struct volume_id *id, uint64_t off)
is = (struct iso_volume_descriptor *) buf;
is = (struct iso_volume_descriptor *) buf;
- if (memcmp(is->
vd_
id, "CD001", 5) == 0) {
+ if (memcmp(is->id, "CD001", 5) == 0) {
int vd_offset;
int i;
int vd_offset;
int i;
@@
-81,9
+81,9
@@
int volume_id_probe_iso9660(struct volume_id *id, uint64_t off)
uint8_t svd_label[64];
is = (struct iso_volume_descriptor *) volume_id_get_buffer(id, off + vd_offset, 0x200);
uint8_t svd_label[64];
is = (struct iso_volume_descriptor *) volume_id_get_buffer(id, off + vd_offset, 0x200);
- if (is == NULL || is->
vd_
type == ISO_VD_END)
+ if (is == NULL || is->type == ISO_VD_END)
break;
break;
- if (is->
vd_
type != ISO_VD_SUPPLEMENTARY)
+ if (is->type != ISO_VD_SUPPLEMENTARY)
continue;
dbg("found SVD at offset 0x%llx", (unsigned long long) (off + vd_offset));
continue;
dbg("found SVD at offset 0x%llx", (unsigned long long) (off + vd_offset));