[Libguestfs] Consider to replace isoinfo by own code rather than by xorriso

Thomas Schmitt scdbackup at gmx.net
Sat Apr 17 16:28:49 UTC 2021


Hi,

regarding
  https://github.com/libguestfs/libguestfs/commit/2f587bbaec718e414e46c7e6f2a3e2662c3a1c2a
i have to report that the OSDev wiki had a bug about the start address
of ISO 9660 property Abstract File Identifier.

I guess that libguestfs' daemon/isoinfo.ml should be changed like this

  -  let iso_copyright_file_id = sub 702 38 |> iso_parse_strD in
  -  let iso_abstract_file_id = sub 740 36 |> iso_parse_strD in
  +  let iso_copyright_file_id = sub 702 37 |> iso_parse_strD in
  +  let iso_abstract_file_id = sub 739 37 |> iso_parse_strD in

Reasoning:

According to ECMA-119 the field starts at byte offset 739 rather than 740:
  "8.4.24 Abstract File Identifier (BP 740 to 776)"
"BP" means Byte Position and begins its counting at 1. So the byte offset
is one less. The length of the field is 37 bytes, like the length of its
neighbors.

For more arguments why the OSDev wiki was wrong, see:
  https://lists.gnu.org/archive/html/bug-xorriso/2021-04/msg00005.html
I felt confident enough to make this change in the wiki:
  https://wiki.osdev.org/index.php?title=ISO_9660&diff=25811&oldid=23724


Have a nice day :)

Thomas




More information about the Libguestfs mailing list