[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