[syslinux] Allowed code pages and encodings to write f0.txt through f1.txt?
H. Peter Anvin
hpa at zytor.com
Wed Mar 27 13:25:52 PDT 2013
On 03/27/2013 01:03 PM, Thomas Schmitt wrote:
> Hi,
>
>> Implementing Rock Ridge and/or Joliet for ISO 9660 would be nice, too.
>
> That would be in my sandbox ... if i only had a clue of syslinux.
>
> Nevertheless i tried to find the source and ended up at
> http://git.kernel.org/cgit/boot/syslinux/syslinux.git/tree/core/fs/iso9660/iso9660.c
> Is that the current ISO 9660 code ?
>
Yes.
> If so, then Rock Ridge would affect function iso_find_entry().
> It would need a SUSP decoder loop which looks for NM entries and
> combines them to candidates for e.g. strcmp().
> There would be the need for a second data block buffer into which
> the target blocks of CE entries will be read.
>
> A similar change would be needed in function iso_readdir().
> It seems worthwhile to create a common Rock Ridge name retriever
> function.
>
> Function iso_convert_name() would not be needed for Rock Ridge names.
>
> The existence of Rock Ridge would be announced by an ER entry
> in the root directory record. But one could as well always look
> whether the System Use field of an ISO 9660 directory record
> contains SUSP and RRIP entries.
Yes, that is almost certainly easier; it becomes a local change to the
directory parser.
> The existence of Joliet in an ISO image is announced by a Joliet
> volume descriptor. The filesystem reader should then take the
> root directory record from the Joliet descriptor rather than from
> the Primary Volume Descriptor.
> Functions iso_compar_name() and iso_convert_name() would have to
> deal with UCS-2 strings rather than byte strings. Elsewise, Joliet
> and ECMA-119 have the same structure.
>
> Interpretation of Joliet and Rock Ridge is mutually exclusive.
> One would have to decide early, which one to use, if both are
> present.
Quite correct. We would either go the Linux route of Rock Ridge >
Joliet > plain 9660 or be lazy and just do one or the other. Doing
Joliet > Rock Ridge makes no sense whatsoever.
-hpa
More information about the Syslinux
mailing list