X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=extras%2Fvolume_id%2Flib%2Fiso9660.c;h=227641e42a7c52b03be936799f5c4bf3c047e37f;hp=7b78a7e99285b964b3ddfb01adb5e2c1c9e2122f;hb=e18e6d79996edeeb07e122f3582a688c3ef4f6b9;hpb=83cc6ab4760817509f1ed1ee429669e563f82caf diff --git a/extras/volume_id/lib/iso9660.c b/extras/volume_id/lib/iso9660.c index 7b78a7e99..227641e42 100644 --- 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 { - uint8_t vd_type; - uint8_t vd_id[5]; - uint8_t vd_version; + uint8_t type; + uint8_t id[5]; + uint8_t version; 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; - uint8_t id[4]; + uint8_t id[5]; 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; - 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) @@ -67,7 +67,7 @@ int volume_id_probe_iso9660(struct volume_id *id, uint64_t off) 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; @@ -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); - if (is == NULL || is->vd_type == ISO_VD_END) + if (is == NULL || is->type == ISO_VD_END) 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));