[Pkg-libburnia-devel] Bug#1122201: Allow supplying separate volume labels for ISO9660 and Joliet.
Thomas Schmitt
scdbackup at gmx.net
Thu Dec 11 14:46:54 GMT 2025
Hi,
i explored parts of the current use of the volume id text in libisofs
and in xorriso.
There are four consumers when an image is produced:
ISO 9660 (including Rock Ridge), Joliet, ISO 9660:1999, and HFS+.
Each have their own superblock and directory tree.
As for libisofs write preparation API my plan resembles yours:
- libisofs will store and use separate volume ids for each of the
consumer filesystems.
- Existing API call iso_image_set_volume_id() will continue to set
all four ids to the value which it got from the caller.
- A new API call
iso_image_set_volume_id_v2(IsoImage *image, int fs_type_mask,
const char *volume_id);
will enable the caller to address the particular filesystems by
bits in fs_type_mask : bit0=ISO 9660, bit1=Joliet, ...
The corresponding xorriso API and CLI will mirror this enhancement:
- xorriso, too, will store and use separate volume ids for writing.
- Command -volid will set them all to the same value.
- A new command and a new -as "mkisofs" option
-volid_for fs_type text
will set volume id values for particular filesystems.
But there is also the aspect of reading volume ids from existing ISO
images. I still have to explore the various ways by which xorriso uses
this info.
Have a nice day :)
Thomas
More information about the Pkg-libburnia-devel
mailing list