[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [xorriso] ISO 9660:1999 rename
From: |
Thomas Schmitt |
Subject: |
Re: [xorriso] ISO 9660:1999 rename |
Date: |
Sat, 05 Oct 2024 17:06:07 +0200 |
Hi,
after comparing ECMA-119 2nd Edition and ECMA-119 4th Edition, it is
clear that the difference is the inclusion of optional Joliet and of
an optional Enhanced Volume Descriptor.
Especially the 4th edition says:
NOTE Without using the Enhanced Volume Descriptor, this Standard can be
read as ECMA-119 2nd Edition.
(Blatantly omitting the appearance of Joliet since 2nd edition.)
The new optional volume descriptor is obviously the one of ISO 9660:1999.
I.e. what ECMA-119 2nd Edition calls a Supplementary Volume Descriptor
(volume descriptor type 2) with File Structure Version 2 (which 2nd
edition does not mention as being standard).
Strangely, ECMA-119 4th edition does not mention "1999" anywhere.
Further it mentions only that ECMA-119 3rd Edition is equivalent to
"ISO 9660/Amd.2" of 2013 which included Joliet into ISO 9660.
No word about what 4th edition aims for.
Whatever, it seems technically correct to rename "ISO 9660:1999" to
"ISO-9660/Amd 1:2013" although the new nomenclature seems to be
"Enhanced Volume Descriptor" without mentioning as ammendment.
Question is only whether we should confuse users and frontends by such a
renaming. After all "ISO 9660:1999" is well known in the internet as
optional add-on, whereas "ISO-9660/Amd 1:2013" is mainly used as name of
the whole ISO 9660 standard as of 2013.
I am still undecided whether i should change anything in libisofs and
xorriso as consequence of these standards changes.
(API and CLI can only be expanded but not changed incompatibly, anyways.)
----------------------------------------------------------------------
Windfall insights:
I tried to estimate the popularity of ISO 9660:1999.
The Linux kernel does not appear to be prepared for this volume
descriptor type (i.e. it does not support for ISO 9660:1999).
The only volume descriptor of type 2 mentioned is the one for Joliet.
Anything that has not one of the three UCS-2 Escape Sequences is ignored
in fs/isofs/inode.c as
/* Unknown supplementary volume descriptor */
Especially the member .file_structure_version of
struct iso_supplementary_descriptor in include/uapi/linux/iso_fs.h
is not used anywhere in fs/isofs.
In my collection of regression test ISOs i find it by
for i in *.iso
do
xorriso -indev "$i" -assess_indev_features 2>/dev/null \
| grep 'Indev feature: iso1999=[^0]'
if test "$?" = 0
then
echo ==== "$i"
fi
done
in eight ISOs:
- "HBCD_PE_x64.iso" was made by mkisofs probably on "Win32/MinGW".
- "bionicpup64-8.0-uefi.iso" was made by mkisofs probably on "LINUX".
- "debian-10.0-powerpc-NETINST-1.iso", three other "debian-*-powerpc.iso",
and "debian-10.0-ppc64-NETINST-1.iso" were made by genisoimage probably
on "LINUX".
- "ubcd538.iso" was made by genisoimage probably on "LINUX".
So the users of xorriso seem to have no use case for ISO 9660:1999.
----------------------------------------------------------------------
Have a nice day :)
Thomas